AutoLearn - Automated Feature Generation and Selection - 2017 ICDM

核心思想:

用特征之间两两回归的方法,发现相关特征的额外信息。

主要流程如下:

第一,特征预处理阶段,对原始特征的信息增益进行判断,剔除低于某个阈值的特征;
第二,挖掘相关特征阶段,对于两两的特征,判断相关性,保留高于某个阈值的特征对;
第三,特征生成阶段,根据两个特征之间的相关关系(线性或者非线性),使用领回归或者核领回归的方法,用一个特征去预测另外一个特征,新特征可以用如下方法获得,首先,预测出的特征可以作为新特征,其次,预测特征与原特征的差值可以作为新特征;
第四,特征选择阶段,根据稳定性要求(对数据集随机抽样,在不同的样本上选择特征,最终选择在多个样本上都被选择的特征,通常使用lasso回归选择特征),和信息增益,选择最终特征。

评价:

比较繁琐,不是很聪明,感觉效果不好。

Learning feature engineering for classification - 2017 IJCAI

核心思想:

根据特征本身的分布情况,选择最合适的特征工程方法。

主要内容:

特征工程分为两类,一类是针对单个特征,比如平方,求平方根等,一类是针对组合特征(一般是两两组合),组合方式可以是加减乘除等等。本文提出了一种基于分类目标的对特征分布的表示方法:量化框架数组(Quantile Sketch Array),用于描述特征的分布,以及以这种定长的分布为输入,学习一个多分类器,目标就是特定的特征工程方法。最终,在多分类器中,只要某个类别的分数超过一定的阈值,就选择它作为特征。

评价:

这种方法比较靠谱,原因在于它学习到的是一种基于分类目标的、从特征分布到特征工程方式的分类器,这种分类器具有一定的经验在里面,本身这个分类器就是一种不可替代的工具。

Automating Feature Engineering

核心思想:

与Learning feature engineering for classification是一样的,只不过增加了一个整体流程图。

Deep Feature Synthesis: Towards Automating Data Science Endeavors

核心思想:

以关系型数据为处理对象,把根据关系型数据生成特征的过程自动化了,属于特征工程前期(即产生原始特征)阶段的工作。

主要内容:

Entity feature:两类,一类是对具体的特征进行单元素处理,另一类是获取元素的分布数据;
Direct Feature and Rational Feature:先来介绍Forward and backward:前向和后向的概念,例如订单与客户,是前向关系,因为每个订单都对应唯一一个客户,而客户与订单,就是一个后向关系,因为一个客户可以对应多个订单。直接特征对应了前向关系,关系特征对应了后向关系。
用一个例子解释一下上述概念,在电商领域,为了判断一个用户对一件商品的喜好程度,需要考虑三个粒度的特征,第一是用户,第二是用户群体,第三是订单。最终生成的特征肯定是用户级别的,比如,包含用户的年龄、性别、受教育程度(Entity Feature),当前年龄段的人均账单数(Direct feature),该用户的总账单数(Rational Feature)。

评价:

把原始特征生成的工作自动化了,甚至还包括了kaggle上的结果自动提交,有价值但是比较繁琐。

ExploreKit: Automatic Feature Generation and Selection - 2016 ICDM

核心思想:

在原始特征的基础上,自动生成有价值的新特征,使用了一阶、二阶、高阶的方法,对生成的特征,用一个基于机器学习的排序模型进行粗排序,然后评估。

主要流程:

第一,生成合成的特征,使用了一阶、二阶、高阶的算子,提供一个框架,更多的算子可以加入。
第二,对合成后特征的提供信息的能力进行排序,排序的方法是,对新特征提取meta信息,包含了数据集的信息(样本数、分类的类别数、之前的分类器的AUC、精确度、召回率等指标),以及生成特征本身的信息(均值、方差、1/4分位数等等),用一个已经训练好的排序打分模型,进行预估。其中,这个排序打分模型是利用很多其他的数据集离线训练得到的,当然离线训练的时候,生成特征的能力就可以用添加该特征后分类精度的提升来表示了。
第三,特征评估,对于本轮生成的新特征,逐一进行评估,评估方法是,对于加入该特征前后,同一个模型的分类精度进行评价,提升值高于某个阈值,就可以加入特征集。整个过程一直持续到最大的迭代轮数为止。

评价:

与Learning feature engineering for classification的思路一样,只是流程更完善。

One Button Machine for Automating Feature Engineering in Rational Databases - 2017 arxiv

核心思想:

与Deep Feature Synthesis中DSM(Data Science Machine)的思路一样,只是多了对非结构化数据(比如文本、序列)的处理,本身没有太多的新东西。

Google Vizier: A Service for Black-Box Optimization

核心思想:

​把黑盒优化的功能做成了一个产品,对于机器学习模型超参调整很有帮助,Google就是牛。

主要内容:

黑盒优化有很多的应用,机器学习里面主要用在超参调优。之前的方法有随机选择、网格搜索、模拟退火、遗传算法,另外还有单纯型法和置信区间法(在某个区间内,用某一个简单模型模拟黑盒,然后选择这个简单模型的最优解)。最近很多人采用了强化学习中MultiBandit的模型来平衡应用和探索,使用模型来建模全局的f,本质上是贝叶斯优化,常采用的模型有高斯过程、深度神经网络、回归森林等。
​在Vizier中,谷歌把很多功能都做成了服务的形式,具体的工程实现方式介绍了很多,没有细看。

