钙钛矿太阳能电池人工神经网络ppsci实现
PR types
New features
PR changes
- Add perovskite solar cells neural network model (
psc_nn.py) - Add configuration file for the model (
psc_nn.yaml) - Implement hyperparameter optimization using Optuna
- Add evaluation and visualization functionality
Describe
This PR implements a neural network model for predicting the short-circuit current density (Jsc) of perovskite solar cells. Key features include:
-
Model Architecture:
- Multi-layer perceptron (MLP) with configurable layers and units
- Hyperparameter optimization using Optuna
- Support for multiple optimizers (Adam, RMSProp, SGD)
-
Training Features:
- Weighted MSE loss function
- Learning rate scheduling with warmup
- Evaluation during training
- Model checkpointing
-
Evaluation:
- Multiple metrics (RMSE, R2, MAPE)
- Results visualization
- Model validation
-
Configuration:
- YAML-based configuration
- Flexible hyperparameter settings
- Separate train/eval modes
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
1 out of 2 committers have signed the CLA.
:white_check_mark: ZcwDev
:x: 张成威
张成威 seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.
@ZhangPassion pre-commit运行时需要指定--files为你的修改文件examples/perovskite_solar_cells,否则jointContribution文件夹下也会受到影响,可以通过git checkout develop jointContribution还原这个文件夹的改动。
@ZhangPassion 完善一下PR描述,
Thanks for your contribution!
提交的代码对与本项目无关的代码看起来有所改动,另外没有找到相关的requirement文件,辛苦整理一下代码,也提供一下可用于模型训练的数据集
提交的代码对与本项目无关的代码看起来有所改动,另外没有找到相关的requirement文件,辛苦整理一下代码,也提供一下可用于模型训练的数据集
数据集: 通过网盘分享的文件:data.zip 链接: https://pan.baidu.com/s/17Cob37nbYVUvDbVxxznhHg?pwd=g8ip 提取码: g8ip --来自百度网盘超级会员v4的分享
同上
文档里的requirements.txt是Conda 环境导出文件,建议修改为pip的,另外里面只需保留必要的安装依赖项即可,项目看起来用到了optuna,但是安装依赖的文档里没有囊括进来。代码运行训练时,config里只设置了10个epoch,但是程序运行时会迭代重复循环,辛苦检查一下代码逻辑。
评估模型也出错了,辛苦检查一下错误
我的运行没问题呀
提交的代码有合入冲突,辛苦解决一下吧。 不能强制推送,需要手动解决每个冲突
https://paddle-org.bj.bcebos.com/paddlescience%2Fdatasets%2Fpsc%2Fdata.zip 可以在文档中添加数据集的下载链接,方便用户使用
模型评估命令运行有问题。模型训练命令,模型会反复运行,停止不了,检查一下运行逻辑。
要是能运行的话,帮我之前参数的下载路径也换成最新的吧谢谢
模型评估命令运行有问题。模型训练命令,模型会反复运行,停止不了,检查一下运行逻辑。
我用GPU运行的很快,你cpu可能要多等一会,就出结果了,验证的参数我换了一个,现在应该可以了(之前忘记换了)
是训练命令,不是评估命令。训练的时候,任务不会自动终止,反复迭代的。和CPU没有关系。CPU是指在requirements中可以修改一下,原先的指定了gpu
要是能运行的话,帮我之前参数的下载路径也换成最新的吧谢谢
这个辛苦你这边修改一下吧,数据的链接可以在文档的前面标记一下链接。
模型评估命令运行有问题。模型训练命令,模型会反复运行,停止不了,检查一下运行逻辑。
我用GPU运行的很快,你cpu可能要多等一会,就出结果了,验证的参数我换了一个,现在应该可以了(之前忘记换了)
是训练命令,不是评估命令。训练的时候,任务不会自动终止,反复迭代的。和CPU没有关系。CPU是指在requirements中可以修改一下,原先的指定了gpu
图片上的就是我的训练完成结果,确实是停止了啊
辛苦贴一下训练的log文件
评估命令,指定路径在实际运行时报错,这个链接我测试是可以下载的,辛苦再检查一下吧
(或使用远程预训练模型 python psc_nn.py mode=eval eval.pretrained_model_path="https://paddle-org.bj.bcebos.com/paddlescience/models/PerovskiteSolarCells/solar_cell_pretrained.pdparams")
评估命令,指定路径在实际运行时报错,这个链接我测试是可以下载的,辛苦再检查一下吧
(或使用远程预训练模型 python psc_nn.py mode=eval eval.pretrained_model_path="https://paddle-org.bj.bcebos.com/paddlescience/models/PerovskiteSolarCells/solar_cell_pretrained.pdparams")
评估的参数已经被我换了,那个文件就是最新文件,链接是老文件的url,上次就麻烦您帮我换成最新的文件
评估命令,指定路径在实际运行时报错,这个链接我测试是可以下载的,辛苦再检查一下吧
(或使用远程预训练模型 python psc_nn.py mode=eval eval.pretrained_model_path="https://paddle-org.bj.bcebos.com/paddlescience/models/PerovskiteSolarCells/solar_cell_pretrained.pdparams")
评估的参数已经被我换了,那个文件就是最新文件,链接是老文件的url,上次就麻烦您帮我换成最新的文件
最新的文件是哪个
评估命令,指定路径在实际运行时报错,这个链接我测试是可以下载的,辛苦再检查一下吧
(或使用远程预训练模型 python psc_nn.py mode=eval eval.pretrained_model_path="https://paddle-org.bj.bcebos.com/paddlescience/models/PerovskiteSolarCells/solar_cell_pretrained.pdparams")
评估的参数已经被我换了,那个文件就是最新文件,链接是老文件的url,上次就麻烦您帮我换成最新的文件
最新的文件是哪个
examples/perovskite_solar_cells/solar_cell_pretrained.pdparams这一个
https://paddle-org.bj.bcebos.com/paddlescience/models/PerovskiteSolarCells/solar_cell_pretrained.pdparams 权重已经更新链接,可参考这个。提交的代码请不要放模型权重
评估命令辛苦再检查一下是否能正确运行吧,我这里测试跑不起来,可以看下大小写等等之类的问题
评估命令辛苦再检查一下是否能正确运行吧,我这里测试跑不起来,可以看下大小写等等之类的问题
请问具体报错是啥呢,我这里可以跑起来
评估模型也出错了,辛苦检查一下错误
模型评估命令运行有问题。模型训练命令,模型会反复运行,停止不了,检查一下运行逻辑。
我用GPU运行的很快,你cpu可能要多等一会,就出结果了,验证的参数我换了一个,现在应该可以了(之前忘记换了)