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中的损失函数是归一化了的。

相关推荐
宅小年6 分钟前
DeepSeek Harness 的插件,到底该怎么用?
人工智能
浔溺9 分钟前
al+大数据每日学习笔记39
pytorch
仙魁XAN13 分钟前
【WorkBuddy · 三件套:技能/专家/技能】第 17 章 · 配置 MCP 服务器
人工智能·workbuddy·workbuddy三件套·mcp 配置与使用
无忧.芙桃16 分钟前
AI 生产力工具实践(四):豆包如何成为日常学习与写作助手
人工智能
IT_陈寒24 分钟前
Python的GIL把我坑惨了,多线程跑得比单线程还慢
前端·人工智能·后端
L@ncor28 分钟前
第二章可能出现的问题
人工智能·python
XGeFei30 分钟前
【Skills:SQL Assistant】
人工智能·langchain
y = xⁿ37 分钟前
大模型基础概念
python
子非鱼eva38 分钟前
昇腾开源仓Issue分析解答-mindspore精选(一)
人工智能·ai
SL_staff39 分钟前
ERP排程总在纸上谈兵?JVS-APS如何用真实产能约束打通计划与执行闭环
java·人工智能·开源