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

相关推荐
wordbaby几秒前
Agent 不够用? 也许你差的不是模型
人工智能
双翌视觉6 分钟前
可见光之外的视界,短波红外成像技术能做什么?
人工智能·计算机视觉·视觉检测
m0_547486668 分钟前
《人工智能导论:深度学习大模型基础》全套PPT课件2026
人工智能·深度学习·大模型
ZhengEnCi11 分钟前
为什么 DeepSeek V4 Flash 可以超过 V4 Pro Preview
人工智能
wordbaby12 分钟前
别问实习生,看回执单——Agent 验证层的核心原则
人工智能
fivebliss12 分钟前
取算存三步细化及延迟指标解析
人工智能·性能优化
武子康16 分钟前
让不同大模型共享一个 Agent:Pi 如何统一 Provider 与 Context Handoff
人工智能
秦先生在广东18 分钟前
`agent-skills`:用工程纪律驯化 AI 编程 Agent 的结构化实践
人工智能
月光船幽幽23 分钟前
门控函数SHS阈值与调制机制解析
人工智能·python·算法
测试199823 分钟前
2026全新软件测试面试八股文(含答案+文档)
自动化测试·软件测试·python·测试工具·面试·职场和发展·测试用例