移动数据交互平台中的信息分类关键技术研究

2015-10-22 16:50刘胜娃李卫王敏高翔
现代电子技术 2015年19期
关键词:短信钻井垃圾

刘胜娃 李卫 王敏 高翔

摘 要: 基于智能手机的移动数据交互平台作为卫星网络通信的重要补充手段,近期在各钻井队普及起来。该系统的核心功能之一是对接收到的短信进行是否为垃圾短信的判别和分类。介绍了该核心功能的设计与实现,在参考现有成熟算法的基础上,进行了优化和集成。实际应用结果表明,该实现方法取得了令人满意的效果。

关键词: 移动数据; 垃圾短信; 短信分类; 关键词提取

中图分类号: TN929.53?34; TP309 文献标识码: A 文章编号: 1004?373X(2015)19?0054?03

Abstract: Since mobile data interaction platform based on smart phone is an important supplement means of satellite network communication, which is widely used in many drilling teams. One of the core function of this system is to identify and classify if the received SMS is the spam SMS. The design and implementation of this core function is introduced. On the basis of the existing mature algorithms, the system was integrated and optimized. The practical application results show that this method can achieve satisfactory effect.

Keywords: mobile data; spam SMS; SMS classification; keyword extraction

0 引 言

长庆钻井公司覆盖的地域面积十分辽阔,钻井队的分布也很分散,信息化的水平亦参差不齐,难以保证每个钻井队的现场都有良好的卫星上网环境,顺畅的上传和下载数据。因此,开发了钻井生产现场移动数据交互系统,该系统的投入使用使一线井队的信息员在没有卫星上网环境的条件下,仍然可以通过智能手机发送短信和彩信的方式提交现场工况数据,汇报突发情况,传送现场照片。该系统作为卫星上网手段的有力补充,为井队的信息员提供了新型的信息交互手段,与卫星上网相比,该方法不受天气影响和场地限制,并且智能手机大量普及,因而无需组织专门的培训即可迅速上手使用。

在钻井生产现场移动数据交互系统中,通过在服务器上外接短信猫来实现接收短信收发功能,其中一个核心功能就是对所有接收到的短信进行分类,区分出垃圾短信并加以屏蔽;对有效短信则根据其内容进行智能分类,然后存放到对应的数据库表中,并推送给对口的领导。

1 信息处理流程

如图1所示,短信猫从侦听端口中接收短信,并将其存储到临时信息库中待处理,服务器中的监测程序捕获到信息入库的事件后就对新入库的短信条目启动预处理程序。首先根据设定好的垃圾短信特征进行模式匹配,当符合度超过给定阈值即标志为垃圾短信,主动丢弃该短信数据,将其从临时信息库中删除,移入到回收站库表里,5天后自动清空。同时把发送垃圾短信的手机号拉入黑名单库表中,以后自动拒收该手机发送的任何信息。

对于通过检测认定为非垃圾短信的数据则进行下一步处理——关键词提取,即通过对整篇文字的扫描找出高频词,用高频词标识原有的短信息,为智能分类提供依据。

经过高频词筛选的步骤后,即采用改进的KNN算法对新增的信息进行分类操作,将其划分到最接近的类别中,由于单纯的人工智能不可避免的会出现误判,因此在系统运行初期,还需要人为的介入来对分类结果进行审核,企业中专门为此设置了一个信息专员的岗位,用于手动修改错误的分类,分类的结果将指导KNN算法重新计算并更新分类中心。随着训练数据的不断积累,该系统将完成分类中心的计算并趋于一个稳定值的向量作为该分类的中心。

2 功能模块的设计实现

2.1 垃圾短信的判别

系统中设计了白名单与黑名单两个库表,对新接收的短信首先提取出发送号码,分别与黑名单和白名单中的号码进行比对,如果发送号码在黑名单中,则该短信丢弃,从临时信息表中移入到回收站表中;如果发送号码在白名单中,则直接进入到关键词提取模块中进行处理;如果在白名单和黑名单中都找不到发送方的号码,则采用垃圾短信判别方法对其进行鉴别。

当前有很多比较成熟的垃圾邮件判定算法,例如Spam Assassin和Brignmail算法都是基于规则的,这些规则可以是邮件发送方、关键词、特定的词汇或特殊的文本格式。相较于垃圾邮件的检测,垃圾短信的检测更简单一些,主要原因是:

(1) 短信通常只有发送者的手机号码和比较简单的文字,很少像Email那样具有大量的文字和丰富的信息,例如在附件中添加的文档、图片等。这可以大大减少所需的规则数量。

(2) 短消息的长度相对Email要短得多,一般限制为70 个中文字符。短信文本提供的可用文字信息更少,需要结合短信中的其他可用特征实现判定。

(3) 垃圾短信的处理方法有两种:一种是由SMSC(短信服务中心)完成处理;另一种方法是在服务器上编制过滤检测程序来实现。第一种方法,在短信中心过滤可能导致被误判错误分类的信息无法到达入库分类并推送给用户,因此采取第二种方法解决这个问题。此外,过滤检测程序要有较好的实时性,能够在短时间处理及时完成检测,否则将影响信息的后继处理,降低了系统的实时性。endprint

垃圾短信与正常短信具有一些明显的差异,垃圾短信中常常包含“中奖”,“赠送”,银行账号等信息,或者包含反动言论的敏感词汇。这些特征都可以作为筛选的依据,通过与用户设定好的敏感词汇库进行比对,得出该短信的可疑程度,当超过给定阈值时,就对其进行标识,并提交给信息专员进行判定,人工确定后即放弃该信息。未超过给定可疑阈值的则进行下一步分类处理。

2.2 关键词提取

