深度学习:感知机
感知机是作为神经网络的起源的算法。
1、什么是感知机
感知机接受多个信号,输出一个信号。感知机的信号只有两种取值(1/0)。
2、单层感知机的简单实现
与门、与非门和或门都是具有相同构造的感知机,区别只在于权重参数的值。
#感知机实现 def AND(x1,x2): """与门""" w1,w2,theta = 0.5,0.5,0.7 tmp = x1*w1 + x2*w2 if tmp <= theta: return 0 elif tmp > theta: return 1 print(AND(0,0)) print(AND(1,0)) print(AND(0,1)) print(AND(1,1))
输出:
0 0 0 1
def NAND(x1,x2): """与非门""" x = np.array([x1,x2]) w = np.array([-0.5,-0.5]) b = 0.7 tmp = np.sum(w*x) + b if tmp <= 0: return 0 else: return 1
def OR(x1,x2): """或门""" x = np.array([x1,x2]) w = np.array([0.5,0.5]) b = -0.2 tmp = np.sum(w*x) + b if tmp <= 0: return 0 else: return 1
单层感知机无法分离非线性空间
3、异或门的实现
叠加了很多层的感知机也称为多层感知机。
def XOR(x1,x2): """异或门""" s1 = NAND(x1,x2) s2 = OR(x1,x2) y = AND(s1,s2) return y print(XOR(0,0)) print(XOR(1,0)) print(XOR(0,1)) print(XOR(1,1))
0 1 1 0
通过叠加层(加深层),感知机能进行更加灵活的表示。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现