Python机器学习算法实战 【课程目标】 本课程为高级课程,专注于机器学习算法,原理,以及算法实现及优化。 通过本课程的学习,达到如下目的: 1、熟悉常见的机器学习的算法。 2、掌握机器学习的算法原理,以及数据推导。 3、学会使用Python来实现机器学习算法,以及优化算法。 4、掌握scikit-learn扩展库来实现机器学习算法。 【授课时间】 2-3天时间 【授课对象】 IT系统部、大数据系统开发部、大数据建模等IT技术人员。 【学员要求】 课程为实战课程,要求: 1、每个学员自备一台便携机(必须)。 2、要求有Python开发基础。 3、要求有基本的数据分析和数据挖掘的知识。 注:讲师现场提供开源的安装程序、扩展库,以及现场分析的数据源。 【授课方式】 机器学习任务 + 算法原理 + 数学推导 + Python实现 从任务出发,了解算法原理,以及数学推导过程,全过程演练操作,让学员在分析、分享、讲授、总结、自我实践过程中获得能力提升。 【课程大纲】 第一部分: 机器学习基础1、机器学习简介 2、机器学习的种类 Ø 监督学习/无监督学习/半监督学习/强化学习 Ø 批量学习和在线学习 Ø 基于实例与基于模型 3、机器学习的主要战挑 Ø 数据量不足 Ø 数据质量差 Ø 无关特征 Ø 过拟合/拟合不足 4、机器学习任务 Ø 监督:分类、回归 Ø 无监督:聚类、降维、关联规则 5、机器学习基本过程 6、模型评估指标 Ø 回归:R^2, MAE/MSE/RMSE/MAPE Ø 分类:Acc,Recall,Precision,F1,ROC曲线,AUC 7、模型评估方法 Ø 训练集/验证集 Ø 交叉验证 8、过拟合评估 Ø 过拟合检验 Ø 过拟合解决方法:正则化 Ø 正则化: ² L1正则项 ² L2正则项 9、模型参数优化 Ø 交叉验证 Ø 网格搜索GridSearchCV Ø 随机搜索RandomizeSearchCV 10、 机器学习常用库 第二部分: 回归任务算法1、线性回归模型 Ø 一元线性回归 Ø 多元线性回归 2、线性回归算法 Ø 损失函数 Ø 普通最小二乘法OLS 3、欠拟合解决方法 Ø 多项式回归 4、过拟合的优化算法:正则化 Ø 岭回归(Ridge) Ø 套索回归Lasso Ø ElasticNet回归 Ø 各种算法的适用场景 5、超参优化 6、大规模数据集回归:迭代算法 Ø 随机梯度下降 Ø 批量梯度下降 Ø 小批量梯度下降 7、梯度算法的关键问题 第三部分: 逻辑回归1、逻辑回归模型 2、逻辑回归的算法 Ø 原理 Ø 数学推导 3、正则项处理 4、其它优化: Ø 迭代样本的随机选择 Ø 变化的学习率 5、求解算法与惩罚项的关系 6、多分类处理 Ø ovo Ø ovr 第四部分: 线性判别分析1、判别分析简介 Ø 基本思想 2、判别分析算法 Ø 数学推导 Ø 类间/类内散度矩阵 3、多分类处理 Ø 迭代样本的随机选择 Ø 变化的学习率 4、求解算法与惩罚项的关系 第五部分: 支持向量机1、支持向量机简介 Ø 作用:回归、分类、异常检测 Ø 适用场景 2、线性SVM分类 Ø 基本原理 Ø 支持向量 Ø SMO算法 3、非线性SVM分类 4、常用核函数 Ø 线性核函数 Ø 多项式核 Ø 高斯RBF核 Ø 核函数的选择原则 5、线性不可分处理:松弛系数 第六部分: 决策树1、决策树模型 2、构建决策树的三个关键问题 3、决策树的训练 4、决策树的可视化 5、决策树常用算法 Ø ID5 Ø CART 6、正则化参数 7、决策树预测的基本步骤 第七部分: 神经网络1、神经网络模型 Ø 工作原理:加法器、激活函数 Ø 适用场景 2、神经网络的建立步骤 3、BP算法实现 4、多层感知器MLP Ø 隐藏层的数量 Ø 神经元的个数 第八部分: 朴素贝叶斯1、贝叶斯简介 Ø 条件概率 Ø 常见贝叶斯网络 2、朴素贝叶斯 Ø 算法实现 Ø 连续变量处理:高斯分布 3、拉普拉斯修正 第九部分: 集成算法1、分类模型优化思想 2、优化框架 Ø Bagging Ø Boosting 3、Bagging集成 Ø 原理 Ø 随机森林 4、Boosting集成 Ø 原理 Ø AdaBoost 第十部分: 无监督算法 结束:课程总结与问题答疑。
|