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

相关推荐
watersink4 小时前
LocateAnything解读
人工智能
FrameNotWork4 小时前
HarmonyOS6.1 从图像分类到目标检测的扩展实现
人工智能·harmonyos
留白_4 小时前
pandas文件读取与存储
开发语言·python·pandas
我的xiaodoujiao4 小时前
API 接口自动化测试详细图文教程学习系列25--继续处理testCase中的数据
python·学习·测试工具·pytest
Wang ruoxi4 小时前
Pygame 小游戏——节奏点击
python·pygame
夕除4 小时前
AOP 实现 Redis 缓存切面解析
java·开发语言·python
智联物联4 小时前
办公楼转型养老公寓,边缘计算网关实现全场景智慧监护
人工智能·边缘计算·物联网解决方案·工业网关·智慧养老·数采网关·边缘盒子
库拉大叔4 小时前
工具调用效率对比实测:GPT-5.5与Gemini 3.5 Flash性能评估
java·前端·人工智能
fanjiu20204 小时前
python查询nightingale监控
python
TechWayfarer4 小时前
IP画像在企业安全中的应用:它能做什么?不能替代什么
网络·python·tcp/ip·安全·网络安全