【深度学习系列】PaddlePaddle垃圾邮件处理实战(二)

PaddlePaddle垃圾邮件处理实战(二) 前文回顾

  在上篇文章中我们讲了如何用支持向量机对垃圾邮件进行分类,auc为73.3%,本篇讲继续讲如何用PaddlePaddle实现邮件分类,将深度学习方法运用到文本分类中。

构建网络模型

  用PaddlePaddle来构建网络模型其实很简单,首先得明确paddlepaddle的输入数据的格式要求,知道如何构建网络模型,以及如何训练。关于输入数据的预处理等可以参考我之前写的这篇文章【深度学习系列】PaddlePaddle之数据预处理。首先我们先采用一个浅层的神经网络来进行训练。

具体步骤

读取数据

划分训练集和验证集

定义网络结构

打印训练日志

可视化训练结果

读取数据

  在PaddlePaddle中,我们需要创建一个reador来读取数据,在上篇文章中,我们已经对原始数据处理好了,正负样本分别为ham.txt和spam.txxt,这里我们只需要加载数据即可。
代码实现:

# 加载数据 def loadfile(): # 加载正样本 fopen = open('ham.txt','r') pos = [] for line in fopen: pos.append(line) #加载负样本 fopen = open('spam.txt','r') neg = [] for line in fopen: neg.append(line) combined=np.concatenate((pos, neg)) # 创建label y = np.concatenate((np.ones(len(pos),dtype=int), np.zeros(len(neg),dtype=int))) return combined,y # 创建paddlepaddle读取数据的reader def reader_creator(dataset,label): def reader(): for i in xrange(len(dataset)): yield dataset[i,:],int(label[i]) return reader

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpgyzy.html