• Stars
    star
    1,256
  • Rank 37,419 (Top 0.8 %)
  • Language
    Jupyter Notebook
  • Created about 7 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Code of my MOOC Course <Play with Machine Learning Algorithms>. Updated contents and practices are also included. 我在慕课网上的课程《Python3 入门机器学习》示例代码。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。

Python3 入门机器学习 - 课程官方代码仓

大家好, 欢迎大家来到我在慕课网上的实战课程《Python3 入门机器学习》的官方代码仓。这个代码仓将不仅仅包含课程的所有源代码,还将发布课程的更新相关内容,勘误信息以及计划的更多可以丰富课程的内容,如更多分享,更多练习,等等等等。大家可以下载、运行、测试、修改。如果你发现了任何bug,或者对课程中的任何内容有意见或建议,欢迎和我联系:)

个人网站liuyubobobo.com [废弃重整中...]

电子邮件[email protected]

微博: 刘宇波bobo http://weibo.com/liuyubobobo

知乎: 刘宇波 http://www.zhihu.com/people/liuyubobobo

知乎专栏:是不是很酷 https://zhuanlan.zhihu.com/liuyubobobo

个人公众号:是不是很酷:)

qrcode

推荐一下这门课程的同学 @howie6879 倾情为大家制作的机器学习资源导航检索站:mlhub123,欢迎大家围观使用支持:)传送门:https://www.mlhub123.com/ 大家有更多机器学习领域的开源资源,也可以在这个项目的github页面:howie6879/mlhub123 提issue,给这个项目做贡献:)

mlhub123

课程源码目录

