前言
- 对于第二章学过的感知机来说,它(理论上)能够表示可以进行复杂处理的计算机,但确定合适的、能够符合预期的输入与输出的权重(偏置和权重)的工作还是由人工来进行的。
- 神经网络解决了上面所说的问题,具体来说,神经网络可以自动地从数据中学习到合适的权重参数。
- 本章中,先介绍神经网络的概要,然后重点关注神经网络进行识别时的处理。
- 第四章,将讲解神经网络如何从数据中学习权重参数。
1. 从感知机到神经网络
1.1 神经网络的例子
- 下图为神经网络的一个例子,包括输入层、中间层和输出层,其中中间层有时也称为隐藏层。“隐藏”意为隐藏层的神经元是肉眼看不见的。
- 另外,本书约定,从输入层到输出层依次称为第0层、第1层、第2层,这是为了方便后面基于Python来实现。
- 下图中的网络为2层网络,因为实质上只有2层神经元(输入层、隐藏层、输出层的总数减去1)有权重。
1.2 复习感知机
-
下图的感知机接收x1和x2两个输入信号,输出信号y。
-
其数学表达式如式(3.1)所示。其中,b被称为偏置,用于控制神经元被**的容易程度;w1和w2被称为权重,用来表示各个信号的权重,用于控制各个信号的重要性。
-
上图中,偏置b并没有表示在感知机的图中,如果要明确的表示出b,可以像下图这样做。
上图中的感知机将x1、x2、1三个信号作为神经元的输入,将其和各自的权重相乘后,传送至下一个神经元。在下一个神经元中,计算这些加权信号的总和,如果总和超过0,则输出1,否则输出0。 -
现在我们将式(3.1)改写成更简洁的形式:引入一个新的函数h(x)(超过0输出1,否则输出0)。
式(3.2)中,输入信号的总和会被函数h(x)转换,转换后的值就是输出y。
1.3 **函数登场
- 式(3.3)中的h(x)函数会将输入信号的总和转换为输出信号,这种函数一般称为**函数。“**函数”的作用在于决定如何来**输入信号的总和。
- 现在将式(3.2)进一步改写:先计算输入信号的加权总和,然后用**函数转换这一总和。