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

Inputs for Neural Network for email spam detection

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

我下载了一些文本格式的垃圾邮件和非垃圾邮件数据库用于训练network.So我有一些训练集。但我的问题是:

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

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

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

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

这是基本思想。然后你可以通过应用 stemming, use tf-idf 而不是普通频率来改进它,引入其他输入元素(例如来自电子邮件 headers)。

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

作为开始的想法:

您可以使用 neural-network 中的加权词技术,如下所示。

第一步:创建一个 "dictionary" 基于 neural-network 回答你给定单词是垃圾邮件的概率。

第二步:计算整封邮件是垃圾邮件的概率。您可能有多个输入,例如,第一个输入接受垃圾邮件概率为 0-10% 的单词数,第二个输入概率为 10-20% 的单词数,依此类推,直到最后一个概率为 90-100% 的单词数, 这样的输出 neural-network 你可以设置邮件是垃圾邮件的概率。