机器学习的学习之路
来源:互联网 发布:适合程序员看的电影 编辑:程序博客网 时间:2024/06/04 19:06
“机器学习”是人工智能的一部分,学了一段时间,有过停顿和弯路,最近重头拾起来,感觉比第一遍明白了一些,所以做个记录。
最开始是学习Coursera上Andrew Ng的课程,完成里面的作业遇到不少难题,当时为了赶进度着急学完,遇到难题在网上找了不少答案,现在想起来真是一知半解。
Coursera,包括Udacity,Edx,上面的类似的课程很多,当时的想法是都学一遍,可以更牢固些。后来的结果证明不用学那么多,学了一个就要弄明白。类似的课程也没必要学太多,除非是进阶的。学通一门课程,然后得做多练习,比如Kaggle上的竞赛。现在是个容易焦虑的时代,对于有求知欲望的人,更容易引起“知识焦虑”,但是学了很多,如果不实际应用,这种焦虑不会减轻,还会在在学习 - 焦虑的循环上。
第一次学Andrew Ng的课程的同时,也学了Coursera上的Matlab和Python的课程,讲的都非常好。Coursera上还有一个系列的华盛顿大学的机器学习课程,学了一段时间,没坚持下去,他们讲的是GraphLab,不是开源的,所以应用的可能性也不大。
现在是第二次学Andrew Ng的课程,作业重新自己用Matlab做了一遍,听第二次课,感觉容易了很多,作业也好做了很多。因为学过一遍,不着急往下走,就用Python(numpy)把作业重写一遍,再用scikit-learn重写一遍。用scikit-learn重写的原因是想在学完多变量线性回归后做Kaggle上的House Prices题,里面有三个教程,其中一个用到scikit-learn,所以找个了教程,先学了一遍scikit-learn,再用它完成作业,最后再做Kaggle上的竞赛题目。
知乎上有很多机器学习的指南,好像其中一个提到一个印度人写的,觉得挺实用,里面要学的东西也不是很多,我开始是按这个来的,链接在这儿。scikit-learn有一个视频的教程,youtube上的,看不了,但是其按照其代码可以很容易地学下去。
用Python完成作业,可以重头写,或者把作为的Matlab的作业翻译成Python,这里有个Matlab和Python的函数对照表,很实用。
用numpy时,可能遇到的问题:
写computeCost(X,y,theta)和gradientDescent(X,y,theta,alpha,num_iters)函数时,用到y的计算,要把y reshape一下:y.reshape(m,1),要不然会出现维数不一致的错误。
用sciket时,可以参照其源码06_linear_regression,要把数据文件加一行标题:population,profit。
pd.read_csv这行,要把 index_col=0去掉。
sns.pairplot这行,由于只有一个feature,可以用lmplot实现,更简洁些。
numpy完成作业时,可以得到和matlab同样的结果。sciket时的结果会不同,因为它用到了train和test的split,numpy和matlab没用到,numpy和matlab用的是gradientDescent的循环。
- 机器学习的学习之路
- 机器学习之路
- 机器学习之路
- 谷震平的机器学习之路
- 我的机器学习之路
- 我的机器学习之路-决策树
- 机器学习之路的开始
- 菜鸟的机器学习之路
- 我的机器学习之路(三)
- FPGA机器学习之学习的方向
- FPGA机器学习之学习的方向
- 菜鸟机器学习之路
- 一步一步入门机器学习之二:有趣的机器学习
- 【机器学习】自学笔记绪论---机器学习进阶之路
- 2016 机器学习之路:一年从无到有掌握机器学习
- 【二】机器学习之路——什么是机器学习
- 开启基于JavaScript的机器学习之路 | 机器学习与JavaScript(一)
- 【机器学习】机器学习算法之旅
- 后台数据结合百度echarts生成各类图表
- CodeForces
- 微信端中的企业号、订阅号、服务号之前的区别
- Ubuntu14.04配置CUDA8.0
- 什么样的macbook清理软件才更加适合你
- 机器学习的学习之路
- 日活占比开发文档编写
- 中国数据科学家年薪有多少?
- python爬虫实战(2)——爬取腾讯新闻
- HDU4429
- why静态变量只能被初始化一次?
- java原子变量的理解
- MQTT之mosquitto_passwd命令使用
- Geometric.Glovius.Pro.v4.4.0.454.Win32_64 2CD