1
9hills 2015-04-04 14:46:08 +08:00 via iPad
关键词做垃圾短信识别是最原始的方法。。
|
3
lhx2008 2015-04-04 14:48:44 +08:00 1
匹配标点符号 ?我是来打酱油的
!*2 [*] (*) - 信用卡 |
4
sun1534 2015-04-04 14:51:20 +08:00 3
转化成 拼音。。再?
|
5
snowhs OP @lhx2008 我试过去掉正文里所有的\W,然后再去找关键词,但是后来发现信用卡和发票这两个大类基本上都已经进化到用同音字来规避了。例如上面的例二。不过例三的李经理倒是要被这种方法网住。
|
7
yylzcom 2015-04-04 14:54:36 +08:00 via Android
还是云比较靠谱,就像WordPress的akismet一样。有客户举报过一次他以后相同/类似内容的短信都会被拦截。关键字这样的局限性太大。
以前用LBE的做得还不错,后来360和联通官方营业厅客户端的也还行。 |
9
snowhs OP @yylzcom 自己做这个事情,一个原因是不信任LBE/360/联通等等,另一个是当作游戏玩。
如果要把这个事情当真来做,确实应该累积用户、累积数据然后做供用户订阅的线上黑名单吧。但是我没打算在这事上投入多少精力。 |
11
mringg 2015-04-04 15:03:18 +08:00 via Android 1
亻言用卡,木仓
|
12
9hills 2015-04-04 15:04:58 +08:00 via iPad 1
|
13
9hills 2015-04-04 15:06:18 +08:00 via iPad
另外垃圾短信的原则是宁可错过,不能误杀。你不能只看拦截率,也要看误杀率。
|
14
NeoAtlantis 2015-04-04 15:12:40 +08:00
云的另一个问题是用户的隐私吧。。。短信都传出去了反正我觉得不太好
|
15
snowhs OP @9hills 谢谢建议~
不过这东西是写给自己用的,我不在意误杀,也不在意不小心用了我的应用的人的重要短信(例如: "我的前任啊,这是我为了规避某垃圾短信拦截程序的联系人白名单专门用的一个新手机号,你看到这条短信的时候,我在#{离你几分钟路程的一个地址}的天台上,双十一.特惠.大奖.等你拿,再见了世界。")被误杀之后会受到什么伤害~ |
16
snowhs OP @NeoAtlantis 让用户自己选择要不要标记一条短信是垃圾短信,然后自己选择要不要上传垃圾短信到服务器上交给开发者分析好了。
|
18
NeoAtlantis 2015-04-04 15:54:17 +08:00
@snowhs 用户都看到垃圾短信了,还要垃圾短信软件干嘛?除非说是从垃圾短信的收件箱里面标记为不是垃圾短信(但是这样也需要判断)。或者有没有可能把过滤算法下发到手机,类似病毒库更新那种。。。
|
20
kshift 2015-04-04 16:28:17 +08:00
说真的,换了 1709 的号码到现在都没怎么收到过垃圾短信。
|
21
w5205200 2015-04-04 16:41:54 +08:00 1
可以参考一下cc短信拦截项目 https://code.google.com/p/cc-sms-blocker/
|
22
chevalier 2015-04-04 18:35:13 +08:00 1
样本量客观的话,可以试试分词+贝叶斯分类,也就是现在主流的垃圾邮件判断方式
|
23
tioover 2015-04-04 22:22:57 +08:00 via Android 1
结巴分词
朴素贝叶斯分类器 |
24
cfan8 2015-04-04 23:08:06 +08:00 1
tsms.sinaapp.com 我很多年前做的一个东西,训练集也不大,一千条的样子,就是朴素贝叶斯
|
26
zhicheng 2015-04-05 08:13:20 +08:00 via Android 1
我有个朋友做过短信网关,楼上的方法都用过,最后效果最好的是,去掉短信里所有的符号,做MD5和系统里标识的垃圾短信对比。
|
27
Hxu2M811KVSJqN75 2015-04-05 13:33:16 +08:00 1
对同音字, 抠出数字和字母,标点符后, 对中文全部做拼音化处理
出现 xinyongka, fapiao , touzhika, daikuan 等等, 直接进行过滤 |
28
kaneg 2015-04-05 14:51:03 +08:00
其实是垃圾短信,不同的用户需求是不一样的,如果某人一段时间就是需要发票,带发票的对他就不是垃圾。
所以一个思路:给关键字打分,然后让用户选择严格程度。例如发票,贷款这类普通人不需要的,分值就告,而“联系”分值可以低一些 |
29
xlrtx 2015-04-05 15:15:42 +08:00
网上找一些机器学习做text classification 的论文, 训练数据找起来可能比较麻烦..
|
30
SmiteChow 2015-04-05 17:53:10 +08:00
自然语言处理无外乎分词,建模,训练,分类撒
|
31
wadezhao 2015-04-05 18:27:26 +08:00 via Android 1
短信关键词现在基本失效了,敌人太狡猾,我现在短信已经是白名单了……
|
32
zouxy 2015-04-07 10:13:10 +08:00 1
我自己也写过APP,自己用。我用的加权评分机制,效果还可以。
1.第一条字数过多,标点符号过多。 2.第二条有“佧”这种特殊字。正常人发短信就3000多个常用汉字 3.第四条也有特别的字。 4.第三条还是比较难处理的。 |