机器学习初级入门
实验楼楼+机器学习课程安排(仅作为自己学习方向的一个借鉴记录)
课程准备阶段
本课程将使用Python作为代码实战过程中的唯一编程语言,需要你熟悉使用 Python 构建机器学习模型的常用工具模块,包括NumPy,Pandas 以及绘图工具 Matplotlib。
第0周
预备知识
本课程将使用Python作为代码实战过程中的唯一编程语言,需要你熟悉使用 Python 构建机器学习模型的常用工具模块,包括 NumPy,Pandas 以及绘图工具 Matplotlib。 如果你还未掌握上述技能,请在开课前自学以下课程:《Python3简明教程》 《NumPy百题大冲关》《Pandas百题大冲关》 《使用Matplotlib绘制2D和3D图形》。
机器学习阶段
本阶段将围绕着机器学习中的监督学习和⾮监督学习问题展开。你不仅可以学会使⽤回归⽅法预测房屋的价格或股票的收益,还可以尝试完成疾病预测、红酒品类鉴定等分类问题。
第1周
监督学习:回归
本周将围绕监督学习中的回归问题展开,内容将涵盖⼀元线性回归、多元线性 回归、多项式回归等 3 种不同的回归⽅法。实验将从原理⼊⼿,通过 Python 实现核⼼ 算法,并最终使⽤ scikit-learn 构建完整的回归预测模型。
第2周
监督学习:分类
本周将围绕监督学习中的分类问题展开,内容将涵盖逻辑回归、k-近邻算法、 朴素贝叶斯、⽀持向量机、感知器、⼈⼯神经⽹络、决策树、随机森林、装袋和提⽰ 等常⽤的 10 种不同的⽅法。实验将从原理⼊⼿,通过 Python 实现核⼼算法,并最终 使⽤ scikit-learn 构建完整的分类预测模型。
第3周
⾮监督学习:聚类
本周将围绕⾮监督学习中的聚类问题展开,内容将涵盖划分聚类、层次聚类、 密度聚类、谱聚类等 4 ⼤类别下近 10 种不同的聚类算法。实验将从原理⼊⼿,通过 Python 实现核⼼算法,并对不同的聚类算法进⾏分析⽐较。
强化学习阶段
本阶段将接触到非常有趣的强化学习内容。强化学习是机器学习中十分重要的一部分,你的模型将具有适应环境的能力,接近于想象中的 AI 效果。该阶段的最后, 你将拥有一只虚拟宠物,并让它自己学会找到迷宫的出口。
第4周
强化学习
本周将围绕强化学习展开,内容会涉及最常⽤的 Q 学习以及 SARSA 学习算 法。实验将会对学习过程、决策过程、更新过程进⾏详细解读。最后,我们会利⽤ OpenAI 开源的 Gym 环境⼯具包完成迷宫挑战。
深度学习阶段
本阶段会涉及到深度学习的内容。实验将手把手教你入门 TensorFlow、Keras、Caffe 以及 Pytorch 等 4 个知名的深度学习框架。同时从理论和实战上熟悉 CNN 卷积 神经网络、RNN 循环神经网络、自编码器以及当下火热的 GAN 生成对抗网络。
第5周
深度学习基础
本周是深度学习的基础内容,课程将带领⼤家熟悉深度学习 4 个最常⽤框架的 使⽤,即 Google 开源的 TensorFlow、Facebook 开源的 Pytorch 以及 Keras 和 Caffe。你 不仅将了解每个框架的基本组成,还可以动⼿构建出经典的深度神经⽹络。
第6周
深度学习
最后⼀周将会涉及到深度学习的核⼼知识。框架只是⼯具,只有熟悉常见的深 度神经⽹络的结构和原理,才能从算真正意义上的⼊门深度学习。本周的实验将围绕 着 CNN 卷积神经⽹络、RNN 循环神经⽹络、⾃编码器以及当下热门的 GAN ⽣成对 抗⽹络展开。
适合人群 & 前提条件
1. 熟悉Python编程基础(必要)
《楼+之机器学习实战》课程将会使用 Python 语言作为代码实战过程中唯一的编程语言。除了 Python 语言具备语法简单,上手快的特点。选择其的另一个重要原因是目前在机器学习领域,最优秀的开源项目和工具几乎都提供了对 Python 语言的支持。
如果你对 Python 3 还不够了解和熟悉,那就非常推荐学习实验楼免费基础课程:《Python3 简明教程》 的前12个实验,如果有时间,能独立完成其中的挑战是极好的。
2. 有一定的数学基础(非必要)
为了更好地理解机器学习算法原理,你最好具备一定的数学基础。如果你在大学本科阶段学习过《高等数学》、《线性代数》、《概率论》,那就完全足够了。当然,无需对这三门课程都非常熟悉,只要有印象,回忆起来就非常快了。
如果,你完全没有线性代数、数理统计等基础,也不用太担心。首先,在课程内容中,凡涉及到数学的地方,我们都会做必要的解释。另外,《楼+ 机器学习实战》将会更突出「实战」,并使用尽量容易理解的语言来介绍算法背后的原理,而非深奥理论的探索。