|
|
@@ -85,7 +85,7 @@ |
|
|
|
|
|
|
|
## 1.4 无监督学习(Unsupervised Learning) |
|
|
|
|
|
|
|
相对于监督学习,训练集不会有人为标注的结果(无反馈),而是由计算机自己来分析,计算机通过无监督学习的算法,可能会把特定的数据集归为几个不同的簇,这个算法叫做聚类算法。 |
|
|
|
相对于监督学习,训练集不会有人为标注的结果(无反馈),而是由计算机通过无监督学习算法来自行分析,计算机可能会把特定的数据集归为几个不同的簇,故叫做聚类算法。 |
|
|
|
|
|
|
|
无监督学习一般由两种: |
|
|
|
1. 聚类(Clustering) |
|
|
@@ -109,14 +109,55 @@ |
|
|
|
神奇的代码: |
|
|
|
`[W,s,v] = svd((repmat(sum(x.*x,1),size(x,1),1).*x)*x');` |
|
|
|
|
|
|
|
提到了在机器学习刚开始时,**推荐使用 Matlab 类的工程编程语言**,因为在 C++ 或 Java 等编程语言中,编写对应的代码需要用到复杂的库以及大量的冗余代码,比较耗费时间,建议可以在学习过后再考虑使用其他语言来构建系统。 |
|
|
|
提到了在机器学习刚开始时,**推荐使用 Matlab 类的工程编程语言**,因为在 C++ 或 Java 等编程语言中,编写对应的代码需要用到复杂的库以及大量的冗余代码,比较耗费时间,建议可以在学习过后再考虑使用其他语言来构建系统。**(其实 tensorflow 的代码也非常简单,尚可一试。)** |
|
|
|
另外,尤其是在做**原型搭建**的时候,也仍然使用 Octave,当其已经可以工作后,才将模型移植到其他的高级编程语言中。 |
|
|
|
|
|
|
|
# 2 Linear Regression with One Variable |
|
|
|
# 2 单变量线性回归(Linear Regression with One Variable) |
|
|
|
|
|
|
|
## 2.1 模型表示(Model Representation) |
|
|
|
|
|
|
|
1. 房价预测训练集 |
|
|
|
|
|
|
|
| Size in $feet^2$ ($x$) | Price (\$) in 1000's($y$) | |
|
|
|
| ---------------------- | ------------------------- | |
|
|
|
| 2104 | 460 | |
|
|
|
| 1416 | 232 | |
|
|
|
| 1534 | 315 | |
|
|
|
| 852 | 178 | |
|
|
|
| ... | ... | |
|
|
|
|
|
|
|
|
|
|
|
这个训练集中,既给出了输入 $x$ ,又给出了输出结果 $y$,即”正确结果“,预测的量是连续的,属于监督学习中的回归问题。 |
|
|
|
|
|
|
|
**下图解决了这个回归问题:** |
|
|
|
|
|
|
|
: |
|
|
|
|
|
|
|
其中 $h$ 代表结果函数,也称为**假设(hypothesis)** 。这个结果函数根据输入(即房屋的面积大,给出预测结果输出(即房屋的价格)。 |
|
|
|
|
|
|
|
$h_\theta(x)=\theta_0+\theta_1x$,为其中一种可行的表达式。 |
|
|
|
|
|
|
|
上式中,$\theta$ 为参数,$\theta$ 的变化决定了输出结果,不同以往,这里的 $x$ 被我们**视作已知**(即不论是数据集还是预测前的输入),所以怎样解得 $\theta$ 以拟合数据,成了求解该问题的最终问题。 |
|
|
|
|
|
|
|
单变量即只有一个特征(房屋的面积) |
|
|
|
|
|
|
|
## 2.2 损失函数(Cost Function) |
|
|
|
|
|
|
|
为了求解上个视频中提到的 $\theta$,本视频引入了损失函数(Cost Function)这个概念,损失函数,用于度量预测结果于实际结果的**建模误差**。 |
|
|
|
|
|
|
|
目的在于求解预测结果 $h_\theta(x)$ 最接近于实际结果 $y$ 时 $\theta$ 的取值,则可以把问题转化为**求解 $\sum\limits_{i=0}^{n}(h_\theta(x^{(i)})-y^{(i)})$ 的最小值**。 |
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
上图中,为在 $\theta$ 取不同值时的拟合情况,蓝色虚线代表的即为误差,要最小化的就是每个预测点的误差值。 |
|
|
|
|
|
|
|
这里则要引入损失函数的概念,我们对求最小值的式子进行数学建模,让其变得易于求最小值,而其中一种办法就是建模为二次函数,即统计学上的平方损失函数(最小二乘法): |
|
|
|
|
|
|
|
$$ J\left( \theta \right)=\frac{1}{2m}\sum\limits_{i=1}^{m}{{{\left( {{h}_{\theta }}\left( {{x}^{(i)}} \right)-{{y}^{(i)}} \right)}^{2}}} $$ ,其中 $m$ 为训练集中的样本数量。 |
|
|
|
|
|
|
|
对于之前的房价问题来说,我们的问题就转化成了**求解 $J\left( \theta_0, \theta_1 \right)$ 的最小值**。 |
|
|
|
|
|
|
|
## 2.1 Model Representation |
|
|
|
|
|
|
|
## 2.2 Cost Function |
|
|
|
|
|
|
|
## 2.3 Cost Function - Intuition I |
|
|
|
|
|
|
@@ -124,6 +165,8 @@ |
|
|
|
|
|
|
|
## 2.5 Gradient Descent |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 2.6 Gradient Descent Intuition |
|
|
|
|
|
|
|
## 2.7 Gradient Descent For Linear Regression |
|
|
|