对比tensorflow,从0开始学pytorch(一)

tensorflow是10年前开始用的,水了N篇论文后,发现现在的趋势是pytorch,于是开始从0学起,记个笔记。

从入门MNIST开始:

第一个不适应的地方:这里的尺度为啥要自己计算?

对于用惯了tensorflow+keras这种傻瓜式的框架来说,这玩意是太折腾人了。

只能理解为更加严谨。在LeNet的基础之上,加了BN和DropOut。两个和tensorflow不同的地方:

  1. BN也需要参数,具体值就是上一层的channel数,tensorflow不用

  2. 不管是训练还是测试,都需要对模型加一句:model.train()或model.eval(),不然BN或DropOut不起作用(网上这么说的)

第二个不适应的地方:啥都要自己写

不管是训练,还是evaluate,都需要自己手写代码,tensorflow中,训练直接从history提取loss什么的就行,evaluate就更简单,就一行代码。不过这样的好处也是有的......多写两行代码锻炼代码能力。

疑惑:GPU并没有跑满,很神奇。

这块从2015年开始陪我征战的1080ti,直接跑不满。放tensorflow下,哪怕是MNIST这种数据集,也在60%左右,很奇怪,不知道用的什么机制。

学习到了一些比较好的语法糖,比如:

复制代码
pred.eq(target.view_as(pred)).sum().item()

避免了循环的写法,也高效。虽然这是python的基本语法,因为原来evaluate直接出结果,也很少用到。一直傻傻的用循环用了十多年。所以说,论文真是水出来的。

相关推荐
测试员周周2 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
K姐研究社4 小时前
怎么用AI制作电商口播视频,开拍APP一键生成
人工智能·音视频
LaughingZhu4 小时前
Product Hunt 每日热榜 | 2026-05-21
前端·人工智能·经验分享·chatgpt·html
传说故事5 小时前
【论文阅读】MotuBrain: An Advanced World Action Model for Robot Control
论文阅读·人工智能·具身智能·wam
北京耐用通信5 小时前
全域适配工业场景耐达讯自动化Modbus TCP 转 PROFIBUS 网关轻松实现以太网与现场总线互通
网络·人工智能·网络协议·自动化·信息与通信
火山引擎开发者社区5 小时前
TRAE × 火山引擎 Supabase:为你的 AI 应用装上“数据引擎”
人工智能
小a彤5 小时前
GE 在 CANN 五层架构中的位置
人工智能·深度学习·transformer
前端若水6 小时前
会话管理:创建、切换、删除对话历史
前端·人工智能·python·react.js
Upsy-Daisy6 小时前
AI Agent 项目学习笔记(八):Tool Calling 工具调用机制总览
人工智能·笔记·学习
企学宝6 小时前
企学宝5月专题课程丨《OpenClaw AI 智能体实战营:从零基础部署到全场景自动化落地》
人工智能·ai·企业培训