第一章 欢迎来到 Python3 玩转机器学习 章节文件夹 -
1-1 什么是机器学习 - -
1-2 课程涵盖的内容和理念 - -
1-3 课程所使用的主要技术栈 - -
第二章 机器学习基础 章节文件夹 -
2-1 机器学习世界的数据 - -
2-2 机器学习的主要任务 - -
2-3 监督学习,非监督学习,半监督学习和增强学习 - -
2-4 批量学习,在线学习,参数学习和非参数学习 - -
2-5 和机器学习相关的“哲学”思考 - -
2-6 课程使用环境搭建 notebook script
第三章 Jupyter Notebook, Numpy和Matplotlib 章节文件夹 -
3-1 Jupyter Notebook基础 notebook -
3-2 Jupyter Notebook中的魔法命令 notebook script
3-3 Numpy数据基础 notebook -
3-4 创建Numpy数组(和矩阵) notebook -
3-5 Numpy数组(和矩阵)的基本操作 notebook -
3-6 Numpy数组(和矩阵)的合并与分割 notebook -
3-7 Numpy中的矩阵运算 notebook -
3-8 Numpy中的聚合运算 notebook -
3-9 Numpy中的arg运算 notebook -
3-10 Numpy中的比较和Fancy Indexing notebook -
3-11 Matplotlib数据可视化基础 notebook -
3-12 数据加载和简单的数据探索 notebook -
补充代码1: 更多Numpy的操作 notebook -
补充代码2: Numpy中的结构数组 notebook -
补充代码3: 简单的MNIST数据集数据探索 notebook -
第四章 最基础的分类算法-k近邻算法 kNN 章节文件夹 -
4-1 k近邻算法基础 notebook -
4-2 scikit-learn中的机器学习算法封装 notebook script
4-3 训练数据集,测试数据集 notebook playML
4-4 分类准确度 notebook playML
4-5 超参数 notebook -
4-6 网格搜索与k近邻算法中更多超参数 notebook -
4-7 数据归一化 notebook -
4-8 scikit-learn中的Scaler notebook playML
4-9 更多有关k近邻算法的思考 - -
补充代码1: scikit-learn中的其他scaler [整理中] [敬请期待]
补充代码2: 网格搜索kNN中的不同距离定义 [整理中] [敬请期待]
补充代码3: 使用我们自己的kNN算法处理手写数字识别问题 notebook playML
补充代码4: 使用我们自己的kNN算法处理MNIST手写识别数据集 notebook playML
第五章 线性回归法 章节文件夹
5-1 简单线性回归 - -
5-2 最小二乘法 - -
5-3 简单线性回归的实现 notebook playML
5-4 向量化 notebook playML
5-5 衡量线性回归法的指标:MSE,RMSE和MAE notebook playML
5-6 最好的衡量线性回归法的指标:R Squared notebook playML
5-7 多元线性回归和正规方程解 - -
5-8 实现多元线性回归 notebook playML
5-9 使用scikit-learn解决回归问题 notebook playML
5-10 线性回归的可解释性和更多思考 notebook -
补充代码1: 分类变量的处理 [整理中] [敬请期待]
补充代码2: scikit-learn中同时处理数字变量和分类变量 [整理中] [敬请期待]
补充代码3: FeatureUnion的使用 [整理中] [敬请期待]
第六章 梯度下降法 章节文件夹 -
6-1 什么是梯度下降法 - -
6-2 模拟实现梯度下降法 notebook -
6-3 线性回归中的梯度下降法 - -
6-4 实现线性回归中的梯度下降法 notebook playML
6-5 梯度下降法的向量化和数据标准化 notebook playML
6-6 随机梯度下降法 notebook -
6-7 scikit-learn中的随机梯度下降法 notebook playML
6-8 如何确定梯度计算的准确性?调试梯度下降法 notebook -
6-9 有关梯度下降法的更多深入讨论 - -
补充代码1: 实现小批量梯度下降法 [整理中] [敬请期待]
补充代码2: 三种梯度下降法的可视化比较 [整理中] [敬请期待]
第七章 PCA与梯度上升法 章节文件夹 -
7-1 什么是PCA - -
7-2 使用梯度上升法求解PCA问题 - -
7-3 求数据的主成分 notebook -
7-4 求数据的前n个主成分 notebook -
7-5 高维数据映射为低维数据 notebook playML
7-6 scikit-learn中的PCA notebook -
7-7 试手MNIST数据集 notebook -
7-8 使用PCA对数据进行降噪 notebook -
7-9 人脸识别与特征脸 notebook -
补充代码1: 可视化三维数据的PCA过程 notebook -
补充代码2: IPCA [整理中] [敬请期待]
补充代码3: 随机化PCA [整理中] [敬请期待]
补充代码4: Kernel PCA [整理中] [敬请期待]
补充代码5: LLE [整理中] [敬请期待]
补充代码6: 更多降维方法 [整理中] [敬请期待]
第八章 多项式回归与模型泛化 章节文件夹 -
8-1 什么是多项式回归 notebook -
8-2 scikit-learn中的多项式回归与Pipeline notebook -
8-3 过拟合与欠拟合 notebook -
8-4 为什么要有训练数据集与测试数据集 notebook -
8-5 学习曲线 notebook -
8-6 验证数据集与交叉验证 notebook -
8-7 偏差方差平衡 - -
8-8 模型泛化与岭回归 notebook -
8-9 LASSO notebook -
8-10 L1, L2和弹性网络 - -
补充代码1: scikit-learn中的学习曲线 [整理中] [敬请期待]
补充代码2: 更多scikit-learn中的交叉验证 [整理中] [敬请期待]
补充代码3: scikit-learn中的Elastic Net [整理中] [敬请期待]
第九章 逻辑回归 章节文件夹 -
9-1 什么是逻辑回归 notebook -
9-2 逻辑回归的损失函数 - -
9-3 逻辑回归损失函数的梯度 - -
9-4 实现逻辑回归算法 notebook playML
9-5 决策边界 notebook playML
9-6 在逻辑回归中使用多项式特征 notebook playML
9-7 scikit-learn中的逻辑回归 notebook -
9-8 OvR与OvO notebook -
补充代码1: kNN的决策边界 notebook -
补充代码2: scikit-learn中的LogisticRegressionCV notebook -
补充代码3: 使用 LogisticRegression 处理 MNIST 数据集 notebook -
补充代码4: scikit-learn中随机梯度下降法训练逻辑回归 [整理中] [敬请期待]
第十章 分类算法的评价 章节文件夹 -
10-1 准确度的陷阱和混淆矩阵 - -
10-2 精准率和召回率 - -
10-3 实现混淆矩阵,精准率和召回率 notebook -
10-4 F1 Score notebook -
10-5 精准率和召回率的平衡 notebook -
10-6 精准率-召回率曲线 notebook -
10-7 ROC曲线 notebook playML
10-8 多分类问题中的混淆矩阵 notebook -
补充代码1: Precision-Recall曲线的面积 [整理中] [敬请期待]
补充代码2: 多分类问题下的各项指标 [整理中] [敬请期待]
第十一章 支撑向量机SVM 章节文件夹 -
11-1 什么是SVM - -
11-2 SVM背后的最优化问题 - -
11-3 Soft Margin SVM - -
11-4 scikit-learn中的SVM notebook -
11-5 SVM中使用多项式特征和核函数 notebook -
11-6 到底什么是核函数 - -
11-7 什么是RBF核 notebook -
11-8 scikit-learn中使用RBF核 notebook -
11-9 SVM思想解决回归问题 notebook -
补充代码1: SVR调参解决波士顿房价问题 [整理中] [敬请期待]
补充代码2: 更多SVM核函数 [整理中] [敬请期待]
补充代码3: 手撕LinearSVC [整理中] [敬请期待]
补充代码4: 在PCA中使用Kernel——Kernel PCA [整理中] [敬请期待]
第十二章 决策树 章节文件夹 -
12-1 什么是决策树 notebook -
12-2 信息熵 notebook -
12-3 使用信息熵寻找最优划分 notebook -
12-4 基尼系数 notebook -
12-5 CART与决策树中的超参数 notebook -
12-6 决策树解决回归问题 notebook -
12-7 决策树的局限性 notebook -
补充代码1: 决策树看学习曲线 notebook -
补充代码2: 决策树看复杂度曲线 notebook -
补充代码3: 决策树调参解决波士顿房价问题 [整理中] [敬请期待]
补充代码4: 手撕决策树 [整理中] [敬请期待]
第十三章 集成学习和随机森林 章节文件夹 -
13-1 什么是集成学习 notebook -
13-2 Soft Voting Classifier notebook -
13-3 Bagging 和 Pasting notebook -
13-4 oob (Out-of-Bag) 和关于Bagging的更多讨论 notebook -
13-5 随机森林和 Extra-Trees notebook -
13-6 Ada Boosting 和 Gradient Boosting notebook -
13-7 Stacking - -
补充代码1: 使用随机森林判断特征重要程度 [整理中] [敬请期待]
补充代码2: 调参使用Bagging [整理中] [敬请期待]
补充代码3: 调参使用RandomForests [整理中] [敬请期待]
补充代码4: 调参使用Extra-Trees [整理中] [敬请期待]
补充代码5: 调参使用AdaBoost [整理中] [敬请期待]
补充代码6: 调参使用Gradient Boosting [整理中] [敬请期待]
补充代码7: 手撕Stacking [整理中] [敬请期待]
第十四章 结语,大家加油! - -
14-1 学习scikit-learn文档, 大家加油! - -

