机器学习的最入门算法--感知机

感知机(perceptron) 算法由美国学者Frank Rosenblatt在1957年提出。感知机是神经网络的起源算法,因此,要想学习机器学习,了解感知机的重要思想是非常必要的。

1.感知机是什么

感知机就是接收多个输入信号,给出一个输出信号的模型。
如图,是一个有两个输入,一个输出的最基本的感知机。图中圆圈为神经元,当两个输入乘以对应的权重并加和进入该神经元后,如果值大于设定的阈值 θ \theta θ ,则该神经元被激活,输出1,否则输出0,阈值用 θ \theta θ 表示。

图1 有两个输入的感知机
数学式表示如下: 公式1

y = { 0 ( ω 1 x 1 + ω 2 x 2 ≤ θ ) 1 ( ω 1 x 1 + ω 2 x 2 > θ ) y=\left\{ \begin{aligned} 0 \quad(\omega_1x_1 + \omega_2x_2 \leq \theta) \\ 1 \quad(\omega_1x_1 + \omega_2x_2 > \theta) \\ \end{aligned} \right. y={0(ω1x1+ω2x2θ)1(ω1x1+ω2x2>θ)

2.简单逻辑电路

感知机可以表示基本电路如与门电路表如下:

表1 与门真值表
x1x2y
000
100
010
111

如何用感知机表示呢?很简单,只需要人工设定好一定的权值,即可得到,如权值 ω \omega ω 设为:(0.5,0.5,0.7),(1.0,1.0,1.0)等都可满足。

同样的,或门与非门也可以通过设定不同的参数,使用感知机进行表示。
这里参数是通过人工设定的,而机器学习的目的就是通过训练数据让计算机找到正确的参数,该过程就叫做学习

3.感知机的实现

为了更加数学化的表示以上实现过程,作如下改变:
公式2

y = { 0 ( b + ω 1 x 1 + ω 2 x 2 ≤ 0 ) 1 ( b + ω 1 x 1 + ω 2 x 2 > 0 ) y=\left\{ \begin{aligned} 0 \quad(b + \omega_1x_1 + \omega_2x_2 \leq 0) \\ 1 \quad(b + \omega_1x_1 + \omega_2x_2 > 0) \\ \end{aligned} \right. y={0(b+ω1x1+ω2x20)1(b+ω1x1+ω2x2>0)

此处,b为偏置, ω ​ \omega​ ω 为权重。权重表示了控制输入信号的重要性,偏置则是激活神经元的容易程度。
实现形式如下:

def AND(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

4.感知机的局限

如下,异或逻辑电路的真值表如下

表2 异或门真值表
x1x2y
000
101
011
110

发现无论如何对感知机调参,感知机都无法实现异或逻辑电路的表示。

图2 可否通过一条直线分开圆形和三角
图3 使用曲线可以分开圆形和三角

所以,感知机只能表示由一条直线分割的空间,即线性空间,不能表示非线性空间。

5.多层感知机

不用悲观的是,如下图所示,我们通过之前实现的多个感知机,就可以实现异或逻辑的表示。如图,多层感知机就是一个多层的神经网络结构。

图4 通过组合与、与非、或门实现异或门
图5 用感知机表示异或门
表3 异或门真值表
x1x2s1s2y
00100
10111
01111
11000

理所当然,异或门的实现也相当简单,按照组合逻辑调用之前的门函数即可:

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

理论证明,通过组合多层感知机可以表示任意电路,甚至可以表示计算机。其实,理论上2层就够表示计算机,即现实现与门和或门,然后实现全加器和半加器,接着实现算数逻辑单元ALU,最后实现CPU。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值