机器学习的定义
A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E.
某类任务T(task)具有性能度量P(performance),计算机程序可以从任务T的经验E(experience)中学习,提高性能P。
机器学习的种类
主要分为监督学习和无监督学习两大类
监督学习--Supervised Learning
特点:已有输入特征向量x,并已知正确的输出(有标签)y (x,y)称为一个训练样本
目标:学习到从输入到输出的映射
过程:给定训练集,学习函数(又称假设)h:X->Y,使得h(x)是y的一个好的预测
算法模型
分类--输出为离散值
回归--输出为连续值
解决问题的过程
问题的模型表示->损失函数->最小化损失函数->更新参数
以线性回归为例,模型为
损失函数
通过损失函数来衡量假设的准确率accuracy
常用损失函数:均方误差
梯度下降算法
梯度的反方向是函数下降最快的方向
学习速率
参数需要同步更新,不能异步更新
可能会收敛于局部值
迭代方法:batch gradient descent--每次迭代都使用所有样本进行计算
stochastic gradient descent(SGD)--每次只训练一个样本去更新参数。加快收敛速度,解决大数据量无法一次性塞入内存(显存)的问题
mini-batch gradient descent--每次使用batch_size个样本进行计算,是以上两种方法的折中
无监督学习--Unsupervised Learning
特点:输出的结果未知(无标签)
适用问题:聚类