【问题标题】:Keras 'one_hot' for text processing用于文本处理的 Keras 'one_hot'
【发布时间】:2020-09-08 16:16:16
【问题描述】:

假设我有一个单词/句子序列:“我喜欢食物”

如果我使用 keras one_hot 进行编码:

from keras.preprocessing.text import one_hot
one_hot('I like food',50)

它给了我以下值:[10, 39, 17]

但是,假设我有这样的输入序列:['Add more', 'Add less', 'Do little more'] 这里的每个条目就像一个句子中的一个词。因此,我想将“Add more”、“Add less”和“Do little more”编码为一个单词。所有条目由完整的序列或句子组成。

我怎样才能像 keras 中的 one_hot 一样对其进行编码。使用 one_hot 显示错误:

'list' 对象没有属性'lower'

【问题讨论】:

    标签: tensorflow keras nlp word-embedding python-textprocessing


    【解决方案1】:

    执行此操作的典型方法是预处理您的文本并将单词与下划线组合在一起。因此,您对 Keras 的输入将如下所示:

    "add_more add_less do_little_more"
    

    这通常用于在正常语言中总是一起使用的短语,例如“New York”;这些有时在学术论文中被称为多词表达 (MWE)。如果你把很多这样的词组合起来,你最终可能会得到太稀疏而无法使用的数据,但你可以尝试一下。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-21
      • 1970-01-01
      • 2018-08-20
      • 2018-11-21
      • 2016-03-20
      • 1970-01-01
      • 1970-01-01
      • 2011-01-28
      相关资源
      最近更新 更多