学习log5|pytorch常用模块记录--附示例代码

目前网络上有非常完备的训练框架,如抱脸虫的transformers、达摩的modelscope,swift框架,使得模型的调用和训练过程都非常的直观。上述的框架都没有离开主流的tensorflow, pytorch框架,是在这些框架上的进一步封装,且上述框架更像是模型SDK偏向于应用;学习一下pytorch更能理解AI的原理,这也是大佬的推荐,此篇记录pytorch常用代码,给小白同志们一个参考。

0、疑问

  • 为什么需要torch.nn, torch.optim..模块,有什么好处?

1、pytorch常用模块

torch.nn: pytorch构建模型的其中一块代码,使得构建模型、训练模型的过程更加简洁,仅需少量代码即完成构建过程,里面还封装了各种损失函数如cross entropy等等。

且看代码👇:

import torch.nn.functional as F

#构建损失函数

loss_func = F.cross_entropy

torch.optim:`包装了各种常用损失函数,无需重复定义基础函数,实现开箱即用,自动计算梯度,还能够自动清空上一次迭代的梯度。

TensorDataset和DataLoder:优化数据读取到tensor和分批处理数据的代码,仅一行代码即完成了分批读取数据集的操作。

使用torch包之后代码行数前后对比(图)

2、总结

  • 使用torch.nn
  • 未完待续

参考
官方教程

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容