
PyTorch入门与实践
文章平均质量分 96
Lament King
这个作者很懒,什么都没留下…
展开
-
PyTorch入门与实践(七):ONNX文件导出与简单部署
严格意义上说,这篇文章已经不完全属于PyTorch的内容了,属于模型部署的范畴,但工作中导出模型一般都是算法工程师的工作内容,所以这里需要讲一下。ONNX(Open Neural Network Exchange)文件是一种开放的、与框架无关的文件格式,用于表示深度学习模型。ONNX 文件使用.onnx扩展名,并且基于 Protocol Buffers(protobuf)格式进行序列化。ONNX 的主要目标是解决深度学习模型在不同框架之间的兼容性问题。原创 2024-12-12 00:22:58 · 1522 阅读 · 0 评论 -
PyTorch入门与实践(六):实战指南
通过前面几章的内容,我们已经学习了PyTorch的基本使用,对于底层原理也有了一定程度的认识,但我们还没有完整地训练过一个网络。本文将训练一个猫狗分类器,试图把前面所学的知识串起来,完整地实现一个深度学习项目。本章不再深人讲解过多的知识性内容,而是传授一些经验。对于这部分内容可能有些争议,因为它们受笔者个人喜好和代码风格的影响较大,所以读者可以将其当成一种参考或提议,而不是作为必须遵循的准则。归根到底,笔者希望读者能以一种更为合理的方式组织自己的程序。原创 2024-12-08 22:19:32 · 755 阅读 · 0 评论 -
PyTorch入门与实践(五):PyTorch常用工具模块
在PyTorch中,数据加载可通过自定义的数据集对象实现。数据集对象被抽象为Dataset类,实现自定义的数据集类需要继承Dataset__init__():构造函数,因为不需要使用父类的属性,需要什么都在本类中定义,因此无需调用Dataset的构造函数;:返回一条数据,或一个样本。obj[index]等价于;__len__():返回样本的数量。len(obj)等价于。原创 2024-12-05 18:12:12 · 1008 阅读 · 0 评论 -
PyTorch入门与实践(四):神经网络工具箱nn
我们也可以自己写损失函数,就和自己写模型一样,继承nn.Module类就行,然后forward的输入有两个,一个是预测值,另一个是标签。自定义损失函数和普通模型最大的不同有两个:一是损失函数里不能有可学习参数,如果有非标量的常数,则要将其用包裹,且设置为False;二是forward的返回值必须是标量,否则无法进行反向传播(张量并不是完全没办法反向传播,只是比较复杂)。return out# 生成标签与预测值# 计算损失函数L = loss(pred, label) # 这句将会报错。原创 2024-11-24 21:57:05 · 1164 阅读 · 0 评论 -
PyTorch入门与实践(三):Tensor与自动微分详解
一般来说,不同的张量可能头信息不同,但可能使用了相同的数据,一些操作可能创建了一个新的信息头,但它们仍共享同一个数据区,这些张量可以认为是同一个数据区的不同“视图”。w、b、x好理解,因为它们都是用户直接创建,而y之所以也是叶子节点,是因为它是由矩阵乘法运算生成的(操作生成),但由于w和x的requires_grad都被置为了False,这使得y在创建的那一刻,其requires_grad就是False,故y也是叶子节点。查看张量的数据地址,这是来自于C++底层的方法,该方法可以返回真实的内存地址。原创 2024-11-22 21:41:54 · 1176 阅读 · 0 评论 -
PyTorch入门与实践(二):快速入门
本篇文章是我阅读《深度学习框架PyTorch入门与实践(第2版)》的第二章学习笔记,以及一些思考。原创 2024-11-18 22:31:39 · 708 阅读 · 0 评论 -
PyTorch入门与实践(一):环境安装与相关工具介绍
本文介绍了Pytorch环境安装、VS Code连接远程服务器、DeepLn的web连接、DeepLn的实例释放与数据保存、VS Code 调试Python原创 2024-11-17 21:27:13 · 991 阅读 · 0 评论