Introduction
- 机器学习算法分类
- 监督学习 Supervised learning
- 无监督学习 Unsupervised learning
- 监督学习
- 回归 regression
map input variables to some continuous function - 分类 classification
map input variables into discrete categories
- 回归 regression
- 无监督学习
给算法数据集,要求它找出数据的类型结构
实例:分离音频
Octave:构建学习算法原型,使用Octave
Linear Regression with One Variable
-
代价函数 cost function
作用:measure the accuracy of our hypothesis functionJ ( θ 0 , θ 1 ) = 1 2 m ∑ i = 1 m ( y ^ i − y i ) 2 = 1 2 m ∑ i = 1 m ( h θ ( x i ) − y i ) 2 J\left(\theta_{0}, \theta_{1}\right)=\frac{1}{2 m} \sum_{i=1}^{m}\left(\hat{y}_{i}-y_{i}\right)^{2}=\frac{1}{2 m} \sum_{i=1}^{m}\left(h_{\theta}\left(x_{i}\right)-y_{i}\right)^{2} J(θ0,θ1)=2m1∑i=1m(y^i−yi)2=2m1∑i=1m(hθ(xi)−yi)2
也叫做平方误差函数,或者是均方误差
-
代价函数的讲解
- h θ ( x ) h_\theta(x) hθ(x) :固定参数 θ \theta θ,是 x x x的函数
- J ( θ ) J(\theta) J(θ):是参数 θ \theta θ的函数
- cost function的值越小,对应的拟合越好
-
梯度下降 Gradient descent
关键步骤:更新方程, θ 0 和 θ 1 \theta_0和\theta_1 θ0和θ1需要同步更新θ j : = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 ) \theta_{j}:=\theta_{j}-\alpha \frac{\partial}{\partial \theta_{j}} J\left(\theta_{0}, \theta_{1}\right) θj:=θj−α∂θj∂J(θ0,θ1)
斜率会不断变小,因此步伐会变小,慢慢靠近最后的解
4. Batch梯度下降算法
用梯度下降法,求解代价函数的最小值,得到线性回归算法,用直线模型来拟合数据
Linear Algebra Review
线性代数知识回顾
- 大写字母表示矩阵,小写字母表示向量
- 矩阵与向量乘法
矩阵与向量的相乘,简化计算,避免一个一个的带入计算。 - 矩阵与矩阵乘法
包含更多信息,一次矩阵乘法就可以实现多种的预测(而且矩阵乘法很高效) - 矩阵乘法的特性
- 没有交换律(交换以后相乘得到的矩阵维度不同)
- 符合结合律 A × B × C = A × ( B × C ) = ( A × B ) × C A \times B \times C=A\times(B\times C)=(A\times B)\times C A×B×C=A×(B×C)=(A×B)×C
- 特殊矩阵
- 单位矩阵 Identity Matrix A ⋅ I = I ⋅ A = A A·I = I·A = A A⋅I=I⋅A=A
- 逆矩阵和矩阵的转置
- 矩阵逆运算
If A is an m × m m\times m m×m matrix,and if it has an inverse, A A − 1 = A − 1 A = I AA^{-1}=A^{-1}A=I AA−1=A−1A=I
注意: 1. 方阵 2. 存在逆矩阵 - 矩阵的转置运算 Matrix Transpose
矩阵的第一行变为第一列 B i j = A j i B_{ij}=A_{ji} Bij=Aji
- 矩阵逆运算