当前位置:   article > 正文

RMT的pytorch笔记(不定期更新)_rmt-wxm

rmt-wxm

RMT的pytorch笔记

序:pytorch是灵活的深度学习开发平台

pytorch是一个灵活的深度学习开发平台,对于张量的操作与科学计算库numpy非常相似,使得这个库比较容易上手。

本文主要针对pytorch深度学习的初学者,作为笔记而非详细的教程或API,带有较强的个人化倾向和补充性质,对于一些较深的内容往往点到为止,在广度上也并不做特意追求。同时,与其它介绍pytorch的博客的不同之处在于,本文不仅介绍pytorch本身的用法,还结合了作者使用时的经验,增加了许多“周边”内容,比如python本身的一些功能,一些有用的库等等。

增加这些内容是因为对于经验不深、编程水平有限的读者来说,要想读懂github等平台上的现成项目代码,不仅需要了解与pytorch等深度学习库相关的代码,还要了解背景知识。额外介绍一些与深度学习无关的python附加内容,可以减少读者查阅资料的工作量。

零、用pytorch写一个神经网络完成任务大概要写哪些东西

在我自己学习tensorflow与pytorch的时候看了许多教程,有的非常详细。他们会告诉你,什么叫tensor,tensor的运算法则,然后给出一个简单的任务,从库里面调用数据集,等等等等。这样的讲法很细致,但是对于你手头的任务完全没有帮助。因为你所要用到的东西,教程里面可能几乎并没有涉及。这让人非常痛苦。所以首先的,当你使用pytorch完成一个任务的时候,你需要写的代码包括如下几个部分——

  • 数据集文件:这是你的放在文件夹或各种表格里的数据和pytorch之间的桥梁,API接口
  • 配置文件:这里存放你的程序会用到的各种常量,比如训练的轮数、batch_size的大小、学习率的初值与衰减的比例,还有各种文件的路径等等
  • 训练脚本:这是用来训练的脚本,这里会定义训练函数train、评估函数eval,还会设置可视化用到的writer与保存模型的函数

一、准备工作

1.1 特殊文件格式简介

1.1.1 pkl文件是python的二进制文件

pickle库可以生成pkl文件,并以此作为python读取的数据文件。通过pickle.dump()可以存储,而通过先openpickle.load()可以加载。dump可以存储多种数据,列表、字典、对象等等,使用时,第一个参数代表需要存储的内容,第二个参数代表pkl文件的路径+名称。读取时,一定按照二进制'rb'open,之后再load.

import pickle


with open(example.pkl, 'rb') as fpkl:
	info = pickle.load(fpkl)
  • 1
  • 2
  • 3
  • 4
  • 5

通常,训练好的模型参数使用pkl格式,pt格式或pth格式存储。这时候,使用torch.save()torch.load()函数,在之后会介绍。

1.1.2 npy文件是numpy专用的二进制文件

使用np.save()

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/389892
推荐阅读
相关标签
  

闽ICP备14008679号