具体上一篇SEO数据分析文章已经隔了很久了,今天有个朋友网上问我,有了词库怎么维护。正好借这个机会谈谈这个问题。 在获取到大量关键词后,首先要对这些词进行处理,在我实际工作中,总结以下几个项目我做过或者觉得有必要做的事情。
1.提取实体(通俗点讲就是找关键词中的重点词)
2.去重
3.分类
4.挖掘特征
5.受控词表的建立
提取实体
提取实体的概念就是找关键词中的重点词。比如 “北京温泉哪里好”,那这个词中的”北京 “和”温泉”这两个词是重点,”哪里好”只是一个疑问词,对主题描述帮助相对比较小。于是我们就需要通过一些技术手段,对关键词进行处理,把中间重要的关键词(实体)取出来。
先看看下面的关键词
处理前
处理后
可以仔细观察一下两者的不同。这边算法有很多种实现方法,鉴于从SEO的角度出发,我们对精确度和召回率的要求,一般都比较低。从0%到80%要花费的心思,可能还没从80%~100%要花费的心思多。并且不同行业的,会有略微不同的做法。于是我采取以下两个方法
1.根据词性删除停词符号(多删一些不要紧)
2.根据tf-idf过滤高频词
这边说说分词算法,很多学术派研究了一大堆中文分词算法,但实际运用起来差别很小。这边随便推荐几个,根据自己会的语言使用。
★ ICTCLAS http://ictclas.nlpir.org/downloads 语言:Java,C#
★ CRF++ http://crfpp.sourceforge.net/ 语言: C#
★ SCWS http://www.xunsearch.com/scws/ 语言: PHP
★ JIEBA https://pypi.python.org/pypi/jieba/ 语言:Python
分词也是一门大学问,有兴趣可以看看CRF,HMM等模型的逻辑。这边就不展开讲了。
分词关键的问题是要速度快,并且可以自定义词库。由于我用的是JIEBA,这方面都能支持。具体可以看看作者个github中的说明https://github.com/fxsjy/jieba/blob/master/README.md
分词后根据词性,排除掉”停词”,就获取到了我们想要的结果集合。
过滤高频词
JIEBA可以对整个文本提取tf-idf值高的词。这些词是核心,肯定不可以去掉。
然后根据分词结果获取到tf值高的词,进行人工审核一下,以我们旅游行业词库为例,地名是经常出现的词,tf值可能会非常高,但是绝对不能把它去掉。所以我们需要先准备一份中国地名/景点名词库,这个可以在网上搜索下,懒人可以直接用搜狗输入法的词库。
然后高频词中还有可能会出现的词,可能为”7月”,”8月”,”大全”,”线路”等等。这些词也可以考虑把它从实体词中踢除。
经过这几轮检查,基本就差不多了,再要精度可以再自行研究。肯定有人问,你折腾了这么久,有什么用?这边只能点到为止。
1.内容关联
2.自动tagging
3.提高站内检索精度
去年到今年soufun和安居客的SEO可以体会一下。
来源:http://www.imyexi.com/?p=853
-
广告合作
-
QQ群号:707632017