数据分析中的分词

数据分析的其中一个步骤是对输入内容分词,内容中可能含有垃圾词或

无意义词或分词分错的,因此用停用词词典和几个正则表达式进行过滤,

之前处理的量级大约是10G这个量级,处理速度挺好。

这次增加很多数据源,处理量级上升到1T级别,这些分析处理的速度明显感觉很慢,

通过性能分析发现用正则表达式来match,判断是否是垃圾词的方式性能比较差,

如果去除这些正则,处理速度能提高一倍,试着把各个正则转换成字符串查找,

比如

\\d+(\\.\\d)?\\d*([\u4e00-\u9fa5]*[a-zA-Z]*)

用来匹配数字+中文的词,比如0.99元 5公斤等,这些逻辑简化成词包含.或包含数字和中文就认为是垃圾词,

处理精度几乎没下降,但是速度相当于去掉正则。

猜你喜欢

转载自rrsongzi-gmail-com.iteye.com/blog/1740881
今日推荐