我正在使用keras,我想训练模型来识别文本。但是,在我的文本中我也有数字。当然,因为文本中有一个数字on_hot不知道该怎么做,我得到这个错误:
AttributeError:'float'对象没有属性'translate'
任何想法我该怎么办? 我有这样的文字: '9145> 23 [SYN] Seq = 0 Win = 12713 Len = 0 [以太网帧检查顺序错误]'
答案 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]