深度学习入门(2):多层感知机

文章介绍了感知机的局限性,尤其是不能实现异或门,因为它只能在线性空间中工作。通过引入多层感知机,可以利用非线性特性来组合基本逻辑门实现复杂功能,如异或门。多层感知机展示了神经网络的强大潜力,能表示计算机的复杂计算。
摘要由CSDN通过智能技术生成

目录

前言

1. 感知机的局限性

1.1 异或门

1.2 线性和非线性

 2. 多层感知机

2.1 异或门实现

总结


前言

之前用感知机实现了与门、与非门、或门三种逻辑电路,但是发现感知机并不能实现异或门。

1. 感知机的局限性

1.1 异或门

异或门真值表如下所示,仅当x1或x2中的一方为1时,才会输出1。

表1-1 异或门真值表

x1x2y
000
101
011
110

深度学习入门笔记(1):感知器中得出,我们可用使用参数(w1,w1,b)=(0.5,0.5,-0.2),得出式子(1-1):

(1-1)

感知机生成直线-0.2+0.5x1+0.5x2=0分割开的空间,其中一个空间输出1,另一个空间输出0,如图1-1所示。我们可以看到一条直线可以将▲和⚪分隔开。

图1-1 感知机实现或门可视化

但是如图1-2异或门空间,没有一条直线可以将▲和⚪分隔开。

图1-2 异或门空间

1.2 线性和非线性

如果使用曲线就可以分割为两个空间,使用曲线分割而成的空间称为非线性空间,由直线分割而成的空间称为线性空间,分割示意图如图1-3所示。

图1-3 可以使用曲线将▲和⚪分隔开

 2. 多层感知机

数字电路基础可以知道,通过组合与门、与非门、或门来实现异或门。

图2-1 组合实现异或门 

2.1 异或门实现

下面通用Python来实现异或门,使用之前深度学习入门笔记(1):感知机定义的AND函数、NAND函数、OR函数来组合实现。

def XOR(x1,x2):
    s1 = NAND(x1,x2)
    s2 = OR(x1,x2)
    y = AND(s1,s2)
    return y

print(XOR(0,0))#输出0
print(XOR(1,0))#输出1
print(XOR(0,1))#输出1
print(XOR(1,1))#输出0

与门、或门是单层感知机,而异或门是2层感知机。叠加了多层的感知机也称为多层感知机。多层感知机的运行过程可以比作是流水线的组装。第一段的工人对零件进行加工,完成后再送给下一段工人。所有“单层感知机”无法表示的东西通过增加一层来解决。

总结

感知机是学习神经网络的基础!多层感知机可以实现更复杂的电路,比如加法运算其可以用感知机实现,实际上,使用感知机甚至可以表示计算机。

  • 12
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值