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

相关推荐
长和信泰光伏储能几秒前
探索未来能源:光伏储能技术解析
大数据·人工智能·能源
寻道码路3 分钟前
LangChain4j Java AI 应用开发实战(二十六):多模型集成策略 —— OpenAI、DeepSeek、阿里百炼混合使用
java·开发语言·人工智能·ai
直接冲冲冲7 分钟前
65-批量归一化
人工智能·深度学习·计算机视觉
树獭非懒8 分钟前
六、Plan-and-Solve智能体:学会三思而后行
人工智能·llm·agent
武子康10 分钟前
调查研究-214 OpenAI:Agent 不是更聪明的聊天框,而是新的工作组织方式
人工智能·openai·agent
火山引擎开发者社区10 分钟前
告别手动翻资料:用 Agent Plan 搞定销售档案与问答
人工智能
鹰影4711 分钟前
一款AI笔记助手和远程同步的markdown笔记idea-note
人工智能·笔记·rust·typescript·react
城事漫游Molly15 分钟前
如何写出有说服力的研究论文Introduction——论证框架切入法
人工智能·论文写作·ai for science·博士生必读
行业研究员17 分钟前
解决方案 | 腾讯云天御金融反电诈解决方案
人工智能·金融·腾讯云·金融反电诈·双模反诈
倔强的石头10617 分钟前
让时间序列“开口说话”:TimechoAI 如何把工业数据变成安全可靠的智能洞察
人工智能