识别图片垃圾邮件的方法及系统的制作方法

文档序号:7751650阅读:220来源:国知局
专利名称:识别图片垃圾邮件的方法及系统的制作方法
技术领域
本发明涉及通讯技术领域,尤其涉及一种识别图片垃圾邮件的方法及系统。
背景技术
随着网络的快速发展,使用电子邮件(E-mail)进行通信已十分普遍,图片、文档、 影音等各种计算机文件均可通过E-mail的方式传送给接收者,给人们的生活带来了极大 的方便。但同时垃圾邮件也随之蔓延,严重威胁到用户邮箱的稳定性及安全性。目前,识别图片垃圾邮件的方法主要有两类。一是通过OCR(OpticalCharacter Recognition,光学字符识别)系统从图片中分析提取文字,并对所提取的文字进行分词, 再根据样本库,获得每个词语对应的该邮件为垃圾邮件的概率。最后,将每个词语对应的该 邮件为垃圾邮件的概率代入贝叶斯公式中进行计算,得到该邮件为垃圾邮件的概率。若该 邮件为垃圾邮件的概率大于预定的门限值,则将该邮件标记为垃圾邮件。然而,由于OCR技术需要事先将图片分解成像素方式才能处理,其效率非常低,特 别是处理高分辨率的图像。而且,OCR技术只能提取印刷版的字体信息,假如图片中的字体 稍变形或者背景包含噪音,其识别率就急速下降甚至不能识别。因此,现有的使用OCR技术 从图片提取文字的垃圾图片过滤方式,效率低,而且不能处理扭曲变形或者背景包含噪音 信息的图片。

发明内容
本发明实施例提出一种识别图片垃圾邮件的方法及系统,识别图片垃圾邮件的效 率高,并且能够识别扭曲变形的或者背景包含噪音信息的图片。本发明实施例提供一种识别图片垃圾邮件的方法,包括根据邮件中的图片的压缩率分布特性,提取所述图片的特征值;根据所述图片的每个特征值在垃圾图片中出现的概率,应用概率统计公式计算获 得所述图片为垃圾邮件的概率;应用哈希算法计算所述图片的哈希值,将所述哈希值和已接收的邮件图片的哈希 值进行比较,得出所述图片被重复发送的次数;根据所述图片的发信IP查询声誉值数据库,获得所述发信IP的声誉值;根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值查询预置 的权重值列表,计算所述图片的权重和,并根据所述权重和判定所述图片是否为垃圾邮件。其中,所述声誉值数据库保存有发信IP的声誉值,所述声誉值是发信IP所发送的 正常邮件在其所有已发送的邮件中所占的比例。相应地,本发明实施例还提供了一种邮件系统,包括图片特征提取模块,用于根据邮件中的图片的压缩率分布特性,提取所述图片的 特征值;垃圾邮件概率获取模块,用于根据所述图片的每个特征值在垃圾图片中出现的概率,应用概率统计公式计算获得所述图片为垃圾邮件的概率;图片发送次数获取模块,应用哈希算法计算所述图片的哈希值,将所述哈希值和 已接收的邮件图片的哈希值进行比较,得出所述图片被重复发送的次数;声誉值获取模块,用于根据所述邮件的发信IP查询声誉值数据库,获得所述发信 IP的声誉值;垃圾邮件判定模块,用于根据所述图片为垃圾邮件的概率、被重复发送的次数、发 信IP的声誉值查询预置的权重值列表,计算所述图片的权重和,并根据所述权重和判定所 述图片是否为垃圾邮件。所述邮件系统还包括样本数据库,用于保存垃圾图片样本和正常图片样本的所有特征值,以及每个特 征值在垃圾图片中出现的概率;声誉值数据库,用于保存发信IP的声誉值;所述声誉值是发信IP所发送的正常邮 件在其所有已发送的邮件中所占的比例;声誉值更新模块,用于在所述垃圾邮件判定模块判定图片为垃圾邮件后,重新计 算所述图片的发信IP的声誉值,并对声誉值数据库中的相应的声誉值进行更新。实施本发明实施例,具有如下有益效果本发明实施例提供的识别图片垃圾邮件的方法及系统,基于图片的压缩率分布特 性提取邮件中的图片的特征值,应用概率统计公式计算获得所述图片为垃圾邮件的概率; 再根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值三者的权重值计 算所述图片的权重和,根据所述权重和判定所述图片是否为垃圾邮件。本发明基于图片的 压缩率分布识别图片垃圾邮件,效率高,并且能够识别扭曲变形的或者背景包含噪音信息 的图片。此外,本发明应用哈希算法判断图片的相似度,并统计相似图片被重复发送的次 数,而根据这一特征可以很好地判断发信者的行为是否与垃圾邮件的发信行为相似,从而 提高了识别图片垃圾邮件的准确率。


