当我运行我的线性回归ANN(预测加州房价)时,我得到了大量的损失数字和0精度。有人能为这类问题提供更好的激活函数吗
https://drive.google.com/file/d/1dcUuTVVDGwxHn2O5qqJk0wgiEf83MslN/view?usp=sharing
我试过很多次从0.1到10的损失率迭代,试过2层用3个中子,试过把epochs增加到10K,试过softmax
from keras.models import Sequential
from keras.layers import Dense
from keras.optimizers import Adam
model = Sequential()
model.add(Dense(2, input_shape=(6,), activation='relu'))
model.add(Dense(3, activation='relu'))
model.add(Dense(2, activation='softmax'))
model.add(Dense(1, activation='linear'))
model.compile(Adam(lr=0.5),
loss='mean_squared_error',
metrics=['accuracy'])
model.fit(X_train, y_train, epochs=10000, verbose=2, validation_split=0.4)
纪元60/10000 -1s-损失:48621637708.0739-会计科目:0.0000e+00-价值损失:49522900789.2154-价值会计科目:0.0000e+00
你在这里错过了一些关于深度学习的基本知识。准确度是用于分类的度量标准,但您要做的是回归,即不是预测类标签而是连续值。在深度学习的世界里有两件不同的事情。因此,作为输出层的softmax对您帮助不大。在这种情况下,您的度量也应该是MSE
高于1.0的学习率也很少见,Adam的默认值是0.001。一般来说,如果您不确定学习率,请使用默认值。所以也许错误就在那里,试着降低学习速度,再给它一次机会
Softmax作为中间层的激活也是不寻常的,我建议用ReLU代替它。你使用的神经元数量也非常少,再增加一些也会有所帮助
相关问题 更多 >
编程相关推荐