第二周(多变量线性回归 +Matlab使用)-【机器学习-Coursera Machine Learning-吴恩达】

目录:
    多变量线性回归(模型、梯度下降技巧)
    特征选择和多项式回归
    正规方程

    Matlab学习


1 多变量线性回归

1)模型

- 假设函数:

第二周(多变量线性回归 +Matlab使用)-【机器学习-Coursera Machine Learning-吴恩达】_第1张图片

- 参数:全部的 theta
- 代价函数:和单变量回归一样

- 梯度下降:

第二周(多变量线性回归 +Matlab使用)-【机器学习-Coursera Machine Learning-吴恩达】_第2张图片

2)梯度下降算法的实用技巧

    - 特征缩放(Feature Scaling)

    均值归一化


    u为该特征平均值;s为范围,也就是max-min

    - 学习率 alpha

    0.001,0.01,0.1……直到开始发散

    (alpha太小,收敛太慢;alpha太大可能会发散)


2 特征选择和多项式回归

特征是有很多选择的,利用一些多项式,可以实现非线性回归(特别注意特征缩放)

第二周(多变量线性回归 +Matlab使用)-【机器学习-Coursera Machine Learning-吴恩达】_第3张图片



3 正规方程(Normal equation)

直接一次性利用公式求 参数theta

在某些线性回归中,用正规方程法求最多参数theta的最优值更好。


Octave:theta = pinv(x' * x) * x' *y

第二周(多变量线性回归 +Matlab使用)-【机器学习-Coursera Machine Learning-吴恩达】_第4张图片

    - 辨析梯度下降和正规方程法

第二周(多变量线性回归 +Matlab使用)-【机器学习-Coursera Machine Learning-吴恩达】_第5张图片

(在n达到一万左右时,考虑换成梯度下降法,其它时间用正规方程比较好)

    - 如果出现XTX不可逆怎么办?
    解:在Octave中实用pinv求逆矩阵,总可以给出一个值,即使不可逆
    从原因中找解决办法,造成不可逆的原因在于:
    (1)冗余的特征,2个特征关系非常密切

    (2)太多的特征值了(eg:m<=n)


4 Octave/Matlab学习:

1)基本操作:包含输入变量、矩阵
2)数据移动:装载数据文件、数据保存、矩阵简单操作
3)数据的计算:针对矩阵数据的个各种运算与方法
4)图数据:plot、
5)控制语句、函数
6)向量化

你可能感兴趣的:(机器学习,【机器学习-Coursera,Machine,Learning-吴恩达】笔记)