ValueError:float()Keras的无效文字

时间:2017-09-10 18:05:50

标签: python tensorflow neural-network keras model-fitting

我正在使用keras建立一个简单的神经网络。

训练数据的每个元素都有100个维度,我正在从文本文件中读取元素的标签。

f = open('maleE', "rt")
labelsTrain = [line.rstrip() for line in f.readlines()]
f.close()

标签是具有以下结构的字符串:number_text

使模型适合训练数据:

model.fit(train, labelsTrain, epochs= 20000, batch_size= 1350)

我收到以下错误:

File "DNN.py", line 112, in <module>
    model.fit(train, labelsTrain, epochs=20000, batch_size=1350)
  File "/Users/renzo/PyEnvironments/tensorKeras/lib/python2.7/site-packages/keras/models.py", line 867, in fit
    initial_epoch=initial_epoch)
  File "/Users/renzo/PyEnvironments/tensorKeras/lib/python2.7/site-packages/keras/engine/training.py", line 1598, in fit
    validation_steps=validation_steps)
  File "/Users/renzo/PyEnvironments/tensorKeras/lib/python2.7/site-packages/keras/engine/training.py", line 1183, in _fit_loop
    outs = f(ins_batch)
  File "/Users/renzo/PyEnvironments/tensorKeras/lib/python2.7/site-packages/keras/backend/tensorflow_backend.py", line 2273, in __call__
    **self.session_kwargs)
  File "/Users/renzo/PyEnvironments/tensorKeras/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 889, in run
    run_metadata_ptr)
  File "/Users/renzo/PyEnvironments/tensorKeras/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1087, in _run
    np_val = np.asarray(subfeed_val, dtype=subfeed_dtype)
  File "/Users/renzo/PyEnvironments/tensorKeras/lib/python2.7/site-packages/numpy/core/numeric.py", line 531, in asarray
    return array(a, dtype, copy=False, order=order)
ValueError: invalid literal for float(): 225_sokode

标签是378个标签列表中的元素279。

1 个答案:

答案 0 :(得分:0)

首先,为每个类选择一个唯一的名称。我这样说是因为我没有得到类标签中number的内容(如果每个类都不相同,请使用str.split()来保留text)。然后你应该编码你的字符串标签。例如,请参阅this post了解标签的单热编码。