深度学习
文章平均质量分 85
zstar-_
西电在读硕士生,联系邮箱:[email protected]
展开
-
【Ubuntu】分布式训练/pycharm远程开发
鸟枪换炮进化史原创 2022-10-07 18:05:18 · 1354 阅读 · 0 评论 -
深度学习基础:9.复现经典网络:LeNet5与AlexNet
1998年, LeNet5 被LeCun等人在论文《Gradient-Based Learning Applied to Document Recognition》中正式提出,它被认为是现代卷积神经网络的奠基者。网络结构图:使用模型可视化工具可以模拟输入,查看模型信息。输出结果如图:AlexNet诞生于有“视觉界奥林匹克”之称的大规模视觉识别挑战比赛ILSVRC(ImageNet Large ScaleVisual Recognition Challenge)。AlexNet出现之前,最好成绩一直由原创 2022-07-14 14:16:05 · 903 阅读 · 0 评论 -
深度学习基础:8.卷积与池化
从本篇开始,将进入到深度学习的计算机视觉领域,在此之前有必要对传统 图像处理方法做个回顾。在我的【计算机视觉】基础图像知识点整理和【计算机视觉】数字图像处理基础知识题这两篇博文中,对于计算机视觉的基本知识有过梳理,并使用matlab进行了图像处理操作。在本节内容中,将使用python的opencv库,再次尝试对图像进行基本处理。读入图片并显示:显示原图如图所示:注意:OpenCV默认图像通道的顺序是BGR,如果不进行转换,三通道红色和蓝色通道会交换,变成这样…画面亮度调整首先对图片像素进行归一化方便原创 2022-07-14 13:37:54 · 1242 阅读 · 0 评论 -
深度学习基础:7.模型的保存与加载/学习率调度
模型的保存和加载,本质上都是针对模型的参数。在Pytorch中,可以使用查看模型的参数信息。例如:输入输出模型保存参数1:模型参数参数2:保存名称模型加载学习率调度学习率调度指的是在模型训练的过程中,动态调整学习率。我们可以通过调用Pytorch中模块下的相关函数,来实现优化器中学习率的动态调整。假设,优化器中的lr伴随模型迭代相应调整的方法如下:lr=lr_lambda(epoch)∗initial_lrlr = lr\_lambda(epoch) * initial\_lrl原创 2022-07-13 20:33:04 · 781 阅读 · 0 评论 -
深度学习基础:6.Batch Normalization简介/作用
由于Batch Normalization包含数据标准化的操作,因此在了解BN前,首先要对数据标准化有个简单认识。数据标准化通常包括两种:0-1标准化和Z-score标准化,深度学习中的标准化往往指代的是后者。0-1标准化的公式如下:Z-score标准化的公式如下:数据通过Z-Score处理之后将服从标准正态分布。BN是由Sergey loffe和Christian Szegedy在2015年发表的《Batch Normalization: Accelerating Deep Network Tra原创 2022-07-13 19:21:15 · 1196 阅读 · 0 评论 -
深度学习基础:5.CIFAR10数据集分类及GPU使用实例
上篇博文整理了如何用Pytorch搭建一个基本网络模型,本篇进行一个图像分类任务实操。相关代码主要参考自官网教程:https://pytorch.org/tutorials/beginner/blitz/cifar10_tutorial.html#sphx-glr-beginner-blitz-cifar10-tutorial-pyCIFAR10数据集总共包含10个类别,每张图片为3通道的RGB图片,大小为32x32像素。使用可以下载经典数据集,设置下载路径和,电脑会自动检测root路径下有无数据集,原创 2022-07-13 14:28:04 · 1086 阅读 · 0 评论 -
深度学习基础:4.Pytorch搭建基础网络模型
使用Pytorch之前,首先要理清楚Pytorch基本架构。Pytorch的核心库是torch,根据不同领域细分可以分成计算机视觉、自然语言处理和语音处理,这三个领域分别有自己对应的库,即torchvision、torchtext、torchaudio。核心库Torch中,根据功能又可以细分成下面几个模块。下面就用Pytorch搭建一个简单的正向传播结构。首先导库,这里需要三个库,torch基本库不必说,nn即neural network,包含了神经网络结构的基本元素。functional 包含了损失函原创 2022-07-12 20:39:36 · 1503 阅读 · 0 评论 -
深度学习基础:3.反向传播和梯度下降
动态计算图计算图可以用来表示两个变量之间的关系。例如,构建y=x2y=x^2y=x2,则可用一张简单计算图进行表示。pytorch支持动态计算图,动态意义在于,当创建其它由计算图中变量而来的新变量时,新变量会自动添加到计算图内。而Tensorflow v1仅支持静态计算图,需要提前定义各个变量的关系,灵活性不如动态计算图。反向传播通过反向传播,可以计算各变量的导数。x = torch.tensor(1.,requires_grad = True) #requires_grad=True表示x可导原创 2021-10-05 17:25:12 · 543 阅读 · 0 评论 -
深度学习基础:2.最小二乘法
最小二乘法代数表示方法假设多元线性方程有如下形式:f(x)=w1x1+w2x2+...+wdxd+bf(x) = w_1x_1+w_2x_2+...+w_dx_d+bf(x)=w1x1+w2x2+...+wdxd+b令w=(w1,w2,...wd)w = (w_1,w_2,...w_d)w=(w1,w2,...wd),x=(x1,x2,...xd)x = (x_1,x_2,...x_d)x=(x1,x2,...xd),则上式可写为f(x)=wTx+bf(x) = w^T原创 2021-10-05 01:14:31 · 1025 阅读 · 0 评论 -
深度学习基础:1.张量的基本操作
本篇文章张量(Tensor)的基本含义张量,可以简单的理解为多维数组,是二维向量在更高的维度的延申。用到的库和框架import torch import numpy as np张量的创建torch.tensor()通过列表创建张量# 通过列表创建张量t = torch.tensor([1, 2])ttensor([1, 2])通过元组创建张量# 通过元组创建张量torch.tensor((1, 2))tensor([1, 2])将numpy创建的数组转换成张量.原创 2021-09-29 01:13:35 · 3525 阅读 · 0 评论