keras-tokenizer 是否执行词形还原和词干提取的任务?

ASi*_*ngh 6 nlp stemming tokenize lemmatization keras

keras tokenizer 是否提供词干提取和词形还原等功能?如果是的话,那么它是如何完成的呢?需要直观的理解。另外,text_to_sequence这有什么作用?

Mar*_*kus 4

可能有人会混淆分词器的作用和分词化的含义。标记化将字符串分割成更小的实体,例如单词或单个字符。因此,这些也称为代币维基百科提供了一个很好的例子:

The quick brown fox jumps over the lazy dog变成:

<sentence>
  <word>The</word>
  <word>quick</word>
  ...
  <word>dog</word>
</sentence>
Run Code Online (Sandbox Code Playgroud)

词形还原(将单词的屈折形式分组在一起->链接)或词干提取(将屈折(或有时派生)单词减少为其词干->链接的过程)是您在预处理期间执行的操作。分词法可以是词形还原和词干提取之前或之后(或两者)的预处理过程的一部分。

不管怎样,Keras 并不是一个完全成熟的文本预处理框架。因此,您可以将已清理、词形还原等数据输入 Keras。关于你的第一个问题:不,Keras 不提供词形还原或词干提取等功能。

Keras在文档中文本预处理的理解是准备数据以便将其输入 Keras 模型(如顺序模型)的功能。例如,这就是Keras-Tokenizer这样做的原因:

此类允许对文本语料库进行矢量化,方法是将每个文本转换为整数序列(每个整数是字典中标记的索引)或转换为向量,其中每个标记的系数可以是二进制的(基于字数) ,基于tf-idf...

例如,通过对输入字符串进行矢量化并将其转换为数字数据,您可以将它们作为 Keras 神经网络的输入。

text_to_sequence可以从中提取含义:[ ...] 整数序列(每个整数是字典中标记的索引)[...]。这意味着您以前的字符串随后可以是数字整数的序列(例如数组)而不是实际的单词。

关于这一点,您还应该看看 Keras 顺序模型是什么(例如此处),因为它们将序列作为输入。

此外,text_to_word_sequence()docs)还提供了此类标记化,但不会将数据矢量化为数值向量并返回标记化字符串的数组。

将文本转换为单词(或标记)序列。