目录
8-1 非线性假设
一个非线性分类例子如下;
若使用logistic回归拟合,可能导致过拟合问题。或是让机器识别下图的物体,选取车轮处像素点为pixel 2,车门处pixel 1:
最终产生一个数据集如下,我们需要非线性假设来区分这两种情况。
若使用50*50像素的灰度图片,会产生2500个像素点(如果是RGB图像会产生7500个像素点),因为特征过多(可能高达300万),使用常规拟合无法满足要求,因此要使用神经网络。
8-2 神经元和大脑
起源:人们想制造出模拟人类大脑的算法
一些脑传感器例子:舌头视觉、人体声纳、触觉皮带
8-3 模型展示(Ⅰ)
神经网络模仿大脑中的神经元,其包括树突(输入),轴突(输出),它直接通过轴突将电信号中的信息传递至下一个神经元的树突。
在神经网络中,我们将神经元模拟成一个逻辑单元。x1、x2......为输入端,经过模拟神经元,由输出端计算结果。有时输出端也加上x0=1,成为偏置单元模型如下图所示:
有时我们称上图模型为带sigmoid激活函数的人工神经元,而激活函数指非线性函数g(z)=1/(1+e^-z)。
而神经网络就是一组神经元连接在一起的集合,网络中的首层也称为输入层,最后一层称为输出层,中间层称为隐藏层(可以不止一个)。如下图所示:
激活项:一个神经元计算并输出的值
ai^(j):第j层的第i个单元的激活项
θ^(j):参数/权重矩阵,控制相连接两层的映射。
计算公式如下:
若神经网络在第j层有第s_j个单元,在j+1层有s_(j+1)个单元,那么θ^(j)维度为(s_(j+1))*(s_j+1)。
8-4 模型展示(Ⅱ)
用向量形式表示计算公式,首先定义
即向量化
若定义a^(1)=x,z^(2)=θ^(1)*a^(1)
即前向传播
8-5 举例与直觉理解(Ⅰ)
XOR:异或,a XOR b,若a≠b,结果为1,若a=b,结果为0。
XNOR:同或,a XNOR b,若a≠b,结果为0,若a=b,结果为1。
例子:x1和x2代表二进制,非0即1。
例1:AND
x1,x2∈{0,1},y=x1 AND x2
将-30(即(Θ_10)^(1))赋给x0的系数,+20(即(Θ_11)^(1))赋给x1的系数,+20(即(Θ_12)^(1))赋给x2的系数,即h_θ(x)=g(-30+20*x1+20*x2)。(注:g(z)即logistic函数)
x1 | x2 | h_θ(x) |
0 | 0 | g(-30) ≈0 |
0 | 1 | g(-10) ≈0 |
1 | 0 | g(-10) ≈0 |
1 | 1 | g(10) ≈1 |
因此h_θ(x)≈x1 AND x2
例2:OR
由图可得:h_θ(x)=g(-10+20*x1+20*x2)
x1 | x2 | h_θ(x) |
0 | 0 | g(-10)≈0 |
0 | 1 | g(10)≈1 |
1 | 0 | g(10)≈1 |
1 | 1 | g(30)≈1 |
因此h_θ(x)≈x1 OR x2
8-6 举例与直觉理解(Ⅱ)
例3:NOT
由图可得:h_θ(x)=g(10-20*x1)
x1 | h_θ(x) |
0 | g(10)≈1 |
1 | g(-10)≈0 |
例4:XNOR
将一和二这两个神经网络组合到一个中,再将第三个神经网络加入其中:
其真值表如下:
x1 | x2 | (a_1)^(2) | (a_2)^(2) | h_θ(x) |
0 | 0 | 0 | 1 | 1 |
0 | 1 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 0 | 1 |
即可实现对以下数据的拟合:
8-7 多元分类
方法:一对多
将输出与给定的特征一一比对,确定哪个特征与输出值相符合。