gpt4 book ai didi

python - 我的模型似乎不起作用,因为准确率和损失均为 0

转载 作者:行者123 更新时间:2023-11-30 09:39:08 25 4
gpt4 key购买 nike

我尝试使用 keras 设计一个 LSTM 网络,但精度为 0.00,而损失值为 0.05,我编写的代码如下。

model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Flatten())
model.add(tf.keras.layers.Dense(128, activation = tf.nn.relu))
model.add(tf.keras.layers.Dense(128, activation = tf.nn.relu))
model.add(tf.keras.layers.Dense(1, activation = tf.nn.relu))



def percentage_difference(y_true, y_pred):
return K.mean(abs(y_pred/y_true - 1) * 100)



model.compile(optimizer='sgd',
loss='mse',
metrics = ['accuracy', percentage_difference])

model.fit(x_train, y_train.values, epochs = 10)


我的输入训练和测试数据集已使用 pandas 库导入。特征数量为 5,目标数量为 1。所有努力将不胜感激。

最佳答案

据我所知,您正在使用应用于回归问题的神经网络

回归是预测的任务continuous通过学习各种独立特征来获取值(value)观。

所以,在回归问题中我们没有metrics喜欢 accuracy因为这是classification supervised的分支学习。

相当于accuracy对于回归可以是决定系数R^2 Score .

from keras import backend as K

def coeff_determination(y_true, y_pred):
SS_res = K.sum(K.square( y_true-y_pred ))
SS_tot = K.sum(K.square( y_true - K.mean(y_true) ) )
return ( 1 - SS_res/(SS_tot + K.epsilon()) )

model.compile(optimizer='sgd',
loss='mse',
metrics = [coeff_determination])

关于python - 我的模型似乎不起作用,因为准确率和损失均为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60038871/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com