0.前言

大家好,这篇文章将为大家带来推荐系统类竞赛中特征工程关于处理类别特征的经验总结干货多多,建议收藏

下面介绍的都属于比较实在的内容,靠着这些干货,我在最近科大讯飞举办的开发者大赛中拿到了好几个不错的名次,希望也能为大家带来一点帮助。

1.竞赛的好处

在开始介绍如何处理类别特征前,先总结一下竞赛的各类好处吧:

  • (1)大厂敲门砖

IT行业里,除了学历以外,应届生简历的干货主要有四个:实习、竞赛、项目与论文。四者的重要程度我认为可以按照如下排序:

顶会论文 = 大厂实习 = 大型竞赛 > 项目 = 论文 = 中小厂实习 = 中小型竞赛

其中,顶会论文、大厂实习和大型竞赛自不必多说,如果手握一篇甚至几篇CVPR,去过大厂的core部门实习并干出了一定成绩,或者有腾讯算法大赛或者华为校园AI算法精英大赛的top名次,基本所有公司都会为你打开面试的大门。因为这些都能充分证明你的能力。

  • (2)奖金

虽然各种会议、期刊、非营利性组织举办的学习赛和小型比赛的奖金比较低,但鹅厂、菊花厂、科大讯飞这种公司举办的大赛几乎都伴随着巨额的奖金。拿了top名次少说也有几千块,多的甚至有几十万。

  • (3)发论文

会议/期刊举办的竞赛,能为参赛者们带来发论文的机会。

  • (4)长期回报

代码能力的加深、认识志同道合的朋友、锻炼数据敏感程度… 大家日后可以多多关注科大讯飞、Kaggle、天池等举办的比赛。

2.处理类别特征

在竞赛当中,数据建模是最重要的一环,但由于数据建模比较考验随机应变能力,需要考虑题意、背景甚至时序等因素,可复用性低,因此本篇文章我着重介绍下竞赛中复用性强的一环,特征工程中对类别特征的处理是怎么做的。大家可以直接运用在自己的下一个比赛中。

  • (1)Label Encoding

最常用的编码方法。对类别特征赋予一个整数值,相比于one hot方法,可以有效增加模型速度、减少内存消耗

  • (2)Ordinal Encoding

Label Encoding的变种。对于有内在联系的类别特征,如等级,Label Encoding可能会丢失偏序信息。

  • (3)One Hot Encoding

解释性最强的编码,有时候可以带来很大的提升,但类别数较多时不建议使用独热编码,如果一定要使用,可搭配PCA降维一起服用。

  • (4)Target Encoding

用标签编码。构建类别特征与标签的联系,通常用标签的均值对类别特征编码。

  • (5)Frequency Encoding

用类别特征的频率编码。相比于Label Encoding,这种方法的可解释性更强,因为赋予的数字有意义,但是小概率会造成编码冲突。

  • (6)Custom Encoding

自定义编码。通过先验知识,将某些有内在联系的类别编码成相同的字符。如北京、上海、天津、重庆都有直辖市的特征,在某些特定任务中可以编码为同一符号。

以上六种都是非常常见的编码方法,在大部分数据建模中都可以给模型带来一定的增益。

3.赛后总结

关于如何在比赛中提高进步,我也总结了几个比较重要的点,希望可以帮到大家:

  • (1)多搜集各大比赛top方案,多水群、水论坛,交流心得技巧

  • (2)多搜集代码,构建自己的代码库

  • (3)多理解。理解使用的方法原理,只会调包是走不远的

  • (4)多写。代码越写越熟,读不如想,想不如写

以上就是最近打比赛的心得分享与一些建议,希望对大家有帮助。

关注下方【学姐带你玩AI】🚀🚀🚀

回复“all in”免费获取比赛top方案合集

码字不易,欢迎大家点赞评论收藏!

05-06 19:51