模型多次运行结果不一致怎么办?
收藏
模型多次运行结果不一致怎么办?
- random.seed(seed) # 设置随机函数种子
- os.environ['PYTHONHASHSEED'] = str(seed) # 设置python环境种子
- np.random.seed(seed) #设置np库种子
- paddle.seed(seed) #设置paddlepaddle随机种子
可以设置随机种子!!!
import numpy as np
import os
import paddle
def seed_paddle(seed=1024):
seed = int(seed)
random.seed(seed) # 设置随机函数种子
os.environ['PYTHONHASHSEED'] = str(seed) # 设置python环境种子
np.random.seed(seed) #设置np库种子
paddle.seed(seed) #设置paddlepaddle随机种子
seed_paddle(seed=1024)
0
收藏
请登录后评论
嗯,主要是卷积核,归一化层初始化导致的
这样设置了之后,每次运行还不一样肿么办
母鸡啊,得看具体情况
有可能是前向计算时候没有设置成eval模式,因此BN,Dropout等影响结果。
感谢各位回复,已经设置了随机种子和eval等,就很苦恼每次训练完,在测试集结果都不一样,这样比较不了调参的或者换模型的效果,是要多跑几次求平均值吗,时间好长!!
用的是预训练模型ernie-tiny
那就从最简开始,一点一点排除
有时候数据读入顺序也是随机的。
可以试试啊
你好,请问解决了吗?