该项目是《Problem-independent machine learning (PIML)-based topology optimization—A universal approach》的python复现
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

1.2 KiB

该项目是《Problem-independent machine learning (PIML)-based topology optimization—A universal approach》机器学习网络部分的复现

环境依赖

PyTorch 2.1.0 CUDA 12.1 Ubuntu 20.04 (没有用到新特性,所以应该对旧版本兼容)

# matplotlib==3.8.0
# numpy==1.26.2
# scikit_learn==1.3.0
# torch==2.1.0
pip install -r requirements.txt

Usage

TODO: 用argparse模块管理网络参数

Train

python train.py

编辑 train.pydata_mod 变量选择数据

Test

python test.py

编辑 test.pydataload_modpretrained_mod 变量选择加载数据和预训练模型

数据集

通过经典二维拓扑优化代码生成的三组形变、密度数据

mod1:

mod2:

mod3:

项目结构

.
├── checkpoints
│   ├── ...
├── datasets
│   ├── ...
├── models
│   ├── ANN.py
│   ├── AutoEncoder.py
│   └── CNN.py
├── README.md
├── requirements.txt
├── test.py
├── train.py
└── utils
    ├── data_loader.py
    └── data_standardizer.py