为了对收集到的短信进行准确分类,就必须解决短信中的高频关键词的提取问题。与传统的垂直引擎提取关键词的算法不同,本文中以半结构化和非结构化的短信为主,写作比较随意,使用传统的分词方法很难准确划分出常用词,影响了关键词提取的质量。这就需要在使用垂直引擎之前还要加入结构化和除噪的预处理过程。针对这个问题,在短信的预处理阶段需要通过文档规范化来解决非结构化和半结构化短信的去噪问题,利用客户提供的领域专业词汇库进行分词。这需要解决两个关键问题:如何从短信中提取词语构建关键词的候选集;在候选集中选取哪些词语作为标识该短信的关键词标签。

关键词候选集的构建采用的是基于特征选择的方法,通过给不同的高频词赋予不同的权值来计算其是否为合适的关键词。在本系统中采用了当下比较成熟且较通用的统计方法实现,该方法主要通过统计词语出现的频度和集成学习算法(如Bagging 算法)筛选出表示短信的特征项。

统计算法选用的是TF?IDF算法,该算法的复杂度仅为[O(n),]实现便捷,不需要任何先验知识,不考虑句式、语法、段落、词性和出现位置,仅仅扫描一遍即可获得短信中的所有高频词汇,并给出具体频度,还可以自动剔除短信中出现的感叹词、副词、动词、连接词等,只保留名词。该方法实现简单,但是精度却难以满足要求,因此需要结合其他方法改进效果。

除了统计算法外,还集成了赋词的方法提取特征,这种方法的效果主要取决于领域专家构建的叙词词库、本体和知识库的质量。该方法准确率高、专业性好,还能为用户的语义搜索提供条件。但是专业的叙词词典仅凭钻井公司的信息专员难以构建完整,因此采用了中国知网的专业词库作为基础,自行添加和维护该专业词库。在进行词语比对时,按照就长不就短的方法,尽可能提取出长的关键词达到更好的分类效果。例如,在短信中有一个词语为“钻井安全生产”,这既可以是一个词,也可以分为“钻井”和“安全生产”两个词,此时选用一个词来代表关键词,因为长的词语往往能更精确的表达短信内容的含义。

2.3 短信分类

短信分类就是在给定分类的条件下,根据短信内容,将其自动地、智能地划分到其应属的类别中。当前常见的分类方法有KNN(K?近邻算法),Naive Bayes,SVM(支持向量机)算法。经过比较KNN,NB,SVM三种算法后,发现就精度而言,SVM算法效果最好,KNN算法次之,NB效果最差。但就运行时间而言,则NB算法效率最高,KNN次之,SVM运行时间最长,而且SVM算法需要较多的训练数据才能达到较好的效果。因此选择KNN算法,并根据项目的需求对其进行了局部改进,取得了较好的效果。

KNN算法的思想是:将早期的训练样本对应于[n]维空间中的点,对于一篇待分类短信,系统在所有已分类数据中查找到[K]个与其距离最近的邻居,将这[K]个近邻所属的类别作为该短信的候选类别。传统的KNN算法实现简单有效,但是随着数据的增多,比对数据点距离的计算量急剧增加,会大大影响运行速度,因此需要找出一种折衷的方式,在准确率损失不大的情况下,减少运算量。因此,对传统方法进行了改进:

(1) 采用向量空间模型VSM来表示数据库中所有的短信数据,即所有短信都表示成特征向量的形式;

(2) 采用基于知网的语义相似度向量距离计算结果来比较新增短信向量和不同分类的中心短信特征向量间的距离;

(3) 将新增短信的特征向量加入到距离最近的分类中心所在的类别中,并利用权重对该分类中心的特征向量进行更新计算。

通过这样的改进使原本计算开销较大的KNN算法的运行时间明显缩短,而且准确率并未受到太大影响,加之采用了知网的语义相似度计算方法,取得了比较理想的分类效果。

3 结 语

本文介绍了长庆钻井公司研发的钻井生产现场移动数据交互系统中的核心模块——短信分类算法的设计与实现,该方法在借鉴现有成熟方法的基础上,进行了优化组合和改进,在保证较高的准确率的同时还具有较高的执行效率,在实际应用中取得了令人满意的效果,受到了用户的好评。

参考文献

[1] 刘胜娃,陈思锦,李卫,等.企业私有云平台安全技术研究[J].现代电子技术,2014,37(2):88?90.

[2] 刘胜娃,高翔,王敏.基于贝叶斯网络的攻击图方法在网络安全评估中的应用[J].现代电子技术,2013,36(9):84?87.

[3] 刘胜娃,陈思锦,李卫,等.面向企业私有云计算平台的安全构架研究[J].现代电子技术,2014,37(4):34?36.

[4] 马纪颖,朱力军,张颜.Web信息检索中信息分类技术研究[J].现代电子技术,2008,31(10):76?78.

[5] 包晓安,钟乐海.基于ID3算法的快速分类方法研究[J].现代电子技术,2004,27(7):84?85.

[6] 马晓昊.基于云计算的安全数据存储服务的研究与实现[D].上海:同济大学,2008.

[7] 张凯.基于移动数据城域网的建设规划[J].现代电子技术,2014,37(21):27?30.

[8] 丁晓伟,金世俊.基于BP网络的设备状态分类器的设计[J].现代电子技术,2003,26(17):27?28.endprint

猜你喜欢
短信钻井垃圾
自升式钻井平台Aker操作系统应用探讨
垃圾去哪了
那一双“分拣垃圾”的手
扫描“蓝鲸”——观察海上钻井平台
道歉短信
倒垃圾
代发短信
倒垃圾
裂缝性致密储层钻井完井液漏失损害带模拟
G0-7“工厂化”井组钻井工艺技术