神经网络 neural network
是一种模仿神经网络行为特征,进行分布式并行信息处理的算法数学模型。
二分分类 binary classification
以一个二分分类问题为例,假如有若干图片,需要判断图片中是否是一只猫,这时就需要将图片特征作为一个输入x,通过计算过程,返回0或1的结果y,结果值1表示是,0表示否。
算法输入
图片在计算机中使用红绿蓝三个矩阵来表示,这里需要将这三个矩阵分别展开,拼接为一个特征向量,作为二分分类算法的输入。
如果图片尺寸为64*64,则转换后的特征向量x
长度
符号约定
(x,y)
表示一个样本,其中x是n维特征向量,y为结果值0或1-
(x(i),y(i)) 表示第i个样本 m/m_train
表示训练集的长度m_test
表示测试集的长度X
表示训练集或测试集的所有特征,X.shape=(nx , m)Y
表示训练集或测试集的所有标签(结果),Y.shape=(1, m)
logistic回归
对于给定一个特征向量x,我们希望获取标签y的概率描述
设有系数向量w和实数b,则传统线性回归的表达式为
但这里我们需要的概率要控制在[0,1]区间内,则应使用logistic回归表达式
其中sigmoid函数表达式如下
该函数特征为
回归损失函数 lost function
我们使用回归损失函数L来衡量单个样本的预测输出值
传统的回归损失函数表达式为
这里传统损失函数存在多个局部最优解,无法精确优化学习结果,
因此我们使用专门的logistic回归损失函数来评估偏差
y=1时
y=0时
成本函数 cost function
成本函数衡量的是学习结果在全体训练样本上的表现