AICircuit
收藏AICircuit 数据集概述
数据集简介
AICircuit 是一个综合性的多层次数据集和基准,用于开发和评估机器学习算法在模拟和射频电路设计中的应用。该数据集包含七种常用的基本电路和两种由多个电路模块组成的复杂无线收发系统,涵盖了现实应用中遇到的各种设计场景。
数据集组成
- 基本电路:
- CSVA: 共源电压放大器
- CVA: 级联电压放大器
- TSVA: 两级电压放大器
- LNA: 低噪声放大器
- Mixer: 混频器
- VCO: 压控振荡器
- PA: 功率放大器
- 复杂系统:
- Transmitter: 发射机
- Receiver: 接收机
使用方法
简单模型运行
-
根据需要修改
Config/Circuits目录下配置文件中的输入数据和输出结果路径。 -
生成自己的训练配置文件,或使用默认配置文件: bash python3 main.py
示例: bash python3 main.py --path ./Config/train_config.yaml --seed 0
运行模拟
使用以下代码运行模拟: bash python simulation.py --circuit=Mixer --model=MLP
配置文件参数说明
model_config: 模型配置列表model: 支持的模型类型- KNeighbors
- RandomForest
- SupportVector
- MultiLayerPerceptron
- Transformer
- 其他模型参数:根据需要添加
subset: 用于训练的数据比例列表circuits: 电路列表epochs: 用于 MLP 和 Transformer 模型的迭代次数,默认 100loss_per_epoch: 每轮损失,默认 MLP 和 Transformer 为 Truecompare_method: 比较不同模型的损失kfold: 是否进行 K 折交叉验证independent_kfold: 是否独立选择训练和测试数据save_format: 保存格式- csv
- numpy
- 其他:不保存
结果
每次运行后,可在 out_plot 和 out_result 目录中找到相应的图表和损失值。如果配置文件设置保存预测结果,可在电路的 YAML 文件中找到预测文件。
可视化
部分可视化结果如下:
- 两级电压放大器(TSVA):

- 发射机:

引用
如果使用 AICircuit 数据集进行研究,请按以下格式引用: plaintext @article{Mehradfar2024AICircuit, title={AICircuit: A Multi-Level Dataset and Benchmark for AI-Driven Analog Integrated Circuit Design}, author={Asal Mehradfar and Xuzhe Zhao and Yue Niu and Sara Babakniya and Mahdi Alesheikh and Hamidreza Aghasi and Salman Avestimehr}, year={2024}, url={https://arxiv.org/abs/2407.18272}, }




