吴恩达 Machine Learning_Week 1 学习笔记

Machine Learning_Week 1

  • 1 引言
    • 1.1机器学习的定义
    • 1.2监督学习
    • 1.2无监督学习
  • 2 单变量线性回归
    • 2.1Model Representation
    • 2.2Cost Function
    • 2.3Gradient Descent
    • 2.4Gradient Descent For Linear Regression

1 引言

1.1机器学习的定义

机器学习程序指的是该程序被认为能从经验E中学习,进而解决任务T,并达到性能度量值P,当且仅当,有了经验E之后,经过P评判,程序在处理T时的性能有所提升。

1.2监督学习

监督学习数据集中的每个样本都有相应的“正确答案”,我们根据这些样本做出预测。常见的应用有回归问题和分类问题。

1.2无监督学习

无监督学习数据集中的样本没有所谓的标签或是所以样本的标签相同,即我们并未提前告知程序有关该数据集的任何信息,例如有哪些结构,可以分成几类等,而是让程序自动对该数据集的样本进行结构分类。常见的应用有聚类分析。

2 单变量线性回归

2.1Model Representation

h θ ( x ) = θ 0 + θ 1 x h_θ(x)=θ_0+θ_1x hθ(x)=θ0+θ1x

2.2Cost Function

J ( θ 0 , θ 1 ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 J(θ_0,θ_1)=\frac{1}{2m}\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})^2 J(θ0,θ1)=2m1i=1m(hθ(x(i))y(i))2

2.3Gradient Descent

Gradient Descent一般用来求函数最小值,在此我们用此方法来求Cost Function J ( θ 0 , θ 1 ) J(θ_0,θ_1) J(θ0,θ1)的最小值。该算法公式为:
r e p e a t   u n t i l   c o n v e r g e n c e : repeat\ until\ convergence: repeat until convergence:
θ j = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 ) \theta_j=\theta_j-\alpha\frac{\partial}{\partial\theta_j}J(\theta_0,\theta_1) θj=θjαθjJ(θ0,θ1)
为了便于更简单直观地理解该算法,可以想象我们正站在山上的某一点寻找一条最合适的路径下山,下山这一过程可以理解为寻找函数的最小值,即梯度下降算法的目标。
在该算法中, ∂ ∂ θ j J ( θ 0 , θ 1 ) \frac{\partial}{\partial\theta_j}J(\theta_0,\theta_1) θjJ(θ0,θ1)可以理解为下山的方向,我们通过计算该微分得到梯度下降程度最大的方向; α \alpha α称为学习速率,可以理解为下山的步长,我们重复这一步骤,直到找到一个最低点,即函数的局部最小值。

Attention:

  1. 梯度下降算法中要保证所有的 θ \theta θ 同时更新
  2. α \alpha α过小,函数收敛速度会很慢, α \alpha α过大,函数可能无法收敛,甚至发散。

2.4Gradient Descent For Linear Regression

R e p e a t : Repeat: Repeat:
θ 0 = θ 0 − α 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) θ 1 = θ 1 − α 1 m ∑ i = 1 m ( ( h θ ( x ( i ) ) − y ( i ) ) ∗ x ( i ) ) \theta_0=\theta_0-\alpha\frac{1}{m}\sum_{i=1}^m(h_{\theta}(x^{(i)})-y^{(i)})\\ \theta_1=\theta_1-\alpha\frac{1}{m}\sum_{i=1}^m((h_{\theta}(x^{(i)})-y^{(i)})*x^{(i)}) θ0=θ0αm1i=1m(hθ(x(i))y(i))θ1=θ1αm1i=1m((hθ(x(i))y(i))x(i))

你可能感兴趣的:(机器学习)