![深度学习从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=1738849624-e19I0ybblDCn0ALZAdl3G0xt1IfKjhFN-0-e8cbf3994f171dd09801f2a06fee6d29)
图3.7 单层感知器
如代码3-3所示为单层感知器应用案例。
代码3-3:单层感知器应用案例
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_57_2.jpg?sign=1738849624-62tu6biedV7MHKOOZhzKVApnYNe5fHhk-0-1313e86181990126b6d3d7241009e5ed)
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_58_1.jpg?sign=1738849624-0ulr2ahUenZGEO2Q4An5qclkew7MJOv2-0-eda24089fa26470b2c120e8d6b35d7f3)
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_59_1.jpg?sign=1738849624-iE6KExHr8vs7w6fFlN422rpj7IPFeBLx-0-aeb388229124195cb7ad67d576123233)
运行结果如下:
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_59_2.jpg?sign=1738849624-Xb8wMwBkR1uWg1fYmhJBNf9cZk40Innk-0-7a2bbcf955e3ace54af7dd261f51d053)
因为权值的初始化使用的是随机的初始化方式,所以每一次训练的周期和画出来的图可能都是不一样的。这里我们可以看到单层感知器的一个问题,虽然单层感知器可以顺利地完成分类任务,但是使用单层感知器来做分类的时候,最后得到的分类边界距离某一个类别比较近,而距离另一个类别比较远,并不是一个特别理想的分类效果。图3.8中的分类效果应该才是比较理想的分类效果,分界线在两个类别比较中间的位置。
![](https://epubservercos.yuewen.com/3560BA/20637463908664506/epubprivate/OEBPS/Images/41193_60_1.jpg?sign=1738849624-WSO43ExIg9K13B6pF1dILc40RdUVk2dd-0-1359803f42c9aa1a5a2715a6fd5eadf3)
图3.8 单层感知器比较理想的分类边界