我想用文本数据(自然语言)作为分类的输入来训练神经网络。为神经网络标准化文本数据的一种方法是使用向量形式的 N-GRAM/SKIP-GRAM表示。
除了 n-gram/skip-gram 之外,还有其他方法可以表示可用作神经网络输入的数据吗?
我想用文本数据(自然语言)作为分类的输入来训练神经网络。为神经网络标准化文本数据的一种方法是使用向量形式的 N-GRAM/SKIP-GRAM表示。
除了 n-gram/skip-gram 之外,还有其他方法可以表示可用作神经网络输入的数据吗?
我也一直在尝试使用神经网络进行文本分类/分类,但效果有限。我试图从一元/二元特征(非常稀疏,非常高维)转向密集且更小的维度表示。我尝试了 LDA(潜在狄利克雷分配)和其他一些特征选择/提取方法,但与 Logistic 回归中使用的稀疏 unigram/bigram 特征相比,性能较差。
我很清楚最近使用循环神经网络和其他深度学习技术的论文,但它们需要大量数据并需要强大的计算能力。虽然我有后者,但在我的应用程序中我没有很多数据。所以我必须坚持使用浅层机器学习方法。
我很想知道在数据集不足以进行深度学习的情况下,哪些密集和低维特征至少能提供与 unigrams/bigrams 相当的性能。我对分析/挖掘短文本文档的方法特别感兴趣。
神经网络不是文本分类的最佳方式,为了更好的改进,你需要长时间训练它。如果您只想使用 NN,请阅读有关 RNN 和 Word Embedding 的更多信息。RNN 在文本分类任务上显示出很好的结果,但很难训练复杂的任务。基本上词嵌入是网络中的一些输入层,它们在多维空间中转换你的词(字母)。最好的事情是,经过长时间的训练,具有相似含义的单词会在一个向量空间中一起出现。例如,可以是单词 Cat、Dog、Mouse 等。而在 NN 分类任务中,将跟踪句子中相似词之间的所有变化,并将它们放在同一类中。开始使用 RNN 的最佳方式是最初的 Elman 论文Finding Structure in Time他在那里展示了他的 Elman RNN。有很多简单的例子,你也可以为一小部分词找到非常简单的词嵌入。所以这当然是最简单的 RNN 之一,但它将向您展示 RNN 背后的一些基本思想。
没关系...我在这里找到了答案PDF 链接。也可以使用 word-of-bag 或 word class。