打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
PHP使用SAE(Sina App Engine)的中文分词服务提取关键字

PHP使用SAE(Sina App Engine)的中文分词服务提取关键字

最近有个业务需求,新闻发布的时候自动提取正文中的关键字,我用SAE(Sina App Engine)
中文分词服务实现了它。

本来是想用DEDECMS自动提取关键字那套,但是它太弱了,提取出来的关键字根本不能用。比如它
能把“个”作为一个关键字。

网上搜了下PHP提取关键字的方法,有几个人给出了解决方案,甚至还有配套的代码和词库,但是由于
代码不够良好,所以运行不起来。没办法,只好另寻方法。忽然想来SAE(Sina App Engine)提供的
有中文分词服务,何不用它来提取关键字呢?

SAE的分词服务提取出来的只是一个个的词、它的词性及出现位置。就关键词来说,我还需要在它的基础
上统计每个词出现的次数。另外,有些词是不适合作关键字的,如标点符号、副词、语气词等等,所以需要
先过滤掉这些词再统计频次。

SAE的分词服务有一点限制:文本不能超过10K。大于10K的文本就只能分段截取逐次提交了,最后再汇总
结果。

整体思路就是这样,并且本周三已完成了相关代码,运行在SAE上的相当于一个接口,它接收文本,处理后返
回JSON数组,这个数组是很原始的,只包含文本中出现的词,它的词性及出现的位置。本地应用调用这个接口,再
处理返回的数组,词的频次统计是由本地应用来完成的。因为我想着服务端的接口还能用于其它地方,所以只返回原
始数据比较好。

SAE的中文分词服务不仅PHP能调用,JAVA,Python也同样可以。

2013/09/20

“PHP使用SAE(Sina App Engine)的中文分词服务提取关键字”5条评论

  1. healhaha:2014/03/13 下午 10:52

    博主,你好!我想请教一下,sae的分词服务如何去掉停用词呢?我用sae的分词做测试发现标点符号什么的都分出来了。

    • admin:2014/03/14 上午 7:56

      我是用PHP开发的,用一个数组存放那些不必要的词的代号,如语气助词、标点符号等,分出来的每个词都有词性的属性,根据这个属性跟数组里的代码对照,如果在数组中,就把它们过滤掉。SAE的文件档里有词性和代号对照表。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Sina 与Google 的 App Engine 的区别对比
ECSHOP商品关键词模糊分词搜索插件,商品列表关键字加红功能
[PHP][微信接口]启用新浪分词服务的简易聊天机器人
PHP调用新浪微博开放平台api发送微博实例
应用模式
《微信公众平台入门到精通》Vol.21
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服