如何入门机器学习及推荐的学习资料
近期在微信群里经常有朋友询问“如何入门机器学习?应该看哪些材料?”因此,结合我个人两年多的学习经验,整理了一些关于机器学习入门的资源和建议。以下是我从几个方面整理的入门资源:
(1)编程语言
机器学习领域常用的编程语言包括Python、R等。其中,Python因其丰富的算法库和易用性,已经成为机器学习领域最主流的语言。
Python相关库
NumPy:这是Python中最基础的科学计算库之一,提供了高效的数组操作功能。
Pandas:主要用于数据处理和分析。
- 地址:https://pandas.pydata.org/pandas-docs/stable/
SciPy:这是一个开源的Python算法库和数学工具包。
- 地址:https://docs.scipy.org/doc/scipy/reference/tutorial/index.html
Scikit-Learn:包含众多的算法接口,从监督学习到无监督学习,还有评价指标和特征选择等功能。
- 地址:https://scikit-learn.org/
Scikit-Multilearn:专门用于处理多标签分类问题的库。
此外,还有深度学习相关的库,例如:
Keras:适合初学者入门深度学习的库。
TensorFlow 和 PyTorch:这两个库较为复杂,适合有一定基础的用户使用。
(2)书籍
书籍是深入学习机器学习的重要途径,以下是一些推荐的书籍:
《统计学习方法》:李航老师的这本书非常经典,适合初学者系统学习机器学习的基础理论。
- 强烈推荐:https://book.douban.com/subject/10590759/
《机器学习》:周志华老师的这本书被称为“西瓜书”,涵盖了机器学习的所有主要分支。
- 强烈推荐:https://book.douban.com/subject/26817438/
《推荐系统实战》:项亮博士的这本书非常适合想深入了解推荐系统的朋友。
- 强烈推荐:https://book.douban.com/subject/26643942/
《概率论与数理统计》:很多机器学习算法都源自统计学,掌握概率和统计知识对于理解机器学习算法非常重要。
- 强烈推荐:https://book.douban.com/subject/1445896/
《Pattern Recognition and Machine Learning》:如果你的英语水平不错,可以尝试阅读这本经典书籍。
- 强烈推荐:https://www.springer.com/gp/book/9780387310732
《Reinforcement Learning: An Introduction》:如果你想研究强化学习,这本书是个不错的选择。
- 强烈推荐:https://mitpress.mit.edu/books/reinforcement-learning-second-edition
(3)视频教程
视频教程可以帮助你更好地理解抽象的概念,以下是推荐的视频资源:
吴恩达的机器学习课程:吴恩达老师的课程非常基础,适合初学者入门。可以在网易云和Coursera上找到。
- 网易云:http://open.163.com/special/opencourse/machinelearning.html
- Coursera:https://www.coursera.org/learn/machine-learning
李宏毅的课程:李宏毅教授的课程也非常值得学习。
- 整理好的版本:https://blog.csdn.net/soulmeetliang/article/details/77461607
(4)博客和文章
博客和文章可以帮助你快速了解一些实际应用和技巧,以下是一些推荐的博客和文章来源:
国内博客:
- 火光摇曳:http://www.flickering.cn/
- 美团技术团队:https://tech.meituan.com/
- 苏剑林的博客:https://spaces.ac.cn/
国外博客:
- Netflix技术博客:https://medium.com/netflix-techblog
- Towards Data Science:https://towardsdatascience.com/
(5)比赛
比赛是检验学习成果的有效手段,通过参加比赛可以更好地理解算法的实际应用。以下是一些推荐的比赛平台:
国内比赛平台:
- 天池大数据:https://tianchi.aliyun.com/home/
- DataCastle:http://www.pkbigdata.com/
- Biendata:https://www.biendata.com/
- Kesci:https://www.kesci.com/
- JData:https://jdata.jd.com/
国际比赛平台:
- Kaggle:https://www.kaggle.com/
(6)论文
对于准备撰写论文的同学,阅读顶级会议和期刊的文章是非常重要的。以下是一些推荐的会议和期刊:
数据挖掘类:
机器学习类:
AAAI:顶级人工智能综合会议。
- 2019年:https://aaai.org/Conferences/AAAI-19/wp-content/uploads/2018/11/AAAI-19AcceptedPapers.pdf
- 2018年:https://aaai.org/Conferences/AAAI-18/wp-content/uploads/2017/12/AAAI-18-Accepted-Paper-List.Web_.pdf
- 2017年:https://www.aaai.org/Conferences/AAAI/2017/aaai17accepted-papers.pdf
IJCAI:顶级人工智能综合会议。
- 2019年:审稿中
- 2018年:http://www.ijcai-18.org/accepted-papers/index.html
- 2017年:https://ijcai-17.org/accepted-papers.html
ICML:顶级机器学习会议。
- 2019年:审稿中
- 2018年:https://icml.cc/Conferences/2018/Schedule?type=Poster
- 2017年:https://icml.cc/Conferences/2017/Schedule?type=Poster
NIPS:顶级综合人工智能会议。
- 2019年:征稿中
- 2018年:https://nips.cc/Conferences/2018/Schedule?type=Poster
- 2017年:https://nips.cc/Conferences/2017/Schedule?type=Poster
以上是一些推荐的学习资源和平台,希望对你有所帮助。