1.感知机
接收多个输入信号,输出一个信号,有“流/不流”(1/0)两种取值。在本书中,0对应“不传递信号”,1对应“传递信号”。其中,x1、x2是输入信号,y是输出信号,w1、w2是权重(w是weight的首字母)。图中的○称为“神经元”或者“节点”。输入信号被送往神经元时,会被分别乘以固定的权重(w1x1、w2x2)。神经元会计算传送过来的信号的总和,只有当这个总和超过了某个界限值时,才会输出1。这也称为“神经元被激活”。这里将这个界限值称为阈值,用符号θ表示。
w1和w2是控制输入信号的重要性的参数,而偏置是调整神经元被激活的容易程度(输出信号为1的程度)的参数。比如,若b为−0.1,则只要输入信号的加权总和超过0.1,神经元就会被激活。
2.简单实现
与门
def AND(x1, x2):
w1, w2, theta = 0.5, 0.5, 0.7#权重,偏置
tmp = x1w1 + x2w2
if tmp <= theta:
return 0
elif tmp > theta:
return 1
def AND(x1, x2):
x = np.array([x1, x2])
w = np.array([0.5, 0.5])
b = -0.7
tmp = np.sum(w*x) +