适合新手的 8 个 Python 机器学习项目
再多的理论也不能代替动手实践。教科书和课程会让你误以为精通,因为材料就在你面前。但当你尝试去应用它时,可能会发现它比看起来更难。而「项目」可帮助你快速提高应用的 ML 技能,同时让你有机会探索有趣的主题。
此外,你可以将项目添加到你的投资组合中,从而更轻松地找到工作,找到很酷的职业机会,甚至协商更高的薪水。
在这篇文章中,我们将为初学者介绍 8 个有趣的机器学习项目。你可以在一个周末完成其中的任何一个,或者如果你很喜欢它们,可以将它扩展为更长的项目。
1. 机器学习角斗士
我们亲切地称其为「机器学习角斗士」,但它并不新鲜。这是围绕机器学习建立实用直觉的最快方法之一。
目标是采用开箱即用的模型并将其应用于不同的数据集。这个项目很棒有 3 个主要原因:
首先,你将建立模型与问题拟合的直觉。哪些模型对缺失数据具有鲁棒性?哪些模型可以很好地处理分类特征?是的,你可以翻阅教科书来寻找答案,但是通过实际操作您会学得更好。
其次,这个项目将教你快速制作原型的宝贵技能。在现实世界中,如果不简单地尝试它们,通常很难知道哪种模型表现最好。
最后,本练习可以帮助你掌握模型构建的工作流程。例如,你将开始练习……
- 导入数据
- 清理数据
- 将其拆分为训练/测试或交叉验证集
- 预处理
- 转型
- 特征工程
因为你将使用开箱即用的模型,你将有机会专注于磨练这些关键步骤。
查看 sklearn (Python) 或 caret 文档页面以获取说明。你应该练习回归、分类和聚类算法。
教程
- Python: sklearn – sklearn 包的官方教程
- 使用 Scikit-Learn 预测葡萄酒质量——训练机器学习模型的分步教程
- R: caret – 由 caret 包的作者提供的网络研讨会
数据源
- UCI 机器学习存储库 ——350 多个可搜索的数据集,涵盖几乎所有主题。您一定会找到您感兴趣的数据集。
- Kaggle 数据集——Kaggle 社区上传的 100 多个数据集。这里有一些非常有趣的数据集,包括 Pokemon Go 产卵地点和圣地亚哥的墨西哥卷饼。
- data.gov ——美国政府发布的开放数据集。如果您对社会科学感兴趣,可以去看看。
2. 玩钱球
在《点球成金》一书中,奥克兰 A 队通过分析球员球探彻底改变了棒球运动。他们建立了一支有竞争力的球队,而只花费了洋基队等大型市场球队支付薪水的 1/3。
首先,如果你还没有读过这本书,你应该去看看。这是我们的最爱之一!
幸运的是,体育界有大量数据可供使用。球队、比赛、比分和球员的数据都可以在线跟踪和免费获取。
对于初学者来说,有很多有趣的机器学习项目。例如,您可以尝试……
- 体育博彩……根据每场新比赛前的可用数据预测得分。
- 人才球探……使用大学统计数据来预测哪些球员将拥有最好的职业生涯。
- 综合管理… 根据他们的优势创建球员集群,以建立一个全面的团队。
体育也是练习数据可视化和探索性分析的绝佳领域。你可以使用这些技能来帮助您决定要在分析中包含哪些类型的数据。
数据源
- 体育统计数据库 ——体育统计和历史数据,涵盖了许多职业运动和一些大学运动。干净的界面使网页抓取更容易。
- Sports Reference – 另一个体育统计数据库。界面更杂乱,但可以将单个表格导出为 CSV 文件。
- cricsheet.org – 国际和 IPL 板球比赛的逐球数据。提供 IPL 和 T20 国际比赛的 CSV 文件。
3. 预测股票价格
对于任何对金融感兴趣的数据科学家来说,股票市场就像是糖果乐园。
首先,您有多种类型的数据可供选择。您可以找到价格、基本面、全球宏观经济指标、波动率指数等……不胜枚举。
其次,数据可能非常精细。您可以轻松获取每家公司按天(甚至按分钟)的时间序列数据,从而让您创造性地思考交易策略。
最后,金融市场通常具有较短的反馈周期。因此,您可以快速验证您对新数据的预测。
你可以尝试的一些适合初学者的机器学习项目示例包括……
- 量化价值投资……根据公司季度报告的基本面指标预测 6 个月的价格走势。
- 预测…… 在隐含波动率和实际波动率之间的差值上构建时间序列模型,甚至是循环神经网络。


