对比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直接出结果,也很少用到。一直傻傻的用循环用了十多年。所以说,论文真是水出来的。

相关推荐
毒爪的小新6 分钟前
Linux 环境极速部署 vLLM:从零搭建生产级大模型推理服务
linux·人工智能·ai·语言模型·vllm
老大白菜6 分钟前
25美元,DIY开源可穿戴智能AI眼镜:Arduino+乐鑫ESP32+DeepSeek项目
人工智能
岁月宁静1 小时前
RAG 文档摄入全链路,从原理到生产落地
vue.js·人工智能·python
小和尚同志1 小时前
AI 自动化测试探索(一):Playwright MCP
前端·人工智能·aigc
硅谷秋水1 小时前
面向长上下文自动驾驶的规划对齐Token压缩
人工智能·深度学习·机器学习·计算机视觉·自动驾驶
郭泽斌之心1 小时前
MQL5 EA 怎么和外部程序通信?文件三件套协议:参数热更新不重启、状态心跳、远程触发
人工智能·经验分享·深度学习·ea·fay数字人·easydeal
mit6.8241 小时前
“泄露了windows12“
人工智能
syc78901232 小时前
中文语境下AI编码工具实战对比:从迭代体验看日常开发选择
linux·人工智能·ubuntu
dualven_in_csdn2 小时前
用户点击“一键起飞“
人工智能