近些天在微信群里经常看小伙伴问到“机器学习如何入门,看哪些资料 ?”,于是乎想根据笔者学习两年多的学习经验,介绍下机器学习如何入门,该看哪些资料?下面我将从以下几个方面整理机器学习入门的资源:
语言:机器学习中常用的语言。
书籍:书中自有黄金屋,机器学习中涉及到的很多数学理论,只看视频或者博客是很难获取到完整的知识框架。
视频:书中有些公式推导很难理解,可以看看大牛们深入浅出的课程。
博客:经常看一些大牛们的分享,对于扩展知识面具有一定的帮助。
比赛:实践是检验学习成果重要标准,参加一些算法竞赛,对于理解算法有着良好的帮助。
论文:对于一些硕士来说,创新是检验学习能力重要体现。
01
语言
“人生苦短,我用 Python”,Python 目前已经成为机器学习中最主流的语言,由于其丰富的算法库。
1. numpy: 最基础的 Python 库之一
地址:
http://www.numpy.org/
2. pandas: 常用于数据处理的库
地址:
https://pandas.pydata.org/pandas-docs/stable/
3. scipy: SciPy是一个开源的 Python 算法库和数学工具包。
地址:
https://docs.scipy.org/doc/scipy/reference/tutorial/index.html
4. scikit-learn:sklearn 包含众多的算法接口,从监督学习到半监督学习,再到无监督学习。还有评价指标、特征选择等。
地址:
https://scikit-learn.org/
5. scikit-multilearn:multi-label 的算法库。
地址:
http://scikit.ml/
还有一些深度学习的算法库,如:
6. keras:最适合入门深度学习的小伙伴的算法库。
地址:
https://keras.io/zh/
还有一些较难的深度学习算法库,如:Tensorflow,Pytorch。
02
书籍
1.《统计学习方法》:李航老师的《统计学习方法》这本书堪称经典,很多同学都靠着这本书找到理想的工作,强力推荐!对于许多想入门机器学习的小伙伴们,建议多看几遍这本书,弄懂算法的每一个细节。
2.《机器学习》:周志华老师的《机器学习》这本书,很多人又称之为西瓜书,也是很有帮助的。基本涵盖机器学习的所有分支,如监督学习,无监督学习,半监督学习,强化学习,特征选择等。
3. 《推荐系统实战》:项亮博士的《推荐系统实战》这本书,很适合对于想了解推荐系统的小伙伴们有一定的帮助。
4. 《概率论与数理统计》:很多机器学习算法都是从统计学概率论上发展而来的,对于概率知识统计知识不足的小伙伴们,建议研读这本书。
5. 《Pattern Recognition and Machine Learning》:
如果有小伙伴们英文比较好,小伙伴们也可以看看PRML这本经典的书。
6. 《Reinforcement Learning: An Introduction》:
如果有小伙伴想研究强化学习,这是一本不错的强化学习入门书籍。
03
视频与课程
如果小伙伴们对于上述书籍看起来很吃力,很难弄懂算法的来龙去脉,建议将书籍(初学者推荐:《统计学习方法》)与视频结合起来,相互促进。
1. 吴恩达老师的公开课:网易云上和 coursera 上都有他的讲课,很基础的版本,建议大家入门的时候多看看这个视频。个人觉得 coursera 上面的课程比较简单点。
网易云上面的地址:
http://open.163.com/special/opencourse/machinelearning.html
coursera上面的地址:
https://www.coursera.org/learn/machine-learning
2. 李宏毅老师的课程:李宏毅老师的课程也是比较好,值得大家学习。
这里有整理好的版本:
https://blog.csdn.net/soulmeetliang/article/details/77461607
3. GitChat:21天入门机器学习
04
博客
【国内】
1. 火光摇曳:腾讯技术大牛们的博客
地址:http://www.flickering.cn/
2. 美团技术团队的博客
地址:https://tech.meituan.com/
3. 苏剑林的博客里面也全是干货
地址:https://spaces.ac.cn/
4. 还有一些比较大型的博客网站,如博客园,简书,CSDN,知乎,GitChat 等等。
【国外】
1. Netflix:Netflix技术博客,很多干货。
地址:https://medium.com/netflix-techblog
2. Towards Data Science:主要分享些概念、idea和代码。
地址:https://towardsdatascience.com/
3. Github: all code is here。
05
比赛
学习机器学习的过程中,如何检验自己学习的成果呢?比赛就是一个比较好的方向,比赛其实可能会为了成绩,抠那千分位,百分位的差距,但是其实在比赛中思考才是最重要的。
如何将这些经典的算法应用到工业中,这些算法在工业中的优缺点?慢慢体会!
国内比较大型的算法平台有:
天池大数据:
https://tianchi.aliyun.com/home/
datacastle:
http://www.pkbigdata.com/
datafountain:
https://www.datafountain.cn/
biendata:
https://biendata.com/
kesci:
https://www.kesci.com/
Jdata:
https://jdata.jd.com/
国外比较大型的算法平台有:
kaggle:
https://www.kaggle.com/
比赛平台有很多,这几个是比较出名的平台。大家可以去官网看一看,有很多正在进行中的比赛。
另外,还有很多其他的平台,这里我就不介绍了,近些天,我和我朋友也在思考这个问题,是否可以做个网站,集成这些比赛网站还有国外著名会议的学术评测比赛呢?欢迎大家在留言区一起讨论!!!顺便给我个意见!
06
论文
很多即将大四毕业,跨入研究生生活的师弟师妹们,也或者即将迈入研二的师弟师妹呢,是否还在为毕业发愁呢?小论文成为中国硕士毕业老难题!
其实,写一篇比较简单的 ccf c 类的论文并不是很难,或许 ccf b ccf a 类的论文确实很难!
如何入门呢?看近些年机器学习、人工智能的顶级会议、期刊论文(会议论文速度更快)。这里我仅整理下会议论文。
值得看的会议文章:
【数据挖掘类】
SIGKDD:顶级数据挖掘论文。
2019年:审稿中
2018年accepted paper:
https://www.kdd.org/kdd2018/accepted-papers
2017年accepted paper:
https://www.kdd.org/kdd2017/accepted-papers
2016年accepted paer:
https://www.kdd.org/kdd2016/program/accepted-papers
SIGIR:顶级推荐系统论文
2019年accepted paper:审稿中
2018年accepted paper:
http://sigir.org/sigir2018/accepted-papers/
2017年accepted paper:
http://sigir.org/chiir2017/accepted-papers.html
2016年accepted paper:
http://sigir.org/sigir2016/full-papers/
http://sigir.org/sigir2016/short-papers/
还有一些次顶级会议:CIKM/ECML-PKDD/ICDM/SDM/WSDM
【机器学习类】
AAAI: 顶级人工智能综合会议
2019年 accepted paper:
https://aaai.org/Conferences/AAAI-19/wp-content/uploads/2018/11/AAAI-19_Accepted_Papers.pdf
2018年 accepted paper:
https://aaai.org/Conferences/AAAI-18/wp-content/uploads/2017/12/AAAI-18-Accepted-Paper-List.Web_.pdf
2017年 accepted paper:
https://www.aaai.org/Conferences/AAAI/2017/aaai17accepted-papers.pdf
IJCAI: 顶级人工智能综合会议
2019年 accepted paper: 审稿中
2018年accepted paper:
http://www.ijcai-18.org/accepted-papers/index.html
2017年accepted paper:
https://ijcai-17.org/accepted-papers.html
ICML: 顶级机器学习会议
2019年accepted paper: 审稿中
2018年accepted paper:
https://icml.cc/Conferences/2018/Schedule?type=Poster
2017年accepted paper:
https://icml.cc/Conferences/2017/Schedule?type=Poster
NIPS: 顶级综合人工智能会议
2019年accpeted paper: 征稿中
2018年accepted paper:
https://nips.cc/Conferences/2018/Schedule?type=Poster
2017年accepted paper:
https://nips.cc/Conferences/2017/Schedule?type=Poster
还有一些其他的专业人工智能会议:如自然语言处理领域的 ACL/EMNLP/NAACL/COLING。偏统计的人工智能会议:AISTATS。
图像的人工智能会议:CVPR/ICCV/ECCV。小伙伴们可以看一些上述与自己相关的会议论文,针对论文的方法的不足,思考改进的方法!
作者:何从庆,湖南大学计算机硕士,主要研究方向: 机器学习与法律智能。
Github 主页:
https://github.com/hecongqing
微信公众号: AI算法之心