斋藤康毅著的深度学习入门的学习记录 第二章 感知机
第二章 感知机
2.3 感知机的实现
2.3.1 简单实现
用python实现一个与门,先定义一个接收参数x1和x2的AND函数。
1 # 与门:w1, w2, theta =0.5, 0.5, 0.7 2 # 与非门:w1, w2, theta =-0.5, -0.5, -0.7 3 # 或门:w1, w2, theta =m, n, 0 m和n任意正数 4 5 def AND(x1, x2): 6 w1, w2, theta =0.5, 0.5, 0.7 7 tmp = x1*w1 + x2*w2 8 if tmp <= theta: 9 return 0 10 elif tmp > theta: 11 return 1 12 13 y1=AND(0, 0) 14 y2=AND(0, 1) 15 y3=AND(1, 0) 16 y4=AND(1, 1) 17 print(y1,y2,y3,y4)
2.3.2 导入权重和偏置
刚才的与门比较容易理解,但是考虑到后续的神经网络,我们改写一个形式,采用权重和偏执的概念
1 import numpy as np 2 3 #与门 4 def AND(x1,x2): 5 x = np.array([x1, x2]) # 输入 6 w = np.array([0.5, 0.5]) # 权重 7 b = -0.7 # 偏执 8 y = np.sum(w*x) + b 9 if y <= 0: 10 return 0 11 else: 12 return 1 13 14 #与非门 15 def NAND(x1, x2): 16 x = np.array([x1, x2]) # 输入 17 w = np.array([-0.5, -0.5]) # 权重 18 b = 0.7 # 偏执 19 y = np.sum(w * x) + b 20 if y <= 0: 21 return 0 22 else: 23 return 1 24 25 #或门 26 def OR(x1, x2): 27 x = np.array([x1, x2]) # 输入 28 w = np.array([0.5, 0.5]) # 权重 29 b = -0.2 # 偏执 30 y = np.sum(w * x) + b 31 if y <= 0: 32 return 0 33 else: 34 return 1
2.4 感知机的局限性
2.4.1 异或门
仅当x1或x2中的一方为1时,才会输出1(‘异或’是拒绝其他的意思),用前面介绍的感知机是无法实现这个异或门的。
2.4.2 线性和非线性
感知机的局限性就在于他只能表示由一条直线分割的空间。
曲线分割的空间称其非线性空间,直线分割的称为线性空间
2.5 多层感知机
感知机可以叠加层,所以可以用叠加层来表示异或门。
2.5.2 异或门的实现
用之前定义的AND,NAND,OR函数来实现。
1 def XOR(x1,x2): 2 s1 = NAND(x1,x2) 3 s2 = OR(x1,x2) 4 y = AND(s1,s2) 5 print(y) 6 return y 7 8 XOR(0,0) 9 XOR(0,1) 10 XOR(1,0) 11 XOR(0,0)
小结
1、感知机是具有输入和输出的算法。
2、感知机将权重和偏执设置为参数。
3、使用感知机可以表示与或门等逻辑电路。
4、异或门无法用单层感知机,需要两层。
5、单层感知机只能表示线性空间,而多层感知机可以表示非线性空间。
6、多层感知机理论上可以表示计算机。
本文作者:薄书
本文链接:https://www.cnblogs.com/aimoboshu/p/13687814.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具