![深度学习从0到1](https://wfqqreader-1252317822.image.myqcloud.com/cover/588/39479588/b_39479588.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.7 单层感知器分类案例
题目:假设我们有4个2维的数据,数据的特征分别是(3,3),(4,3),(1,1),(2,1)。(3,3)和(4,3)这两个数据的标签为1,(1,1)和(2,1)这两个数据的标签为-1。构建神经网络来进行分类。
思路:我们要分类的数据是二维数据,所以只需要2个输入节点(一般输入数据有几个特征,我们就设置几个输入神经元),我们可以把神经元的偏置值也设置成一个输入节点,使用3.2.3小节中的方式,这样我们需要3个输入节点。
输入数据有4个:(1,3,3),(1,4,3),(1,1,1),(1,2,1)。
数据对应的标签:(1,1,-1,-1)。
初始化权值w1,w2,w3:取0~1的随机数。
学习率lr(learning rate):设置为0.1。
激活函数:sign函数。
我们可以构建一个如图3.7所示的单层感知器。
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_57_1.jpg?sign=1739188753-O5bxbJe49wKgbZTlLto3lZ12P7INZCkb-0-0c6e4b539e723a3c1ac33ee416441591)
图3.7 单层感知器
如代码3-3所示为单层感知器应用案例。
代码3-3:单层感知器应用案例
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_57_2.jpg?sign=1739188753-cxuKyV3mowmYu7iQ9TPL1XLSqMmpDHe9-0-782e6990b12ee5d273bd4710a6a53f07)
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_58_1.jpg?sign=1739188753-8nMWtcoQ0IdejTaIvno5aJSM1OJJrodV-0-5f5b08f478cb0e9a8b58b1eccc79977a)
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_59_1.jpg?sign=1739188753-dQ6anBVctlTqMJNefRK5f0cKkF9mXffS-0-710dd6bbc6577d8d61732559bedc6b8a)
运行结果如下:
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_59_2.jpg?sign=1739188753-zmv1FDHQkzokv1ODlInkc5oKl9EAnaA0-0-86b7f6dd7cb1dd64177d3ecf7a419c88)
因为权值的初始化使用的是随机的初始化方式,所以每一次训练的周期和画出来的图可能都是不一样的。这里我们可以看到单层感知器的一个问题,虽然单层感知器可以顺利地完成分类任务,但是使用单层感知器来做分类的时候,最后得到的分类边界距离某一个类别比较近,而距离另一个类别比较远,并不是一个特别理想的分类效果。图3.8中的分类效果应该才是比较理想的分类效果,分界线在两个类别比较中间的位置。
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_60_1.jpg?sign=1739188753-D0ERsuJeAo40DOxLSPD5UOqemelvdwsb-0-7779a2c6c4131b893dc3ca8d184322ce)
图3.8 单层感知器比较理想的分类边界