我打算通过自学的方式掌握机器学习和人工智能,尽管我没有相关的学术背景和技术经验。我发现大学里的编程课程已经过时,因此决定利用在线资源来自学这些领域。我的目标是成为一名全面的机器学习和AI工程师,虽然我不奢望成为这个领域的顶尖专家,但希望通过我的努力能够做出一些有意义的贡献。
我的主要目标是:
1. 利用机器学习和人工智能解决重要问题。
2. 为社会创造价值,不只是因为这些技术流行,而是为了真正创造出有价值的产品。
3. 激励他人踏上学习之旅,通过分享我的学习经历,帮助他们找到自己的道路。
在选择课程时,我主要考虑的因素包括价格、灵活性、项目制学习和课程的回复和评分。综合考虑这些因素,我选择了多个学科的最佳课程,包括计算机科学、数学、数据科学、人工智能和机器学习。通过分析顶级大学的相关课程和自学成功案例,我发现掌握这些知识需要跨学科的学习。
首先,我从数学开始,因为它是机器学习和人工智能的基础。我学习了线性代数、多元微积分、概率论和统计学等内容。我还选择Python作为主要编程语言,并学习了R语言。
接下来,我增加了数据科学、机器学习、人工智能和深度学习的基础课程。在课程的最后阶段,我还学习了一些高级课程,以进一步提升我的技能。
数学基础
为了打好数学基础,我选择了以下课程:
- 数据科学数学技能:这门课程涵盖了集合论、代数、函数、概率论等基础内容。它由杜克大学提供。
- 推论统计:这门课程涵盖了假设检验和置信区间等统计推断方法,同样由杜克大学提供。
- 数学思维导论:这门课程教授如何像数学家一样思考,涵盖数论、实分析和数学逻辑等内容,由斯坦福大学提供。
- 机器学习数学基础:这门课程涵盖了线性代数、多元微积分和降维技术,由帝国理工学院提供。
- 离散优化:这门课程教授如何使用离散优化技术解决复杂问题,由墨尔本大学提供。
计算机科学基础
在计算机科学方面,我选择了以下课程:
- 计算机科学概论:这门课程涵盖了抽象、算法、数据结构、封装、资源管理和Web开发等内容,由哈佛大学提供。
- 编程基础知识:这门课程教授编程的基本概念,包括如何使用Python编写有趣且实用的程序,由多伦多大学提供。
Python基础
对于Python编程,我选择了以下课程:
- 面向所有人的Python:这门课程涵盖了Python编程的基础知识,还包括HTML、XML和JSON等数据格式,由密歇根大学提供。
- Python编程入门:这门课程教授Python的基础知识,包括数据类型、变量、条件语句和循环语句等,由Udacity提供。
- Python编程专业课程:这门课程教授Python编程的高级技巧,包括变量、条件语句、循环语句、列表解析和类继承等,由密歇根大学提供。
掌握R语言
我还学习了R语言,以便更好地进行数据处理和分析:
- 使用R进行软件开发:这门课程涵盖了在数据科学环境中使用R的方法,包括错误处理、目标导向编程、性能分析和调试等,由约翰·霍普金斯大学提供。
机器学习基础
在机器学习方面,我选择了以下课程:
- 机器学习:这门课程涵盖了机器学习、数据挖掘、统计模式识别、有监督和无监督学习等内容,由斯坦福大学提供。
数据科学基础
对于数据科学,我选择了以下课程:
- 数据科学中的Python:这门课程涵盖了Python和Jupyter notebooks、pandas、NumPy、Matplotlib等工具的使用,由加州大学圣迭戈分校提供。
- 数据分析师纳米学位:这门课程涵盖了如何处理和准备数据、创建可视化等内容,由Udacity提供。
- 使用Python进行数据科学:这门课程涵盖了Python在数据科学中的应用,包括绘图、数据表示和文本挖掘等,由密歇根大学提供。
人工智能基础
在人工智能方面,我选择了以下课程:
- TensorFlow实战:这门课程涵盖了如何建立和训练神经网络,以及如何使用自然语言处理系统,由deeplearning.ai提供。
进阶课程
为了进一步提升我的技能,我还选择了以下高级课程:
- 人工智能微型硕士:这门课程涵盖了人工智能的基本原则和应用,由哥伦比亚大学提供。
- 深度学习:这门课程涵盖了深度学习的基础知识,包括神经网络的建立和训练,由deeplearning.ai和斯坦福大学提供。
- 深度学习纳米学位:这门课程涵盖了如何成为神经网络专家,包括如何使用PyTorch建立神经网络,由Udacity提供。
- 高级机器学习:这门课程涵盖了深度学习、强化学习、自然语言处理、计算机视觉等内容,由国立研究大学高等经济学院提供。
- AWS机器学习入门:这门课程涵盖了如何使用Amazon SageMaker和Amazon AI服务,由AWS提供。
附加课程
我还学习了其他一些课程,这些课程对我帮助很大:
- Hadoop和MapReduce简介:这门课程涵盖了Hadoop的基本原理和使用方法,由Cloudera提供。
- 数据结构和算法:这门课程涵盖了基本的算法技术,包括贪心算法、二进制搜索和动态规划等,由加州大学圣迭戈分校提供。
- 在GCP上进行数据工程、大数据和机器学习:这门课程涵盖了如何在Google Cloud Platform上设计和构建数据管道,由Google Cloud提供。
- 使用Git进行版本控制:这门课程涵盖了如何使用Git进行版本控制,由Udacity提供。
- 使用Python调试软件:这门课程涵盖了如何调试Python程序,由Udacity提供。
- 计算神经科学:这门课程涵盖了计算方法在神经科学中的应用,由华盛顿大学提供。
感谢Coursera、edX和Udacity为开放教育做出的贡献,感谢Class Central和CourseTalk为课程选择提供了帮助。希望这些课程能够帮助更多人实现他们的学习目标。