Auto_ML自动机器学习之TPOT——学习笔记(1)

  • 前言
    • TPOT简介
    • 入门练习
    • 练习

前言

没有python的基础,也不是程序员,而自动机器学习也号称要让我们这些小白会用,遂学之。

TPOT简介

截止目前GitHub上TPOT.项目的星星是最多的(6150),遂用之。

使用环境Windows10 Pycharm Python3.6.8。
安装过程参照手册。
遇到特殊情况度娘解决。

入门练习

利用示例可检查安装是否成功,顺便看一下运行思路:导入库——装载数据——将数据划分为训练集与测试集——开始分类训练——拟合——输出得分——输出至py文件。
用起来…好像不是太难…吧

练习

找了一个没有预处理过的例子瞅瞅,TPOT tutorial on the Titanic dataset
额…
容我先研究一下~


训练集是由892行13列组成的,题目要求是根据训练数据,它包括乘客ID、是否存活、几等舱、姓名、性别、年龄、配偶\姐妹在不在、父母\小孩在不在、票号、交通费、房间号、在哪上的船这些数据,在测试集中去预测乘客是否存活,测试集中的类别除了是否生存都包含。将预测的结果保存成文件上传。

  • 教程的数据处理思路是:

先瞅瞅男的活的多还是女的活的多,再瞅瞅1等舱2等舱3等舱中男女的存活数,然后列了个存活率的表,比如说1等舱男的有2%挂了,98%活着呢…

(我觉得就是去分析这个表格,看看哪个与存活率的相关性大)

为了在TPOT中使用,必须将‘Survived’这个名称换成‘class’。

再往下,就找了找那些个没有用纯数字表示的变量,像名字(891类)、性别(2类)、票号(681类)、房间号(148类)、搁哪上的船(4类)这几个object。又看了看这些object中有几类值,比如性别,有男女之分,搁哪上的船有三个地方,其中还有一些不知道搁哪上的船的不知道房间号的等等的缺失值,就用占位符来代替掉。为了都用数字来表示,把男的定为0,女的定为1,三个上船的地方用0、1、2表示。房间号的用 MultiLabelBinarizer处理了一遍,剩下的姓名、票号、房间号(没错就是刚才的房间号)、‘class’(原‘Survived’)都被去掉了,去掉后的矩阵与处理后的房间号用np.hstack添加到了一起。

(我寻思着,应该是将与存活率有关的数据进行了数字化处理与保留,把姓名啊、票号啊这些无关的值扔掉来简化过程,提高以后的运行效率与准确度,至于对房间号的处理方式,一会还要再研究一下什么原因)

好了,到这儿的训练数据已经处理完了,接下来就是使用TPOT了。
将结果保存在py文件中,方便以后调整参数。

  • 开始预测:

