哪种深度学习网络适合对此类文本数据进行分类?

数据挖掘 机器学习 深度学习 分类 nlp
2022-02-13 10:12:04

我有一些图像方面的经验,并且曾使用 CNN 进行图像分类,但在文本数据方面知识有限。

我当前要分类的输入写成:

hjkhghkgfghjkhghkgfghfefdefdcdefghjkjh-hjhgfe
fdcd-dd-fdc-dad-ad-dfe-cde-dggf-ghd-gg-bcd
hjkhghkgfghjkhghkgfghfefdefdcdefghjkjh-gh-gfed
dh-hg-gf-gh-dh-hg-gf-gh-hkhg-kh-hg-gf-gh-hkhg-kh-hg-gf-ghh-hgfg-dfd-dc-fgf-gh

我有超过 2000 行这些数据,需要分类。我知道对于常规文本数据,RNN 网络和 LSTM 单元已被认为不是非常有效。使用 RNN+LSTM 可以通过使用常用方法(例如词干提取、词根化、停用词过滤、标记化等)对数据进行预处理来获得良好的结果。但同样的方法不适用于我拥有的文本数据。

RNN 和 LSTM 还能处理我的数据吗?如果不是,你们建议我探索哪些网络来完成这样的任务?

1个回答

您需要字符嵌入我假设您已经熟悉 word2vec 技术。它的目标是让模型“学习”单词的相对含义,将它们放入高维空间。

同样可以用单个字符而不是整个单词来完成。您需要的预处理步骤会有所不同,但嵌入技术是相同的。通过这种方式,您可以生成字符的表示,将它们的序列输入到某个 RNN 模型中,并执行最终的分类任务。

因此,RNN 非常适合这项任务。如果您正在使用,tensorflow.keras您可以简单地对字符进行标记,并通过一个Embedding()将为您完成工作的层提供它们。RNN 的替代方案是 1D 卷积层,它可以作为循环单元的替代方案来完成这项工作。这取决于你的喜好。