神经网络

神经网络

神经网络模型

image-20221207160513481

神经网络与线性回归的思想类似,然后添加相应的激活函数输出对应的结果。经典的神经网络有以下三个层次组成:输入层(input layer), 隐藏层 (hidden layers), 输出层 (output layers)。

image-20221207163123502

层与层之间相互连接,每个连接都是带有权重值的。隐藏层和输出层的神经元由输入的数据计算输出,但输入层神经元只有输入,一般指一个训练数据样本的数据。

1、激活函数

神经网络中的每一层的输入输出都是一个线性求和的过程,下一层的输出只是承接了上一层输入函数的线性变换。如下图,如果没有激活函数,那么就相当于是一个线性激活函数g(z)=z,这个时候无论网络多么复杂,最后的输出都是输入的线性组合,而纯粹的线性组合并不能解决更为复杂的问题。

image-20221207164421644

引入激活函数之后,由于激活函数都是非线性的,这样就给神经元引入了非线性元素,使得神经网络可以逼近任何非线性函数,这样使得神经网络应用到更多非线性模型中。

  • sigmoid 函数:

    函数将变量映射到(0,1)之间,主要用来做二分类神经网络,与逻辑回归中添加sigmod函数思想一样。

    g(x)=11+ex

    image-20221207163707183
  • softmax函数:

    softmaxsigmoid的一种更普遍的形式。它常用于多分类问题。与sigmoid类似,它产生的值范围为 [0,1] ,因此它被用作分类模型中的输出层。

    g(xj)=exjk=1Nexk

  • ReLU函数:

    产生的值范围为 [0,+) ,普遍用于神经网络的隐藏层。

    g(x)={x,x>=00,x<0

    image-20221207163826862

2、Adam优化算法

Adam优化算法是在梯度下降算法基础上的改进,它能够根据梯度下降的方向调整学习率,当梯度下降的方向相同时,增大学习率,当梯度下降的方向一直摇摆时,减小学习率,从而能够更快的学习参数。

image-20221207202552249

基于神经网络的分类问题

1、二分类问题

逻辑回归在神经网络上的应用,激活函数使用sigmod函数。

2、多分类问题

多分类问题是二分类问题(逻辑回归)的泛化,它把输入的样本划分为多个类别:

image-20221207193347460

类似于逻辑回归,这里使用softmax函数作为激活函数,损失函数定义为:

image-20221207194956509

激活函数使用softmax函数,此时输出值和原来的逻辑回归不一样,它与所有输出层的原始输出值都相关

image-20221207195909172

3、多标签问题

多标签问题和多分类问题不同,多标签问题相当于多个二分类问题,比如:你需要分别标注图上是否包含car,bus,pedestrian三类标签。

image-20221207201127235

此时可以在输出层设置3个节点,然后对这3个节点分别使用sigmod函数,每个标签都相当于一个二分类问题:

image-20221207201739582

参考资料

  1. 为什么神经网络要使用激活函数?
  2. 多分类问题
posted @   于辰文  阅读(245)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示