1.一种邮件分类方法,应用于服务器,其特征在于,该方法包括:将接收到的邮件文本进行处理,将所述邮件文本映射成初始向量;
对所述初始向量进行去噪处理,得到去噪后的初始向量;
将所述初始向量代入第一计算公式计算得到输出向量;
所述第一计算公式为:
t(l+1)=W(l)·X(l)+b(l);
基于测试向量集获得第一输出值;
基于所述输出向量获得第二输出值;
计算所述第一输出值和所述第二输出值的误差;
在所述误差不在预设的范围内时,将所述第一输出值以第二计算公式经过去噪处理后,再次迭代进入下一个自编码器的模型中,作为输入向量进行计算得到新的第一输出值及第二输出值,重复迭代,直到所述新的第一输出值及第二输出值的误差在预设范围内时,得到输出向量;
所述第二计算公式为:
X(l+1)=rand(t(l+1));
其中,在所述第一计算公式以及所述第二计算公式中,其中,X(l)表示第l层的输入向量,W(l)表示l层的权值,b(l)表示l层的偏值,t(l+1)表示l层的输出向量;
对使所述误差在预设范围内的所述输出向量进行分类,根据使所述误差在预设范围内的所述输出向量的分类判断所述邮件是否垃圾邮件。
2.如权利要求1所述的邮件分类方法,其特征在于,对所述初始向量进行去噪处理,得到去噪后的初始向量包括:通过以下去噪公式对所述初始向量进行去噪处理:
Xc=rand(size,corrupted_level)·X;
其中,X表示所述初始向量,Xc表示所述去噪后的初始向量,rand()表示一随机函数;
size表示所述初始向量的维数,corrupted_level控制损坏程度。
3.如权利要求2所述的邮件分类方法,其特征在于,对所述初始向量进行去噪处理,得到去噪后的初始向量;将所述初始向量代入第一计算公式计算得到第一输出值,将所述第一输出值经过去噪处理后,再次迭代进入下一个自编码器的模型中作为输入向量进行计算得到新的第一输出值及第二输出值,重复上述过程,直到所述计算出所述第一输出值和所述第二输出值的误差在预设范围内,得到输出向量,还包括:在每次得到所述新的第一输出值和第二输出值时,记录用于表示当前迭代次数的当前层数;
在所述当前层数等于目标层数的输出向量为所述输出向量。
4.如权利要求1所述的邮件分类方法,其特征在于,所述权值W(l)和偏值b(l)以下方式得到:获取样本集
其中, 表示用于测试的初始向量集;
随机初始化权值向量及偏值向量: 和 其中,初始化的权值向量及偏值向量中的每个值的范围为0-1;
设置用于存储偏导数的变量 和 并初始化为0;
其中,Depth表示使用的自编码器模型的层数;
计算损失函数J(W,b)对每一层的权值向量W和偏值向量b的偏导数,分别为和
令
令
使用如下公式对所述权值W(l)和偏值b(l)进行更新:
5.如权利要求4所述的邮件分类方法,其特征在于,所述损失函数包括:Ls(W,W′,b1,b2;
Z)=1/2||Y-Z||2;或
Lc(W,W′,b1,b2;Z)=-[XlogY+(1-Z)log(1-Y)];或其中Lt表示Ls或Lc,λ表示权重衰减因子,nl表示网络的层数,sl表示隐藏层的单元数,s(l+1)表示输出层的单元数;
其中,所述Y通过以下方式计算得到:
h=f(W·Zc+b1);
Y=g(W′·h+b2);
其中,Z表示所述初始向量,Zc表示所述去噪的初始向量;h表示第一层的输出向量,其中,Zc=rand(size,corrupted_level)·Z。
6.如权利要求4所述的邮件分类方法,其特征在于,所述在所述误差不在预设的范围内时,将所述第一输出值经过去噪处理后,再次迭代进入下一个自编码器的模型中,作为输入向量进行计算得到新的第一输出值及第二输出值,重复迭代,直到所述新的第一输出值及第二输出值的误差在预设范围内时,得到输出向量,包括:通过所述损失函数计算得到的h=f(W·Zc+b1)作为所述第一输出值,Y=g(W′·h+b2)作为所述第二输出值,在所述第一输出值和所述第二输出值的误差不在预设范围内时,则将所述第一输出值经过去噪处理后,再次迭代进入下一个自编码器的模型中作为输入向量进行计算得到新的第一输出值及第二输出值,重复上述过程,直到所述计算出第一输出值和第二输出值的误差在预设范围内,得到每一层输出的权值W(l)和偏值b(l)形成的权值向量和偏值向量,目标层数为h=f(W·Zc+b1)和Y=g(W′·h+b2)的误差在预设范围内时计算得到的层数。
7.如权利要求1所述的邮件分类方法,其特征在于,所述对使所述误差在预设范围内的所述输出向量进行分类,根据使所述误差在预设范围内的所述输出向量的分类判断所述邮件是否垃圾邮件的步骤包括:将使所述误差在预设范围内的所述输出向量输入到Logistic回归分类器中进行分类,根据使所述误差在预设范围内的所述输出向量的分类结果判断所述邮件是否垃圾邮件;或者将使所述误差在预设范围内的所述输出向量输入到Softmax分类器进行分类,根据使所述误差在预设范围内的所述输出向量的分类结果判断所述邮件是否垃圾邮件;或者将使所述误差在预设范围内的所述输出向量输入到SVM分类器进行分类,根据使所述误差在预设范围内的所述输出向量的分类结果判断所述邮件是否垃圾邮件。
8.如权利要求1-7任意一项所述的邮件分类方法,其特征在于,该方法还包括:根据判断结果对接收到的邮件进行标记,并将标记后的邮件发送给该邮件对应的接收账户。
9.一种邮件分类装置,应用于服务器,其特征在于,该装置包括:初始向量生成模块,用于将接收到的邮件文本进行处理,将所述邮件文本映射成初始向量;
输出向量训练模块,对所述初始向量进行去噪处理,得到去噪后的初始向量;将所述初始向量代入第一计算公式计算得到输出向量;基于测试向量集获得第一输出值;基于所述输出向量获得第二输出值;计算所述第一输出值和所述第二输出值的误差;在所述误差不在预设的范围内时,将所述第一输出值经过第二计算公式去噪处理后,再次迭代进入下一个自编码器的模型中,作为输入向量进行计算得到新的第一输出值及第二输出值,重复迭代,直到所述新的第一输出值及第二输出值的误差在预设范围内时,得到输出向量;所述第一计算公式为:t(l+1)=W(l)·X(l)+b(l);所述第二计算公式为:X(l+1)=rand(t(l+1));其中,X(l)表示第l层的输入向量,W(l)表示l层的权值,b(l)表示l层的偏值,t(l+1)表示l层的输出向量;
邮件判断模块,用于对使所述误差在预设范围内的所述输出向量进行分类,根据使所述误差在预设范围内的所述输出向量的分类判断所述邮件是否垃圾邮件。