课程来源:吴恩达 深度学习课程 《神经网络基础》
笔记整理:王小草
时间:2018年5月15日
1.什么是二分类
1.1 二分类?
给定一张图片,要识别出这张图片,“是猫”或“不是猫“的问题就是二分类问题。
输入以x表示,输出以y表示。
如何表示图片:计算机是如何计算图片的呢?
一张图片实际上由一堆像素构成,一堆像素可以由矩阵表示出来。如果你输入的是一张64*64像素的彩色图片,那么表示成三个64*64的矩阵(彩色图片有RGB三个通道,每个通道对应一个矩阵)
将这些像素亮度转换成一个向量形式的特征x。维度是64*64*3=12288的向量
讲特征向量输入模型,预测输出结果标签y是1还是0(比如1代表有猫,0代表无猫)
1.2 符号约定
定义一下接下去所有课程中都会统一用到的符号。
一个样本用(x,y)表示,x是nx维的实属向量,y是一个属于{0,1}集合内的整数
符号表示:
m个样本如下表示:
样本会分为训练集于测试集,训练集的数目用Mtrain表示,测试集的数目用Mtest表示。
矩阵表示:
用矩阵表示样本的特征x,每一列是一个样本特征,若有m个样本的话,每个样本有nx维的话,该矩阵就有nx * m大小
注:平时会每行放一个样本,但在神经网络中1列一个样本会更方便计算。
用矩阵表示样本的标签y,大小为1 * m的矩阵
2.logistic回归
对于二分类,输入特征向量x, 期望输出一个概率,根据这个概率去判断是输出1还是0.
那要选择什么样的函数或模型,去做二分类呢?若使用线性函数:
参数:
输出:
可见输出的y并非是一个0-1之间的概率,因此不能选用。
于是逻辑回归在线性函数的外面又加了一层sigmoid函数:
sigmoid函数长这样:
将线性函数的输出作为z,即sigmoid函数的输入。而sigmoid的输出是分布再[0,1]之间的值,符合概率取值。
sigmoid函数的公式: