CN109800852A - 一种多模态的垃圾邮件识别方法 - Google Patents
一种多模态的垃圾邮件识别方法 Download PDFInfo
- Publication number
- CN109800852A CN109800852A CN201811439940.5A CN201811439940A CN109800852A CN 109800852 A CN109800852 A CN 109800852A CN 201811439940 A CN201811439940 A CN 201811439940A CN 109800852 A CN109800852 A CN 109800852A
- Authority
- CN
- China
- Prior art keywords
- text
- image
- spam
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000001914 filtration Methods 0.000 title claims abstract description 18
- 230000004927 fusion Effects 0.000 claims abstract description 34
- 238000005457 optimization Methods 0.000 claims description 13
- 238000013480 data collection Methods 0.000 claims description 9
- 238000012549 training Methods 0.000 claims description 8
- 238000013135 deep learning Methods 0.000 claims description 7
- 238000013461 design Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 4
- 239000000203 mixture Substances 0.000 claims description 4
- 238000013145 classification model Methods 0.000 claims 2
- 238000000605 extraction Methods 0.000 claims 1
- 238000013527 convolutional neural network Methods 0.000 abstract description 22
- 238000003062 neural network model Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 23
- 210000002569 neuron Anatomy 0.000 description 17
- 238000013528 artificial neural network Methods 0.000 description 10
- 230000004913 activation Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000011176 pooling Methods 0.000 description 5
- 238000007500 overflow downdraw method Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 229910052739 hydrogen Inorganic materials 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 210000005036 nerve Anatomy 0.000 description 3
- 238000009795 derivation Methods 0.000 description 2
- 238000007499 fusion processing Methods 0.000 description 2
- 241000196324 Embryophyta Species 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明提出了一种多模态的垃圾邮件识别方法,属于垃圾邮件识别领域。针对传统的垃圾邮件过滤方法只分析邮件的单一模态信息,难以做到对文本垃圾邮件、图像垃圾邮件以及文本图像混合型垃圾邮件进行统一处理的有效识别过滤,且其识别的精度还有待提高的问题。本发明采用深度学习技术,提出了一种多模型融合的多模态架构。针对邮件头信息、邮件文本信息和邮件图像信息分别设计了用于邮件头、文本和图像分类的三个独立的神经网络模型,即FNN,CLstmNN(由CNN与LSTM组成)与CNN网络组成,将邮件头、邮件文本及邮件图像多模态信息相结合的方法,对文本垃圾邮件、图像垃圾邮件以及图像文本混合型垃圾邮件进行统一处理识别,提高对垃圾邮件的识别精度。
Description
1、技术领域
本发明涉及到深度学习相关算法,属于垃圾邮件识别领域,尤其设计了一种多模态下的垃圾邮件识别方法。
2、背景技术
在垃圾邮件标识这一领域,绝大部分标识方法都是基于邮件的某一种模态进行处理。其中传统的邮件过滤方法主要针对邮件文本进行处理,而针对近年来大量出现的图像型垃圾邮件发展出来的图像垃圾邮件标识方法,也是专门针对邮件图像进行识别。这些方法只分析邮件的单一模态信息,难以做到对文本垃圾邮件、图像垃圾邮件以及文本图像混合型垃圾邮件进行统一处理的有效识别过滤,且其识别的精度还有待提高。另一方面,近年来深度学习技术在自然语言处理和计算机视觉等方面取得的效果要优于传统的机器学习方法,采用深度学习技术通过邮件头、文本与图像三种模态相结合的垃圾邮件识别方法还没见报道。因此,本发明采用深度学习技术,通过对邮件头信息、邮件文本信息及邮件图像多模态信息相结合的方法对文本垃圾邮件、图像垃圾邮件以及图像文本混合型垃圾邮件进行统一处理识别。
本文的多模态融合方法借鉴了数据融合领域的思想,在数据融合领域中,主要有三种数据融合方法,分别是数据级融合、特征级融合和决策级融合。本文模型所使用的融合方法为决策级融合方法。其中决策级融合是一种相对高层次的融合,它的融合对象是各传感器的个体决策。通过各传感器的数据,在融合之前先完成各自的决策或识别工作,随后将这些决策进行融合,最终获得具有整体一致性的决策结果。在决策层,数据传输量小,鲁棒性好,对传感器依赖小,且具有较好的容错性。决策级融合方法:专家系统、D-S证据理论、Bayes推理以及模糊推理理论等。融合过程参见图1所示。
3、发明内容
现阶段,用户只要拥有邮箱,则其邮箱中一般都会有一定数量的垃圾邮件存在,这给用户的日常生活造成了多方面的影响。例如垃圾邮件中可能附着有恶意病毒,如果用户点击该邮件则会泄露个人信息,损坏个人电脑等。这给用户的生活,工作等各方各面都造成了一定程度上的负面影响。然而在垃圾邮件识别这一领域,绝大部分识别方法都是基于邮件的某一种模态进行处理,这些方法只分析邮件的单一模态信息,而现如今垃圾邮件信息可能附着在多种模态下,导致难以做到对文本垃圾邮件、图像垃圾邮件以及文本图像混合型垃圾邮件进行统一处理的有效识别过滤,且其识别的精度还有待提高。
本发明的目的在于:为了解决现有技术存在的上述问题,提出一种多模态的垃圾邮件识别方法,能对文本垃圾邮件、图像垃圾邮件及文本图像混合型垃圾邮件进行识别,且将邮件头信息作为一个格式化数据模态,输入分类器,提高识别的准确率。
本发明采用深度学习技术,通过邮件头信息、邮件文本信息及邮件图像信息多模态信息融合的方法对文本垃圾邮件、图像垃圾邮件以及图像文本混合型垃圾邮件进行统一处理识别,不仅提高垃圾邮件识别的效率,而且最大化的减小垃圾邮件给用户带来的伤害。
本发明的技术方案为:一种多模态的垃圾邮件识别方法。本发明针对邮件头信息、邮件文本信息和邮件图像信息分别设计了用于邮件头、文本和图像分类的三个独立的神经网络模型。基于此提出了一种多模型融合的多模态架构。其架构图参见图2所示。
首先,该架构为邮件头,文本(包含邮件主题和邮件正文)和图像三模态信息设计相互独立的分类器,即图中的FNN(前馈神经网络,Feedforward Neural Network),CLstmNN(由CNN(Convolutional Neural Network,卷积神经网络)与LSTM(Long Short-TermMemory)单元模块组成)和CNN组成。然后,针对获取得到的邮件数据集,提取每一封邮件下的邮件头,文本,图像数据,再预处理后得到邮件头数据集,文本数据集和图像数据集,将其送入到对应的模型进行训练、优化,最终得到三个最优的模型。其中每封邮件包含的模态信息存在以下几种情况:
(1)只包含邮件头信息;
(2)只包含邮件头与邮件正文信息;
(3)只包含邮件头与邮件图片信息;
(4)包含邮件头,邮件文本,图片信息;
针对(1),(2),(3),(4)这几种情况进行分析得出一封邮件必定包含邮件头字段信息,但是可能缺失邮件文本或图片信息。由此针对一封邮件下缺失的文本或图像部分,本发明将用Null进行填补,再通过预处理技术剔除掉为Null的数据,得到无Null值的数据集。最终将采集得到的邮件头数据集,无Null值的文本,图像数据集输入到对应模型进行训练优化,得到最优的FNN,CLstmNN和CNN分类模型。
再然后,训练优化融合模型,得到最优的融合模型。首先重新将邮件头数据集输入到FNN模型中,将带有Null的文本,图像数据集输入到对应的CLstmNN和CNN分类模型中,得到邮件头,文本、图像数据集的分类概率。对于Null数据的输出,CLstmNN和CNN分类模型采用特殊值填充的方法将其类概率的值设置为0.5。之后,将获取得到的类概率数据集作为输入,送到图2所示的融合模型中去训练、优化,获取得到最优的融合模型,用以判断邮件是否为垃圾邮件。其中融合模型包含全连接层和Sigmoid回归层,用以计算获取得到邮件为垃圾邮件的类别概率。其中最优模型的选择通过用户自定义的损失函数和优化算法学习得到,最终通过得到的最优的多模态融合模型对垃圾邮件进行识别。
4、附图说明
图1决策级融合的融合过程示意图
图2多模型融合的多模态架构示意图
图3BP神经网络架构示意图
图4CLstmNN网络模型架构示意图
图5融合模型架构示意图
5、具体实施方式
针对图2提出的框架,对邮件进行是否为垃圾邮件的识别,简要的实施过程包括如下步骤:
S1.对得到的m封邮件数据集U_Mail,提取它所包含的每一封邮件的邮件头、邮件文本(包含邮件主题和邮件正文)和邮件图像数据,其中每封邮件包含的模态信息存在以下几种情况:
(1)只包含邮件头信息;
(2)只包含邮件头与邮件正文信息;
(3)只包含邮件头与邮件图片信息;
(4)包含邮件头,邮件文本,图片信息;
针对(1),(2),(3),(4)这几种情况进行分析得出,每一封邮件必定包含邮件头模态信息,但是可能缺失邮件文本或图片模态信息。由此本发明针对一封邮件缺失的文本或图像部分,使用Null进行填补,最终获取得到三个数据集:m封邮件头数据集H,m封邮件文本数据集T,m封邮件图像数据集I。即得到H={Hi|i=1,…,m},T={Tp|p=1,…,m},I={Io|o=1,…,m},且U_Mail=H∪T∪I。
S2.对步骤S1下可能存在Null的T和I,进行判断剔除掉为Null的数据,得到不含Null的m1封正文数据集T_new,T_new={T_newj|j=1,…,m1},和m2封图像数据集I_new,I_new={qi|i=1,…,m2}其中
S3.将步骤S1下的H输入到图2所对应FNN模型进行训练优化;将步骤S2下的T_new、I_new数据集输入到图2所对应CLstmNN、CNN模型进行训练优化,得到最优的FNN,CLstmNN,CNN模型。
S4.将步骤S1下的H、T、I数据集,分别对应输入到步骤S3下得到的最优分类器FNN、CLstmNN、CNN模型中,获取对应的分类概率数据集H_Class,T_Class与I_Class,大小均为m。具体的表示为H_Class={H_Classj|j=1,…,m},T_Class={T_Classj|j=1,…,m},I_Class={I_Classj|j=1,…,m},其中对T,I中为Null的数据本发明采用特殊值填充的方法将其输出的类概率值设置为0.5。即第i封邮件的文本信息Ti为Null,则T_Classi的值设置为0.5;第i封邮件的图像信息Ii为Null,则I_Classi的值设置为0.5。
S5.将步骤S4下的H_Class、T_Class、I_Class输入到融合网络模型中去训练,并通过用户自定义的损失函数和优化算法得到最优的融合分类器。
S6.对用户输入的邮件,使用步骤S3得到的三个最优分类器与S5得到的最优融合分类器获取该封邮件的类别概率,通过得到的类别概率识别该封邮件是否为垃圾邮件。如果邮件的类别概率>0.5,则认为该封邮件为垃圾邮件,否则则认为该封邮件为非垃圾邮件。
进一步的对步骤S1到S6进行详细说明。其中步骤S1的详细过程如下:
S11.获取U_Mail下每封邮件的邮件头信息,得到邮件头数据集H。由于一封邮件的邮件头和邮件正文之间是通过一个空行分隔开的,所以本文通过正则表达式的方法对U_Mail下每封邮件信息进行匹配获取得到邮件头数据集H。其中H下的每一封邮件头包含以下字段:From;To;Reply-To;Delivered-To;Return-Path;Received;Date等,具体各个字段的详细信息如下表1所示:
表1 邮件头字段详细信息
字段名称 | 字段含义 | 添加者 |
Received | 传输路径 | 各级邮件服务器 |
Return-Path | 回复地址 | 目标邮件服务器 |
Delivered-To | 发送地址 | 目标邮件服务器 |
Reply-To | 回复地址 | 邮件的创建者 |
From | 发件人地址 | 邮件的创建者 |
To | 收件人地址 | 邮件的创建者 |
Cc | 抄送地址 | 邮件的创建者 |
Bcc | 暗送地址 | 邮件的创建者 |
Date | 日期和时间 | 邮件的创建者 |
Subject | 主题 | 邮件的创建者 |
Message-ID | 消息ID | 邮件的创建者 |
MIME-Version | MIME版本 | 邮件的创建者 |
Content-Type | 内容的类型 | 邮件的创建者 |
Content-Transfer-Encoding | 内容的传输编码方式 | 邮件的创建者 |
对于上述字段,在分析大量邮件头信息的基础上,结合邮件收发协议,通过统计与比较数据之间的关联法则,最终得到H下的每封邮件的邮件头特征集合为x=(x1,x2,…,x10),这些特征的含义如下:
x0:邮件中继次数,即邮件头中“Received”标签的个数;
x1:收件人个数,即邮件头中“To”标签中地址的个数;
x2:邮件路由信息中的中断次数,邮件路由信息中断定义为:若前一条“Received”标签中接收站点的域名和IP与后一条“Received”标签中发送站点的域名和IP均不相同,则被视为路由信息中断;
x3:“Received”项中的各个域名与其IP不匹配的次数;
x4:“Received”中发送站点项缺少域名的次数;
x5:“Received”中的by项缺少域名的次数;
h6:“Received”中的from项缺少IP的次数;
x7:“From”中的原始发送地址与“Received”中的原始发送地址是否一致;一致则取值为1,否则取值为0;
x8:“To”中的目的地址与“Received”中的实际收信人的地址是否一致;一致则取值为1,否则取值为0;
x9:“Delivered-To”项和“To”项是否一致,若一致则取值为1,否则取值为0,若不存在“Delivered-To”项,则这一属性值的缺省值设置为1;
x10:“Return_Path”项和“From”项是否一致,若一致则取值为1,否则取值为0,若不存在“Return_Path”项,则这一属性值的缺省值设置为1;
经过以上操作,得到数据集H={Hi|i=1,…,m},其中Hi=(x(i),y(i)),i=1,…,m。x(i)表示第i封邮件经过步骤S11处理后得到的一个关于邮件头Hi的10维实数向量x。y(i)为x(i)的类标记,y(i)∈{(0,1),(1,0)},其中(0,1)表正样本,即正常邮件,(1,0)表负样本,即垃圾邮件。最终得到邮件头样本数据集H={(x(1),y(1)),…,(x(m),y(m))}。
S12.获取邮件正文数据集T:通过正则化手段,对U_Mail下的每封邮件进行匹配,获取邮件文本信息,并对邮件文本进行分词、词表构建和文本截断,再通过word2vec词向量工具得到每封邮件文本的词嵌入表示。假设经过word2vec词向量工具处理后,得到每封邮件的文本向量包含N个词,每个词的维度为G维。如果邮件文本内容为空,则设置向量值为Null。其中对于中英文文本邮件的词向量获取,方法大同小异,即经过文本分词、词表构建、文本截断,word2vec工具后获得词向量,最终获取得到邮件正文数据集T。
S13.获取邮件图像数据集I:通过正则化手段,对U_Mail下的每封邮件进行匹配,获取得到图像数据,对获取得到的邮件图像进行预处理,即进行尺寸缩放,缩放尺寸为224*224*3的RGB图像大小。如果邮件不存在图像数据,则设置像素值为空值Null,最终获取得到邮件图像数据集I。
进一步的,步骤S2的详细过程如下:
S21.数据集T处理:对步骤S12下的T进行判断,如果存在Null,则剔除掉相应数据,最终形成无Null值的邮件正文数据集T_new={T_newj|j=1,…,m1},且T_newj=(z(j),g(j))。其中z(j)表示第j个样本经过步骤S12处理后得到的词矩阵向量,维度为N*G。其中z(j)矩阵的表示如下:
g(j)为z(j)的类标记,其邮件正文为Null的样本,
S22.数据集I处理:同步骤S21类似,对于I,存在Null值则剔除掉该数据,最终形成无Null值的邮件图像数据集I_new={qi|i=1,…,m2},其中第i个样本qi=(c(i),s(i)),c(i)为邮件的图片数据,s(i)为对应的标签,s(i)∈{(0,0),(0,1),(1,0)},其中(0,0)表邮件图像为空值Null的样本,(0,1)表正样本,即正常邮件,(1,0)表负样本,即垃圾邮件。
进一步的,步骤S3的详细步骤如下:
S31.获取邮件头数据集H:通过步骤S11得到数据集H。
S32.获取最优的邮件头分类器FNN模型:针对邮件头的分类为常见的二分类问题,本发明采用前馈神经网络(FNN)的一种变种BP神经网络(Back Propagation NeuralNetwork)对其进行训练优化,具体步骤如下:
S321.设置网络的结构参数,其中一般的BP神经网络架构示意图参见图3所示:
通过图3所示设置本文的BP神经网络由L层神经元组成,其中,第1层称为输入层,最后一层(第L层)称为输出层,该层的神经元个数为2,即n等于2。其他各层均被称为隐藏层(第2层~第L-1层)。其中隐藏层的神经元个数与权重由用户自定义得到。设第l隐藏层的神经元的输出为:其中,sl为第l层神经元的个数。
S322.定义即第l隐藏层的第i个神经元的输出:设为从l-1层第j个神经与l层第i个神经元之间的连接权重;为第l层第i个神经的偏置,其的输出函数如下:
其中,为l层第i个神经元的输入,f(·)为神经元的激活函数,本文采用的激活函数为Sigmoid激活函数,公式如下所示:
其中x′在此表示单个神经元的输入变量。
S323.定义损失函数。其公式如下所示:
其中,m由步骤S1所得,表邮件头样本个数,E(i)为第i个样本的训练误差,公式如下:
其中d(i)表示第i个样本的x(i)通过模型获取得到的输出向量,y(i)为步骤S31定义所得。则通过将公式(5)融合到公式(6)中得出如下公式:
S324.定义优化算法,更新权重和偏置。本文采用批量梯度下降算法实现对权重和偏置的更新,以获取最优的模型。其中整个神经网络的权重W和偏置b的更新公式如下所示:
其中α表示学习率,范围为(0,1),其值为用户自定义得到。
S325.获取最优的FNN模型:通过将步骤S31的H输入到步骤S321定义的神经网络中去,并通过公式(2),(3),(4)所定义的公式对输入的数据集进行计算得出最终的输出结果数据集d={d(1),d(2),…,d(m)},将d通过公式(7)计算得到损失函数E,并通过公式(8),(9)对神经网络模型FNN中的所有权重与偏置进行更新。重复此过程,直到通过公式(7)得到E≤ε时则停止迭代,ε为用户设定的边界值,得到最优的W与b,即获取得到了最优的邮件头分类器模型FNN。
S33.获取邮件文本数据集T_new:经过步骤S21获取得到邮件文本数据集T_new。
S34.获取最优的邮件文本分类器CLstmNN模型:针对邮件文本的分类问题,本发明根据深度学习算法下的卷积神经网络(CNN)能够提取文本抽象的卷积特征,长短期记忆神经网络(LSTM)能够提取文本语义特征,结合两者具有的特性,设计了CNN与LSTM单元相结合的新的神经网络,本文将其称之为CLstmNN模型,用于对文本进行分类。其中CLstmNN模型架构参见图4所示:
针对图4所提的模型,训练优化文本垃圾邮件分类器。其中步骤S34的具体步骤如下:
S341.设计CLstmNN模型,该网络模型参见图4所示,由1个词嵌入层、1个卷积层、1个池化层、1个LSTM层、1个全连接层和1个Softmax层构成。其中词嵌入层通过步骤S12完成。
S342.将步骤S33得到的数据集T_new作为输入输入到卷积层。其中根据词向量的卷积核特性得到卷积核的宽度与词向量的维度相等,即为G;设卷积核的高度为height,共有n个卷积核,滑动步长为1。其中令Bk[i:j]为第k个样本第i行到第j行的词向量。Fj表示第j个卷积核,维度为height*G,·表示内积运算,Ck(j)表示第k个样本由第j个卷积核学习到的特征向量。b为偏置,值由用户预先设定得到。f为激活函数,激活函数使用Sigmoid函数,其通过公式(4)定义所得。则第k个样本通过第j个卷积核获得的输出公式如下所示:
ok(j)=Bk[i:i+height-1]·Fj (10)
Ck(j)=f(ok(j)+b) (11)
其中令Ck表示第k个样本通过n个卷积核获得的矩阵,则Ck=[Ck(1),Ck(2),…,Ck(n)],维度为(N-height+1)*n。则所有样本组成的特征向量结果为:C={C1,C2,…,Cm1}。
S343.将步骤S342的结果C输入到池化层,用以降低特征向量C的特征维数。其中Ck的池化函数如下:
Pk=pooling(Ck) (12)
其中Pk表示Ck经过pooling函数作用后产生的特征向量,该函数使用最大池化方法,该方法的核心思想为对每个样本通过任意卷积核后得到的结果向量取最大值。最终第k个样本通过最大池化方法得到的结果为pk。且pk=[p1,p2,…,pn]T,k=1,2,…,m1。最终数据集T_new获得得到的特征矩阵为P=[P1,P2,…,Pm1]。
S344.设计LSTM隐层单元提取文本特性。根据LSTM隐层单元具有输入输出相等特性,设计时间序列长度为n,输入步骤S343的结果P,根据其特性得到输出结果设为U=[U1,U2,…,Um1],其中第i个样本输出结果为Ui=[u1,u2,…,un]T。
S345.将步骤S344的Ui作为输入输入到具有R个神经元的全连接层,神经元上的激活函数设置为Sigmoid函数。神经元上的输出通过如下公式输出:
Ki=σ(WiUi) (13)
其中,Wi表示Ui到R上连接的权重矩阵,维度为R*n,值为用户预先设定,σ表示为Sigmoid函数,公式由(4)定义所得。输出结果Ki的维度为R*1维的向量。
S346.将步骤S345的结果Ki输入到Softmax层,该层的神经元个数为2,激活函数使用Softmax函数输出分类概率。首先Ki通过步骤S345下定义的公式(13)进行计算,只是激活函数σ变为Softmax函数。其中Softmax函数公式如下:
其中k∈{1,2},ri为Ki通过替换掉公式(13)的Ui获得的输出。ri的维度为2*1维的向量,将ri送到公式(14)中,用于实现对样本i的分类概率最大化。
S347.重复步骤S345到S346,获取样本集T_new的分类概率数据集,令其为a,a的维度为m1*2*1的张量。
S348.定义损失函数优化网络模型。根据本文的问题为二分类问题,为了使得某类的类别概率最大化,令损失函数为交叉熵损失函数,公式如下:
m1为样本个数,g为步骤S33定义的样本标记的集合,即g={g(1),g(2),…,g(m1)}。通过批量梯度下降算法针对公式(15)下O的权重与偏置进行更新,其更新公式与(8)、(9)相似,只是求导的对象不是针对E下的W,b而是针对O下的W,b进行求导。
S349.重复迭代步骤S348,直到S348下的公式(15)的O≤ε则停止迭代,ε为用户设定的边界值,获取得到最优的CLstmNN模型。
S35.获取I_new数据集,训练优化获取最优的邮件图像分类器模型:将步骤S22下的I_new输入到用户定义的卷积神经网络(CNN)模型下,对模型进行训练,优化得到最优的邮件图像分类器。其具体步骤如下。
S351.通过步骤S22得到邮件图像数据集I_new。
S352.设定网络架构:卷积神经网络由若干卷积层、Pooling层、全连接层组成,本文设定的网络模型架构如下:首先设第一个卷积层由N个卷积核组成,且其宽度和高度相等为F,再将其连接到一个Pooling层,其宽度和高度相等设为P_W与P_H,重复上述结构Q次,再连接到一个全连接层,重复叠加K个全连接层,最后连接到具有2个神经元的全连接层,则形成了本文设定的CNN模型架构。其中一幅图像经过一个卷积核所得到的图片的宽度和高度结果通过如下公式可得:
其中width,height表示为一张图片本身具有的宽度和高度,由步骤S13可得刚开始的width=height=224,F为卷积核的宽度,S为卷积核针对一幅图片的滑动步长,该值由用户自定义所得,表示向下取整的意思。width_new,height_new表示通过一个卷积核后得到的新的图片宽度和高度。本文经过池化层所采用的算法为max pooling算法,即取图片池化层区域中的最大值,最终图片经过经过池化层形成的宽度和高度通过如下所得:
P_W_new=P_W/2 (18)
P_H_new=P_H/2 (19)
其中P_W_new与P_H_new为经过池化层形成的新的图片宽度和高度。
S353.训练优化邮件图像分类器,获取最优的CNN模型:将步骤S35的I_new输入到第一个卷积层,该层卷积核的个数为N个,通过公式(16)与(17)后得到新图像的大小维度变为(width_new,height_new,N),再通过激活函数ReLU后得到最终的卷积核输出,输出维度不变。其中ReLU的函数公式如下所示:
其中v表示输入变量。再将其输出结果输入到池化层,即通过公式(18)与(19)获取图像新一轮的输出,输出维度变为(width_new/2,height_new/2,N),迭代Q次再通过公式(2)与(3)得到第一个全连接层神经元的输出,其中激活函数不变仍为公式(4)定义的Sigmoid函数,迭代K轮之后再通过同步骤S346到S349类似的操作获取最优的邮件图像分类器CNN模型。其中权重与偏置的值仍由用户自定义给出。
进一步的,步骤S4的详细过程如下:
S41.将步骤S1下的H、T、I对应输入到步骤S325,S349与S353得到的最优FNN,CLstmNN,CNN模型中,获取分类概率数据集。
S42.通过步骤S41,得到邮件头,正文、图像三个模态下的分类概率集合H_Class,T_Class,I_Class。其中对Ti下文本信息为Null的部分,将T_Class下的T_Classi的值设置为0.5;对Ii下图片信息为Null的部分,将I_Classi值设置为0.5。最终得到H的输出维度为m*2*1的张量H_Class;T的输出维度为m*2*1的张量T_Class;I的输出维度为m*2*1的张量I_Class。
进一步的,步骤S5的详细过程如下:
S51.设计融合模型。融合模型由一个全连接层与一个Sigmoid层组成,参见图5所示:
S52.获取H、T、I数据集下的分类概率数据集。通过步骤S42得到邮件头分类概率数据集H_Class,邮件文本分类概率数据集T_Class与邮件图像分类概率数据集I_Class。
S53.获取最优的融合模型。将步骤S52下的H_Class、T_Class和I_Class作为输入输入到全连接层,设该层神经元个数为e。通过同步骤S325类似的操作获取最优的融合模型,具体步骤如下:
1、首先通过公式(2),(3),(4)定义的公式对输入的H_Class、T_Class和I_Class数据集进行计算得出输出结果,令输出结果为A,则得到A的维度为m*e*1;
2、将其输出结果A通过公式(7)计算得到损失函数E,并通过公式(8),(9)对神经元中的权重W与偏置b进行更新。
3、重复此过程,直到通过公式(7)得到的E≤ε则停止迭代,ε为用户设定的边界值,得到融合模型最优的权重W与偏置b,即获取得到了最优的融合模型分类器。
进一步的,步骤S6的具体过程如下:
S61.获取一封新邮件:通过用户输入一封邮件,获取一封新的邮件New_Mail;
S62.获取邮件头head,邮件正文text,邮件图片image数据:通过同步骤S11,S12,S13类似的操作,将New_Mail进行分割,得到head,text,image数据;
S63.获取New_Mail下head,text,image数据的分类概率:通过同步骤S41类似的操作,获取得到head,text,image数据三部分的分类概率;
S63.获取New_Mail是否为垃圾邮件的概率:通过将步骤S63得到的分类概率输入到步骤S53得到的最优融合模型中,获取得到邮件的最终分类概率prob。通过prob值,识别New_Mail是否为垃圾邮件。如果prob>0.5,则认为该封邮件为垃圾邮件,否则则认为该封邮件为非垃圾邮件。
Claims (4)
1.一种多模态的垃圾邮件识别方法,其特征在于,包括下列步骤:
邮件数据预处理:对邮件数据集进行分割,获取得到包含Null值的邮件头,邮件文本与邮件图像数据集;
其中每封邮件包含的模态信息存在以下几种情况:
(1)只包含邮件头信息;
(2)只包含邮件头与邮件正文信息;
(3)只包含邮件头与邮件图片信息;
(4)包含邮件头,邮件文本,图片信息;
针对(1),(2),(3)这几种缺失某些模态信息的情况,剔除掉为Null的部分,最终采集得到用于模型训练的邮件头数据集、邮件文本数据集和邮件图像数据集;
获取三个最优分类模型:将预处理得到的无Null的邮件头、邮件文本和邮件图像数据集输入到设计的FNN,CLstmNN(CNN与LSTM相结合得到)和CNN模型中进行训练,优化,得到三个最优的模型;
获取最优融合模型:将预处理得到的包含Null值的三个数据集,输入到对应的最优分类模型中,得到分类概率数据集,输入到设计的融合模型中,训练优化得到最优的融合模型。
2.如权利要求1所述的方法,其特征在于融合了邮件头,邮件文本,邮件图像三部分的信息相融合,采用深度学习技术,实现了对文本垃圾邮件、图像垃圾邮件及文本图像混合型垃圾邮件的识别,提高了对垃圾邮件的识别效率。
3.如权利要求1,2所述的方法,采用了CNN与LSTM网络模型相结合的方法,融合CNN对空间特征具有较好提取能力,LSTM对时序信号特征具有较好提取能力的特点,最大化的实现了文本型邮件对垃圾信息的特征提取能力,从而实现对文本型垃圾邮件的识别效率。
4.如权利要求1,2所述的方法,对输入到最优分类模型中存在Null值的数据集(即文本,图像数据集),采用特殊值填充的方法,将对应的CLstmNN与CNN模型输出的类概率的值设置为0.5,避免融合模型对垃圾邮件识别效率的影响,从而实现对文本垃圾邮件、图像垃圾邮件以及文本图像混合型垃圾邮件进行统一处理,有效识别过滤的效果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811439940.5A CN109800852A (zh) | 2018-11-29 | 2018-11-29 | 一种多模态的垃圾邮件识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811439940.5A CN109800852A (zh) | 2018-11-29 | 2018-11-29 | 一种多模态的垃圾邮件识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109800852A true CN109800852A (zh) | 2019-05-24 |
Family
ID=66556317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811439940.5A Pending CN109800852A (zh) | 2018-11-29 | 2018-11-29 | 一种多模态的垃圾邮件识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109800852A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110381089A (zh) * | 2019-08-23 | 2019-10-25 | 南京邮电大学 | 基于深度学习对恶意域名检测防护方法 |
CN110569357A (zh) * | 2019-08-19 | 2019-12-13 | 论客科技(广州)有限公司 | 一种邮件分类模型的构建方法、装置、终端设备和介质 |
CN111881869A (zh) * | 2020-08-04 | 2020-11-03 | 浪潮云信息技术股份公司 | 一种基于手势数据的分级存储方法及系统 |
CN112052853A (zh) * | 2020-09-09 | 2020-12-08 | 国家气象信息中心 | 一种基于深度学习的手写气象档案资料的文本定位方法 |
CN113205122A (zh) * | 2021-04-23 | 2021-08-03 | 微马科技有限公司 | 基于低成本运算平台的人脸检测方法、装置及介质 |
CN113630302A (zh) * | 2020-05-09 | 2021-11-09 | 阿里巴巴集团控股有限公司 | 一种垃圾邮件识别方法及装置、计算机可读存储介质 |
CN115424278A (zh) * | 2022-08-12 | 2022-12-02 | 中国电信股份有限公司 | 邮件检测方法及装置、电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930561A (zh) * | 2010-05-21 | 2010-12-29 | 电子科技大学 | 一种基于N-Gram分词模型的反向神经网络垃圾邮件过滤装置 |
CN103684991A (zh) * | 2013-12-12 | 2014-03-26 | 深圳市彩讯科技有限公司 | 基于邮件特征和内容的垃圾邮件过滤方法 |
CN105447505A (zh) * | 2015-11-09 | 2016-03-30 | 成都数之联科技有限公司 | 一种多层次重要邮件检测方法 |
CN106453033A (zh) * | 2016-08-31 | 2017-02-22 | 电子科技大学 | 基于邮件内容的多层次邮件分类方法 |
CN108647206A (zh) * | 2018-05-04 | 2018-10-12 | 重庆邮电大学 | 基于混沌粒子群优化cnn网络的中文垃圾邮件识别方法 |
-
2018
- 2018-11-29 CN CN201811439940.5A patent/CN109800852A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930561A (zh) * | 2010-05-21 | 2010-12-29 | 电子科技大学 | 一种基于N-Gram分词模型的反向神经网络垃圾邮件过滤装置 |
CN103684991A (zh) * | 2013-12-12 | 2014-03-26 | 深圳市彩讯科技有限公司 | 基于邮件特征和内容的垃圾邮件过滤方法 |
CN105447505A (zh) * | 2015-11-09 | 2016-03-30 | 成都数之联科技有限公司 | 一种多层次重要邮件检测方法 |
CN106453033A (zh) * | 2016-08-31 | 2017-02-22 | 电子科技大学 | 基于邮件内容的多层次邮件分类方法 |
CN108647206A (zh) * | 2018-05-04 | 2018-10-12 | 重庆邮电大学 | 基于混沌粒子群优化cnn网络的中文垃圾邮件识别方法 |
Non-Patent Citations (2)
Title |
---|
罗阳: "《基于多模态的邮件标识方法及应用》", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
顾玮: "《基于贝叶斯算法的垃圾邮件过滤技术研究》", 《办公自动化》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569357A (zh) * | 2019-08-19 | 2019-12-13 | 论客科技(广州)有限公司 | 一种邮件分类模型的构建方法、装置、终端设备和介质 |
CN110381089A (zh) * | 2019-08-23 | 2019-10-25 | 南京邮电大学 | 基于深度学习对恶意域名检测防护方法 |
CN113630302A (zh) * | 2020-05-09 | 2021-11-09 | 阿里巴巴集团控股有限公司 | 一种垃圾邮件识别方法及装置、计算机可读存储介质 |
CN111881869A (zh) * | 2020-08-04 | 2020-11-03 | 浪潮云信息技术股份公司 | 一种基于手势数据的分级存储方法及系统 |
CN111881869B (zh) * | 2020-08-04 | 2023-04-18 | 浪潮云信息技术股份公司 | 一种基于手势数据的分级存储方法及系统 |
CN112052853A (zh) * | 2020-09-09 | 2020-12-08 | 国家气象信息中心 | 一种基于深度学习的手写气象档案资料的文本定位方法 |
CN112052853B (zh) * | 2020-09-09 | 2024-02-02 | 国家气象信息中心 | 一种基于深度学习的手写气象档案资料的文本定位方法 |
CN113205122A (zh) * | 2021-04-23 | 2021-08-03 | 微马科技有限公司 | 基于低成本运算平台的人脸检测方法、装置及介质 |
CN115424278A (zh) * | 2022-08-12 | 2022-12-02 | 中国电信股份有限公司 | 邮件检测方法及装置、电子设备 |
CN115424278B (zh) * | 2022-08-12 | 2024-05-03 | 中国电信股份有限公司 | 邮件检测方法及装置、电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109800852A (zh) | 一种多模态的垃圾邮件识别方法 | |
CN110083700A (zh) | 一种基于卷积神经网络的企业舆情情感分类方法及系统 | |
CN106453033B (zh) | 基于邮件内容的多层次邮件分类方法 | |
CN109389037B (zh) | 一种基于深度森林和迁移学习的情感分类方法 | |
CN110046671A (zh) | 一种基于胶囊网络的文本分类方法 | |
CN110309331A (zh) | 一种基于自监督的跨模态深度哈希检索方法 | |
CN110472042B (zh) | 一种细粒度情感分类方法 | |
CN107368614A (zh) | 基于深度学习的图像检索方法及装置 | |
CN107908715A (zh) | 基于Adaboost和分类器加权融合的微博情感极性判别方法 | |
CN107169001A (zh) | 一种基于众包反馈和主动学习的文本分类模型优化方法 | |
CN111506732B (zh) | 一种文本多层次标签分类方法 | |
CN110163236A (zh) | 模型的训练方法和装置、存储介质、电子装置 | |
CN104881770A (zh) | 一种快递单信息识别系统和方法 | |
CN109344884A (zh) | 媒体信息分类方法、训练图片分类模型的方法及装置 | |
CN101930561A (zh) | 一种基于N-Gram分词模型的反向神经网络垃圾邮件过滤装置 | |
CN109889436B (zh) | 一种社交网络中垃圾邮件发送者的发现方法 | |
CN109101584A (zh) | 一种将深度学习与数学分析相结合的句子分类改进方法 | |
CN112784047B (zh) | 一种基于自注意力机制的可控可解释司法文本分类方法 | |
CN104700100A (zh) | 面向高空间分辨率遥感大数据的特征提取方法 | |
CN112800225B (zh) | 一种微博评论情绪分类方法和系统 | |
CN113434688B (zh) | 用于舆情分类模型训练的数据处理方法和装置 | |
CN102404249A (zh) | 一种基于协同训练的垃圾邮件过滤方法和装置 | |
CN110245235A (zh) | 一种基于协同训练的文本分类辅助标注方法 | |
CN104361015A (zh) | 一种邮件分类识别方法 | |
CN116089610A (zh) | 一种基于行业知识的标签识别方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190524 |
|
RJ01 | Rejection of invention patent application after publication |