Arthur Samuel : the field of study that gives computers the ability to learn without being explicitly programmed.
亚瑟塞姆尔
认为机器学习是指:使计算机无需进行明确编程即可学习的研究领域.
Tom Mitchell provides a more modern definition: “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任务中的性能(由P衡量)随着经验E的提高而提高,则可以说计算机程序可以从经验E中学习到了用性能指标P评估的任务T. ”
eg:垃圾邮件的识别任务中如何判断任务T,经验E,性能指标P呢?
监督学习是指具备明确结果的学习方式.
比如我们通过疾病数据想要确认病人的肿瘤是良性肿瘤还是恶性肿瘤.在这个问题中,我们具有明确的目标:即肿瘤的类型.这种具备明确目标的机器学习方式就是监督学习.
监督学习可以分为:
1.回归问题-连续的输出结果
2.分类问题-离散的输出结果
回归问题举例: 预测一个城市的房价,输出就可以认为是一个连续
结果.
分类问题距离:预测顾客是否会选择来商场购物,输出就可以认为是一个 是/否 的离散
结果.
当我们手中只有数据集,而无明确的结果的时候,我们需要借助计算机的帮助来将数据划分成聚类
.这种没有明确结果的学习方式我们称为无监督学习.
比如说:谷歌新闻中将大量的新闻利用无监督学习划分到不同的领域中.
再比如:鸡尾酒聚会问题
将聚会中的两只不同位置的麦克风分离出两簇独立的音频信息.
现在我们需要预测一个地区的房价,我们使用以下变量表示相关的信息:
m m m:表示我们数据集中样本的个数
x x x :表示输入变量,我们也称为特征量
y y y :表示输出变量,我们也称为目标变量
h h h :表示从 x x x 到 y y y 的一个映射
利用线性方程预测的模型称为线性回归.
对于含有参数 θ 0 θ_0 θ0, θ 1 θ_1 θ1的模型 h θ ( x ) = θ 0 + θ 1 x h_θ(x)=θ_0+θ_1x hθ(x)=θ0+θ1x,我们的目的是找到能够使得代价函数 J ( θ ) J(θ) J(θ)最小的两个参数值.
J ( θ 0 , θ 1 ) = 1 2 m Σ i = 1 m ( h θ ( x i ) − y i ) 2 J(θ_0,θ_1)=\frac{1}{2m}Σ_{i=1}^m(h_θ(x_i)-y_i)^2 J(θ0,θ1)=2m1Σi=1m(hθ(xi)−yi)2
此处分母用2m是为了方便求偏导数.
我们一般将 θ 0 θ_0 θ0和 θ 1 θ_1 θ1初始为0,然后改变 θ 0 θ_0 θ0和 θ 1 θ_1 θ1来让 J ( θ 0 , θ 1 ) J(θ_0,θ_1) J(θ0,θ1)达到最小值,但这里的最小值有可能是局部最小值.
这个最小值的结果还和我们初始值的选取有关.
θ j : = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 ) θ_j:=θ_j-α\frac{\partial}{\partial θ_j}J(θ_0,θ_1) θj:=θj−α∂θj∂J(θ0,θ1)
t e m p 0 : = θ 0 − α ∂ ∂ θ 0 J ( θ 0 , θ 1 ) temp_0:=θ_0-α\frac{\partial}{\partial θ_0}J(θ_0,θ_1) temp0:=θ0−α∂θ0∂J(θ0,θ1)
t e m p 1 : = θ 1 − α ∂ ∂ θ 1 J ( θ 0 , θ 1 ) temp_1:=θ_1-α\frac{\partial}{\partial θ_1}J(θ_0,θ_1) temp1:=θ1−α∂θ1∂J(θ0,θ1)
θ 0 : = t e m p 0 θ_0:=temp_0 θ0:=temp0
θ 1 : = t e m p 1 θ_1:=temp_1 θ1:=temp1
注意这里的顺序不能改变,如果你调整顺序为:
θ j : = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 ) θ_j:=θ_j-α\frac{\partial}{\partial θ_j}J(θ_0,θ_1) θj:=θj−α∂θj∂J(θ0,θ1)
t e m p 0 : = θ 0 − α ∂ ∂ θ 0 J ( θ 0 , θ 1 ) temp_0:=θ_0-α\frac{\partial}{\partial θ_0}J(θ_0,θ_1) temp0:=θ0−α∂θ0∂J(θ0,θ1)
θ 0 : = t e m p 0 θ_0:=temp_0 θ0:=temp0
t e m p 1 : = θ 1 − α ∂ ∂ θ 1 J ( θ 0 , θ 1 ) temp_1:=θ_1-α\frac{\partial}{\partial θ_1}J(θ_0,θ_1) temp1:=θ1−α∂θ1∂J(θ0,θ1)
θ 1 : = t e m p 1 θ_1:=temp_1 θ1:=temp1
这就导致 θ 0 θ_0 θ0的值已经被修改之后才计算的 t e m p 1 temp_1 temp1