![](https://img-blog.csdnimg.cn/0d3cb85b2ba0461cb540e2b85f8b31cc.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
pytorch深度学习实战学习笔记
文章平均质量分 69
分享学习笔记以及书中的作业代码~
Cary.
这个作者很懒,什么都没留下…
展开
-
第8章 使用卷积进行泛化(3)
练习+之前出现的一些函数介绍原创 2022-05-15 10:50:35 · 391 阅读 · 0 评论 -
第8章 使用卷积进行泛化(2)
这一部分主要是添加卷积等操作后模型的训练以及练习题第一题1 组装完整的训练循环convnet的核心是两个循环的嵌套:外部循环是迭代周期,内部循环是DataLoader批次生成数据集。每个循环中都包含:通过模型提供输入(正向传播)计算损失(正向传播的一部分)将任何老的梯度归零调用loss.backward()来计算损失相对所有参数的梯度(反向传播)调节优化器1.1 组装并训练##训练循环...原创 2022-05-14 16:13:26 · 533 阅读 · 1 评论 -
CNN中卷积核大小、池化以及padding对输入图像大小的影响
我们发现在不使用padding操作时,经过卷积操作后,输出图像比输入图像小一点。为保证输出图像的大小不变,我们可以使用padding操作:conv1 = nn.Conv2d(3, 16, kernel_size=3, padding=1)pool1 = nn.MaxPool2d(2)conv2 = nn.Conv2d(16, 8, kernel_size=3, padding=1)pool2 = nn.MaxPool2d(2)output1 = conv1(img.unsqueeze(原创 2022-05-14 11:51:14 · 5600 阅读 · 0 评论 -
第8章 使用卷积进行泛化(1)
本章主要内容1、理解什么是卷积2、构建卷积神经网络3、构建自定义的nn.Module的子类4、模块和函数API之间的区别5、神经网络的设计选择1 使用卷积进行泛化torch.nn模块提供一维、二维、三维的卷积nn.Conv1d用于时间序列nn.Conv2d用于图像nn.Conv3d用于体数据、视频1.1 加载数据%matplotlib inlineimport torchimport numpy as npfrom matplotlib impor原创 2022-05-14 11:56:10 · 860 阅读 · 0 评论 -
第七章 区分鸟和飞机
本章主要内容:1、构建前馈神经网络2、使用Dataset和DataLoader加载数据3、了解分类损失1.cifar10数据集1.1 数据集下载###Cifar10数据集##下载数据集from torchvision import datasetsdata_path = 'D:\\DeepLearning data\\data\\p1ch7'cifar10 = datasets.CIFAR10(data_path, train=True, download=True)ci原创 2022-05-12 15:44:50 · 766 阅读 · 0 评论 -
第六章 使用神经网络拟合数据
本章主要内容1、神经网络与线性模型相比,非线性激活函数是主要的差异。2、使用pytorch的nn模块。3、用神经网络求解线性拟合问题。1.激活函数##一些激活函数import mathprint(math.tanh(-2.2))print(math.tanh(0.1))print(math.tanh(2.5))输出:2.pytorch nn模块pytorch提供的所有nn.Moudle的子类都定义了它们的__call__()方法,这允许我们实例化一个nn.Lin原创 2022-05-11 20:31:12 · 2470 阅读 · 0 评论 -
第五章 学习的机制 练习题
练习题目:将模型重新定义为 w2*t_u**2 + w1*t_u + b 评估改进后的效果。###创建模型def model(t_u, w1, w2, b): return w2*t_u**2 + w1*t_u + b###定义损失函数def loss_fn(t_p, t_c): squared_diffs = (t_p - t_c)**2 return squared_diffs.mean()##训练、验证与过拟合#分割数据集获取索引张量n_samples = t原创 2022-05-10 15:23:19 · 216 阅读 · 0 评论 -
第五章 学习的机制(1)
本章主要内容:1、理解算法如何从数据中学习2、使用微分与梯度下降法,将学习重构为参数估计3、了解一个简单学习算法4、了解pytorch如何支持自动求导1.温度计模型1.1 收集数据并进行可视化###温度计实例###1、获取数据集import torchimport matplotlib.pyplot as pltt_c = [0.5, 14.0, 15.0, 28.0, 11.0, 8.0, 3.0, -4.0, 6.0, 13.0, 21.0]t_u = [原创 2022-05-10 14:46:41 · 507 阅读 · 0 评论 -
第四章 使用张量表征真实数据(2)
续上篇1.处理时间序列数据集:华盛顿特区的自行车共享系统数据集目标:将一个平面的二维数据集转换为三维数据集1.1 增加时间维度+按时间段调整数据##处理时间序列 将一个每一行都是单独时间数据的源数据改变其数据组织方式bikes_numpy = np.loadtxt( 'D:\\DeepLearning data\\data\\p1ch4\\bike-sharing-dataset\\hour-fixed.csv', dtype原创 2022-05-09 19:42:35 · 694 阅读 · 0 评论 -
第四章 使用张量表征真实数据(1)
最近高产似那啥~原创 2022-05-07 22:53:43 · 444 阅读 · 0 评论 -
第三章 从张量开始+练习
主要涉及一些张量的基本操作:前一部分以截图形式展示吧#####numpy互操作 tensor-->arraypoints = torch.ones(3,4)points_np = points.numpy()print(type(points_np))####array-->tensorpoints = torch.from_numpy(points_np)print(typ...原创 2022-05-06 21:20:37 · 333 阅读 · 0 评论 -
第二章 预训练网络(2)+ 作业
前一章我们介绍了经典的Resnet并使用它对狗子的图片进行了预测。第二部分主要是CycleGAN将马的图片转变为斑马的实现。后续的NeuralTalk2模型等有时间再介绍~2.1 CycleRAN实现马——>斑马话不多说直接上代码:import torchimport torch.nn as nnclass ResNetBlock(nn.Module): def __init__(self, dim): super(ResNetBlock, self原创 2022-05-05 21:58:07 · 857 阅读 · 2 评论 -
第二章 预训练网络(1)
本章的主要内容包括:1.运行预先训练好的图像识别模型。(本文介绍)2.简要介绍生成式对抗网络(GAN)和循环生成式对抗网络(CycleGAN)。3.可以为图像生成文本描述的字幕模型。4. 通过Torch Hub分享模型。2.1 一个识别图像主体的预训练网络2.1.1 获取一个预先训练好的网络用于图像识别我们可以从torchvision.models中找到预定义的模型:from torchvision import models查看实际模型:dir(models)原创 2022-05-05 20:59:33 · 804 阅读 · 5 评论 -
第一章 深度学习与PyTorch库简介
本书第一章主要介绍了深度学习的背景和PyTorch的基本库。没有涉及很多代码,这里简要总结本章内容,并查看PyTorch版本以及配置。原创 2022-05-05 16:37:20 · 336 阅读 · 1 评论