1. 深度学习的基础

神经网络。类似于人类的大脑。

每一个节点的输入是前一个节点的输出,现在的神经网络可以达到几十层或者是几百层

计算机如何识别小喵?

这些信号传给大脑,大脑将这些信号进行分类,最后得到正确的结果。

类比于计算机,将不同物体的异同点,变成神经网络的参数。

  1. 训练步骤

现在可以凭借现有的工具构建神经网络,pytorch就是用来构建神经网络的包,比如识别手写的9.

准备数据

定义模型

训练模型

评估模型

做出预测

    1. 准备数据

pytorch框架会提供基本的数据集,可以导入手写数据集,并用python可视化展示。

计算机可以将图片进行分割

计算机将图片进行分割,转化成数据信息然后保存下来,就记住这张图了。

    1. 训练模型
  1. 卷积层

将图片变成0—1的矩阵

  1. 池化层

将图像矩阵压缩,变成更小更容易计算的矩阵

  1. 全连接层

将这个矩阵展开成一段数据,就是身份证号码。神经网络的模型也是这样产生的。

训练阶段:损失函数:交叉熵损失。优化器:随机梯度下降

  1. 评估预测

评估模型:随便写个字判断一下,确定能不能直逼满分

后面是编写程序一样,编写一个神经网络模型。

以下是每个节点的结构

以下是CNN结构:

卷积层

将图片变成0—1的矩阵

池化层

将图像矩阵压缩,变成更小更容易计算的矩阵

全连接层

将这个矩阵展开成一段数据,就是身份证号码。神经网络的模型也是这样产生的。

数据准备

数据集划分就是将数据划分成一小撮:batch,然后进行训练。

  1. 构建简单的数字识别卷积神经网络模型

卷积层数增高就可以识别更多的内容。池化层缩短表示空间的大小,

神经网络的输入与标签进行比较,通过损失函数进行比较差异。

然后就跑不了反向传播,反向传播是在前向网络传播之后进行的,可以调整权重和偏执,从而减少损失函数的值。通过梯度下降更新模型的性能。

    1. 损失函数

使得知道当前结果与实际结果差距有多大,好比投球时的得分板,在机器学习的世界里,损失函数就是得分板,如果没有,就不知道自己得分多少,像在黑暗中学习,回归问题用均方误差,分类问题用交叉熵损失。

反向传播之后使用优化器进行调整模型的参数,以最小化损失函数。使用优化器是为了找到最短的路径使得损失最小化,不同的优化器是不同的向导。

以上使用的就是梯度下降的方法,寻找最佳方向和最佳路径到达山脚下。以上就是损失函数和优化器的作用。

交叉熵损失作为损失函数

随机梯度下降作为优化器

以上过程在多个epoch循环中执行,直到训练完成。

链接:B站最友好的动画版Pytorch教程最后一期【第八期】!学完解锁你的PyTorch技能!_哔哩哔哩_bilibili

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