神经网络可以用在分类问题和回归问题上,不过需要根据情况改变输出层的激活函数。一般而言,回归问题用恒等函数,分类问题用 softmax 函数。
机器学习的问题大致可以分为分类问题和回归问题。分类问题是数据属于哪一个类别的问题。比如,区分图像中的人是男性还是女性的问题就是分类问题。而回归问题是根据某个输入预测一个(连续的)数值的问题。比如,根据一个人的图像预测这个人的体重的问题就是回归问题(类似“57.4kg”这样的预测)。
恒等函数会将输入按原样输出,对于输入的信息,不加以任何改动地直接输出。
分类问题中使用的 softmax 函数
首先,上公式:
这个函数的变量是一个有n个元素的数组:,其中某一个元素
对应的函数的值等于它自身的指数函数值除以数组中所有元素的指数函数值之和,指数函数为
.
其次,上一组图,大概了解一下softmax函数的特点:


可以发现softmax函数具有以下特点:a. 不改变输入值的大小关系,输入值在数组中属于比较小的数值的话,其对应的输出也比较小。b. softmax函数的所有输出值之和为1.
机器学习的过程可以分为“学习”和“推理”
我的理解就是:
学习——已知输入,已知输出,确定模型,识别参数(如果你学过控制就很明白这个了,就是参数辨识)
推理——已知输入,已知模型和参数,求输出(验证模型与参数的正确性)
在学习过程中,分类问题使用softmax函数作为输出层的激活函数,但由于分类问题始终把最大值对应的类别作为识别的类别,而softmax函数并不改变输入值的大小关系,因此,在推理过程中,考虑到计算量,直接省略了softmax函数。