四条垃圾短信,请教如何分别提取关键词

2015-04-04 14:43:16 +08:00
 snowhs
> XXX新机场正式获批!此前只北京、上海拥有双机场,资源绝对罕有!总12萭,每月两千多,还拿首批千亿空港原始股!两征!4000287785

> \d{4}你好,只需本人有效-证件就可申请各-行《五到五十万》的透-支-佧,条件宽松,联系18402892703小李

> \d{4}您好,我行能为你申办一张可周转的信用卡,咨询:132李5815经1106理

> 需用普通 [嘌]
> 18628188410刘 (会.计)

其中第四条,我已经去匹配正文中含有"嘌"并带有电话号码或链接的模式了。但是这种匹配很好破。也想听听大家有没有更好的意见。

谢谢!
7342 次点击
所在节点    程序员
35 条回复
w5205200
2015-04-04 16:41:54 +08:00
可以参考一下cc短信拦截项目 https://code.google.com/p/cc-sms-blocker/
chevalier
2015-04-04 18:35:13 +08:00
样本量客观的话,可以试试分词+贝叶斯分类,也就是现在主流的垃圾邮件判断方式
tioover
2015-04-04 22:22:57 +08:00
结巴分词
朴素贝叶斯分类器
cfan8
2015-04-04 23:08:06 +08:00
tsms.sinaapp.com 我很多年前做的一个东西,训练集也不大,一千条的样子,就是朴素贝叶斯
BetaLe
2015-04-05 01:32:29 +08:00
@w5205200 @snowhs cc短信拦截就是关键词
zhicheng
2015-04-05 08:13:20 +08:00
我有个朋友做过短信网关,楼上的方法都用过,最后效果最好的是,去掉短信里所有的符号,做MD5和系统里标识的垃圾短信对比。
Hxu2M811KVSJqN75
2015-04-05 13:33:16 +08:00
对同音字, 抠出数字和字母,标点符后, 对中文全部做拼音化处理

出现 xinyongka, fapiao , touzhika, daikuan 等等, 直接进行过滤
kaneg
2015-04-05 14:51:03 +08:00
其实是垃圾短信,不同的用户需求是不一样的,如果某人一段时间就是需要发票,带发票的对他就不是垃圾。
所以一个思路:给关键字打分,然后让用户选择严格程度。例如发票,贷款这类普通人不需要的,分值就告,而“联系”分值可以低一些
xlrtx
2015-04-05 15:15:42 +08:00
网上找一些机器学习做text classification 的论文, 训练数据找起来可能比较麻烦..
SmiteChow
2015-04-05 17:53:10 +08:00
自然语言处理无外乎分词,建模,训练,分类撒
wadezhao
2015-04-05 18:27:26 +08:00
短信关键词现在基本失效了,敌人太狡猾,我现在短信已经是白名单了……
zouxy
2015-04-07 10:13:10 +08:00
我自己也写过APP,自己用。我用的加权评分机制,效果还可以。
1.第一条字数过多,标点符号过多。
2.第二条有“佧”这种特殊字。正常人发短信就3000多个常用汉字
3.第四条也有特别的字。
4.第三条还是比较难处理的。
snowhs
2015-04-07 12:00:58 +08:00
@zouxy 能分享一下常用汉字的清单吗~谢谢
snowhs
2015-04-07 12:03:07 +08:00
@zouxy 另外,针对第三条,我已经把信用卡设置成关键词了,我想不到什么情况下我没有存为联系人的人给我发短信要用这个词。
zouxy
2015-04-07 13:19:16 +08:00
@snowhs 网上搜"3754个常用汉字".

我的APP也使用了黑名单,和你的做法差多。另外对银行卡号的数字做了一些过滤。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/181539

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX