PyTorch踩坑记录1

1 model.eval()无法关闭dropout

因为model.eval()控制self.training参数,只有用nn.Dropout(0.5)声明才能在调用model.eval()后关闭,用F.dropout(x, p=0.5)是没办法自动关闭的,需要手动把self.training的参数传入到F.dropout()里才行。

网上查到是因为model.eval()会影响继承nn.module类的self.方法的训练和测试,但是F.dropout更像是一个函数没继承nn,module。

另外,回归模型在后面几层应该避免使用dropout,最多在浅层使用。

2 BCEloss归一化

在tf2中BCEloss没有归一化,但是在torch中的损失函数是归一化了的。

相关推荐
小白说大模型几秒前
LLM(大语言模型)到底是怎么工作的?
人工智能·语言模型·自然语言处理
梦想的旅途23 分钟前
企业微信API二次开发:外部群模块功能清单与全场景对接
java·python·企业微信
tanglinS6 分钟前
双端面磨床汇总:面向工艺工程师的设备选型参考
大数据·运维·人工智能·自动化·材质
Fnetlink17 分钟前
Fnet 云网安 260807
服务器·网络·人工智能·安全·网络安全
雪隐10 分钟前
汪峰把1100人裁到400人,AI正在把你的工位变成表情包
人工智能
05664615 分钟前
Python高级——迭代器
开发语言·python·学习
杨超越luckly25 分钟前
Agent应用指南:巨幕之下 · 中国 IMAX 影院205城的空间布局
人工智能·arcgis·html·agent·数据可视化
zhangfeng113327 分钟前
AI编程范式:从Vibe Coding(氛围编程)向SDD规范驱动开发演进全解析
人工智能·驱动开发·ai编程
湘美书院--湘美谈教育29 分钟前
湘美书院人工智能访谈录:AI助力科学研究自动化
大数据·运维·人工智能·机器学习·自动化·电脑·生活
TechEdu20260639 分钟前
[人工智能]Scikit-learn:Python中的实用机器学习库
人工智能·机器学习·ai·scikit-learn