AutoML论文调研的更多相关文章

  1. VR论文调研

    IEEE VR 2018 1.Avatars and Virtual Humans--人物和虚拟人物 2.Augmented Reality--增强现实 3.Body and Mind--人体和思想( ...

  2. 不会python?那就换一种姿势爬虫!Java爬虫技术总结

    -本博客为原创内容,转载需注明本人- 前几天有个师妹将要毕业,需要准备毕业论文,但是论文调研需要数据资料,上知网一查,十几万条数据!指导老师让她手动copy收集,十几万的数据手动copy要浪费多少时间 ...

  3. 百度nlp实习生转岗(猝)

    一面: 大部分是问项目相关的.只记住了几个关键的问题. 1.手写快排 2.生成模型与判别模型的区别 分类问题:2种形式: F(x)=y p(y|x) 生成模型:由数据学习联合分布概率p(x,y),然后 ...

  4. 【论文笔记系列】AutoML:A Survey of State-of-the-art (上)

    之前已经发过一篇文章来介绍我写的AutoML综述,最近把文章内容做了更新,所以这篇稍微细致地介绍一下.由于篇幅有限,下面介绍的方法中涉及到的细节感兴趣的可以移步到论文中查看. 论文地址:https:/ ...

  5. 【论文笔记系列】AutoML:A Survey of State-of-the-art (下)

    [论文笔记系列]AutoML:A Survey of State-of-the-art (上) 上一篇文章介绍了Data preparation,Feature Engineering,Model S ...

  6. 写论文如何做相关工作(realted work)的调研

    1.找一篇目标研究领域的中文综述,读懂,对该领域有了些基本的了解,如何找到好的综述,就是要关注一些大牛的实验组的综述和进展: 2.找该中文综述引用的外文文献来看,通常是一些比较经典的文献 3.找这些外 ...

  7. AutoML相关论文

    本文为Awesome-AutoML-Papers的译文. 1.AutoML简介 Machine Learning几年来取得的不少可观的成绩,越来越多的学科都依赖于它.然而,这些成果都很大程度上取决于人 ...

  8. 【转载】 AutoML相关论文

    原文地址: https://www.cnblogs.com/marsggbo/p/9308518.html ---------------------------------------------- ...

  9. 【论文笔记】AutoML for MCA on Mobile Devices——论文解读与代码解析

    理论部分 方法介绍 本节将详细介绍AMC的算法流程.AMC旨在自动地找出每层的冗余参数. AMC训练一个强化学习的策略,对每个卷积层会给出其action(即压缩率),然后根据压缩率进行裁枝.裁枝后,A ...

随机推荐

  1. IntelliJ IDEA 官方网站 http://www.jetbrains.com/idea/

    IntelliJ IDEA 官方网站 http://www.jetbrains.com/idea/

  2. Java基础复习(四)

    1.Integer与int的区别 int是java提供的8种原始数据类型之一.Java为每个原始类型提供了封装类,Integer是java为int提供的封装类.int的默认值为0,而Integer的默 ...

  3. ubuntu中codeblocks设置代码黑色主题配色

    说明 网上资料较杂乱,特整理以备留用和他人参阅. 配置文件下载 首先下载配置文件,命名为default.conf. 配置文件 官方配置文件网址 将配置文件替换ubuntu如下路径内的default.c ...

  4. 枚举和注解@override、@Deprecated、@SuppressWarnings

    一.枚举 简介: 1)枚举对应英文(enumeration,简写 enum) 2)枚举是一组常量的集合. 3)可以这里理解:枚举属于一种特殊的类,里面只包含一组有限的特定的对象. 实现方式: 1.自定 ...

  5. ABCD四个顺序执行方法,拓展性延申

    今天在群里,有人问 有几个void返回值的方法,但是我想让这几个方法有执行顺序,要怎么处理,ABCD 四个方法,依次执行,但是这几个方法都是无返回值的 这个问题其实很简单,如果方法是同步方法,直接四个 ...

  6. 重新认识Appium

    一.重新认识Appium   找到了学习资料,却不知道怎么实现!!! 要如何实现呢? Appium完整案例值得参考:手把手搭建环境,其中安装和配置Mave这部分有点老了. 首先下载maven 官网地址 ...

  7. webhook触发jenkins进行sonar检测

    目的 jenkins仅需创建一个job,git推送后自动进行sonar代码检测并上传到sonarqube jenkins插件 已按社区推荐安装基本插件 Generic Webhook Trigger ...

  8. Netty高级应用及聊天室实战

    Netty 高级应用 1. 编解码器 概念:在网络应用中,需要实现某种编解码器.将原始字节数据与自定义消息数据进行相互转换.网络中都是以字节码的形式传输的. 对Netty而言,编解码器由两部分组成:编 ...

  9. 手把手教你在命令行(静默)部署oracle 11gR2

    文章目录 环境介绍 linux发行版 cpu.内存以及磁盘空间 敲黑板 关闭防火墙以及selinux 操作系统配置 使用阿里的yum源提速 安装依赖软件 设置用户最大进程数以及最大文件打开数 内核参数 ...

  10. 我们一起来学Shell - shell的函数

    文章目录 定义函数 执行不带参数的函数 执行带参数的函数 函数的执行总结 我们一起来学Shell - 初识shell 我们一起来学Shell - shell的变量 我们一起来学Shell - shel ...