数据分析中的分词 博客分类: 数据挖掘&机器学习
程序员文章站
2024-02-18 20:00:52
...
数据分析的其中一个步骤是对输入内容分词,内容中可能含有垃圾词或
无意义词或分词分错的,因此用停用词词典和几个正则表达式进行过滤,
之前处理的量级大约是10G这个量级,处理速度挺好。
这次增加很多数据源,处理量级上升到1T级别,这些分析处理的速度明显感觉很慢,
通过性能分析发现用正则表达式来match,判断是否是垃圾词的方式性能比较差,
如果去除这些正则,处理速度能提高一倍,试着把各个正则转换成字符串查找,
比如
\\d+(\\.\\d)?\\d*([\u4e00-\u9fa5]*[a-zA-Z]*)
用来匹配数字+中文的词,比如0.99元 5公斤等,这些逻辑简化成词包含.或包含数字和中文就认为是垃圾词,
处理精度几乎没下降,但是速度相当于去掉正则。