课程链接 : 吴恩达机器学习 - 网易云课堂
第六章 Octave/Matlab 教程
第七章 Logistic(逻辑) 回归
Sigmoid Function/Logistic Function:
g(z)=1+e−z1
决策边界(Decision Boundary): 由参数θ决定
代价函数(Cost Function): 当线性回归的代价函数用于Logistic回归时,由于Simoid函数的存在,代价函数并不是一个标准的凸函数(如下图),因此会产生很多局部最优点,不能保证模型很好的拟合,因此寻找一种新的代价函数来替代线性回归时的代价函数。
逻辑回归代价函数(Logistic Regression Cost Function):
J(θ)=m1i=1∑mcost(hθ(x(i)),y(i))cost(hθ(x),y)={−log(hθ(x))−log(1−hθ(x)) if y=1 if y=0

从图像当中可以看出,该代价函数具有很好的性质,例如:当y=1,hθ(x)=1时,也就是预测值与标签值相同时,函数所获得的代价为0,而当y=1,hθ(x)=0时,也就是预测值与标签值相差巨大时,函数所获得的代价值为无穷大。在y=0时,函数具有相同的特性,因此该代价函数可以很好的指引学习过程。
根据简单的数学运算,上述代价函数可以简化为:
J(θ)=m1i=1∑mcost(hθ(x(i)),y(i))=−m1[i=1∑my(i)loghθ(x(i))+(1−y(i))log(1−hθ(x(i)))]
与线性回归相同,逻辑回归使用梯度下降法对参数θ进行更新优化:
θj:=θj−α∂θj∂J(θ)θj:=θj−αi=1∑m(hθ(x(i))−y(i))xj(i)
优化算法: 除了梯度下降算法之外,还有一些其他的算法如共轭梯度(Conjugate Gradient)算法 ,牛顿法(BFGS),拟牛顿法(L-BFGS) 等等。他们具有无需手动选择学习率α,收敛速度更快等优点,但缺点就是比梯度下降算法更复杂。
对于多分类问题,可将多分类转换成n个二分类问题来处理。
第八章 正则化(Regularization)
欠拟合(Underfit): 模型不能很好的拟合
过拟合(Overfitting): 如果假设模型具有很多的特征,可能模型对于训练集匹配的很好,但对于新样本的泛化能力较差。
泛化(Generalized): 一个假设模型应用到新样本的能力
解决过拟合的办法:
1、减少变量的数量——(人工选择变量、模型选择算法)
2、正则化
正则化代价函数:
J(θ)=2m1[i=1∑m(hθ(x(i))−y(i))2+λj=1∑nθj2]
式中,参数λ为正则化参数,其作用为控制更好的拟合数据集与保持参数尽量小这两个目标之间的取舍问题。当λ取值过大时,参数小到接近于0,拟合函数接近于一条直线。
线性回归的正则化:
梯度下降法:
θj:=θj(1−αmλ)−αm1i=1∑m(hθ(x(i))−y(i))xj(i)
正规方程法:
θ=⎝⎜⎜⎜⎜⎛XTX+λ⎣⎢⎢⎢⎢⎡011⋱1⎦⎥⎥⎥⎥⎤⎠⎟⎟⎟⎟⎞−1XTy
使用该方法,矩阵不会出现不可逆的情况
逻辑回归的正则化: 与线性回归的方程相同
θj:=θj(1−αmλ)−αm1i=1∑m(hθ(x(i))−y(i))xj(i)
第九章 神经网络(Neural Networks)学习
神经网络: 可以拟合非线性假设
1、输入层:接收输入数据
2、隐藏层:中间层
3、输出层:输出数据
神经网络解决多元分类: 网络结构如下所示:
对于训练集(x(1),y(1)),(x(2),y(2)),…,(x(m),y(m))中的y(i),表示为
⎣⎢⎢⎡1000⎦⎥⎥⎤,⎣⎢⎢⎡0100⎦⎥⎥⎤,⎣⎢⎢⎡0010⎦⎥⎥⎤,⎣⎢⎢⎡0001⎦⎥⎥⎤
分别对应输出层的四种类别。
第十章 神经网络参数的反向传播算法
神经网络的代价函数:
J(Θ)=−+m1[i=1∑mk=1∑Kyk(i)loghθ(x(i))k+(1−yk(i))log(1−hθ(x(i))k)]2mλl=1∑L−1i=1∑slj=1∑sl+1(Θj(l))2