用于电子邮件垃圾邮件检测的神经网络输入

Posted

技术标签:

【中文标题】用于电子邮件垃圾邮件检测的神经网络输入【英文标题】:Inputs for Neural Network for email spam detection 【发布时间】:2016-04-12 10:38:04 【问题描述】:

我正在尝试实施神经网络来检测垃圾邮件。我有用于解决 XOR 问题的神经网络,我想根据我的目的编辑该网络并使用 ba。可在此处访问:https://github.com/trentsartain/Neural-Network

我下载了一些文本格式的电子邮件垃圾邮件和火腿数据库,用于训练网络。所以我有一些训练集。但我的问题是:

该神经网络的输入应该是什么?

感谢您的每一条评论! :)

【问题讨论】:

有很多关于这方面的先前研究......在谷歌学者中搜索讨论在垃圾邮件检测中有用的各种信号的论文,然后从文本中提取这些信号并将它们输入您的 ANN。 【参考方案1】:

简短的回答:输入将是您的垃圾邮件。

更长的答案,在一个非常基本的层面上: 假设您的电子邮件没有奇怪的字符。 想象一个向量,其中向量的每个元素代表这些电子邮件中出现的一个词。 对于每封电子邮件,您创建一个这些向量,并为每个元素计算该词在电子邮件中出现的频率。 所有这些向量,每封电子邮件一个,将是您的输入。

这是基本的想法。然后,您可以通过应用stemming 来优化它,使用tf-idf 而不是普通频率,引入其他输入元素(例如来自电子邮件标题)。

【讨论】:

【参考方案2】:

我遇到了一些针对电子邮件和 SMS 的垃圾邮件过滤器,其中最有效的是基于“Naive Bayes spam filtering”技术。所以我建议先看看这个技术。

作为一个开始的想法:

您可以在神经网络中使用加权词技术,如下所示。

第一步:创建一个基于神经网络的“字典”,女巫回答你给定单词是垃圾邮件的概率。

第二步:计算整封邮件成为垃圾邮件的概率。您可能有多个输入,例如第一个输入获取垃圾邮件概率为 0-10% 的单词数,第二个输入概率为 10-20% 的单词数,依此类推,直到概率为 90-100% 的最后一个单词数,这种神经网络的输出,您可以设置消息为垃圾邮件的概率。

【讨论】:

以上是关于用于电子邮件垃圾邮件检测的神经网络输入的主要内容,如果未能解决你的问题,请参考以下文章

用于防止滥用的 Servlet 过滤器? (DoS、垃圾邮件等)

sas神经网络:构建人工神经网络模型来识别垃圾邮件

sas神经网络:构建人工神经网络模型来识别垃圾邮件

垃圾邮件检测服务的最佳语言选择[关闭]

我应该如何在我的神经网络中对训练集进行建模?

使用 naive-bayes 检测垃圾邮件