机器学习 第一周
一、概述
1-1 机器学习
交叉学科;应用广泛
相关术语:经验E;任务T;性能度量P
分类:监督学习;无监督学习
1-3 监督学习
例1:房价预测(回归问题:设法预测连续值的属性)
例2:肿瘤预测(分类问题:设法预测一个离散输出值)
1-4 无监督学习
例1:新闻聚类
例2:基因学检测特定基因
其他聚类算法:计算机集群、社交网络分析、细分市场、天文数据分析
例3:鸡尾酒会算法
二、模型描述
2-1 线性回归
符号:
m代表训练集的数量、训练样本:{(x(1), y(1)),……}
x代表输入变量或特征
y代表输出变量
(x(i), y(i)):x是n维特征向量,y∈{0,1},i表示第几个
Mtrain训练集 Mtest测试集
X = [x(1)……x(m)] (n * m)
Y = [y(1)……y(m)] (1 * m)
过程:
2-2 代价函数
如何得出假设函数中的参数,使之更好地拟合数据?
在线性回归中,实质上要解决的是一个最小化问题,即
由此得出代价函数:
也可称为平方误差代价函数,是解决回归问题的较优方案
假设函数与代价函数的关系:(简化版,只有一个参数)
当两个参数时:代价函数会形成3D碗状曲面
总结:通过找到代价最小的点来确定未知参数,从而最好地拟合数据
2-5 梯度下降法
用途:最小化代价函数J
思路:
1.给定两参数的初始值,通常为(0,0)
2.持续改变两参数,来减小代价函数,直到最小值或局部最小值
数学原理:
注意:同步更新两个参数
α:学习速率,控制更新参数的幅度
注:接近局部最小值的过程中,梯度下降法会自动减小更新的幅度,所以没有必要再另外减小α
2-7 线性回归的梯度下降
线性回归的代价函数总是一个弓状函数(凸函数),其没有局部最优解,仅有一个全局最优
“Batch”梯度下降:梯度下降过程中的每一步都计算的是m个训练样本的总和
三、线性代数
3-1 矩阵和向量
矩阵定义(二维数组)
矩阵的行和列
矩阵中元素的表达
通常,小写字母表示向量,大写字母表示矩阵
3-2 加法和标量乘法
矩阵同维度才可相加减
实数乘矩阵;矩阵乘实数
3-3 矩阵向量乘法
exp:prediction = DataMatrix * parameters
3-4 矩阵乘法
要点:列向量
3-5 矩阵乘法特征
交换律不适用矩阵乘法
结合律可用于矩阵乘法
单位矩阵(Identity Matrix):主对角线全为1,其他位置全为0
3-6 逆和转置
四
4-1 多特征(变量)
例:房价预测
n代表特征的数量
m代表样本数量
x代表特征向量
i代表第i个特征向量
j代表第j个特征
假设函数h(x) = θTx,即多元线性回归
4-2 多元梯度下降法
注:可类比线性回归的梯度下降法
当特征数量大于1时:
4-3 多元梯度下降法演练I-特征缩放
特征缩放要点:确保多个特征在相近的范围内取值,否则梯度下降过程可能会在来回震荡中花费很长的时间;尽量让特征接近[-1,1]
均值归一化:(x-μ)/(max-min)
作用:让梯度下降的速度变快,使得收敛所需的迭代次数更少
4-4 多元梯度下降法演练II-学习率
如何确保梯度下降正常工作?
法1 画出代价函数与迭代次数的函数曲线(常用)
法2 其他自动的收敛测试
总结:
1.如果α太小,收敛速度可能会很慢
2.如果α太大,代价函数的值可能不会在每次迭代过程中都减少,甚至导致不收敛的情况
4-5 特征和多项式回归
我们可自由选择要使用什么特征,并通过设计不同的特征,用复杂的函数拟合数据;
当选择的特征需要平方或立方从而构成二次函数或三次函数时,特征缩放变得尤为重要
4-6 正规方程
添加m维特征向量,其元素均为1
θ = (XTX)-1XTy,θ即为使代价函数最小的解
注:此时X维度为m*(n+1);y维度为m
Octave中pinv(X’*X)*X’*y,其中pinv代表求逆,X’代表X的转置
使用正规方程法时不需要特征缩放
假设有m个训练样本和n个特征,将梯度下降法和正规方程发进行比对
梯度下降法 | 正规方程法 |
---|---|
需要选择α | 不需要α |
需要迭代 | 不需要迭代 |
n很大时正常运行 | n很大时计算缓慢 |
– | 需要计算(XTX)-1 |
注:如果n>>10000,倾向用梯度下降法
4-7 正规方程矩阵不可逆情况下
矩阵XTX不可逆通常有两种原因
1.存在线性相关的多余特征
2.特征数过多,m<n时
第一周总结
本周是进行机器学习系统性学习的开始,学习了一些机器学习的基础知识、基本概念,通过对线性回归模型的学习,重点学习到用梯度下降法最小化代价函数的原理和过程,复习了线性代数相关的基础知识。还学习了面对多特征模型时,多元梯度下降法所需要的注意的一些事项和使用方法。