机器学习-斯坦福公开课
第1集 机器学习的动机和应用
有一个课程资料网站需要记录一下,时间点不确定
-
ICA algorithm(分开两个声源)【时间:1:02:02】
[W,s,v]=svd((repmat(sum(x.x,1),size(x,1),1).x)*x');
4个学习型算法控制的机器人或车【时间:1:05:48】
推荐使用Matlab或Octave
Octave常用操作
转置操作用上引号实现,inv求矩阵的逆,det求矩阵的特征值,trace求矩阵的迹。
参考资料
Octave是一种高层解释类编程语言,旨在解决线性和非线性的数值计算问题。Octave为GNU项目下的开源软件,早期版本为命令行交互方式,4.0.0版本发布基于QT编写的GUI交互界面。Octave语法与Matlab语法非常接近,可以很容易的将matlab程序移植到Octave。同时与C++,QT等接口较Matlab更加方便
第2集 监督学习应用.梯度下降
- 线性回归是一类算法中的一种
- 线性回归、最小二乘法
- 梯度下降(Gradient Descent)可得到局部最小,可能会有多个
- 随机梯度下降算法收敛速度比梯度下降算法快得多,不需要全部样本集,但它不倒准确收敛到最小值,可能很接近最小值。
第3集 欠拟合与过拟合的概念
- 说明了权重线性回归算法
- 用此算法成功解决了直升机自动驾驶问题;
- 这个算法的思路类似导数,并且适用于无空训练集,分析对于时间序列最新的数据会取较大权重,对下一步预测效果应该会较好。
- 从概率论方面说明了最小二乘法的正确性的一个证明,假设误差服从高斯分布。最大似然性(likelihood)
- 简介了逻辑回归的函数。
- 所有学习算法最后的评价函数类似,这是一个规律,后面做说明。
- 【1:11:00】开始总结本课。
第4集 牛顿方法
- 多种算法,极大似然估计
- 牛顿方法收敛速度非常快,二次收敛【0:11:45】,每次迭代后的误差会是上次的平方。牛顿方法会受到特征数的影响,它需要特征数维度大小矩阵的逆。
- 指数分布族,包括伯努利分布、高斯分布、泊松分布、伽马分布。。。
第5集 生成学习算法
看到【00:06:51】
第6集 朴素贝叶斯算法
其中举例为垃圾邮件分类,是否出现某些词,可做为备选算法
多元贝努利时间模型