如何使用on_hot来组合文本和数字

时间:2017-12-29 14:20:35

标签: keras one-hot-encoding

我正在使用keras,我想训练模型来识别文本。但是,在我的文本中我也有数字。当然,因为文本中有一个数字on_hot不知道该怎么做,我得到这个错误:

  

AttributeError:'float'对象没有属性'translate'

任何想法我该怎么办? 我有这样的文字: '9145> 23 [SYN] Seq = 0 Win = 12713 Len = 0 [以太网帧检查顺序错误]'

1 个答案:

答案 0 :(得分:1)

我无法重现您的错误。调用one_hot时,数字是字符串。为了告诉你我打电话给text_to_word_sequence。

In [8]: from keras.preprocessing import text as kt

In [9]: text = '9145 > 23 [SYN] Seq=0 Win=12713 Len=0 [ETHERNET FRAME CHECK SEQUENCE INCORRECT]'

In [10]: kt.text_to_word_sequence(text)
Out[10]: 
['9145',
 '23',
 'syn',
 'seq',
 '0',
 'win',
 '12713',
 'len',
 '0',
 'ethernet',
 'frame',
 'check',
 'sequence',
 'incorrect']

In [11]: kt.one_hot(text, 20)
Out[11]: [12, 3, 9, 4, 5, 18, 12, 2, 5, 1, 13, 12, 16, 17]