图1是本发明提供的识别图片垃圾邮件的方法的第一实施例的流程示意图;图2是本发明提供的支持向量机算法的示意图;图3是本发明提供的识别图片垃圾邮件的方法的第二实施例的流程示意图;图4是本发明提供的识别图片垃圾邮件的方法的第三实施例的流程示意图;图5是本发明实施例提供的邮件系统的结构示意图;图6是本发明实施例提供的图片特征提取模块的结构示意图;图7是本发明实施例提供的垃圾邮件概率获取模块的结构示意图;图8是本发明实施例提供的图片发送次数获取模块的结构示意图;图9是本发明实施例提供的垃圾邮件判定模块的结构示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于
6本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。本发明实施例提供的识别图片垃圾邮件的方法及系统,预先收集正常图片和垃圾 邮件图片样本,基于图片的压缩率分布特性提取图片特征,获得正常图片和垃圾邮件图片 的特征集合;再使用贝叶斯分类器学习这些特征集合,计算获得最具代表性的特征是垃圾 图片还是正常图片的概率结果集。具体如下一、收集正常图片和垃圾邮件图片样本使用图片抓取软件,从互联网上随机抓取格式为JPG或者GIF的图片,加入到正常 邮件样本库中。在邮件系统中部署举报系统,收集用户举报的包含图片的垃圾邮件,经过人工审 核确认图片为垃圾邮件的,将该图片加入到垃圾邮件样本库中。二、提取正常图片和垃圾邮件图片所包含的所有特征本发明实施例基于图片的压缩率分布特性提取图片特征,下面仅以JPG格式、GIF 格式和PNG格式的图片为例详细描述提取图片特征的方法。(1)、计算JPG格式图片的压缩率;JPG格式的图片的压缩方式是对图片每8*8像素划分一个子块,并对每个子块进 行独立的压缩,再将压缩后的块信息保存到文件。因此,在分析JPG格式的图片特征时,只 需要获取图片压缩后的每一个子块的大小,再将子块大小除以(8*8),取整后即可获得这一 子块的压缩率,无需对子块做解压操作。扫描整个JPG文件,即可获得一个压缩率序列C1、C2、C3、C4...,其中Cl代表图片 左上角的8*8像素的子块的压缩率,C2是连续的相邻近的子块的压缩率,C3、C4类推。(2)、计算GIF格式图片的压缩率;GIF格式图片的压缩方式是著名的LZW压缩算法。LZW算法的主要思想是维护一 个有256个单元的编码表,如果图片中某一行像素序列曾经在编码表里面出现过的,则使 用编码表的下标来代替这段像素序列,以达到压缩的目的。在分析GIF格式的图片特征时,只需要读取上述的码表下标(码表下标的长度固 定为一个字节),通过查询对应的码表该下标所对应的像素值,以此计算出这一小块图片的 压缩率1/(码表对应的像素)。扫描整个GIF文件,即可获得一个压缩率序列C1、C2、C3、C4...,其中Cl代表图片 左上角一行不定长像素的压缩率,C2、C3、C4类推。(3)计算PNG格式图片的压缩率;PNG格式图片使用LZ77压缩算法,其与GIF图片的LZW压缩算法相似,不同点仅在 于,LZ77算法没有一个固定的编码表,而是使用之前已经遇到的序列的相对位置和长度来 表示像素序列。例如对像素序列abcdeabcde进行压缩时,在扫描到abcde之前,由于之前 没有出现过与a、b、c、d或e重复的序列,因此不对abcde进行压缩,即输入序列abcde和 压缩后的序列相等。但是,当扫描到abcdea的时候,由于序列a在之前出现过,然后继续比 对abcde,发现之前也曾出现过abcde这个序列,于是第二次出现的abcde序列,用一个偏移 量和长度来表示即可。也就是,PNG图片使用的LZ77算法没有固定的编码表,其码表就是 隐含在当前位置之前已经出现过的序列中。需要说明的是,LZ77压缩算法是本领域的公知技术,上述只作简单的原理说明,实际上PNG图片的偏移量和长度等信息是按bit保存的, 以便更加节省空间。因此,在分析PNG图片的压缩率时,从压缩后的PNG数据流可以得出对于没有做 过压缩的数据序列,这些序列的压缩率为1 ;对于做过压缩的数据序列,这些序列使用(偏 移量,长度)来表示该序列所对应的信息,可以在之前已经解压好的输出序列的特定位置 找到。假定保存(偏移量,长度)信息需要N个字节,而(偏移量,长度)中的“长度”属性 的值为M,则压缩率为N/M(即用N个字节保存M个字节的信息)。通过分析压缩后的PNG数据流,即可获得一个压缩率序列Cl、C2、C3、C4...,其中 Cl代表图片左上角一行不定长像素序列的压缩率,C2、C3、C4类推。本发明实施例无需解压图片,节省大量运算资源和内存资源。(4)、计算图片的特征值;通过上述的⑴、⑵、(3)实施例获得JPG、GIF或PNG格式的图片压缩率序列后, 将每4个连续的压缩率合并成一个新的压缩率变化元素D (其中4是经验值,是经过试验的 结果,本发明不限于4)。D代表图片的4个相邻子块的压缩率变化情况,例如,对于压缩率 序列(1丄2、03、04丄5丄6丄7、08,经过转换后变成01、02序列,其中Dl = C1C2C3C4,D2 = C5C6C7C8。在获得图片的压缩率变化元素序列后,将每一个压缩率变化元素加上该元素所在 的相对位置信息,组成一个特征值。例如,将图片分成6个区域,每一个区域对应一个固定的位置编码,如下左上角区域位置编码为1 ;上方区域位置编码为2 ;右上角区域位置编码为3 ;左下角区域位置编码为4 ;下方区域位置编码为5;右下角区域位置编码为6;如果像素块位于图片的左上角,其压缩率变化元素为Dl的,则包含位置信息的特 征值Fl为IDl ;如果像素块位于图片的右上角,其压缩率变化元素为D2的,则包含位置信 息的特征值F2为3D2。依此类推,将压缩率变化元素和该元素对应的像素块在图片上的位 置编码进行组合(位置编码+压缩率变化元素D),获得图片的特征序列F1、F2、F3、F4...。需要说明的是,上述仅以JPG、GIF和PNG格式的图片为例,以说明基于图片的压缩 率特性提取图片特征的方法,本发明实施例还可以应用到其他的具有类似压缩率特性的图 片中。三、建立样本数据库(1)、建立正常图片和垃圾邮件图片的特征集合;通过上述步骤二的方法计算出正常图片和垃圾图片所包含的所有特征值后,将正 常图片的所有特征值保存在正常图片特征集合HAM中,将垃圾图片的所有特征值保存在垃 圾图片特征集合SPAM中。此外,正常图片特征集合HAM还记录了每个特征值在所有正常图片样本中出现的 次数。例如,特征值Fl在所有正常图片样本中出现的次数为10000,特征值F2在所有正常图片样本中出现的次数为20000,等等。同理,垃圾图片特征集合SPAM也记录了每个特征值在所有垃圾图片样本中出现 的次数。例如,特征值Fl在所有垃圾图片样本中出现的次数为30000,特征值F2在所有垃 圾图片样本中出现的次数为40000,等等。对于某个特定的特征值Fn,它既可能出现在垃圾邮件图片样本中,也可能出现在 正常邮件图片样本中,其出现的次数一般不相等。(2)、计算每个特征值在垃圾图片中出现的概率,组建样本数据库;从正常图片特征集合HAM和垃圾图片特征集合SPAM中,分别读取特征值F在正常 图片样本和垃圾邮件图片样本中的出现次数,使用贝叶斯分类器进行计算,即可得出这个 特征值F在垃圾邮件图片中出现的概率Q。例如,特征值Fl在垃圾邮件图片中出现的概率 为Q1,特征值F2在垃圾邮件图片中出现的概率为Q2,特征值F3在垃圾邮件图片中出现的 概率为Q3。将F和Q的对应关系保存下来,即保存为F1:Q1,F2:Q2,F3:Q3...,组建成样本 数据库。本发明实施例所建立的样本数据库,保存有垃圾图片样本和正常图片样本的所有 特征值,以及每个特征值在垃圾图片中出现的概率。可选的,本发明实施例还可以按照Q值的大小,从高到低对“Fl Ql,F2 Q2, F3:Q3... ”序列进行排序,只抽取Q值大于80%的那些序列F:Q(说明这些序列在垃圾邮件 样本出现的概率很高)和Q值小于20%的那些序列F:Q(说明这些序列在正常邮件样本中 出现的概率很高),作为最终贝叶斯评估的评估基准保存到样本数据库中。经验表明,Q值 在(20%,80%)之间的序列F:Q,因为其特征序列F在正常图片和垃圾邮件图片中出现的 次数数量差不多,F对于评判图片是否垃圾邮件图片没有太多的帮助,而且这类中性的F:Q 序列占到F:Q序列总数的80%左右,因此剔除这些中性的数据,将有助于加快评估图片是 否垃圾邮件图片的效率。下面结合图1 图9,对本发明实施例提供的识别图片垃圾邮件的方法及系统进 行详细描述。本发明实施例的概率统计公式包括贝叶斯(Bayes)公式和/或支持向量机 (SVM)公式。应用贝叶斯公式进行计算,所获得的图片为垃圾邮件的概率称为“第一概率”; 应用向量机公式进行计算,所获得的图片为垃圾邮件的概率称为“第二概率”。参见图1,是本发明提供的识别图片垃圾邮件的方法的第一实施例的流程示意图。在第一实施例中,应用贝叶斯公式计算图片为垃圾邮件的概率。所述方法包括以 下步骤S101,根据邮件中的图片的压缩率分布特性,提取所述图片的特征值。在具体实施当中,当接收到邮件后,包括对邮件中所包含的图片进行扫描,获得 所述图片的每一个子块的压缩率;将每N个连续的子块的压缩率合并成一个新的压缩率变 化元素,再将每一个压缩率变化元素和它所在图片中的位置编码进行组合,获得所述图片 的特征值。其中,N是大于1的自然数。优选的,N的值为4。需要说明的是,本发明实施例可以处理JPG、GIF、PNG或其他格式的图片。其中,基 于图片的压缩率分布特性提取JPG、GIF或PNG格式的图片的方法与上述实施例相同,在此 不再赘述。S102,根据所述图片的每个特征值在垃圾图片中出现的概率,应用概率统计公式计算获得所述图片为垃圾邮件的概率。所述概率统计公式为贝叶斯公式,贝叶斯分类器的分类原理是通过某对象的先验 概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验 概率的类作为该对象所属的类。贝叶斯(Bayes)分类器的数学基础是贝叶斯公式,如下若Bi,B2,...为一系列互不相容的事件,如果以P(Bi)表示事件Bi发生的概率, 且
σοIjBi =Ω ,P(Bi) > 0,i = 1,2,. . · 1=1则对于任一事件A,有
Γ Π Ρ(Ε I Λλ ~尸⑷户剛)
_7] (‘1明(他广=1’2’…通过上述步骤SlOl的处理,得到图片的所有特征值后,在步骤S102中,根据图片 的每一个特征值查询样本数据库,获得所述图片的每个特征值在垃圾图片中出现的概率; 再将所述图片的每个特征值在垃圾图片中出现的概率代入上述的贝叶斯公式中进行计算, 获得第一概率。所述第一概率就是所述图片为垃圾邮件的概率。例如,在接收到一封未知是否为垃圾邮件的图片邮件后,应用上述步骤SlOl的方 法,获得图片的所有特征值F1,F2,F3...。再查询样本数据库,得出每一个特征值在在垃圾 图片中出现的概率F1:Q1,F2:Q2,F3:Q3. · ·。应用贝叶斯公式,输入上述的‘卞1斤2斤3. · ·,, 特征值序列和“F1:Q1,F2:Q2,F3:Q3... ”概率统计结果,即可计算出该未知的图片邮件为垃 圾邮件的概率。S103,应用哈希算法计算所述图片的哈希值,将所述哈希值和已接收的邮件图片 的哈希值进行比较,得出所述图片被重复发送的次数。Nilsimsa算法是一个著名的哈希算法,其特点是如果输入的信息只作少量变 化,则其输出的哈希值也只会有少量变化甚至没有变化。由于无论输入序列的长度是多少, 其输出序列的长度都是固定的,因此可以通过Mlsimsa算法对输入序列进行计算,并通过 比对输出序列的相似度来确定输入序列的相似度,大大加快了相似信息的聚类速度。具体的,步骤S103包括应用Nilsimsa算法对所述图片的特征值进行处理,获得 所述图片的哈希值;将所述图片的哈希值和已接收的邮件图片的哈希值进行比较,得出所 述图片和已接收的邮件图片的相似度;根据所述图片和已接收的邮件图片的相似度,得出 所述图片被重复发送的次数。举例如下假设在上述步骤SlOl中得到图片的所有特征值F1,F2,F3...,则在步骤S103中, 对上述的特征值“?1,?2,?3... ”进行处理,输入序列是“F1,F2,F3... ”,输出序列是一个固 定长度的二进制序列“01,02,03... ”。其中,输出序列的长度一般是64字节,0的取值为0 或1。该二进制序列“01,02,03... ”就是图片的哈希值。然后,再将所述图片的哈希值和 之前已接收的邮件图片的哈希值进行比较,根据图片之间的相似度判定相似图片被重复发 送的次数。Nilsimsa算法具有如下优点如果输入序列“F1,F2,F3... ”只是做了较小的改动 (比如在其中插入多段小的序列,修改其中一小段序列的内容等),其输出的二进制序列的
10稳定性很高,变动很少甚至不会变动。所以通过比较两个输出序列的相似度,即可获知两个 输入序列的相似度,从而判定相似图片被重复发送的次数。S104,根据所述图片的发信IP查询声誉值数据库,获得所述发信IP的声誉值。本发明实施例配置了声誉值数据库,用于保存发信IP的声誉值。该声誉值是指发 信IP所发送的正常邮件在其所有已发送的邮件中所占的比例,计算声誉值的方法如下对 发信IP在过去一段时间的发信行为进行记录,将发信IP发送的正常邮件比例作为此IP的 声誉值。比如,某个发信IP在过去一段时间发送了 100封邮件,其中有10封邮件被判定为 垃圾邮件,则通过数学计算方式“(100-10)/100 = 90”得出该发信IP的声誉值为90。因此,在步骤S104中,根据图片邮件的发信IP查询声誉值数据库,即可获得该图 片邮件的发信IP的声誉值。S105,根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值查 询预置的权重值列表,计算所述图片的权重和,并根据所述权重和判定所述图片是否为垃 圾邮件。本发明实施例预先配置了三个权重值列表,分别记录了图片为垃圾邮件的概率、 被重复发送的次数、发信IP的声誉值所对应的权重值。(1)本发明实施例根据图片属于垃圾邮件的概率所在的范围,将“图片为垃圾邮件 的概率”定义为10段,并配置每段的权重值。“图片为垃圾邮件的概率”的权重列表如下 (2)本发明实施例根据图片邮件重复发送次数所在的范围,将“图片重复发送次 数”定义为6段,并配置每段的权重值。“图片重复发送次数”的权重列表如下
11
(3)本发明实施例根据发信IP的声誉值的范围,将“发信IP声誉值”定义为10段, 并配置每段的权重值。“发信IP声誉值”的权重列表如下 优选的,上述三个列表的权重值,是通过使用遗传算法对已知的样本进行学习来 获得的。需要说明的是,本发明实施例将图片为垃圾邮件的概率、被重复发送的次数、发信 IP的声誉值进行分段,是为了减少后续处理的计算量,所定义的段数(即将“图片为垃圾邮 件的概率”定义为10段,将“图片重复发送次数”定义为6段,将“发信IP声誉值”定义为 10段)只是经验数字,本发明并不限于此。具体的,经过上述的步骤S102、S103、S104的处理,获得图片为垃圾邮件的概率、 图片重复发送次数、发信IP声誉值之后,在步骤S105中,进行如下处理根据所述图片为垃 圾邮件的概率、被重复发送的次数、发信IP的声誉值查询预置的权重值列表,分别获得三 者的权重值;再将三者的权重值相加,获到所述图片的权重和;判断所述图片的权重和是 否大于预定的门限值,若是,则确定所述图片为垃圾邮件;若否,则确定所述图片为正常邮 件。举例如下假设对于一封包含有图片的邮件,经过上述步骤SlOl S104的处理后,得出该邮 件中的图片为垃圾邮件的概率为95%,被重复发送次数为2,发信IP的声誉值为78,分别 查询权重列表中的BAYES 90 (假定权重值为0. 5),REPUTATION 010 (假定权重值为0. 1), REPUTATION 7080 (假定权重值为0. 3),计算得出该邮件图片的权重和为0. 5+0. 1+0. 3 = 0. 9,权重和小于1. 0(1. 0为门限值),则该邮件被判定为正常邮件。进一步的,本发明实施例提供的识别图片垃圾邮件的方法还包括在判定邮件中 的图片为垃圾邮件后,重新计算所述图片的发信IP的声誉值,并对声誉值数据库中的相应 的声誉值进行更新。此外,本发明实施例还可以采用SVM(Support Vector Machine,支持向量机)算法 计算图片为垃圾图片的概率。SVM算法可以比较直观地通过图2来解释,具体如下定义一个函数f (X,y) = al*X+a2*y+b ;其中χ是邮件的一个固有特征,y是邮件 的另一个与X无关的固有特征,al、a2、b是常量,al,a2控制图2可以切分两类点的平面的 斜率。假如图2中的叉点表示垃圾邮件,圆点表示正常邮件,则邮件是否为垃圾邮件仅仅和 x、y有关,只要f(x)大于某个值,即可认为邮件是垃圾邮件。在实际应用中,对样本进行分类通常需要抽取几百到一千个特征才可能有比较好 的效果。而对于如此多维度的模型,本实施例无法在三维图中表达出来。但是,可以推导出 最终的SVM公式就是一个多项式:f(x, y, ζ, ...) = al*x+a2*y+a3*z+· · · · +b ;只要将未知 样本的x、y、z...等特征的值代入SVM公式中,即可根据其结果是否大于0来判断样本是否 为垃圾邮件。SVM模型的一个关键是要通过未知样本,学习出上述公式的al、a2、a3. . .,b等参 数。具体实施时,只要提供了足够多的样本(正常邮件和垃圾邮件各一千左右即可),就 可以通过特定的数学方法,获取上述的参数,由此获得SVM公式。需要说明的是,现有技术 中已经有很多成熟的数学方法用于获取上述的参数,例如可以采用找边缘关键点拟合的方 法,在此不再赘述。SVM模型的另外一个关键是所提取的“特征”是否可以较好的描述问题,即上述 的X,1,Z等参数所代表的“特征值”是否可以较好的区分两类样本。本发明实施例的解决 方案是使用每个图片特征项在垃圾邮件中出现的概率来作为SVM的输入特征。在学习过程中,统计出每个特征值在垃圾邮件中出现概率之后,则按照特征值出现的顺序,构造出一 个特征值概率序列,通过学习程序获得上述的SVM公式(即获取上述的al,a2, a3. . . b参 数)。举例说明有一个图片,根据从图片文件中分解出来的顺序排列,有4个(实际可能 有很多)特征值Tl、T2、T3、T4,经统计可知其在垃圾邮件中出现的概率分别为Gl、G2、G3、 G4,则将此Gl、G2、G3、G4作为向量输入SVM学习程序,通过对一批正常邮件和垃圾邮件的 学习,即可获得适合学习样本的SVM公式。在评估未知样本是否为垃圾邮件的时候,同样按照从图片文件分解出来的顺序, 排列特征值T1、T2、T3、T4的概率Gl、G2、G3、G4,把Gl、G2、G3、G4代入SVM公式中,即可计 算出此序列为垃圾邮件的概率。Bayes算法与SVM算法相比,简而言之,在学习已知正常和垃圾邮件样本的时候, Bayes方法生成的是每个特征项为垃圾邮件的概率,而SVM方法生成的是每个特征项为垃 圾邮件的概率以及SVM公式的参数。判断未知样本的时候,Bayes方法输入的是未知样本 特征项,通过查表获知特征项是垃圾邮件的概率,然后通过Bayes公式计算邮件是垃圾邮 件的概率;SVM方法输入的同样是未知样本的特征项,通过查表获知特征项是垃圾邮件的 概率,然后通过学习过程生成的SVM公式计算邮件是垃圾邮件的概率。参见图3,是本发明提供的识别图片垃圾邮件的方法的第二实施例的流程示意图。 在第二实施例中,应用支持向量机(SVM)公式计算图片为垃圾邮件的概率。所述方法包括 以下步骤S201,根据邮件中的图片的压缩率分布特性,提取所述图片的特征值。本步骤S201与上述第一实施例的步骤SlOl完全相同,在此不再赘述。S202,根据所述图片的每个特征值在垃圾图片中出现的概率,应用支持向量机公 式计算获得所述图片为垃圾邮件的概率;步骤S202具体包括根据所述图片的特征值查询样本数据库,获得所述图片的每 个特征值在垃圾图片中出现的概率;将所述图片的每个特征值在垃圾图片中出现的概率构 造成特征向量,并代入支持向量机公式中进行计算,获得第二概率;所述第二概率就是所述 图片为垃圾邮件的概率。其中,所述样本数据库中保存有垃圾图片样本和正常图片样本的所有特征值,以 及每个特征值在垃圾图片中出现的概率。S203,应用哈希算法计算所述图片的哈希值,将所述哈希值和已接收的邮件图片 的哈希值进行比较,得出所述图片被重复发送的次数。S204,根据所述图片的发信IP查询声誉值数据库,获得所述发信IP的声誉值。S205,根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值查 询预置的权重值列表,计算所述图片的权重和,并根据所述权重和判定所述图片是否为垃 圾邮件。步骤S203 S205与上述第一实施例的步骤S103 S105完全相同,在此不再赘 述。参见图4,是本发明提供的识别图片垃圾邮件的方法的第三实施例的流程示意图。 在第三实施例中,同时应用Bayes公式和SVM公式计算图片为垃圾邮件的概率。所述方法 包括以下步骤
14
S301,根据邮件中的图片的压缩率分布特性,提取所述图片的特征值。本步骤S301与上述第一实施例的步骤SlOl完全相同,在此不再赘述。S302,根据所述图片的特征值查询样本数据库,获得所述图片的每个特征值在垃 圾图片中出现的概率;其中,所述样本数据库中保存有垃圾图片样本和正常图片样本的所有特征值,以 及每个特征值在垃圾图片中出现的概率。S303,将所述图片的每个特征值在垃圾图片中出现的概率代入贝叶斯公式中进行
计算,获得第一概率;本步骤S303与上述第一实施例的步骤S102完全相同,在此不再赘述。S304,将所述图片的每个特征值在垃圾图片中出现的概率构造成特征向量,并代 入支持向量机公式中进行计算,获得第二概率;所述图片为垃圾邮件的概率包括所述第一概率和所述第二概率。S305,应用哈希算法计算所述图片的哈希值,将所述哈希值和已接收的邮件图片 的哈希值进行比较,得出所述图片被重复发送的次数。本步骤S305与上述第一实施例的步骤S103完全相同,在此不再赘述。S306,根据所述图片的发信IP查询声誉值数据库,获得所述发信IP的声誉值。本步骤S306与上述第一实施例的步骤S 104完全相同,在此不再赘述。S307,根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值查 询预置的权重值列表,计算所述图片的权重和,并根据所述权重和判定所述图片是否为垃 圾邮件。本步骤S307与上述第一实施例的步骤S105基本相同,其不同点在于,所述图片为 垃圾邮件的概率包括第一概率和第二概率,且分别对应于一个权重值列表。因此,在查询预 置的权重值列表时,将分别获得“第一概率”对应的权重值、“第二概率”对应的权重值、“被 重复发送的次数”对应的权重值和“发信IP的声誉值”对应的权重值,共四个权重值。将四 个权重值相加,得到图片的权重和,再根据所述权重和判定所述图片是否为垃圾邮件。本发明实施例提供的识别图片垃圾邮件的方法,基于图片的压缩率分布特性提取 邮件中的图片的特征值,应用概率统计公式计算获得所述图片为垃圾邮件的概率;再根据 所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值三者的权重值计算所述 图片的权重和,根据所述权重和判定所述图片是否为垃圾邮件。本发明基于图片的压缩率 分布识别图片垃圾邮件,效率高,并且能够识别扭曲变形的或者背景包含噪音信息的图片。 此外,本发明应用哈希算法判断图片的相似度,并统计相似图片被重复发送的次数,而根据 这一特征可以很好地判断发信者的行为是否与垃圾邮件的发信行为相似,从而提高了识别 图片垃圾邮件的准确率。相应地,本发明实施例还提供了一种邮件系统,能够实现上述实施例中的识别图 片垃圾邮件的方法的所有步骤。参见图5,是本发明实施例提供的邮件系统的结构示意图,该邮件系统包括图片特征提取模块1,用于根据邮件中的图片的压缩率分布特性,提取所述图片的 特征值;垃圾邮件概率获取模块2,用于根据所述图片的每个特征值在垃圾图片中出现的概率,应用概率统计公式计算获得所述图片为垃圾邮件的概率;图片发送次数获取模块3,应用哈希算法计算所述图片的哈希值,将所述哈希值和 已接收的邮件图片的哈希值进行比较,得出所述图片被重复发送的次数;声誉值获取模块4,用于根据所述邮件的发信IP查询声誉值数据库,获得所述发 信IP的声誉值;垃圾邮件判定模块5,用于根据所述图片为垃圾邮件的概率、被重复发送的次数、 发信IP的声誉值查询预置的权重值列表,计算所述图片的权重和,并根据所述权重和判定 所述图片是否为垃圾邮件。如图6所示,所述图片特征提取模块1具体包括图片扫描单元11,用于对邮件中的图片进行扫描,获得所述图片的每一个子块的 压缩率;图片特征生成单元12,用于将每N个连续的子块的压缩率合并成一个新的压缩率 变化元素,并将每一个压缩率变化元素和它所在图片中的位置编码进行组合,获得所述图 片的特征值;其中,N是大于1的自然数。如图7所示,所述垃圾邮件概率获取模块2具体包括概率查询单元21,用于根据所述图片的特征值查询样本数据库,获得所述图片的 每个特征值在垃圾图片中出现的概率;贝叶斯计算单元22,用于将所述图片的每个特征值在垃圾图片中出现的概率代入 贝叶斯公式中进行计算,获得第一概率;支持向量机计算单元23,用于将所述图片的每个特征值在垃圾图片中出现的概率 构造成特征向量,并代入支持向量机公式中进行计算,获得第二概率;所述图片为垃圾邮件的概率为所述第一概率和/或所述第二概率。如图8所示,所述图片发送次数获取模块3具体包括哈希值计算单元31,应用哈希算法对所述图片的特征值进行处理,获得所述图片 的哈希值;相似度判断单元32,用于将所述图片的哈希值和已接收的邮件图片的哈希值进行 比较,得出所述图片和已接收的邮件图片的相似度;重复发送次数确定单元32,用于根据所述图片和已接收的邮件图片的相似度,得 出所述图片被重复发送的次数。如图9所示,所述垃圾邮件判定模块5具体包括权重查询单元51,用于根据所述图片为垃圾邮件的概率、被重复发送的次数、发信 IP的声誉值查询预置的权重值列表,分别获得三者的权重值;邮件识别单元52,用于将三者的权重值相加,获到所述图片的权重和;判断所述 图片的权重和是否大于预定的门限值,若是,则确定所述图片为垃圾邮件;若否,则确定所 述图片为正常邮件。进一步的,如图5所示,所述邮件系统还包括样本数据库6,用于保存垃圾图片样本和正常图片样本的所有特征值,以及每个特 征值在垃圾图片中出现的概率;声誉值数据库7,用于保存发信IP的声誉值;所述声誉值是发信IP所发送的正常邮件在其所有已发送的邮件中所占的比例;声誉值更新模块8,用于在所述垃圾邮件判定模块判定图片为垃圾邮件后,重新计 算所述图片的发信IP的声誉值,并对声誉值数据库中的相应的声誉值进行更新。需要说明的是,本发明实施例提供的邮件系统,其识别图片垃圾邮件的流程与上 述实施例相同,在此不再赘述。本发明实施例提供的邮件系统,基于图片的压缩率分布特性提取邮件中的图片的 特征值,应用概率统计公式计算获得所述图片为垃圾邮件的概率;再根据所述图片为垃圾 邮件的概率、被重复发送的次数、发信IP的声誉值三者的权重值计算所述图片的权重和, 根据所述权重和判定所述图片是否为垃圾邮件。本发明基于图片的压缩率分布识别图片垃 圾邮件,效率高,并且能够识别扭曲变形的或者背景包含噪音信息的图片。此外,本发明应 用哈希算法判断图片的相似度,并统计相似图片被重复发送的次数,而根据这一特征可以 很好地判断发信者的行为是否与垃圾邮件的发信行为相似,从而提高了识别图片垃圾邮件 的准确率。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以 通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质 中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁 碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员 来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为 本发明的保护范围。
1权利要求
一种识别图片垃圾邮件的方法,其特征在于,包括根据邮件中的图片的压缩率分布特性,提取所述图片的特征值;根据所述图片的每个特征值在垃圾图片中出现的概率,应用概率统计公式计算获得所述图片为垃圾邮件的概率;应用哈希算法计算所述图片的哈希值,将所述哈希值和已接收的邮件图片的哈希值进行比较,得出所述图片被重复发送的次数;根据所述图片的发信IP查询声誉值数据库,获得所述发信IP的声誉值;根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值查询预置的权重值列表,计算所述图片的权重和,并根据所述权重和判定所述图片是否为垃圾邮件。
2.如权利要求1所述的识别图片垃圾邮件的方法,其特征在于,所述根据邮件中的图 片的压缩率分布特性,提取所述图片的特征值,具体包括对邮件中的图片进行扫描,获得所述图片的每一个子块的压缩率; 将每N个连续的子块的压缩率合并成一个新的压缩率变化元素,其中,N是大于1的自 然数;将每一个压缩率变化元素和它所在图片中的位置编码进行组合,获得所述图片的特征值。
3.如权利要求2所述的识别图片垃圾邮件的方法,其特征在于,所述概率统计公式为 贝叶斯公式;则所述根据所述图片的每个特征值在垃圾图片中出现的概率,应用概率统计公式计算 获得所述图片为垃圾邮件的概率,具体包括根据所述图片的特征值查询样本数据库,获得所述图片的每个特征值在垃圾图片中出 现的概率;其中,所述样本数据库中保存有垃圾图片样本和正常图片样本的所有特征值,以 及每个特征值在垃圾图片中出现的概率;将所述图片的每个特征值在垃圾图片中出现的概率代入贝叶斯公式中进行计算,获得 第一概率;所述图片为垃圾邮件的概率为所述第一概率。
4.如权利要求2所述的识别图片垃圾邮件的方法,其特征在于,所述概率统计公式为 支持向量机公式;则所述根据所述图片的每个特征值在垃圾图片中出现的概率,应用概率统计公式计算 获得所述图片为垃圾邮件的概率,具体包括根据所述图片的特征值查询样本数据库,获得所述图片的每个特征值在垃圾图片中出 现的概率;其中,所述样本数据库中保存有垃圾图片样本和正常图片样本的所有特征值,以 及每个特征值在垃圾图片中出现的概率;将所述图片的每个特征值在垃圾图片中出现的概率构造成特征向量,并代入支持向量 机公式中进行计算,获得第二概率;所述图片为垃圾邮件的概率为所述第二概率。
5.如权利要求2所述的识别图片垃圾邮件的方法,其特征在于,所述概率统计公式包 括贝叶斯公式和支持向量机公式;则所述根据所述图片的每个特征值在垃圾图片中出现的概率,应用概率统计公式计算获得所述图片为垃圾邮件的概率,具体包括根据所述图片的特征值查询样本数据库,获得所述图片的每个特征值在垃圾图片中出 现的概率;其中,所述样本数据库中保存有垃圾图片样本和正常图片样本的所有特征值,以 及每个特征值在垃圾图片中出现的概率;将所述图片的每个特征值在垃圾图片中出现的概率代入贝叶斯公式中进行计算,获得 第一概率;将所述图片的每个特征值在垃圾图片中出现的概率构造成特征向量,并代入支持向量 机公式中进行计算,获得第二概率;所述图片为垃圾邮件的概率包括所述第一概率和所述第二概率。
6.如权利要求3 5任一项所述的识别图片垃圾邮件的方法,其特征在于,所述应用哈 希算法计算所述图片的哈希值,将所述哈希值和已接收的邮件图片的哈希值进行比较,得 出所述图片被重复发送的次数,具体包括应用哈希算法对所述图片的特征值进行处理,获得所述图片的哈希值; 将所述图片的哈希值和已接收的邮件图片的哈希值进行比较,得出所述图片和已接收 的邮件图片的相似度;根据所述图片和已接收的邮件图片的相似度,得出所述图片被重复发送的次数。
7.如权利要求6所述的识别图片垃圾邮件的方法,其特征在于,所述根据所述图片为 垃圾邮件的概率、被重复发送的次数、发信IP的声誉值查询预置的权重值列表,计算所述 图片的权重和,并根据所述权重和判定所述图片是否为垃圾邮件,具体包括根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值查询预置的权 重值列表,分别获得三者的权重值;将三者的权重值相加,获到所述图片的权重和;判断所述图片的权重和是否大于预定的门限值,若是,则确定所述图片为垃圾邮件;若 否,则确定所述图片为正常邮件。
8.如权利要求7所述的识别图片垃圾邮件的方法,其特征在于,所述声誉值数据库保 存有发信IP的声誉值,所述声誉值是发信IP所发送的正常邮件在其所有已发送的邮件中 所占的比例;则在判定所述图片为垃圾邮件后,还包括重新计算所述图片的发信IP的声誉值,并对声誉值数据库中的相应的声誉值进行更新。
9.一种邮件系统,其特征在于,包括图片特征提取模块,用于根据邮件中的图片的压缩率分布特性,提取所述图片的特征值;垃圾邮件概率获取模块,用于根据所述图片的每个特征值在垃圾图片中出现的概率, 应用概率统计公式计算获得所述图片为垃圾邮件的概率;图片发送次数获取模块,应用哈希算法计算所述图片的哈希值,将所述哈希值和已接 收的邮件图片的哈希值进行比较,得出所述图片被重复发送的次数;声誉值获取模块,用于根据所述邮件的发信IP查询声誉值数据库,获得所述发信IP的垃圾邮件判定模块,用于根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP 的声誉值查询预置的权重值列表,计算所述图片的权重和,并根据所述权重和判定所述图 片是否为垃圾邮件。
10.如权利要求9所述的邮件系统,其特征在于,所述图片特征提取模块具体包括 图片扫描单元,用于对邮件中的图片进行扫描,获得所述图片的每一个子块的压缩率;图片特征生成单元,用于将每N个连续的子块的压缩率合并成一个新的压缩率变化元 素,并将每一个压缩率变化元素和它所在图片中的位置编码进行组合,获得所述图片的特 征值;其中,N是大于1的自然数。
11.如权利要求10所述的邮件系统,其特征在于,所述垃圾邮件概率获取模块具体包括概率查询单元,用于根据所述图片的特征值查询样本数据库,获得所述图片的每个特 征值在垃圾图片中出现的概率;贝叶斯计算单元,用于将所述图片的每个特征值在垃圾图片中出现的概率代入贝叶斯 公式中进行计算,获得第一概率;支持向量机计算单元,用于将所述图片的每个特征值在垃圾图片中出现的概率构造成 特征向量,并代入支持向量机公式中进行计算,获得第二概率;所述图片为垃圾邮件的概率为所述第一概率和/或所述第二概率。
12.如权利要求11所述的邮件系统,其特征在于,所述图片发送次数获取模块具体包括哈希值计算单元,应用哈希算法对所述图片的特征值进行处理,获得所述图片的哈希值;相似度判断单元,用于将所述图片的哈希值和已接收的邮件图片的哈希值进行比较, 得出所述图片和已接收的邮件图片的相似度;重复发送次数确定单元,用于根据所述图片和已接收的邮件图片的相似度,得出所述 图片被重复发送的次数。
13.如权利要求12所述的邮件系统,其特征在于,所述垃圾邮件判定模块具体包括 权重查询单元,用于根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值查询预置的权重值列表,分别获得三者的权重值;由P件识别单元,用于将三者的权重值相加,获到所述图片的权重和;判断所述图片的权 重和是否大于预定的门限值,若是,则确定所述图片为垃圾邮件;若否,则确定所述图片为 正常邮件。
14.如权利要求13所述的邮件系统,其特征在于,所述邮件系统还包括样本数据库,用于保存垃圾图片样本和正常图片样本的所有特征值,以及每个特征值 在垃圾图片中出现的概率;声誉值数据库,用于保存发信IP的声誉值;所述声誉值是发信IP所发送的正常邮件在 其所有已发送的邮件中所占的比例;声誉值更新模块,用于在所述垃圾邮件判定模块判定图片为垃圾邮件后,重新计算所 述图片的发信IP的声誉值,并对声誉值数据库中的相应的声誉值进行更新。
全文摘要
本发明公开了一种识别图片垃圾邮件的方法及系统,该方法包括根据邮件中的图片的压缩率分布特性,提取所述图片的特征值;将每个特征值在垃圾图片中出现的概率代入概率统计公式中,计算获得所述图片为垃圾邮件的概率;再根据所述图片为垃圾邮件的概率、被重复发送的次数、发信IP的声誉值查询预置的权重值列表,计算所述图片的权重和,并根据所述权重和判定所述图片是否为垃圾邮件。本发明识别图片垃圾邮件的效率高,并且能够识别扭曲变形的或者背景包含噪音信息的图片。
文档编号H04L29/06GK101917352SQ20101020173
公开日2010年12月15日 申请日期2010年6月12日 优先权日2010年6月12日
发明者林延中, 潘庆峰, 陈磊华 申请人:盈世信息科技(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1