0基础入门机器学习项目实战
链接:https://www.jiuzhang.com/qa/7932/
**项目1: 识别数字图像
- 学会使用python读入csv数据并观察数据
- 知道图像处理的基本方法
- 学会输出测试指标
- 掌握机器学习基本原理
- 学会使用KNN模型
- Ipython Notebook 基本入门
项目难易程度:⭐️⭐️⭐️️☆☆
预计课后花费时间:1-2 hours
代码量:70 code lines
**项目2: 房价预测
- 学会利用Sklearn建立Linear Regression 模型
- 学会使用matplotlib画图,分析feature分布以及和预测变量的关系
- 观察并解释参数
- 学会输出测试指标
项目难易程度:⭐️☆☆☆☆
预计课后花费时间:2-3 hours
代码量:40 code lines
**项目3: 垃圾短信分类
- 学会利用Sklearn建立Naive Bayes 模型
- 学会使用matplotlib画图,分析feature分布以及和预测变量的关系
- 了解NLP处理文字的基本原理
- 学会输出测试指标
项目难易程度:⭐️⭐️⭐️️☆☆
预计课后花费时间:2-3 hours
代码量:60 code lines
**项目4: 电影评论情感预测
- 学会利用Sklearn建立Naive Bayes 模型
- 学会使用matplotlib画图,分析feature分布以及和预测变量的关系
- 了解NLP处理文字的基本原理
- 学会输出测试指标
项目难易程度:⭐️⭐️⭐️️⭐️️☆
预计课后花费时间:2-3 hours
代码量:70 code lines
**项目5: 预测员工离职
- 学会使用python读入csv数据并观察数据
- 学会使用matplotlib画图,分析feature分布以及和预测变量的关系
- 利用sklearn建立logistic regression模型
- 观察并解释模型参数
- 利用模型预测真实世界数据
- 学会输出测试指标
项目难易程度:⭐️⭐️⭐️️☆☆
预计课后花费时间:2-3 hours
代码量:60 code lines
**项目6: Titanic沉船预测乘客逃生
- 学会使用python读入csv数据并观察数据
- 学会去除缺失数据
- 使用value_counts将feature归类分析
- 使用dmatrices将数据转化成为sklearn要求的格式,并训练logistic regression模型
- 观察并解释模型参数
- 生成可以在Kaggle上提交的输出文件
项目难易程度:⭐️⭐️⭐️️☆☆
预计课后花费时间:2 hours
代码量:40 code lines
**项目7: 用神经网络对Otto商品分类预测
- 学会使用python读入csv数据并观察数据
- 使用散点图观察两维feature分布
- 使用matshow画出相关系数矩阵
- 使用dmatrices将数据转化成为sklearn要求的格式,并训练神经网络模型
- 输出预测概率,并生成可以在Kaggle上提交的输出文件
项目难易程度:⭐️⭐️⭐️️☆☆
预计课后花费时间:2-3 hours
代码量:50 code lines
**项目8: 深度学习区分猫狗图片
- 学会使用cv2读入数据图片并存储成向量
- 学会使用tflearn进行深度学习
- 建立深度神经网络,包括卷积神经网络CNN,最大池化MaxPooling以及Dropout
- 使用tflearn进行模型生成和预测
- 利用模型预测图片并输出图片和预测结果
- 使用Logistic Regression完成预测并和深度网络结果进行对比
项目难易程度:⭐️⭐️⭐️️️⭐️⭐️️️️
预计课后花费时间:5-6 hours
代码量:110 code lines
**项目9: 预测贷款优良
- 学会使用pandas读入csv表格
- 学会特征选择与标签预处理
- 手动实现决策树并对比不同特征选择标准
- 对比不同决策树终止条件与决策树复杂度分析
- 利用决策树模型对LendingClub贷款数据进行分类预测
项目难易程度:⭐️⭐️⭐️️️⭐️⭐️️️️
预计课后花费时间:7-8 hours
代码量:200 code lines
**项目10: 预测蘑菇可食用性
- 学会使用pandas读入csv表格
- 学会利用sklearn对类型特征进行one-hot encoding
- 学会利用sklearn集成模块调用随机森林模型预测结果
- 对比Logistic regression, 决策树和随机森林的预测能力
- 实现基于决策树的bagging和伪随机森林并对比预测能力
项目难易程度:⭐️⭐️⭐️️️⭐️☆
预计课后花费时间:5-6 hours
代码量:120 code lines
**项目11: 预测房价
- 学会使用pandas读入csv表格
- 学会利用sklearn对数据特征进行标准化处理
- 学会可视化模型在回归问题上的表现
- 对比线性回归和随机森林的预测能力
项目难易程度:⭐️⭐️⭐️️️☆☆
预计课后花费时间:2-3 hours
代码量:80 code lines
**项目12: 预测乳腺肿瘤是否恶性
- 学会使用pandas读入csv表格
- 学会利用sklearn对数据特征进行预处理
- 可视化输入特征与预测目标之间的关系
- 对比Adaboost, logitstic regression 和决策树的表现
- 手动实现Adaboost模型利用该模型在乳腺癌数据集上预测结果
项目难易程度:⭐️⭐️⭐️️️⭐️☆
预计课后花费时间:5-6 hours
代码量:100 code lines
** 项目13: 广告数据点击率预估实战
- 理解真实广告数据
- 学会构造点击率预估样本
- 学会构造高级特征
- 学会选择模型
项目难易程度: ⭐️⭐️⭐️️️⭐️☆
预计课后花费时间: 2-3 hours
代码量: 100 lines
** 项目14 : 自动微分实战
- 理解自动微分的概念
- 实现一个基础的自动微分库
项目难易程度: ⭐️⭐️⭐️️️⭐️☆
预计课后花费时间: 1-2 hours
代码量: 100 lines
**项目15: TensorFlow深入学习入门人脸检测
- 预处理
- 滑动窗口实现
- 提取不同特征(HOG,LBP,HISTGRAM)
- 采用模型判别人脸
- 提出候选框
- 使用CNN替代这一过程
项目难易程度:⭐️⭐️⭐️️️⭐️⭐️️️️
预计课后花费时间:2-4 hours
代码量:300 code lines
** 项目16:实现简单的R-CNN算法
- 利用上节课的模型,搭建一个R-CNN算法
- 利用金字塔算法提取候选框
项目难易程度: ⭐️⭐️⭐️️️☆ ☆
预计课后花费时间: 1-2 hours
代码量: 40 lines
** 项目17:利用迁移学习训练一个人脸检测的模型
- 下载数据,并封装成tfrecord格式
- 挑选一个pretrain的模型
- 利用迁移学习训练模型
项目难易程度: ⭐️⭐️⭐️️️⭐️☆
预计课后花费时间: 2-3 hours
代码量: 100 lines
** 项目18:训练一个人脸特征点检测算法并进行人脸对齐
- 利用上节课的方法,训练特征点检测模型
- 实现简单的人脸对齐
项目难易程度: ⭐️⭐️⭐️️️⭐️☆
预计课后花费时间: 2-3 hours
代码量: 140 lines
** 项目19:训练一个人脸特征提取的模型并完善人脸识别流程
- 训练一个人脸特征提取的模型
- 利用前两节课的模型,实现完整的人脸识别流程
项目难易程度: ⭐️⭐️⭐️️️⭐️⭐️⭐️
预计课后花费时间: 2-3 hours
代码量: 100 lines
** 项目20:深度学习的应用
- 将上图的人脸识别流程封装成RPC接口
- 在web server中调用人脸识别的RPC
- 将比较结果显示在web上
项目难易程度: ⭐️⭐️⭐️️️⭐️⭐️
预计课后花费时间: 2-4 hours
代码量: 200 lines
**项目21: 实现word2vec
- 文字预处理
- 训练数据生成
- 实现CBAG
- 实现negative sampling
- 训练并且在英文和中文数据集上对比结果
项目难易程度:⭐️⭐️⭐️️️⭐️☆
预计课后花费时间:1-3 hours
代码量:200 code lines
**项目22: 强化学习 - 学习迷宫导航
- 理解强化学习的模型框架
- 实现Policy Iteration算法
- 实现Value Iteration算法
- 让机器人学习在迷宫中导航
项目难易程度:⭐️⭐️⭐️️️⭐️☆
预计课后花费时间:1-3 hours
代码量:400 code lines
**项目23: 深度强化学习 - 学习视觉游戏
- 理解深度强化学习的模型框架
- 实现Deepmind经典论文-DQN算法
- 实现经验回放机制
- 让机器人学会操控视觉游戏
项目难易程度:⭐️⭐️⭐️️️⭐️⭐️️️️
预计课后花费时间:6-8 hours
代码量:600 code lines
**项目24: 实现自动翻译
- 训练数据清洗
- seq2seq网络实现
- 训练网络
- bleu评估
项目难易程度:⭐️⭐️⭐️️️⭐️⭐️️️️
预计课后花费时间:4-8 hours
代码量:400 code lines