Pytorch框架
文章平均质量分 62
基础打卡、后期补充
雯文闻
QQ:852393503
展开
-
【深度之眼】【Pytorch训练营】笔记汇总
【深度之眼】【Pytorch打卡第1天】:PyTorch简介及环境配置;PyTorch基础数据结构—张量【深度之眼】【Pytorch打卡第2天】:张量、计算图、线性回归、逻辑回归【深度之眼】【Pytorch打卡第3天】:DataLoader、DataSet、Transforms+划分数据集代码、构建Dataset、读取数据【深度之眼】【Pytorch打卡第4天】:各种transforms详解【深度之眼】【Pytorch打卡第5天】:nn.Module与网络模型构建步骤;模型容器与AlexNet构建原创 2020-08-24 14:43:39 · 767 阅读 · 1 评论 -
【深度之眼】【Pytorch打卡第20天】:图像分割
目录一、图像分割分类二、PyTorch-Hub常用函数实例演示模型如何分割三、深度学习图像分割模型简介FCN模型图像分割:将图像每一个像素分类一、图像分割分类超像素分割:少量超像素代替大量 像素,常用于图像预处理语义分割:逐像素分类,无法区分 个体实例分割:对个体目标进行分割, 像素级目标检测全景分割:语义分割结合实例分割超像素分割:少量超像素代替大量像素,常用于图像预处理。下图中,每一个白色的区域都是一个超像素,是由很多像素构成的,通常来说,一个超像素中的像素性质都是非常接近的,例如原创 2020-08-19 20:56:45 · 1063 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第19天】:图像分类Resnet的Inference
目录模型是如何将图像分类的?3-d 张量→字符串图像分类的Inference(推理)Inference代码基本步骤Inference阶段注意事项Resnet18模型Inference代码核心代码全部代码resnet18结构分析图像分类经典模型结构分析Pytorch中的Resnet实现模型是如何将图像分类的?3-d 张量→字符串类别名与标签的转换: label_name = {"ants": 0, "bees": 1}取输出向量最大值的标号 : _, predicted = torch.max(ou原创 2020-08-18 18:00:16 · 858 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第18天】:常见报错
PyTorch中的常见报错总结NO.1报错:ValueError: num_samples should be a positive integer value, but got num_samples=0可能的原因:传入的Dataset中的len(self.data_info)==0,即传入该dataloader的dataset里没有数据解决方法:检查dataset中的路径,路径不对,读取不到数据检查Dataset的__len__()函数为何输出为零# ===============原创 2020-08-17 20:12:36 · 1820 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第17天】:GPU的使用
目录任务任务简介详细说明知识点CPU与GPU数据迁移至GPU`.to()函数`:转换`数据类型`或`设备``torch.cuda模块`torch.cuda常用方法多GPU并行运算多GPU运算的分发并行机制PyTorch实现任务任务简介学习使用GPU进行加速运算;学习常见报错信息,方便调试代码。详细说明学习如何使用GPU进行加速模型运算,介绍Tensor和Module的to函数使用以及它们之间的差异,同时学习多GPU运算的分发并行机制。知识点CPU与GPUCPU(Central Proces原创 2020-08-15 22:01:46 · 448 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第16天】:模型微调Finetune(迁移学习)
目录任务任务简介详细介绍知识点Transfer Learning & Model FinetunePyTorch中的Finetune模型微调步骤模型微调训练方法实战-Resnet-18 用于二分类Resnet-18 模型介绍迁移结果分析任务任务简介了解transfer learning 与 model finetune详细介绍学习模型微调(Finetune)的方法,以及认识Transfer Learning(迁移学习)与Model Finetune之间的关系。知识点Transfer原创 2020-08-15 13:10:11 · 561 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第15天】:模型保存与加载
目录任务知识点一、序列化与反序列化1. `Pytorch`的序列化--`torch.save`2. `Pytorch`的反序列化--`torch.load`二、模型保存与加载的两种方式保存模型法1: 保存整个Module --`torch.save(net, path)`法2: 保存模型参数--` net.state_dict() `与`torch.save(state_dict , path)`加载模型加载整个模型--`torch.load(path_model)`加载模型参数--`torch.load(原创 2020-08-15 10:48:13 · 297 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第14天】:标准化_BN、LN、IN and GN
目录任务任务名称任务简介详细说明知识点Batch Normalization 概念优点计算方式实例演示PyTorch的Batch Normalization 1d/2d/3d 实现_BatchNorm1d2d3d常见的NormalizationPytorch中的标准化方法任务任务名称Batch Normalization;Layer Normalizatoin、Instance Normalizatoin和Group Normalizatoin任务简介学习深度学习中常见的标准化方法详细说明第一原创 2020-08-14 16:35:33 · 421 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第13天】:正则化之weight_decay&Dropout
目录任务任务简介详细说明知识点正则化与偏差-方差分解Regularization:减小方差的策略L2 Regularization = weight decay(权值衰减)pytorch中的L2正则项——weight decay代码展示正则化之DropoutDropout概念nn.Dropout实现细节:代码展示任务任务简介了解正则化中L1和L2(weight decay)了解dropout详细说明第一部分讲解正则化的概念,正则化方法是机器学习(深度学习)中重要的方法,它目的在于减小方差原创 2020-08-14 11:59:15 · 568 阅读 · 0 评论 -
【深度之眼】【Pytorch打开第12天】:hook函数与CAM可视化
目录任务:hook函数与CAM(class activation map, 类激活图)任务简介:学习pytorch的hook函数机制以及CAM可视化算法详细说明:深入学习了解pytorch的hook函数运行机制,介绍pytorch中提供的4种hook函数实现任务知识点Hook函数Tensor.register_hookModule.register_forward_hookModule.register_forward_pre_hookModule.register_backward_hookHook函数与原创 2020-08-13 19:54:01 · 573 阅读 · 2 评论 -
【深度之眼】【Pytorch打卡第11天】:可视化工具TensorBoard
目录任务任务简介详细说明知识点TensorBoard简介与安装TensorBoard的使用SummaryWriterSummaryWriter 方法1. add_scalar()2. add_scalars()3. add_histogram()4. add_image()5. add_graph()torchvision.utils.make_gridtorchsummary (很实用)代码1.TensorBoard各种方法代码汇总2.可视化任意网络模型训练的Loss,及Accuracy曲线图,Train原创 2020-08-12 21:59:01 · 422 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第10天】:学习率调整策略
任务:熟悉pytorch的学习率调整策略详细说明:讲解pytorch中提供的学习率调整策略,首先介绍基类_LRScheduler基本属性与方法,然后逐个学习率方法进行讲解使用,分别Step、MultiStep、Exponential、CosineAnnealing、ReduceLROnPleateau和Lambda,一共六种学习率调整策略;知识点为什么调整学习率梯度下降: ????????+????=???????? −LR*????(????????)学习率(learning rate)控原创 2020-08-12 12:51:31 · 390 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第9天】:10种优化器、学习率、动量
任务掌握常用优化器SGD,了解10种优化器知识点基本知识pytorch的优化器: 管理并更新模型中可学习参数的值,使得模型输出更接近真实标签导数:函数在指定坐标轴上的变化率方向导数:指定方向上的变化率梯度:一个向量,方向为方向导数 取得最大值的方向基本属性• defaults:优化器超参数• state:参数的缓存,如momentum的缓存• params_groups:管理的参数组• _step_count:记录更新次数,学习率调整中使用基本方法import osi原创 2020-08-11 22:04:52 · 363 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第8天】:18种损失函数
本节第二部分介绍损失函数、代价函数与目标函数的联系与不同之处,然后学习人民币二分类任务中使用到的交叉熵损失函数,在讲解交叉熵损失函数时补充分析自信息、信息熵、相对熵和交叉熵之间的关系,最后学习四种损失函数:nn.CrossEntropyLossnn.NLLLossnn.BCELossnn.BCEWithLogitsLoss作业名称(详解):Lossfunction依旧属于网络层的概念,即仍旧是Module的子类,为了对lossfunction有一个更清晰的概念,需要大家采用步进(St.原创 2020-07-29 14:56:56 · 196 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第7天】:权值初始化
重点知识点任务名称:权值初始化;损失函数(一)任务简介:学习权值初始化的原理;介绍损失函数、代价函数与目标函数的关系,并学习交叉熵损失函数详细说明:本节第一部分讲解权值初始化的必要性,首先分析神经网络中权值的方差过大导致梯度爆炸的原因,然后从方差一致性原则出发分析Xavier初始化方法与Kaiming初始化方法的由来,最后介绍pytorch提供的十种初始化方法。本节第二部分介绍损失函数、代价函数与目标函数的联系与不同之处,然后学习人民币二分类任务中使用到的交叉熵损失函数,在讲解交叉熵损失函原创 2020-07-23 20:53:51 · 190 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第6天】:学习网络层中的卷积层,池化层,全连接层和激活函数层
任务名称:学习网络层中的卷积层,池化层,全连接层和激活函数层任务简介:学习网络模型中采用的神经网络层,包括卷积层,池化层,全连接层和激活函数层,学会如何区分二维卷积和三维卷积;详细说明:本节第一部分学习卷积神经网络中最重要的卷积层,了解卷积操作的过程与步骤,同时学会区分一维/二维/三维卷积,最后学习转置卷积(Transpose Convolution)的由来以及实现方法;本节第二部分学习池化层,全连接层和激活函数层,在池化层中有正常的最大值池化,均值池化,还有图像分割任务中常用的反池化——M原创 2020-07-14 11:56:34 · 431 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第5天】:nn.Module与网络模型构建步骤;模型容器与AlexNet构建
任务简介:学习nn.Module类以及搭建网络模型步骤;熟悉搭建网络模型时常用的模型容器详细说明:本节第一部分介绍网络模型的基本类nn.Module,nn.Module是所有网络层的基本类,它拥有8个有序字典,用于管理模型属性,本节课中将要学习如何构建一个Module。然后通过网络结构和计算图两个角度去观察搭建一个网络模型需要两个步骤:第一步,搭建子模块;第二步,拼接子模块。本节第二部分介绍搭建网络模型常用的容器,如Sequential,ModuleList, ModuleDict,然原创 2020-07-13 17:57:34 · 315 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第4天】:各种transforms详解
图像增强裁剪transforms.CenterCroptransforms.RandomCrop功能:从图片中随机裁剪出尺寸为size的图片• size:所需裁剪图片尺寸 • padding:设置填充大小当为a时,上下左右均填充a个像素当为(a, b)时,上下填充b个像素,左右填充a个像素 当为(a, b, c, d)时,左,上,右,下分别填充a, b, c, d• pad_if_need:若图像小于设定size,则填充• padding_mode:填充模式,有4种模式1、con原创 2020-07-12 17:48:46 · 778 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第3天】:DataLoader、DataSet、Transforms+划分数据集代码、构建Dataset、读取数据
概括DataLoader与DataSettorch.utils.data.DataLoader:构建可迭代的数据装载器dataset: Dataset类,决定数据从哪读取 及如何读取batchsize : 批大小num_works: 是否多进程读取数据shuffle: 每个epoch是否乱序drop_last:当样本数不能被batchsize整 除时,是否舍弃最后一批数据torch.utils.data.Dataset:Dataset抽象类,所有自定义的 Dataset需要继承它,并原创 2020-07-10 14:49:11 · 379 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第2天】:张量、计算图、线性回归、逻辑回归
一、张量的操作拼接torch.cat(): 将张量按维度dim进行拼接torch.stack():在新建的维度dim上进行拼接t = torch.ones((2, 3))t_0 = torch.cat([t, t], dim=0)t_1 = torch.stack([t, t], dim=0)print(t_0)print(t_0.shape)print(t_1)print(t_1.shape)切分torch.chunk(input, chunks, dim): 将张量原创 2020-07-03 19:14:09 · 323 阅读 · 0 评论 -
【深度之眼】【Pytorch打卡第1天】:PyTorch简介及环境配置;PyTorch基础数据结构—张量
参考:百度云盘的课程Pytorch的PDF课件~一、学习路径二、安装1)验证成功>>> import torch>>> a=torch.ones(2,2)>>> atensor([[1., 1.], [1., 1.]])>>> 查看pytorch版本print ("hello pytorch {}".format(torch.__version__))3)查看是否支持GPUprin原创 2020-07-02 17:50:35 · 659 阅读 · 1 评论