《机器学习Python实践》CH19 预测模型项目模板
2018-01-11 19:48
585 查看
第七部分:项目实践
Ch19 预测模型项目模板
第七部分项目实践Ch19 预测模型项目模板
机器学习项目的Python模板
各步骤的详细说明
定义问题
理解数据
数据准备
评估算法
优化模型
结果部署
进行机器学习的技能,不仅要通过阅读,还需要进行大量的练习。其实对于所有的技能都是这样子的0-0本章将介绍一个通用的机器学习的项目模板,遇到新的项目时,只需要按照这个模板,一步一步的往下走就行了。
机器学习是针对数据进行自动挖掘,找出数据的内在规律,并应用这个规律来预测新数据。一个很好的实践机器学习项目的方法是,使用从UCI机器学习仓库获取的数据集,开启一个机器学习项目,全程参与到项目中。
机器学习项目的Python模板
# Python机器学习项目的模板 # 1.定义问题 # a) 导入类库 # b) 导入数据集 # 2.理解数据 # a) 描述性统计 # b) 数据可视化 # 3.数据准备 # a) 数据清洗 # b) 特征选择 # c) 数据转换 # 4.评估算法 # a) 分离数据集 # b) 定义模型评估标准 # c) 算法审查 # d) 算法比较 # 5.优化模型 # a) 算法调参 # b) 集成算法 # 6.结果部署 # a) 预测评估数据集 # b) 利用整个数据集生成模型 # c) 序列化模型
当遇到了新的机器学习项目时,新建一个Python文件,将上述代码粘贴进去,再把前面章节的方法,填充到每一个步骤当中,反复尝试就可以得到理想的机器学习模型。
各步骤的详细说明
1.定义问题
这一步需要导入机器学习项目所需的包,例如Pandas、Numpy、Matplotlib、sklearn,以及这些包的诸多模块;然后需要导入所需的原始数据,目前,我只接触到了csv格式的数据。理想的状态是,可以在1min甚至30s内,完成包和数据的导入。
2.理解数据
通过描述性统计分析、数据可视化来观察数据3.数据准备
这一步主要是预处理数据,需要多次重复以提高机器学习模型的准确度。具体包括:通过删除重复数据、标记错误数据,甚至标记错误的输入数据来清晰数据;
特征选择, 包括移除多余的特征属性,增加新的特征属性;
数据转化,对数据尺度进行调整,或者调整数据的分布。
4.评估算法
这一步是为了寻找最佳的算法子集,也就是寻找适合于求解本项目的几种看上去都还行的算法,最后在来精选出最后一种。具体包括:
分离出评估数据集、训练数据集,分别用以验证模型、训练模型;
定义模型评估标准,用来评估算法
抽样审查线性算法、非线性算法
比较各种算法,在本项目中的准确度
在面对一个机器学习问题时,会花费大量时间在评估算法和准备数据上,知道找到3-5种准确度足够的算法为止。
5.优化模型
这一步在上述的几种较为精准的算法中,要挑选出一种最精准的算法。提高算法的准确度,主要有两种方法:对每一种算法进行调参,得到各自的最佳结果
使用集合算法
6.结果部署
当认为自己的模型算法准确度足够高时,就可以将之序列化,从而使用新数据来预测数据。可以理解为封装的过程。通过验证数据集来验证模型
通过整个数据集来生成模型
将模型序列化
做到这一步,就可以将模型展示给相关人员了,当有新数据产生的时候,可以采用这个模型来预测新数据。
相关文章推荐
- 数据分析之预测模型项目模板
- [thinkPHP5项目实战_19]模型添加数据
- 大数据项目2:内存受限的大数据预测模型
- Python第十三天 django 1.6 导入模板 定义数据模型 访问数据库 GET和POST方法 SimpleCMDB项目 urllib模块 urllib2模块 httplib模块 django和web服务器整合 wsgi模块 gunicorn模块
- Visual Studio 项目模板制作(二)
- 第十四周项目一 排序函数模板
- 第十二周项目一——理解函数模板
- 商城项目-使用json模板实现带分类的产品规格信息存储及展示
- 你不是一个人在战斗——软件项目团队模型
- 带着项目学PHP第二讲 - 如何切换ecshop模板
- 应用Rational 工具简化基于J2EE的项目 (三)转换到系统模型
- 技巧和诀窍:用VS 2005创建可重用的项目和部件模板
- 项目开发文档模板
- 软件项目方案模板~!
- iOS开发小技巧--适当的清空模型中的某个数据,达到自己的需求,记得最后将数据还原(百思项目评论页面处理最热评论)
- Visual Studio 2008项目模板丢失的解决办法
- 第十四周项目1——排序函数模板
- 模型与模式4预测模型1回归
- Modern UI for WPF 开源项目(3):用模板创建我的第一个Modern UI app
- 第七周 项目六 -【车库模型】