| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 1.2 pytorch深度学习--softmax回归 -> 正文阅读 |
|
[人工智能]1.2 pytorch深度学习--softmax回归 |
准备由线性回归到softmax回归本章的核心目标是对图片分类,和之前线性回归中求w和b的值不同,本章的目的是求出来所属类别,即一个是连续的,一个是离散的。在编程之前,可以想象该系统为一个黑箱,输入值是各个图片,输出值是图片所属类别的序号。 将问题细化思考,输入的是图片数字化后的值,输出是图片属于各个分类的概率,选择最大概率的类别作为输出。 在确定到这个程度之后就需要考虑黑箱内部的东西了,根据线性模型,我们首先想到的是,将数字化后的各个值赋予权重后相加,之后加上偏差b。得到的输出通过某种办法,转化成概率。将最大的概率的结果与实际结果做对比,如果不同,则通过损失函数对w和b进行迭代,减小误差。 首先考虑将输出值转化成概率。上述过程中我们明确了希望找到最大概率作为结果输出。根据概率的定义,我们知道每个值都应该是非负数,所有情况相加应该得0。因此,输出结果首先通过某个方程y将在实数范围内的结果映射到非负数范围内,同时不会改变相对大小。之后则可以通过用yi除以全部y求和,这样则可以满足相加得1。 softmax函数前人提出了softmax函数,满足了上述的要求。 根据定义我们再次分析需求, 1. 对输出值求指数可以将在实数范围内的数映射到非负数范围内,符合概率要求; 2. 指数后的值本身除以所有指数后的值的和。显然,当全部输出相加时等于1,符合概率要求。 损失函数——交叉熵损失在确定输出后就需要考虑通过损失函数对w和b进行迭代更新。 在线性回归时我们选择了均方损失(MSE),在此处我们将选择另一种损失函数,交叉熵损失函数。(由于本人学艺不精,此处根据最大似然函数推导得出交叉熵损失没有完全弄明白,为防止误人子弟,不具体说明。) 我们已知标签y只有1和0两个值,因此公式简化为当yj=1时的值。 此处附一篇对于交叉熵损失和均方损失对比的讲解。 损失函数|交叉熵损失函数https://zhuanlan.zhihu.com/p/35709485 图像分类数据集我们将图像分类中应用最广泛的数据集之一Fashion-MNIST。可以通过torchvision调用。
softmax训练首先考虑一下实现步骤:
第一二步
第三步:函数编写根据softmax定义首先写出softmax函数:
和线性回归不同的是,线性回归的输出数为1,而softmax根据类别的种类有多个输出数。已知fashion-mnist数据集有10个种类,因此输出是10。下面是训练网络函数:
损失函数。我们已确定损失函数是交叉熵函数。
更新函数。SGD函数,随机梯度下降。在此之前我们应该已经计算过梯度。
第四步:单次训练接下来需要编写单次训练的函数,我们希望对全部样本训练一次,得到训练后的损失率(即错误样本 / 全部样本)和训练精度(即训练正确样本/全部样本)。 为了记录每一次的结果,可以简单的直接定义变量对每个批量的结果累加,或者定义一个加法器类,记录结果。 此处考虑加法器类。首先考虑加法器实现的功能:累加,输出结果。
?此外,因为需要训练精度,因此需要求的正确判断样本类型的个数。定义accuracy函数
?单次训练
? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 20:25:51- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |