看过很多相关的书,时下有很多机器学习的工具可供使用,简单用过sklearn,tensorflow,Fasttext, LightGBM等框架之后,不可否认,通过对这些框架的学习了解,能够大概知道机器学习有哪些方向,可以用来处理哪些问题,然而,同时也发现自己的基础实在是太差,现在决定还是要把吴恩达的课程仔细的从头到尾看一遍,并且动手实践一遍。相信只有动手搞一遍底层实现之后才能对机器学习更自信些。
吴的课程有2个版本,老版本的是斯坦福大学的,新版本的是Coursera上的,B站放了一个中文字幕的,附课程地址
bilibili 或 网易云课堂
总计113集,明显感觉是受到可汗学院的启发,每集时长都控制在15分钟以内,因此可以利用碎片化时间听课,每天3集,大约40天左右时间能看完。
所以,在2018.8.20 ~ 2018.10.1 看完所有课程,课程使用octave实现工具,需要结合着网上的开源代码,争取用python+numpy实践一遍,立此flag。
需动手代码的知识点:
1.监督学习一般要素,预测模型,代价函数,梯度下降,基于python实验y=ax+b最简单的一元线性回归。
linear_regression.py
2.矩阵相关的各种操作,包括:
- 张量、矩阵、向量、标量
- 初始化赋值,从文件中load等
- 加减,乘法(结合律、交换律)、求逆、转置、求导等操作
martix.py
3.实现多元线性回归 linear_regression_multiple.py
2元-3d图示?
4.实现n元n次的线性回归(还没搞定)
linear_regression_polynomial.py
5.实现logistic回归
logistic_regression
6.简单神经网络
7.svm
8.kmean 聚类
问题:
- 梯度下降算法比较?
name | 中文 | 简介 | 优点 | 缺点 |
---|---|---|---|---|
BGD | 批量(batch)梯度下降法 | 更新每一个参数都会使用到所有的样本 | 全局最优,易并行 | 运行慢 |
SGD | 随机(stochastic)梯度下降法 | 每次更新使用一个样本 | 快 | 准确度下降,并不是全局最优;不易于并行实现 |
MBGD | 小批量(mini-batch)梯度下降法 | 采用部分小样本进行,每次更新使用固定个样本量 | . | . |
- 共轭梯度等高级算法pp47,scipy等高级优化算法如何使用?
3.模型选择算法?
4.正则化,惩罚项 p51
sklearn中线性回归、逻辑回归的多项式,正则化处理?
线性回归的正则化处理?
逻辑回归的正则化处理? - 梯度检验?
6.训练数据随机拆分训练集、交叉验证集、测试集?
交叉验证集:假设函数,超参数
7.偏差(真实与预测之间的差距), 方差(数据的离散程度)
在线学习算法?
f-score?
先sklearn跑通例子,再扔开框架,python直接实现?
~~
霍夫曼编码树,又称最优二叉树
Softmax回归(Softmax Regression)又被称作多项逻辑回归(multinomial logistic regression),它是逻辑回归在处理多类别任务上的推广
深度学习最全优化方法总结比较(SGD,Adagrad,Adadelta,Adam,Adamax,Nadam)
https://blog.csdn.net/u012759136/article/details/52302426
https://img-blog.csdn.net/20160824161755284
https://img-blog.csdn.net/20160824161815758
网友评论