《PyTorch深度学习》笔记(1)


卷积核可视化
https://setosa.io/ev/image-kernels/

1、简单介绍

1.1、图像检测大概过程

1第一层检查边缘
2第二层检测鼻子和眼睛等形状
3最后一层检测面部形状或者更复杂的结构

1.2、深度学习应用

图像分类
语音识别
翻译
自动驾驶
Siri
黄瓜智能分拣
医学图像检测
翻译

1.3、数据集

MNIST
COCO
CIFAR
The Street View House Numbers
PASCAL VOC
Wikipedia dump
20 Newsgroups
Penn Treebank
Kaggle

1.4、深度学习框架

Tensorflow
Caffe2
Keras
Theano
PyTorch
Chainer
DyNet
MXNet
CNTK

2、神经网络结构

2.1、图像的表示

  • 图像由3个方面来表示:(高度,宽度,通道数RGB)
  • 阿尔法(α)表示图像的透明度

2.2、张量(不太懂,等回来再看)

  • 标量:0维张量
  • 向量:1维张量
  • 矩阵(2维向量):2维张量
  • 3维张量:图片
  • 4维张量:批图像
64*224*224*3的猫咪图片
64表示批尺寸或者图片数量
224*224表示高和宽
3表示通道数
  • 5维张量:视频
  • GPU张量:

2.3、梯度

损失函数相对于各个需要训练的参数的变化率

2.4、简单的线性回归学习过程

y=wx+b
其中w、b是要学习的参数
我们有很多(x,y)数据

  • 首先随机生成w,b
  • 然后用损失函数(loss)来告诉模型预测值和真实值的差距,预测值和真实值之差求平方
  • 调用loss的backword计算梯度值
  • 学习率是一个超参数,可以让用户通过较小的梯度值变化来调整变量的值,其中梯度指明了每个变量需要调整的方向
简单的优化器的例子,learning_rate是学习率,grad是梯度,w和b是变量
def optimizer(learning_rate):
	w.data -= learning_rate * w.grad.data
	b.data -= learning_rate * b.grad.data

2.5、优化器

  • 作用:降低损失提高准确率
  • pytorch自带的优化器:adam、rmsprop、sgd等,在torch.optim包里有

2.6、加载数据

2.6.1、Dataset类(暂时不知道这个有啥用)

  • python中的继承:
# Child 继承 Person
class Child(Person):
	#省略
  • 所有自定义的数据集,必须继承Dataset类,并实现它的三个方法

2.6.2、Dataloader类(不是很懂,没用过,用了再回来看)

获取多张图片进行轮次训练

2.6.3、batch_size:批尺寸

常用的批尺寸为16、32、64

posted @   猪猪猪猪侠  阅读(71)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示