【问题标题】:My keras neural network model is giving me accuracy 0.0000e+00我的 keras 神经网络模型给了我 0.0000e+00 的准确率
【发布时间】:2020-08-22 22:56:06
【问题描述】:

我正在尝试编写一个简单的神经网络,以在给定与每个国家/地区相关的多个因素的情况下预测电晕病例总数。 但是,当使用我创建的数据集时,精度为 0.0000e+00。尽管我在网上下载的有关房价的不同数据集上尝试了此代码,但准确率高达 60%。 两个数据集大约有 200 行。

下面是我的代码。

import pandas as pd
df = pd.read_excel (r'Dataset2.xlsx', sheet_name='class 2')
df.head()

dataset = df.values
X = dataset[:,1:7]
Y = dataset[:,7]
from sklearn import preprocessing

min_max_scaler = preprocessing.MinMaxScaler()
X_scale = min_max_scaler.fit_transform(X)
from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split( X, Y, test_size=0.1, random_state=4)

from keras.models import Sequential
from keras.layers import Dense
model = Sequential([    Dense(32, activation='relu', input_shape=(6,)),    Dense(32, activation='relu'),    Dense(1, activation='sigmoid'),])

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

history = model.fit(X_train, y_train, epochs=25, batch_size=32,  verbose=1, validation_data=(X_test,y_test))

这里还有一个screenshot of my dataset

【问题讨论】:

  • 嗨,在我看来,您正在尝试在这里解决回归问题。尝试将您的输出激活从 sigmoid 更改为 linear 并尝试一下。没有足够的详细信息来说明您尝试对网络进行的操作。你能详细说明一下吗?

标签: python-3.x keras neural-network


【解决方案1】:

准确度是分类的指标,而根据您的描述,您的任务是回归。使用适合回归任务的不同指标,例如 MAE 或 MSE。

【讨论】:

  • 非常感谢。我使用了 mse,我得到了一个 val_mse = 6.4e-04。这是太低了还是可以接受?
  • MSE(与准确度不同)应尽可能低,理想情况下为零。您的价值似乎不错,但总的来说取决于任务。
猜你喜欢
  • 2018-04-23
  • 1970-01-01
  • 2020-07-29
  • 2019-06-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-13
相关资源
最近更新 更多