👨🎓作者简介:一位即将上大四,正专攻机器学习的保研er
🌌上期文章:机器学习&&深度学习------softmax回归的简洁实现
📚订阅专栏:机器学习&&深度学习
希望文章对你们有所帮助
线性回归已经完结了, 接下来要开始讲解多层感知机,在这之前,先介绍感知机的相关内容,有助于更好的理解。
感知机
感知机的概念
对上图,给定输入x,权重w,和偏移b,感知机输出:
o = σ ( < w , x > + b ) σ ( x ) = { 1 ,当 x > 0 时 − 1 , o t h e r w i s e o=\sigma(<w,x>+b)\\ \sigma(x)= \begin{cases} \begin{aligned} 1,当x>0时\\ -1,otherwise \end{aligned} \end{cases} o=σ(<w,x>+b)σ(x)={1,当x>0时−1,otherwise
(上式中的otherwise也可能是输出1和0)
容易看出感知机就是一个二分类问题。
和线性回归相比,感知机就是简单的两个离散数,而线性回归中会输出多个实数。
训练感知机
这其实很好理解,if中的判断条件小于等于0的话,说明预测和实际情况是相反的,这时候就需要进行更新了。
这个更新,其实等价于使用批量大小为1的梯度下降,并使用了下面的损失函数:
l ( y , x , w ) = m a x ( 0 , − y < w , x > ) l(y,x,w)=max(0,-y<w,x>) l(y,x,w)=max(0,−y<w,x>)
感知机例子
下面是区分猫狗的图像,用感知机非常适合解决这种二分类问题。
感知机缺陷
一个最大的缺陷,他所能解决的问题,一定要是一条线可以进行切割和分别的,那么如果让感知机来解决XOR问题:
两个红点表示输入的两个数都是一样的符号,而绿点表示两个输入的数是异号的。这就导致我们无法用一条直线来分开这个问题。
连一个XOR函数都没办法解决的话,感知机的缺陷可想而知,而在之后将会进行多层感知机的讲解。