天天看点

基于sklearn的文本特征提取与分类

题目是80万条短信作为训练数据,10%的垃圾短信(label = 1),90%正常短信(label = 0),然后在20万条数据作为测试对象,找出垃圾短信与正常短信。我最终的评分是0.985,相对于第一0.997还是有很大差距,排名59/339。具体竞赛内容可以参考中国好创意比赛官网。

文本分类大致可以分为:出本处理,特征提取,特征选择,分类,预测几个步骤,其中前三步占用80%的工作量。

1.文本处理

分词,去除停用词等。文本处理要做的内容很多,如果需要请参考其他文献。

去除停用词需要根据实际情况作考虑,一般情况是需要的。

文本处理后,得到的应该是每条短信对应的分词表,如:原”商业秘密的秘密性那是维系其商业价值和垄断地位的前提条件之一“经过处理后为”商业秘密 秘密性 维系 商业价值 垄断 地位 前提条件 之一 “

核心代码:

2.特征提取,特征选择

核心代码举例,具体参考附录的完整工程:

3.分类,预测

这个不多说,常见的方法就那么几种,相差不会很大。如果需要达到很高的分数还需要算法上的修改优化。