机器学习之特征工程篇

作者: 一枚不只关注技术的技术宅 | 来源:发表于2019-01-14 04:23 被阅读11次

    前言

    在传统的机器学习当中,特征工程可以说是最为重要的部分之一。如果大家看看Kaggle比赛中获得前几名的团队的代码就不难发现,他们用的算法并不复杂,构建模型的思路也并不复杂,往往是他们对数据本身的理解以及构建特征的方式起到了更为关键的作用,这也正是特征工程的核心所在。今天我们就来说一说特征工程。

    特征工程内容零散,定义方式较模糊,大致包括特征提取和特征选择两个方面。特征提取,通常指运用特点的变换方式降低数据的维度,即通过更少的资源来描述数据,其中最为经典的可以算得上PCA(Principle Component Analysis)算法。而特征选择,通常指运用某种规则或模型的辅助,筛选出更利于建模的特征。特征提取和特征选择虽然都能起到降低维度的作用,但是原理和目的却是有比较大的不同:特征提取的主要目的在于降低数据维度或者说是从原始数据中提取出有意义的内容,并不考虑是否保留原数据中特征的意义;而特征选择的根本目的并不一定在于降低数据维度,其目的往往是在保留特征原本意义的基础上,筛选出表现更为优秀的特征。

    除了特征提取和特征选择之外,特征工程往往还包括特征创建。利于已有特征创建新的特征,在某种意义上仍然属于特征提取的范畴之内,但是我还是更喜欢把它单独拿出来说。尽管新特征的创建在建模当中看似是可有可无的步骤,但在我看来,特征创建在某种程度上来说可以说是机器学习建模的核心所在。简单来说,我们所拥有的数据越贴合我们想要解决的问题,则建立优秀模型的可能就越高,而创建新的特征就是在利于我们的经验来使数据更加贴合模型。

    举例来讲,笔者曾经参与过一项Kaggle竞赛,这个项目是要求参赛者识别某拍卖网站的竞标者是机器人还是人类(类似于有些游戏中的拍卖系统,如魔兽世界),并最终禁止机器人参加竞标。他们给出的数据只有一些拍卖的基本信息,如拍卖事件的编号、参与竞拍的人的ID、ID所属地区及竞拍时间等。利用这些基本信息直接建立模型的效果是非常差的,但是如果我们利用自己的常识来思考这个问题的话,我们可以用这些基本特征来计算竞标者竞标的速度、竞标者在一段较短时间内参与的拍卖事件的数量、竞标者参与竞标的地点数量等来进一步深挖人类竞标者与机器人之间的不同。

    这里我为大家整理了一些特征工程的难点所在:

    1. 行业背景知识或常识

    如果你是在一个拥有固定种类数据的公司为公司内部建立机器学习模型(如银行),那么恭喜你,你所需要学习的可能只有与银行业务相关的知识;如果你是在一个没有自己数据的数据服务公司,那么同样恭喜你,你有机会去深入了解更多行业了。我曾和一个做数据服务的同行聊过,公司每接一个客户,他就需要去了解一个行业,两年下来他跟来自五六种行业的客户都打过交道,他自嘲说自己已经变成了这些行业的“专家”。的确,在笔者从事车联网行业之初,可以说我对车联网一无所知。后来为了建出更好的模型,我们数据部门不得不经常和产品部门以及运营部门交流,了解行业状况和公司的运行状况是建立好的预测模型的重要一步。

    在实际工作当中(尤其是与硬件设备有关的行业),我们拿到的往往是原始到不能再原始的数据。以车联网行业为例,我们拿到手的其实只有每隔30秒从汽车上的传感器发出的GPS信号信息,我们需要根据自己的需求来自己计算出真正有用的特征,如果没有相关行业的背景知识,想要做好特征工程实在是非常非常困难的。

    2. 数据分析及建模的经验

    如果仅有行业知识就可以做好特征工程的话,那可能也没有机器学习工程师什么事了。特征的创建及选择不只是从业务的角度考虑,更是一种对数据的嗅觉。有经验的工程师们,往往通过自己做的可视化的内容,就可以产生特征组合、变换的灵感。尽管有一些基础的方法可以帮助我们不需动太多脑筋便能创建出比较好的特征,但经验的累积却能够使我们创造出关键性的特征。

    关于这一点,我建议大家多去看看别人是怎么做特征工程的,看看别人的代码,参考别人的思路。比如Kaggle竞赛上取得前几名的队伍,如果你看过他们的代码你就会发现,每个队伍采用的特征工程的思路可以说是天差地别。正确的姿势是,吸收别人的方法,拓宽自己的视野,创造出属于自己的特征工程的思路。

    结语

    总的来说,特征工程没有完全固定的方法和思路,也没有一定有用的算法,在某些数据中可能起作用的方式,换到另一组数据中可能完全无效。有人说机器学习模型的调参是整个建模过程中最繁琐的,但我认为特征工程是比调参更令人头疼的事情。提升特征工程的能力没有捷径,只有不断去参考别人的方式,不断取长补短,增进所能。

    想成为一名合格的数据科学家/AI工程师吗?关注“机器学习学社”获取每天一份的新鲜咨询,为你开拓属于你自己的AI之路

    扫码关注机器学习学社,更多资讯早知道,更多学习干货等你来拿

    相关文章

      网友评论

        本文标题:机器学习之特征工程篇

        本文链接:https://www.haomeiwen.com/subject/nfirdqtx.html