机器学习基础--各种学习方式(5)--自动特征工程

自动特征工程

  自动工程的三个方向,隐式特征组合(如NN,FM),半显式特征组合(如GBDT)与显式特征组合(显式特征叉乘)。


隐式特征组合

  主要特点是对连续值特征非常友好,最成功的应用场景是语音和图像但是深度神经网络并不是万能的,在深度学习中,高维离散特征的变量处理非常复杂,同时缺乏可解释性,过于黑盒化也是神经网络大家关注的焦点。这样会导致深度学习出来的特征组合相对难用到其他算法之上,也很难给人明确的信息反馈。
  针对NN难以处理离散特征的问题,我们需要Large Scale Embedding的技术进行解决。
  Embedding最早在NN上的应用是在NLP的问题上,当时研究者们使用Embedding的技术将每个单词映射到一个低维空间,通过concat,sum,poolling,convolution等方式形成等长的最底层输入,然后使用标准的深度神经网络进行训练。
  推荐是一个典型的场景,限制波尔兹曼机(RBM)在提出之初就曾使用Embedding尝试解决协同过滤问题。最近,谷歌发表描述如何使用大规模Embedding技术在Youtube上向数以十亿计的用户推荐数以亿计的视频,在他们的工作中,他们同时对每个用户与视频进行Embedding,之后把用户观看历史、搜索历史等视频的向量通过求和变成特征,继而进行深度学习,获得了比较大的成功。
Large Scale Embedding在现在依然是一个比较热门的研究领域,其中的成果包括Discrete Factorization Machine,FNN, PNN, DeepFM、DSN(Deep Sparse Network)
机器学习基础--各种学习方式(5)--自动特征工程_第1张图片


半显式的组合

  主要基于的是树模型。为什么说是“半显式”呢?因为大家可能认为树模可解释或者做特征组合是很自然的事情,但其实并不是:叶子节点的每一个分支并不是一种显式、直接的特征组合,而是这些特征在特定取值区间的组合。所以从结果上来说我们做到了特征组合,有一定可解释性,但是同样也没有办法直接看特征相关性或者特征之间组合关系。
机器学习基础--各种学习方式(5)--自动特征工程_第2张图片


显式的组合

  算法的输出会明确指定哪些特征组合起来(笛卡尔积)作为基础特征。整体思路沿着搜索与搜索优化这条路,也有一些地方使用正则化加贪心。由于显式特征组合的问题求解空间大,寻找最优特征组合是个非常难的问题。
  我们对比AlphaGo下围棋,19乘19的棋盘上每个点上有黑子/白子/无子三种状态,它的状态空间最大是。考虑显式特征组合要做的事情,我们要有个特征,限制高阶组合阶数不超过,从中选取个特征,那么2到特征的总量是,最终再从其中选取个特征,其空间是 ,即使将不大的中带入,量级会远远大于,从解空间大小的角度看显示特征组合比下围棋还要更难。
  显式特征组合还有一个问题是如何做连续值的组合,比如说一个人的年龄是30,收入是10000,应该怎么做组合特征呢?是乘、是加还是平方和?在NN中,是通过线性组合加上非线性变化,在GBDT中使用过特征值分裂,但是对限时特征组合,实际上没有一个好的现有方法去直接组合。
  显式特征组合主要有几种算法,一些方法基于Boosting,训练单Feature弱分类器,通过Boosting的过程寻找组合的启发;或者基于Regularization进行权重截断,形成组合候选。这些算法一般不是为了特征组合而设计,组合也多为训练过程的副产物,很难真正的获得高阶的组合特征。
机器学习基础--各种学习方式(5)--自动特征工程_第3张图片

你可能感兴趣的:(机器学习基础,经典机器学习算法)