个人笔记(笔记基于吴恩达深度学习课程与中国海洋大学黄海广博士的深度学习笔记总结而成)
2.1 二分分类
本周主要内容:神经网络编程基础知识
使用逻辑回归函数来阐述正向传播与反向传播
logistic回归是一个用于二分分类的算法
例子:
计算机保存一张图片要保存成三个独立的矩阵(红,绿,蓝),每个像素点都对应矩阵中的一个数字(亮度),像下图那样,把生成的三个矩阵组成一个特征向量x(先排列红像素值,排列完之后再排列其他颜色的像素值,直到排列完),这是一个维度为n=64*64*3=12288的一列的特征向量(假设图片的像素为64*64),记为。
符号定义:
x:表示一个n维数据,为输入数据,维度为;
y:表示输出结果,取值为;
:表示第i组数据,可能是训练数据,也可能是测试数据,此处默认为训练数据;
:表示所有的训练数据集的输入值,放在一个的矩阵中,其中m表示样本数目;
:对应表示所有训练数据集的输出值,维度为1*m。
python函数实现X与Y的矩阵(使用python命令讲训练样本集表示为一个矩阵)
X.shape等于
Y.shape等于(1,m)
2.2 logistic回归(逻辑回归函数)
对实际y值的估计记为,要求[0,1]
w用来表示逻辑回归的参数,这也是一个维向量(因为实际上是特征权重,维度与特征向量相同)
参数里面还有b,这是一个实数(表示偏差)。
得到关于x的线性函数,做线性回归时会用到的函数,所以对于逻辑回归这个二元分类问题来说不是一个好的算法(因为对于输出值有取值范围[0,1],其中0代表概率为0,1代表概率为1,确定预测结果),所以我们要对这个函数生成的y估计值进行数据处理,使得他永远处于[0,1]之间,而且不影响原函数的性质。因此我们引入sigmoid函数。
如图所示,sigmoid函数的函数值永远处于[0,1]之间,且当Z越大时函数值就越趋近于1,当Z越小时函数值就越趋近于0。
2.3 logistic回归的代价/成本函数(Logistic Regression Cost Function)
为了训练逻辑回归函数的w和b,我们需要一个代价函数,通过训练代价函数来得到参数和参数。