课程讲义的PDF版本不在github上提供,大家可以在慕课网上 "下载 -> 查看讲师源码" 中各个章节文件夹下找到。

大家加油!:)

More Repositories

1

Play-with-Algorithms

Codes of my MOOC Course <Play with Algorithms>, Both in C++ and Java language. Updated contents and practices are also included. 我在慕课网上的课程《算法与数据结构》示例代码,包括C++和Java版本。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。
Java
3,655
star
2

Play-Leetcode

My Solutions to Leetcode problems. All solutions support C++ language, some support Java and Python. Multiple solutions will be given by most problems. Enjoy:) 我的Leetcode解答。所有的问题都支持C++语言,一部分问题支持Java语言。近乎所有问题都会提供多个算法解决。大家加油!:)
C++
2,708
star
3

Play-with-Data-Structures

Codes of my MOOC Course <Play Data Structures in Java>. Updated contents and practices are also included. 我在慕课网上的课程《Java语言玩转数据结构》示例代码。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。
Java
1,997
star
4

Play-with-Algorithm-Interview

Codes of my MOOC Course <Play with Algorithm Interviews>. Updated contents and practices are also included. 我在慕课网上的课程《玩儿转算法面试》示例代码。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。
C++
1,112
star
5

ai-learning-roadmap

Ai Learning Roadmap based on lots of open course sources and book materials. 我总结的 AI 学习路径。
430
star
6

Play-with-Linear-Algebra

