我应该如何在神经网络中建立训练集?

时间:2012-11-10 22:10:06

标签: java neural-network classification spam training-data

我有一种愚蠢的困惑,但很困扰我。我必须制作一个用于垃圾邮件检测的ANN。到目前为止,我已经开发了用于开发邮件的tfidf向量并分别计算该矩阵的PCA的模块。 问题是我的邮件是直接从收件箱中读取的。 对于培训,我希望使用我的垃圾邮件箱,然后使用相同的类来开发未读邮件的向量。如何将它们标记为垃圾邮件?

我应该开发类似的东西

   HashMap<HashMap<String,Double>,Integer> trainingSet;

第一个参数是通过PCA以尺寸方式减少的mailVector,而Integer是非垃圾邮件的标签1-Spam和0,然后将向量写入文件并从中读取? 或者我宁愿让我的代码变得灵活,而不是直接从收件箱直接读取,它应该从已经存在的一组火腿和垃圾邮件在线阅读,然后将它们建模为邮件对象[我有一个MailMessage类定义成员类似主题邮件的正文,邮件向量等,然后用它来构建术语索引,最后是矢量],形成向量然后形成训练集,之后训练后我可以让它们读取我的收件箱吗?

任何见解都将受到赞赏!

1 个答案:

答案 0 :(得分:0)

我会诚实地对待你。坦率地说,英语中没有那么多单词。如果你有一个非常大的输入向量(比如成千上万),你可能会有最有效的表现。事实上,你甚至可以在没有隐藏层的情况下购买。

对于图像识别等,具有数千个点的输入矢量并不罕见。