吴恩达deep learning笔记 Neural Networks week2

通过神经网络来解决二分类问题

首先是任何和基本符号的说明
我们要解决一个二分类问题,比如要识别一副图片是否是一只猫咪,所以输入是图片数据,输出是 1 or 0 代表是猫咪,不是猫咪
(x,y)代表训练数据的一条数据对,x是输入数据,y是label即标记
X是nxn_x维的,比如图片是 64 X 64 像素的图片,我们把它拉长成一个长的向量,向量的大小是 64 X 64 X 3 ,乘以3是因为图片是RGB 3通道的。
训练集的大小是m ,另外一个trick是我们通常要把所有输入数据写成矩阵的形式,大写X,维度是(nx,m)(n_x,m),每一列是一条样本,共m列。
吴恩达deep learning笔记 Neural Networks week2
下面用逻辑回归来解决这个二分类问题,
Given x ,want yhat=P(y=1x)y^{hat} = P( y = 1|x)
即用概率的形式来表示,当已知输入x,y = 1的概率,即是一只猫咪的概率。
我们知道线性回归函数的表达形式 y=wx+by=wx+b
这里我们习惯把b 与 w和到一起,写成θ\thetay=θy=\thetax
吴恩达deep learning笔记 Neural Networks week2
已经选择了逻辑回归作为模型,下面我们确定损失函数
在这里,我们不使用平方损失函数作为loss Function 因为在这里它是非凸的,无法得到全局最优解,我们使用以下函数
吴恩达deep learning笔记 Neural Networks week2
其中Loss Function ,这是对单个训练样本的损失
L(yh,y)=(ylogyh+(1y)log(1yh))L(y^h,y)=-(ylog y^h + (1-y)log(1-y^h))
其中Cost Function 是对整个训练集的平均损失,它是关于参数w,b的函数,我们通过对它最小化,得到最优的w,b
J(w,b)=1m(L(yh,y))J(w,b)=\frac{1}{m}\sum(L(y^h,y))
定义好代价函数后,就可以使用梯度下降,不断迭代更新参数