Codes of my MOOC Course <Play with Linear Algebra>. Updated contents and practices are also included. 我在慕课网上的课程《玩转线性代数》示例代码,使用Python语言。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。
Python
351
star
7

Play-with-Algorithm-Visualization

Codes of my MOOC Course <Play with Algorithm Visualization>. Updated contents and more demos or practices are also included. 我在慕课网上的课程《看得见的算法》Java示例代码。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。
Java
300
star
8

Play-with-Swift-2

The code of my MOOC Course - <Play with Swift 2>(supporting for the newest Swift 2.2). 我在慕课网上的课程《玩儿转 Swift 2》示例代码及更新(支持最新的Swift2.2)。
Swift
273
star
9

cool-open-sharings

Sharing open source projects, books, or articles in this repo. All sharings will be firstly released in "isn't it cool" 我的公众号《是不是很酷》中的子栏目《【是不是很酷】开源资源 分享》文章和相关资源链接备份。
243
star
10

Play-with-Graph-Algorithms

Codes of my MOOC Course <Play Graph Algorithms in Java>. Updated contents and practices are also included. 我在慕课网上的课程《Java语言玩转图论算法》示例代码。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。
Java
151
star
11

my-blog

All my original articles will be backed up here. All my articles will be first released in my WeChat Original Account: <Isn't it Cool> 我的公众号《是不是很酷》的文章备份。同时包含我在其他地方的一些零碎文字,以及过往文章的一些补充与修订:)
95
star
12

liuyubobobo

Hi, It's me :)
72
star
13

heart-curve-cplusplus

This repo uses C++ to "draw" a heart shape in your command line. Happy Valentine's Day!
C++
52
star
14

Play-Leetcode-Database

My Solutions to Leetcode Database problems. 我的 Leetcode 数据库题解。大家加油!:)
37
star
15

My-Google-Foobar

My Google Foobar Solutions by Java. 我的 Google Foobar 题解。作为一个 old school 的程序员,所有问题都使用 Java 解决。应该属于少数派了:)
Java
24
star
16

Whats-New-in-Swift3

The code of my MOOC Course - <Play with Swift 3 New Features>. 我在慕课网上的课程《玩儿转 Swift 3新特性》的课程代码。
Swift
22
star
17

Play-Advent-of-Code

My solutions to Advert of Code (http://adventofcode.com/) . All solutions support C++, some support Java and Python:)
C++
8
star
18

Swift-NSDate-Tutorial

Tutorials on how to use swift NSDate or related classes. NSDate, NSDateFormatter, NSCalendar, NSDateComponents, NSDateComponentsFormatter, etc included.
Swift
8
star
19

Canvas-Red-Envelope-Photo

使用Canvas实现微信红包照片效果。慕课网相关公开课程资料。
JavaScript
8
star
20

HackerRank-Cracking-the-Coding-Interview

A repo based on the HackerRank Tutorials Course "Cracking the Coding Interview Challenges". All problems are solved by C++.
C++
8
star
21

HackerRank-30-Days-of-Code-Challenges

A repo based on the HackerRank Tutorials Course "30 Days of Code Challenges". All problems are solved by C++.
C++
6
star
22

HackerRank-10-Days-of-Statistics-Challenges

A repo based on the HackerRank Tutorials Course "10 Days of Statistics Challenges". All problems are solved by C++.
C++
6
star
23

Google-Material-Design-Color-in-Swift

An Swift 2.2 Implementation of Google Material Design Color
Swift
5
star
24

Python-Challenge

My solutions to python challenges in http://www.pythonchallenge.com/.
Python
3
star
25

HackerRank-CPlusPlus

A repo based on the HackerRank Track "C++".
C++
2
star
26

OJ-Project-Euler

This repo presents my solutions to Project Euler (https://projecteuler.net) and Project Euler + in HackerRank(https://www.hackerrank.com/contests/projecteuler/challenges)
C++
2
star
27

Swift-Comment-Documentation-Tutorial

This is a tutorial for how to use swift comment to create documentation.
Swift
1
star
28

Swift-Force-Touch-Demos

3 demos using brand new Cocoa Touch API - 3D Touch, to implement a scale, an easy doodle app and a circle generator plus physical effects.
Swift
1
star