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

相关推荐
半日闲dusknook3 分钟前
我给 AI 写了个「音频编译器」:把「听起来还行」变成 PASS/FAIL
python
Leo.yuan6 分钟前
企业可信Data Agent怎么建:可信分析智能体(Traceable Analytic Agent)的分析链路与验证机制
大数据·人工智能·机器学习
u13013020 分钟前
AI 日报(2026年9月23日)
人工智能
在世修行21 分钟前
干货:信号槽
python·信号槽
想带你从多云到转晴21 分钟前
LLM/AI应用八股
人工智能·chatgpt
QY_Research_22 分钟前
2026-2032年个人安全警报装置市场分析 CAGR4.7% 产业全景报告
大数据·人工智能·安全
Wx-bishekaifayuan23 分钟前
springboot生活易购超市管理系统54086-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
AI行业说27 分钟前
针织 T 恤、运动套装电脑模板机选型与落地指南
大数据·人工智能·机器人·自动化·智能模板机
数字融合31 分钟前
透明化数字孪生智慧养老平台运维服务项目
人工智能·python·virtualenv
smj2302_7968265233 分钟前
解决leetcode第4064题至多一次取反能被k整除的最长子数组II
python·算法·leetcode