短信识别方法及相关设备与流程

文档序号:21988682发布日期:2020-08-25 19:27阅读:491来源:国知局
短信识别方法及相关设备与流程

本申请涉及人工智能技术领域,具体而言,本申请涉及一种短信识别方法及相关设备。



背景技术:

短信作为一种信息传播的手段,用户通过具有通讯功能的终端设备可以发送或接收短信。随着科技的发展,短信的影响力日益广泛,一些不法分子为了谋取利益,利用短信传递信息的便利性向使用短信功能的用户发送诈骗信息、虚假宣传信息等,此类带有恶意的短信已经严重影响到人们的日常工作和生活,妨碍人们正常地使用短信功能。因此,识别出带有恶意的短信成为了各大运营商和终端设备安全厂商日益重视的一个课题。

现有技术中,一般是基于短信内容对短信进行识别,当短信内容中包含特定关键字时,如赌博等,则识别短信为恶意短信。该方法依赖于对特定关键字的收集,然而由于存在恶意短信行为的领域过多,如色情、赌博、贷款、伪基站、兼职诈骗等领域,需要收集齐全各个领域的特定关键字不仅费时,实现难度也非常大;且随着时间的推移,特定关键字的收集速度难以跟进恶意短信内容迸发的速度。同时,由于收集到的特定关键字非常多,基于特定关键字对短信进行识别的效率非常低。



技术实现要素:

本申请提供了一种短信识别方法及相关设备,可以解决上述至少一种技术问题。所述技术方案如下:

第一方面,提供了一种短信识别方法,包括:当接收到短信时,提取与所述短信相关的目标特征;所述目标特征的提取包括:分别将所述短信的短信内容中的每个汉字与预建立的汉字库中的汉字进行匹配,若匹配成功则将该汉字确定为常用汉字,若匹配失败则将该汉字确定为非常用汉字;在所述短信内容中提取与所述非常用汉字相关的特征作为目标特征;基于所述目标特征,采用预建立的短信识别模型对所述短信进行识别以计算所述短信的风险分值。

结合第一方面,本申请在第一方面的第一种实施方式中,所述方法还包括:收集使用频率高于第一预设阈值的第一预设数量个汉字;获取第二预设数量条短信,统计所述第二预设数量条短信中每个汉字出现的次数,获取出现次数最多的前第三预设数量个汉字;基于所述第一预设数量个汉字与第三预设数量个汉字建立所述汉字库。

结合第一方面,本申请在第一方面的第二种实施方式中,所述与所述非常用汉字相关的特征包括所述非常用汉字的数量、所述非常用汉字的数量在短信内容的所有汉字数量中的占比、和所述非常用汉字的数量在短信内容的所有字符数量中的占比中的至少一项。

结合第一方面,本申请在第一方面的第三种实施方式中,所述目标特征的提取还包括以下至少一项:对所述短信的短信内容进行分析,提取与所述短信内容相关的第一特征;所述第一特征包括任一种字符的数量、所述任一种字符的数量在短信内容中的占比、和所有字符的数量中的至少一项;将所述第一特征作为所述目标特征;对所述短信的发送号码进行分析,提取与所述发送号码相关的第二特征;所述第二特征包括发送号码是否为手机号、所述短信是否通过虚拟运营商发出、发送号码是否业务端口号、发送号码的黄页名称、发送号码是否属于预设的黑名单、发送号码在第一预设时间段内发送短信的数量、和发送号码在第二预设时间段内发送目标短信的数量中的至少一项;将所述第二特征作为所述目标特征。

结合第一方面,本申请在第一方面的第四种实施方式中,所述方法还包括:收集若干数量的正样本短信与负样本短信构成样本短信集;针对所述样本短信集中每一条短信,提取与短信相关的目标样本特征;基于所述目标样本特征,采用机器学习算法建立所述短信识别模型,以使得所述短信识别模型计算当前短信的风险分值。

结合第一方面,本申请在第一方面的第五种实施方式中,所述方法还包括:获取所述短信识别模型对所述短信进行识别输出的风险分值;当所述风险分值小于或等于预设值时,释放所述短信;当所述风险分值大于所述预设值时,拦截所述短信。

