【问题标题】:How to generate the vocab with the given seperator in tensorflow?如何在tensorflow中使用给定的分隔符生成词汇?
【发布时间】:2020-06-15 05:44:51
【问题描述】:

我有一个任务,我希望使用 TextCNN 来完成它。输入序列是这样的:

"1|100 2|101 3|200 ..."

我希望用空格分割序列并获得像{'1|100': 1, '2|101': 2, '3|200':3, ...} 这样的词汇。我尝试使用tf.contrib.learn.preprocessing.VocabularyProcessor 生成词汇并转换序列,但是它处理了符号“|”也作为分隔符并返回{'1': 1, '100': 2, '2': 3, '101': 4, '3': 5, '200':6, ...}

那么如何使用我选择的分隔符生成词汇?

【问题讨论】:

    标签: python python-2.7 tensorflow


    【解决方案1】:

    您可以使用 tf tokenizer 自定义 filters 参数来做到这一点

    text = ['1|100 2|101 3|200', '1|100 2|111 3|210']
    
    tk = tf.keras.preprocessing.text.Tokenizer(filters='')
    tk.fit_on_texts(text)
    
    tk.word_index
    # {'1|100': 1, '2|101': 2, '3|200': 3, '2|111': 4, '3|210': 5}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-18
      • 2016-10-07
      相关资源
      最近更新 更多