机器学习-吴恩达

机器学习-吴恩达

  • P6-2 logistic(sigmoid) function
  • P6-3 决策边界(decision boundary)
  • P6-4 代价函数
  • P6-5 简化代价函数与梯度下降
  • P6-6 高级优化
  • P6-7 多元分类:一对多
  • P7-1 过拟合问题
  • P7-2 代价函数

P6-2 logistic(sigmoid) function

logistic(sigmoid) function 是一种分类函数,函数的取值永远在0-1之间
函数如下:
h θ ( x ) = g ( θ T x ) h_\theta (x)=g(\theta^Tx) hθ(x)=g(θTx)
g ( z ) = 1 1 + e − z g(z) =\frac{1}{1+e^{-z}} g(z)=1+ez1

最终得到:
h θ ( x ) = 1 1 + e − θ T x h_\theta(x)=\frac{1}{1+e^{-\theta^Tx}} hθ(x)=1+eθTx1
这个函数的解释是:给定输入x和参数 θ \theta θ时,y=1的估计概率(当输入一个x时,输出y=1的概率)。
即: h θ ( x ) = P ( y = 1 ∣ x ; θ ) h_\theta(x)=P(y=1|x;\theta) hθ(x)=P(y=1x;θ)

P6-3 决策边界(decision boundary)

  1. 将整个区域分为两部分,一部分假设函数预测y=1,另一部分假设函数预测y=0。
  2. 决策边界是假设函数的属性,决定于其参数,并不是数据集的属性。

P6-4 代价函数

P6-5 简化代价函数与梯度下降

Logistic regression cost function
J ( θ ) = 1 m ∑ i = 0 m C o s t ( h θ ( x ( i ) ) , y ( i ) ) J(\theta)=\frac{1}{m}\sum_{i=0}^mCost(h_\theta(x^{(i)}),y^{(i)}) J(θ)=m1i=0mCost(hθ(x(i)),y(i))
C o s t ( h θ ( x ) , y ) = { − l o g ( h θ ( x ) ) i f y = 1 − l o g ( 1 − h θ ( x ) ) i f y = 0 Cost(h_\theta(x),y)=\left\{ \begin{aligned} -log(h_\theta(x)) &&if\quad y = 1\\ -log(1-h_\theta(x))&&if\quad y=0\\ \end{aligned} \right. Cost(hθ(x),y)={log(hθ(x))log(1hθ(x))ify=1ify=0
Note: y = 0 or 1 always

简化后的形式是:
C o s t ( h θ ( x ) , y ) = − y l o g ( h θ ( x ) ) − ( 1 − y ) l o g ( 1 − h θ ( x ) ) Cost(h_\theta(x),y)=-y log(h_\theta(x))-(1-y)log(1-h_\theta (x)) Cost(hθ(x),y)=ylog(hθ(x))(1y)log(1hθ(x))

Gradient Descent
J ( θ ) = − 1 m [ ∑ i = 0 m y ( i ) l o g ( h θ ( x ( i ) ) ) + ( 1 − y ( i ) ) l o g ( 1 − h θ ( x ( i ) ) ) ] J(\theta)=-\frac{1}{m}[\sum_{i=0}^my^{(i)} log(h_\theta(x^{(i)}))+(1-y^{(i)})log(1-h_\theta (x^{(i)}))] J(θ)=m1[i=0my(i)log(hθ(x(i)))+(1y(i))log(1hθ(x(i)))]
Want m i n θ J ( θ ) : min_\theta J(\theta): minθJ(θ):
    Repeat{
         θ j : = θ j − α ∂ ∂ θ j J ( θ ) \theta_j := \theta_j - \alpha \frac{\partial}{\partial\theta_j}J(\theta) θj:=θjαθjJ(θ)
     }
(simultaneously update all θ j \theta_j θj)

其中
∂ ∂ θ j J ( θ ) = 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x j ( i ) \frac{\partial}{\partial\theta_j}J(\theta)=\frac{1}{m}\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)} θjJ(θ)=m1i=1m(hθ(x(i))y(i))xj(i)


Gradient Descent
J ( θ ) = − 1 m [ ∑ i = 0 m y ( i ) l o g ( h θ ( x ( i ) ) ) + ( 1 − y ( i ) ) l o g ( 1 − h θ ( x ( i ) ) ) ] J(\theta)=-\frac{1}{m}[\sum_{i=0}^my^{(i)} log(h_\theta(x^{(i)}))+(1-y^{(i)})log(1-h_\theta (x^{(i)}))] J(θ)=m1[i=0my(i)log(hθ(x(i)))+(1y(i))log(1hθ(x(i)))]
Want m i n θ J ( θ ) : min_\theta J(\theta): minθJ(θ):
    Repeat{
         θ j : = θ j − α 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x j ( i ) \theta_j := \theta_j - \alpha \frac{1}{m}\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)} θj:=θjαm1i=1m(hθ(x(i))y(i))xj(i)
     }
(simultaneously update all θ j \theta_j θj)
注意使用和之前线性回归中梯度下降法同样的方法确保该梯度下降法是收敛的

可以用for循环同时更新 θ \theta θ中的所有参数,或者使用向量化的方法同时更新

还要用上之前说的特征缩放以提高提高梯度下降的收敛速度

P6-6 高级优化

P6-7 多元分类:一对多

P7-1 过拟合问题

不同的学习算法
线性回归(linear regression)和逻辑回归(logistic regression)

欠拟合(underfitting) 过拟合(overfitting)

线性回归中过拟合的样例
机器学习-吴恩达_第1张图片

逻辑回归中过拟合的样例
机器学习-吴恩达_第2张图片

过拟合:如果我们拟合一个高阶多项式,那么这个假设函数能拟合几乎所有的数据,这就面临可能的函数太过庞大变量太多的问题,我们没有足够的数据约束它来获得一个好的假设函数。(无法泛化到新的样本中)

应对过拟合的方法措施有:

  1. 减少特征变量的数量
  2. 正则化
    机器学习-吴恩达_第3张图片

P7-2 代价函数

J ( θ ) = 1 2 m [ ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 + λ ∑ j = 1 n θ j 2 ] J(\theta)=\frac{1}{2m}[\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})^2+\lambda\sum_{j=1}^n\theta_j^2] J(θ)=2m1[i=1m(hθ(x(i))y(i))2+λj=1nθj2]
m i n θ J ( θ ) min _\theta J(\theta) minθJ(θ)
λ \lambda λ是正则化参数,作用是控制这两个目标之间的平衡关系,即更好的去拟合训练集的目标和将参数控制得更小得目标,从而保证假设模型的相对简单,避免出现过拟合的情况。

正则化的作用如下图所示:
机器学习-吴恩达_第4张图片

你可能感兴趣的:(机器学习,逻辑回归,人工智能)