结合第一方面,本申请在第一方面的第六种实施方式中,所述提取与所述短信相关的目标特征之前,还包括以下至少一项:删除所述短信的短信内容中使用频率低于第二预设阈值的字符;将所述短信的短信内容中包括的英文字符转译为中文字符;删除发送所述短信的发送号码中的拨号代码。

第二方面,提供了一种短信识别装置,包括:提取模块,用于当接收到短信时,提取与所述短信相关的目标特征;所述目标特征的提取包括:分别将所述短信的短信内容中的每个汉字与预建立的汉字库中包括的汉字进行匹配,若匹配成功则将该汉字确定为常用汉字,若匹配失败则将该汉字确定为非常用汉字;在所述短信内容中提取与所述非常用汉字相关的特征作为目标特征;识别模块,基于所述目标特征,采用预建立的短信识别模型对所述短信进行识别以计算所述短信的风险分值。

结合第二方面,本申请在第二方面的第一种实施方式中,所述装置还包括:爬取模块,用于收集使用频率高于第一预设阈值的第一预设数量个汉字;获取模块,用于获取第二预设数量条短信,统计所述第二预设数量条短信中每个汉字出现的次数,获取出现次数最多的前第三预设数量个汉字;建立模块,用于基于所述第一预设数量个汉字与第三预设数量个汉字建立所述汉字库。

结合第二方面,本申请在第二方面的第二种实施方式中,所述与所述非常用汉字相关的特征包括所述非常用汉字的数量、所述非常用汉字的数量在短信内容的所有汉字数量中的占比、和所述非常用汉字的数量在短信内容的所有字符数量中的占比中的至少一项。

结合第二方面,本申请在第二方面的第三种实施方式中,所述提取模块包括以下至少一个单元:第一提取单元,用于对所述短信的短信内容进行分析,提取与所述短信内容相关的第一特征;所述第一特征包括任一种字符的数量、所述任一种字符的数量在短信内容中的占比、和所有字符的数量中的至少一项;将所述第一特征作为所述目标特征;第二提取单元,用于对所述短信的发送号码进行分析,提取与所述发送号码相关的第二特征;所述第二特征包括发送号码是否为手机号、所述短信是否通过虚拟运营商发出、发送号码是否业务端口号、发送号码的黄页名称、发送号码是否属于预设的黑名单、发送号码在第一预设时间段内发送短信的数量、和发送号码在第二预设时间段内发送目标短信的数量中的至少一项;将所述第二特征作为所述目标特征。

结合第二方面,本申请在第二方面的第四种实施方式中,所述装置还包括:收集模块,用于收集若干数量的正样本短信与负样本短信构成样本短信集;样本提取模块,用于针对所述样本短信集中每一条短信,提取与短信相关的目标样本特征;模型建立模块,用于基于所述目标样本特征,采用机器学习算法建立所述短信识别模型,以使得所述短信识别模型计算当前短信的风险分值。

结合第二方面,本申请在第二方面的第五种实施方式中,所述装置还包括:分值获取模块,用于获取所述短信识别模型对所述短信进行识别输出的风险分值;释放模块,用于当所述风险分值小于或等于预设值时,释放所述短信;拦截模块,用于当所述风险分值大于所述预设值时,拦截所述短信。

结合第二方面,本申请在第二方面的第六种实施方式中,所述提取模块还包括以下至少一个单元:第一删除模块,用于删除所述短信的短信内容中使用频率低于第二预设阈值的字符;转译模块,用于将所述短信的短信内容中包括的英文字符转译为中文字符;第二删除模块,用于删除发送所述短信的发送号码中的拨号代码。

第三方面,提供了一种电子设备,其包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行第一方面及第一方面任一种实施方式所述的短信识别方法。

第四方面,提供了一种计算机可读存储介质,所述存储介质存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现第一方面及第一方面任一实施方式所述的短信识别方法。

本申请提供的技术方案带来的有益效果是:

