欢迎光临散文网 会员登陆 & 注册

Deep learning - Neural Network & Deep learning .02

2023-07-13 15:31 作者:Cy-se7en  | 我要投稿

2 Basics of Neural Network programming

2.1 Binary classification

n(x)表示输出的特征向量维度,有时也简写成n

单个样本由一对(x,y)表示

组织一个输入矩阵X按列排列,每一列是一条数据x,n(x)表示的是特征向量的维度,x(m)表示的是训练集的个数

同样的,Y也要组织成按列排列的矩阵,Y是一个1xm大小的矩阵

经过实践发现按列排列的矩阵对于DL的效果更好

有用的惯例:混合不同的训练样本数据 - 在这里数据是指单个x或y,或者之后其他的数目数据,混合不同训练样本的数据,并将他们按列排列,像我们之前对x和y做的那样

2.2 Logistic Regression model

y^代表的是真实标签y的估计,y^是当给定输入特征值x时,预测标签y为1的概率,即 y^=P(y=1|x)

sigmoid函数的作用就是把线性函数的值压缩在0~1之间,z轴就是线性函数(w^T*x+b)

参数w、b通常分开看待,这里b对应一个偏置量

有时,会遇到函数中定义了一个额外的特征x0,并让x0等于1,这时x∈R^n(x)+1,y^=σ(θ^Tx),θ集合包含θ(0)~θ(n(x)),θ(0)代替了参数b,θ(1~n(x))代替了参数w;这种升维是为了省去偏差参数b

而事实上,实现神经网络时,把参数b和w当作相互独立的参数会更简单

2.3 Logistic Regression cost function

Loss function 损失函数 = Error function 误差函数 表示为 L(y^,y)

使用x^(i)表示具体的参数实例

Squared error 平方误差 会产生非凸函数,使得后续的梯度下降可能取到局部最优解,得不到全局最优解

Binary cross entropy 二元交叉熵 能够很好的产生凸函数

Binary cross entropy公式下:如果y=1,那么y^要尽可能的大,因y^为sigmoid函数,所以y^要无限接近于1

Binary cross entropy公式下:如果y=0,那么y^要尽可能的小,因y^为sigmoid函数,所以y^要无限接近于0

目前很多函数都粗略的有这样效应:if y=1 so y^趋近1 ,if y=0 so y^趋近0

Loss(Error) function 损失(误差)函数 针对单个训练实例,能够衡量单一实例训练的好坏

Cost function 代价函数 能够衡量整个训练集训练的好坏,也体现了所有参数的成本(代价) 表示为 J(w,b)

在优化逻辑回归模型时,我们要试着去找参数w和b,以此来缩小J的整体成本

Deep learning - Neural Network & Deep learning .02的评论 (共 条)

分享到微博请遵守国家法律