读取测试集,首先一定得瞅瞅,这个测试集里的类别有没有新蹦出来的,如果有我们就用占位符来取代它。然后进行与之前的训练集一样的数据处理过程(一顿操作*&……%¥#@¥#!%@#……)期间最好检验数据是否处理正确。将处理后的测试集带入进行预测,输出结果至CSV文件。

还有个地方还不太明白,它在处理训练数据的时候是否存活的数据与其他数据是怎么关联到一起的?它不是把class给扔掉了么。

第二天

对于房间号的处理,应该是认为房间号对存活与否有关系,但是数量较多,于是用了类似独热编码的方式进行处理,将处理结果加到了新训练集之后。
对于存活与否与其他数据的关联,在training_indices, validation_indices = training_indices, testing_indices = train_test_split(titanic.index, stratify = titanic_class, train_size=0.75, test_size=0.25)这句话中,小括号中第一个数是被划分的样本集,但是划分的是样本的索引,第二个数是样本的结果,也就是存活与否。他俩一起划分,结果是样本集的索引被划分,值返回给等号之前的两个数。下面这句tpot.fit(titanic_new[training_indices], titanic_class[training_indices])就是利用划分的样本索引,对应到样本中去,进行拟合。小括号中第一个数是数字化的样本集,第二个数是存活与否。

银行定期存款这个Portuguese Bank Marketing Stratergy- TPOT Tutorial,数据处理过程跟上边一样。望远镜的这个MAGIC Gamma Telescope - TPOT Classification Study大概看了一眼,也是一样。

想找一个与时间序列相关的例子,有没有大神做过?

Auto_ML自动机器学习之TPOT——学习笔记(1)相关推荐

  1. Auto_ML自动机器学习之TPOT——学习笔记(2)

    Auto_ML自动机器学习之TPOT--学习笔记(2) 数据预处理 mat文件格式转化为csv 批量读取文件路径 整合--批量mat转csv多文件合并 数据预处理 mat文件格式转化为csv 环境 W ...

  2. 《基于张量网络的机器学习入门》学习笔记4

    <基于张量网络的机器学习入门>学习笔记4 量子概率 将概率复数化 分布与向量的表示 事件与Hilbert空间 不兼容属性及其复数概率表示 为什么一定要复数概率 量子概率 将概率复数化 在经 ...

  3. 《基于张量网络的机器学习入门》学习笔记7

    <基于张量网络的机器学习入门>学习笔记7 量子算法 什么是量子算法 三个经典量子算法 Grover算法 背景 基本原理 例题 量子算法 什么是量子算法 例如我们求解一个问题,一个111千克 ...

  4. 《基于张量网络的机器学习入门》学习笔记6

    <基于张量网络的机器学习入门>学习笔记6 密度算符(密度矩阵) 具体到坐标表象 在纯态上 在混合态上 纯态下的密度算符 混合态下的密度算符 密度算符的性质 量子力学性质的密度算符描述 第一 ...

  5. 《基于张量网络的机器学习入门》学习笔记5

    <基于张量网络的机器学习入门>学习笔记5 量子概率体系 事件 互斥事件 概率与测量 不相容属性对 相容属性对 量子概率与经典概率的区别 量子测量 量子概率体系 我们将经典的实数概率扩展到复 ...

  6. 台湾大学林轩田机器学习技法课程学习笔记4 -- Soft-Margin Support Vector Machine

    红色石头的个人网站:redstonewill.com 上节课我们主要介绍了Kernel SVM.先将特征转换和计算内积这两个步骤合并起来,简化计算.提高计算速度,再用Dual SVM的求解方法来解决. ...

  7. 台湾大学林轩田机器学习技法课程学习笔记1 -- Linear Support Vector Machine

    红色石头的个人网站:redstonewill.com 关于台湾大学林轩田老师的<机器学习基石>课程,我们已经总结了16节课的笔记.这里附上基石第一节课的博客地址: 台湾大学林轩田机器学习基 ...

  8. 台湾大学林轩田机器学习基石课程学习笔记13 -- Hazard of Overfitting

    红色石头的个人网站:redstonewill.com 上节课我们主要介绍了非线性分类模型,通过非线性变换,将非线性模型映射到另一个空间,转换为线性模型,再来进行分类,分析了非线性变换可能会使计算复杂度 ...

  9. 机器学习knn算法学习笔记使用sklearn库 ,莺尾花实例

    ** 机器学习knn算法学习笔记使用sklearn库 ,莺尾花实例. 具体knn算法是怎样的我这里就不再详细论述.在这里我注意总结我使用knn算法进行一个分类的分析 ** 分析过程 1.前期准备 引入 ...

最新文章

  1. 共享文件迁移(fileserver)——从windows server 2003到windows server 2008
  2. [YTU]_2625( 构造函数和析构函数)
  3. Laravel Model 利用 Macroable 为数据模型添加宏能力
  4. redis python 出错重连_python穿透类 对象代理
  5. 【vijos P1914】【codevs 3904】[NOIP2014 普及组T4]子矩阵(dfs+状压dp)
  6. 省市区三级联动菜单(附数据库)
  7. linux怎样判断线程是否暂停_怎样寻找合适的创业项目?如何判断一个创业项目是否靠谱?...
  8. 传智播客-刘意-java深入浅出精华版学习笔记Day02
  9. python的十句名言_让人恍然大悟的十句名言(双语版)
  10. VMware - 导入/导出OVF
  11. 【ICPC-369】uva 12096 The SetStack Computer
  12. 【LVGL(6)】显示中文设置,制作中文字库
  13. 聪明的男人啊 多珍惜你身边的傻女人
  14. windows server 2008阿里云ECS服务器安全设置
  15. vue 一键修复eslint问题(webstorm)(已解决)
  16. 华为OD机试 - 用户调度(Python) | 机试题+算法思路+考点+代码解析 【2023】
  17. 灌溉系统通过远程io模块控制多个喷淋阀门开关
  18. 电影院选座问题----go
  19. 微信小程序—swiper轮播图图片不显示的解决方法
  20. Error running : No valid Maven installation found. Either set the home directory in the

热门文章

  1. java用减号分割地址与参数_//与/与\与\\
  2. STC液压伺服控制系统
  3. 360超高清图片API【多种尺寸】
  4. 手机端银行卡识别SDK,支持Android、iOS系统
  5. 计算机工具选项卡,Word中的辅助功能——工具栏和菜单选项
  6. 上网需要在计算机上安装数据库管理软件吗,上网需要在计算机上安装什么软件...
  7. 设置 MAYA 2013 界面 语言
  8. 8500WN12核顶配 极速稳定上网享受数字生活
  9. Python练习--字符串的操作习题
  10. medfilt2 matlab,Matlab实现medfilt2函数功能