本申请在接收到短信时,将短信的短信内容中的每个汉字与预建立的汉字库中的汉字进行匹配,若匹配成功则将该汉字确定为常用汉字,若匹配失败则将该汉字确定为非常用汉字;基于此,在短信内容中提取与非常用汉字相关的特征作为目标特征,并基于目标特征采用预建立的短信识别模型对短信进行识别以计算出短信的风险分值。本申请的实施无需依赖于关键字的收集,且能快速地对短信进行识别,提高了短信识别的效率以及准确率。

本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。

图1为本申请实施例提供的一种短信识别方法的流程示意图;

图2为本申请实施例提供的一种短信识别方法的流程示意图;

图3为本申请实施例提供的一种短信识别方法的流程示意图;

图4为本申请实施例提供的一种短信识别方法的流程示意图;

图5为本申请实施例提供的一种短信识别方法的流程示意图;

图6为本申请实施例提供的一种短信识别方法的流程示意图;

图7为本申请实施例提供的一种短信识别方法的流程示意图;

图8为本申请实施例提供的一种短信识别方法的应用流程图;

图9为本申请实施例提供的一种短信识别装置的结构示意图;

图10为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

本申请的实施使用到人工智能技术,人工智能(artificialintelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。本申请实施例主要涉及机器学习。

机器学习(machinelearning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

由于近些年来恶意短信已经严重影响人们的日常工作生活,且由工信部统计的恶意短信的举报数据可见,每年收到的恶意短信的举报数量都在持续增长,对恶意短信的识别成为了各大运营商或手机安全厂商日益重视的一个课题。在现有技术中,为识别出恶意短信,一般采用基于内容的关键字识别方法。基于内容的关键字识别方法是指当短信中出现恶意的关键字时,则确定短信为恶意短信,该方法可精确匹配恶意短信,但是短信内容若更改为与关键字相似的字体(如将简体字更改为繁体字)时,则难以对短信内容进行识别,其必然产生更多的人工运营和收集关键字的成本。由此可见,上述方法依赖于关键字的收集结果,然而存在恶意短信的场景过多,如赌博、贷款等的场景,且关键字的变化速度非常快,难以收集所有场景涉及的所有关键字,此将导致基于传统的方法判断是否恶意短信时,难以保证识别的准确度。对此,本申请实施例提出一种基于非常用汉字的恶意短信识别方法,以避免依赖于关键字的收集结果,提高短信识别的准确度。

在本申请实施例的短信识别方法中,该方法具体可以由本申请实施例的电子设备执行,具体地所述电子设备可以是移动终端。在一实施例中,短信识别方法可在与手机安全有关的应用程序中实施,当该应用程序具备监控短信接收权限时,将在运行时持续或按照预定频率监控短信的接收情况,当监控到设备接收到短信时,即触发本实施例提供的短信识别方法。如图1所示,本申请实施例包括以下步骤:

s101当接收到短信时,提取与所述短信相关的目标特征;所述目标特征的提取包括:分别将所述短信的短信内容中的每个汉字与预建立的汉字库中的汉字进行匹配,若匹配成功则将该汉字确定为常用汉字,若匹配失败则将该汉字确定为非常用汉字;在所述短信内容中提取与所述非常用汉字相关的特征作为目标特征;

s102基于所述目标特征,采用预建立的短信识别模型对所述短信进行识别以计算所述短信的风险分值。

在步骤s101中,当接收到短信时,提取与所述短信相关的目标特征;具体地,目标特征的内容与短信相关,可以是与短信内容相关,也可以是与短信的发送号码相关;例如,与短信内容的字符数相关,与发送号码是否是手机号码相关。在一实施例中,目标特征的提取包括:分别将所述短信的短信内容中的每个汉字与预建立的汉字库中的汉字进行匹配,若匹配成功则将该汉字确定为常用汉字,若匹配失败则将该汉字确定为非常用汉字;在所述短信内容中提取与所述非常用汉字相关的特征作为目标特征;具体地,预建立的汉字库中包括多个预先收集的汉字;当接收到短信时,将获取短信内容中包括的各个汉字,并分别将各个汉字与汉字库中的汉字进行匹配;匹配的方式可以是将短信内容中的某个汉字a与汉字库中存储的汉字顺序匹配,也可以是随机抽取汉字库中的汉字与汉字a进行匹配,一旦匹配成功,则退出对汉字a的匹配并确定汉字a为常用汉字;当将汉字a与汉字库中的所有汉字均进行匹配后,仍匹配失败则确定汉字a为非常用汉字。当确定短信内容中每个汉字的属性(属于常用汉字或非常用汉字)后,基于每个汉字的属性提取与非常用汉字相关的特征作为目标特征;可选地,与非常用汉字相关的特征可以是非常用汉字的数量、非常用汉字的数量在短信内容的所有汉字数量中的占比、非常用汉字的数量在短信内容的所有字符数量中的占比等。

在步骤s102中,基于所述目标特征,采用预建立的短信识别模型对所述短信进行识别以计算所述短信的风险分值;具体地,预建立的短信识别模型采用机器学习的方法训练而得,短信识别模型可以是树集成模型(xgboost模型),还可以是其他采用随机森林、gbm类、集成学习、深度学习等方法的模型;在本申请实施例中主要是采用了xgboost算法处理二分类问题的原理。其中,风险分值为短信识别模型对短信进行识别时计算所得的概率值,在处理二分类问题中,模型输出的概率值在[0,1]的区间范围内,一般以概率值0.5为基准,当模型输出的概率值大于0.5时,确定该短信为风险较高的恶意短信(如诈骗短信、虚假销售短信等);当模型输出的概率值小于0.5时,确定该短信为风险较低的非恶意短信(即一般理解的正常短信)。可选地,基准的概率值可基于实际情况进行调整,在此不做限定。可选地,在步骤s101中提取到目标特征后,基于目标特征形成目标特征向量,并将目标特征向量输入短信识别模型中,以使短信识别模型基于目标特征向量对短信进行识别,输出短信的风险分值。其中,基于特征形成特征向量的方法可采用svm算法等,在此不再详述。

本申请的实施能快速地对短信进行识别,提高了短信识别的效率以及准确率。

在一实施例中,如图2所示,所述方法还包括:

s201收集使用频率高于第一预设阈值的第一预设数量个汉字;

s202获取第二预设数量条短信,统计所述第二预设数量条短信中每个汉字出现的次数,获取出现次数最多的前第三预设数量个汉字;

s203基于所述第一预设数量个汉字与第三预设数量个汉字建立所述汉字库。

具体地,本实施例提供一种建立汉字库的方法,该方法也适用于建立其他字符库,例如字母库、英文单词库、数字库等。

在步骤s201中,收集使用频率高于第一预设阈值的第一预设数量个汉字;具体地,使用频率高于第一预设阈值的第一预设数量个汉字为常用汉字,常用汉字是指中文中经常用到的汉字,通常有数千字;如《现代汉语常用字表》内收录的常用字。本申请实施例可通过以“常用字”或“常用汉字”等作为搜索词在网上进行搜索,获取搜索词对应的搜索结果中包括的多个网页,以网页的关键词判断该网页内容中是否包括多个常用字,并收集网页内容中的常用字作为使用频率高于第一预设阈值的第一预设数量个汉字。本申请实施例还可以直接输入《现代汉语常用字表》内收录的常用字作为使用频率高于第一预设阈值的第一预设数量个汉字。

可选地,第一预设数量个汉字可通过爬取网页上的内容进行收集,如爬取网页获得5万个汉字,则分别统计该5万个汉字中每个汉字的使用频率,如汉字“你”出现了8千次,则其使用频率为0.16;汉字“然”出现了4千次,则其使用频率为0.08;基于此,首先获取使用频率高于第一预设阈值的汉字,当使用频率高于第一预设阈值的汉字的数量大于第一预设数量时,取使用频率最高的前第一预设数量个汉字。在本实施例中,步骤s201所获取的汉字为所有应用场景下的常用汉字。

在步骤s202中,获取第二预设数量条短信,统计所述第二预设数量条短信中每个汉字出现的次数,获取出现次数最多的前第三预设数量个汉字;具体地,在非恶意短信的短信池中获取第二预设数量条短信,统计所获取短信中每个汉字的出现次数,并按照出现次数进行降序排列,以进一步获取出现次数最多的前第三预设数量个汉字。可选地,当获取到第二预设数量条短信后,统计所有短信中汉字的数量,并统计各个汉字出现次数的占比,以根据占比获取占比最大的前第三预设数量个汉字。在本实施例中,步骤s202所获取的汉字为短信中的常用汉字。

在步骤s203中,基于所述第一预设数量个汉字与第三预设数量个汉字建立所述汉字库;具体地,将第一预设数量个汉字与第三预设数量个汉字进行融合,融合后形成汉字库;该汉字库中的汉字为本实施例中定义的常用汉字。

在一实施例中,所述与所述非常用汉字相关的特征包括所述非常用汉字的数量、所述非常用汉字的数量在短信内容的所有汉字数量中的占比、和所述非常用汉字的数量在短信内容的所有字符数量中的占比中的至少一项。举例说明,当前接收到的短信的短信内容中,包括非常用汉字5个,所有汉字20个,所有字符25个,则非常用汉字的数量为5,非常用汉字的数量在短信内容的所有汉字数量中的占比为0.25,非常用汉字的数量在短信内容的所有字符数量中的占比为0.2。

在一实施例中,如图3所示,所述目标特征的提取还包括以下至少一项:

s301对所述短信的短信内容进行分析,提取与所述短信内容相关的第一特征;所述第一特征包括任一种字符的数量、所述任一种字符的数量在短信内容的所有字符数量中的占比、和所有字符的数量中的至少一项;将所述第一特征作为所述目标特征;

s302对所述短信的发送号码进行分析,提取与所述发送号码相关的第二特征;所述第二特征包括发送号码是否为手机号、所述短信是否通过虚拟运营商发出、发送号码是否业务端口号、发送号码的黄页名称、发送号码是否属于预设的黑名单、发送号码在第一预设时间段内发送短信的数量、和发送号码在第二预设时间段内发送目标短信的数量中的至少一项;将所述第二特征作为所述目标特征。

在步骤s301中,对所述短信的短信内容进行分析,提取与所述短信内容相关的第一特征;具体地,对短信内容进行分析包括区分短信内容中各个字符的字符类型,字符类型包括汉字、字母、数字、运算符号、标点符号、其他符号以及一些功能性符号。第一特征包括任一种字符的数量、任一种字符的数量在短信内容的所有字符数量中的占比、和所有字符的数量中的至少一项。其中,任一字符的数量包括汉字数量、字母数量、数字数量、标点符号数量;所有字符的数量表征短信内容的长度。将第一特征作为目标特征,相当于将第一特征也属于短信识别模型对短信进行识别时需要分析的维度信息。可选地,字符数量可表征为字符长度。

在步骤s302中,对所述短信的发送号码进行分析,提取与所述发送号码相关的第二特征;具体地,对短信的发送号码进行分析包括获取发送短信的发送号码,并分析发送号码的固有属性及统计属性;其中,固有属性为发送号码自身代表的属性,如端口号、构成号码的数字、是否手机号等;统计属性由发送号码历史的行为数据表征,如发送号码在近段时间内发送短信的数量等。可选地,第二特征包括发送号码是否为手机号、所述短信是否通过虚拟运营商发出、发送号码是否为预设的端口号、发送号码的黄页名称、发送号码是否属于预设的黑名单、发送号码在第一预设时间段内发送短信的数量、和发送号码在第二预设时间段内发送目标短信的数量中的至少一项;其中,通过构成手机号的数字可以判断出是否虚拟运营商,由于虚拟运营商发送的短信属于恶意短信的概率较高,因此,将短信是否通过虚拟运营商发出作为模型对短信进行识别时需要分析的一项维度信息;预设的端口号可以是106端口号;发送号码的黄页名称具体用于分析发送号码是否属于某个企业的黄页;预设的黑名单可以是预存储的黑名单,也可以是经大数据分析,将多次被用户反馈为骚扰电话或恶意短信相应的号码作为黑名单。发送号码在第一预设时间段内发送短信的数量可以通过在存储的数据中统计该发送号码在一定时间段内发送短信的数量;目标短信可以为恶意短信或非恶意短信,具体可根据实际情况设定;发送号码在第二预设时间段内发送目标短信的数量可以通过在存储的数据中统计该发送号码在一定时间段内发送某一类短信的数量。当第二特征中均包括发送号码在第一预设时间段内发送短信的数量、和发送号码在第二预设时间段内发送目标短信的数量时,为形成对比,可将第一预设时间段与第二预设时间段设置为相同的时间段。

可选地,发送号码在第一预设时间段内发送短信的数量以及发送号码在第二预设时间段内发送目标短信的数量可以在云存储或数据库的数据中获取。相应地,本申请采用的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。

云存储(cloudstorage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(id,identity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。如当前需要获取发送号码在第一预设时间段内发送短信的数量时,文件系统根据发送号码的存储位置信息让客户端对数据进行访问。存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(raid,redundantarrayofindependentdisk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。

数据库(database),简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。

在一实施例中,如图4所示,所述方法还包括:

s401收集若干数量的正样本短信与负样本短信构成样本短信集;

s402针对所述样本短信集中每一条短信,提取与短信相关的目标样本特征;

s403基于所述目标样本特征,采用机器学习算法建立所述短信识别模型,以使得所述短信识别模型计算短信的风险分值。

具体地,所述正样本短信为非恶意短信,负样本短信为恶意短信,即负样本包括的短信类型可以是赌博类、色情类、兼职刷单类、虚假投资类;在样本短信集中,正样本短信与负样本短信的短信数量可以相同,也可以不同,其可根据模型训练的程度需求做调整,在此不做限定。在收集获得样本短信集后,首先针对样本短信集中的每一条短信提取与短信相关的目标样本特征,目标样本特征所包括的内容与上述实施例所述的目标特征所包括的内容相同;提取到目标样本特征后,基于目标样本特征形成目标样本特征向量;而后将各条短信对应的目标样本特征向量以及相应的正样本短信与负样本短信输入短信识别模型,采用机器学习方法对模型进行训练,最终形成收敛的用于计算短信的风险分值的短信识别模型。

在一实施例中,如图5所示,所述方法还包括:

s501获取所述短信识别模型对所述短信进行识别输出的风险分值;

s502当所述风险分值小于或等于预设值时,释放所述短信;

s503当所述风险分值大于所述预设值时,拦截所述短信。

具体地,短信识别模型基于目标特征对短信进行识别输出的结果为短信的风险分值,即预测的概率值;通过将风险分值与预设值进行判断,确定是否拦截短信。当风险分值小于预设值时,确定短信为非恶意短信,对短信进行释放,此时用户可通过终端直接查看短信;当风险分值大于预设值时,确定短信为恶意短信,对短信进行拦截,此时用户将不会受到恶意短信的骚扰,但仍可通过应用程序当前拦截短信的入口查看被拦截的恶意短信。其中,预设值可以是xgboost模型在处理二分类问题时,默认的基准值0.5,其表征为概率值。

在一实施例中,短信识别模型对短信进行识别时输出两个风险分值,一个为判断短信为恶意短信的第一风险分值,另一个为判断短信为非恶意短信的第二风险分值;第一风险分值与第二风险分值均在[0,1]的区间内。例如,第一风险分值为0.9,第二风险分值为0.2;此时,将短信判断为恶意短信的风险分值更大,则将短信确定为恶意短信,并进行拦截。其中,风险分值可理解为xgboost模型计算所得的概率值。

在一实施例中,如图6所示,所述提取与所述短信相关的目标特征之前,还包括以下至少一项:

s601删除所述短信的短信内容中使用频率低于第二预设阈值的字符;

s602将所述短信的短信内容中包括的英文字符转译为中文字符;

s603删除发送所述短信的发送号码中的拨号代码。

具体地,步骤s601和步骤s602属于对短信内容进行归一化处理;步骤s603属于对发送号码进行归一化处理。

在步骤s601中,删除短信内容中使用频率低于第二预设阈值的字符,具体包括删除短信内容中的特殊字符,特殊字符是相对于常用的符号外,使用频率较少且难以直接输入的符号。可选地,使用频率可以当前数据库或云存储的数据中包括的字符作为基准进行计算;如当前存储有1万个字符,短信内容中的字符出现次数是1,则使用频率为0.0001,二第二预设阈值为0.03;则将该字符确定为使用频率低于第二预设阈值的字符,并进行删除。在一实施例中,删除了短信内容中使用频率低于第二预设阈值的字符,则在提取第一特征时,不再提取关于使用频率低于第二预设阈值的字符的相关特征,但在统计短信内容中所有字符的数量时,可将已删除的字符数量统计入内。

在步骤s602中,将所述短信的短信内容中包括的英文字符转译为中文字符;具体地,如短信内容中包括属于中文字符的逗号和英文字符的逗号,为便于提取目标特征时,对字符的分析和统计,将中文字符统一转为英文字符,或将英文字符统一转为中文字符。

在步骤s603中,删除发送所述短信的发送号码中的拨号代码;具体地,拨号代码包括区号,如+86、0086等与组成手机号码无关的数字或符号。通过删除拨号代码,可提高在提取发送号码特征时的效率及准确率。

在一实施例中,如图7和8所示,提供一种应用上述实施例所述的短信识别方法的应用例。某一管理手机安全的应用程序,获得监控接收短信的权限,并在24小时不间断监控终端所接收到的短信。当前监控到终端接收到短信a,发送短信a的发送号码是17112345678,短信内容是“我是之前婷换新微:15571234564”;则首先对发送号码以及短信内容进行归一化处理;处理后,提取与短信相关的目标特征;在本实施例中,如表1所示,提取与发送号码相关的目标特征包括是否手机号、是否虚拟运营商、是否106端口号、相应的黄页名称、是否属于预设的黑名单、该号码在近两周内发送短信的数量、该号码在近两周内发送恶意短信的数量;如表2所示,提取与短信内容相关的目标特征包括汉字数量、汉字比率(汉字的数量在所有字符数量中的占比)、非常用汉字数量、非常用汉字比率(非常用汉字的数量在所有汉字数量中的占比)、标点符号的数量、数字的数量、字母的数量、所有字符的数量。将所提取出来的目标特征输入短信识别模型,短信识别模型对短信进行识别后输出短信的风险分值为0.9;当前预设值为0.5,则风险分值大于预设值,应用程序将对该短信a进行拦截,用户将不再直接受到该短信a的骚扰。

表1

表2

在一实施例,如图9所示,提供了一种短信识别装置900,包括:

提取模块901,用于当接收到短信时,提取与所述短信相关的目标特征;所述目标特征的提取包括:分别将所述短信的短信内容中的每个汉字与预建立的汉字库中包括的汉字进行匹配,若匹配成功则将该汉字确定为常用汉字,若匹配失败则将该汉字确定为非常用汉字;在所述短信内容中提取与所述非常用汉字相关的特征作为目标特征;

识别模块902,基于所述目标特征,采用预建立的短信识别模型对所述短信进行识别以计算所述短信的风险分值。

在一实施例中,所述装置900还包括:爬取模块,用于收集使用频率高于第一预设阈值的第一预设数量个汉字;获取模块,用于获取第二预设数量条短信,统计所述第二预设数量条短信中每个汉字出现的次数,获取出现次数最多的前第三预设数量个汉字;建立模块,用于基于所述第一预设数量个汉字与第三预设数量个汉字建立所述汉字库。

在一实施例中,所述与所述非常用汉字相关的特征包括所述非常用汉字的数量、所述非常用汉字的数量在短信内容的所有汉字数量中的占比、和所述非常用汉字的数量在短信内容的所有字符数量中的占比中的至少一项。

在一实施例中,所述提取模块901包括以下至少一个单元:第一提取单元,用于对所述短信的短信内容进行分析,提取与所述短信内容相关的第一特征;所述第一特征包括任一种字符的数量、所述任一种字符的数量在短信内容中的占比、和所有字符的数量中的至少一项;将所述第一特征作为所述目标特征;第二提取单元,用于对所述短信的发送号码进行分析,提取与所述发送号码相关的第二特征;所述第二特征包括发送号码是否为手机号、所述短信是否通过虚拟运营商发出、发送号码是否业务端口号、发送号码的黄页名称、发送号码是否属于预设的黑名单、发送号码在第一预设时间段内发送短信的数量、和发送号码在第二预设时间段内发送目标短信的数量中的至少一项;将所述第二特征作为所述目标特征。

在一实施例中,所述装置900还包括:收集模块,用于收集若干数量的正样本短信与负样本短信构成样本短信集;样本提取模块,用于针对所述样本短信集中每一条短信,提取与短信相关的目标样本特征;模型建立模块,用于基于所述目标样本特征,采用机器学习算法建立所述短信识别模型,以使得所述短信识别模型计算当前短信的风险分值。

在一实施例中,所述装置900还包括:分值获取模块,用于获取所述短信识别模型对所述短信进行识别输出的风险分值;释放模块,用于当所述风险分值小于或等于预设值时,释放所述短信;拦截模块,用于当所述风险分值大于所述预设值时,拦截所述短信。

在一实施例中,所述提取模块901还包括以下至少一个单元:第一删除模块,用于删除所述短信的短信内容中使用频率低于第二预设阈值的字符;转译模块,用于将所述短信的短信内容中包括的英文字符转译为中文字符;第二删除模块,用于删除发送所述短信的发送号码中的拨号代码。

本申请实施例的短信识别装置可执行本申请的实施例所提供的一种短信识别方法,其实现原理相类似,本申请各实施例中的短信识别装置中的各模块所执行的动作是与本申请各实施例中的短信识别方法中的步骤相对应的,对于短信识别装置的各模块的详细功能描述具体可以参见前文中所示的对应的短信识别方法中的描述,此处不再赘述。

基于与本申请的实施例中所示的方法相同的原理,本申请的实施例中还提供了一种电子设备,该电子设备可以包括但不限于:处理器和存储器;存储器,用于存储计算机操作指令;处理器,用于通过调用计算机操作指令执行实施例所示的短信识别方法。

在一个可选实施例中提供了一种电子设备,如图10所示,图10所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。

处理器4001可以是cpu(centralprocessingunit,中央处理器),通用处理器,dsp(digitalsignalprocessor,数据信号处理器),asic(applicationspecificintegratedcircuit,专用集成电路),fpga(fieldprogrammablegatearray,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。处理器4001通过调用计算机操作指令执行上述实施例所示的短信识别方法,所述短信识别方法包括:当接收到短信时,提取与所述短信相关的目标特征;所述目标特征的提取包括:分别将所述短信的短信内容中的每个汉字与预建立的汉字库中的汉字进行匹配,若匹配成功则将该汉字确定为常用汉字,若匹配失败则将该汉字确定为非常用汉字;在所述短信内容中提取与所述非常用汉字相关的特征作为目标特征;基于所述目标特征,采用预建立的短信识别模型对所述短信进行识别以计算所述短信的风险分值。

总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是pci(peripheralcomponentinterconnect,外设部件互连标准)总线或eisa(extendedindustrystandardarchitecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器4003可以是rom(readonlymemory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,ram(randomaccessmemory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom(electricallyerasableprogrammablereadonlymemory,电可擦可编程只读存储器)、cd-rom(compactdiscreadonlymemory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

存储器4003用于存储执行本申请方案的应用程序代码,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述方法实施例所示的内容。

其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图10示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。

上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。

上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。

可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定,例如,识别模块还可以被描述为“基于所述目标特征,采用预建立的短信识别模型对所述短信进行识别以计算所述短信的风险分值的模块”。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1