【发布时间】:2017-12-23 06:14:07
【问题描述】:
我有一个包含 26 个变量的文件,其中 25 个是 x 值,第 26 个是 y 值。我想拟合一个线性函数,从 x 中预测 y 的值。我使用了以下程序
from keras.layers import Dense
from keras.optimizers import SGD
from keras import Sequential
import numpy as np
arr = np.loadtxt('../data/TscoreTest.csv',skiprows=1,delimiter=',')
x = arr[:,0:25]
x = x.astype(float)
y = arr[:,-1]
model = Sequential()
model.add(Dense(1,input_shape=(25,), kernel_initializer='random_uniform', bias_initializer='zeros', activation='linear'))
sgd = SGD()
model.compile(optimizer=sgd,loss='mse',metrics=['mse'])
model.fit(x,y, batch_size=1, epochs=30, shuffle=False)
但它总是返回 nan 1/23 [>.......................] - ETA:0s - 损失:nan - mean_squared_error:nan 22/23 [============================>..] - ETA:0s - 损失:nan - mean_squared_error:nan 23/23 [==============================] - 0s 3ms/step - loss: nan - mean_squared_error: nan 30/30 纪元
我检查了 x 和 y,它们具有有效的浮点值。我在这里做错了什么?
【问题讨论】:
-
您使用了
linear激活。在某些时候,输出超过了float32可以容纳的,因此nan值
标签: python-3.x keras