深度学习基础知识

卷积神经网络------图像卷积特征提取

卷积核(算子)用来做图像处理时的矩阵,与原图像做运算的参数。

卷积层基本参数(卷积核大小,步长【pytorch默认为1】,padding边缘填充)

输出尺寸 = (输入尺寸 - 卷积核尺寸 + 2*padding)/stride +1

卷积神经网络的基本结构层

输入层:批次 通道 图像大小

卷积层

激活函数:加入非线性因素,提高神经网络对模型的表达能力,解决线性模型所不能解决的问题,CNN较为常用的是Relu。








池化层:不会改变三维矩阵(假设是三通道彩色图像)的深度,但是它可以缩小矩阵的大小。池化操作可以认为是将一张分辨率较高的图片转化为分辨率交底的图片。通过池化层,可以进一步缩小最后全连接层中节点的个数,从而达到减小整个神经网络中的参数的目的。

softmax分类器:将线性分类得到的得分值转化为概率值,进行多分类。pytorch里面内嵌在Loss函数中。

神经网络的训练步骤:

1.定义神经网络的结构和前向传播的输出结果 Network

2.定义损失函数以及选择反向传播优化的算法loss_function(损失函数)/optimizer(优化器)

3.生成会话并在训练数据上反复运行反向传播优化算法 BatchSize/Epochs

神经网络的前向传播和反向传播

前向传播的作用:输入数据经过多层神经元计算后得到一个预测输出值,一般代码中定义的是前向传播

反向传播的作用:把前向预测输出值和真实的值对比计算出loss,通过loss和优化器反向更新神经网络神经元的权重【在卷积神经网络中指的是卷积核的权重,首先会初始化卷积核的权重,后续会通过优化器更新卷积核上的权重,使得卷积核能够更好的提取图片特征】。在代码中只需要写好loss和optim即可。

神经网络的训练 loss function 和 optim

损失函数 的作用:计算神经网络每次迭代的前向计算结果与真实值的差距,从而指导下一步的训练向正确的方向进行,而优化器用与优化神经网络权重,从而增加模型拟合度,降低loss。学习率(learning rate)如果下降幅度太大的话可能会越过全局最优点【可能找不到全局最优,只找到局部最优】,在代码中可以设置学习率,刚开始较大,之后调整为较小的学习速率。
梯度下降 是神经网络比较重要的部分,因为我们通常利用梯度来利用Cost function(成本函数)进行backpropagation(反向传播),不断的迭代,更新权重,偏置参数找到损失最低点,然后最终使我们的模型达到更优的效果。

lossfunction:对于单个样本,prediction和ground truth之间的差异

costfunction:针对一整个数据集,prediction和ground truth之间的差异
SGD 最基础的优化器是GradientDescent,也是最常用的。将传进来的数据只采用一部分,然后一部分一部分的去学习,就可以更快的去达到学习的效果。
Momentum 它不仅考虑当前步骤的学习率,还考虑了上一步的学习趋势,所有比SGD的方法更加快速。
ADAM 计算m时有momentum下坡的属性,计算v时有adagrad阻力的属性,然后再更新参数时,把m和v都考虑进去,实验证明,大多数时候,实验adam都能又快又好的达到目标,迅速收敛。

分类算法的评价指标:

1.正确率(accuracy)被分对的样本在所有样本数中的占比

2.错误率(error rate)与正确率相反

3.灵敏度(sensitivity)所有正例中被分对的比例,衡量了分类器对正例的识别能力。

4.特异性(specificity)所有负例中被分对的比例,衡量了分类器对负例的识别能力

5.精度(precision)精确度的度量,表示被分为正例的示例中实际为正例的比例。

6.召回率(recall)覆盖面的度量,度量有多个正例被分为正例,与灵敏度是一样的。

相关推荐
今天也想MK代码8 分钟前
基于WebRTC的实时语音对话系统:从语音识别到AI回复
人工智能·webrtc·语音识别
Vizio<34 分钟前
基于CNN的猫狗识别(自定义CNN模型)
人工智能·笔记·深度学习·神经网络·cnn
kovlistudio43 分钟前
机器学习第十三讲:独热编码 → 把“红黄蓝“颜色变成001/010/100的数字格式
人工智能·机器学习
豆豆1 小时前
机器学习 day03
人工智能·机器学习
qyresearch_1 小时前
砷化镓太阳能电池:开启多元领域能源新篇
人工智能
山海不说话1 小时前
深度学习(第3章——亚像素卷积和可形变卷积)
图像处理·人工智能·pytorch·深度学习·目标检测·计算机视觉·超分辨率重建
2201_754918411 小时前
深入理解 OpenCV 的 DNN 模块:从基础到实践
人工智能·opencv·dnn
-一杯为品-2 小时前
【深度学习】#12 计算机视觉
人工智能·深度学习·计算机视觉
蹦蹦跳跳真可爱5892 小时前
Python----神经网络(《Searching for MobileNetV3》论文概括和MobileNetV3网络)
人工智能·python·深度学习·神经网络
妄想成为master2 小时前
如何完美安装GPU版本的torch、torchvision----解决torch安装慢 无法安装 需要翻墙安装 安装的是GPU版本但无法使用的GPU的错误
人工智能·pytorch·python·环境配置