Keras深度学习准确率100%问题

2024-04-27 01:16:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我要和凯拉斯一起看电影分级。你知道吗

文件被标记为[电影评论,情感]。你知道吗

 # MLP for the IMDB problem
import numpy
from keras.datasets import imdb
from keras.models import Sequential
from keras.layers import Dense
from keras.layers import Flatten
from keras.layers.embeddings import Embedding
from keras.preprocessing import sequence
# load the dataset but only keep the top n words, zero the rest
top_words = 5000
# (X_train, y_train), (X_test, y_test) = imdb.load_data(num_words=top_words)
X_train = train_result
y_train = train_label
X_test = test_result
y_test = test_label

max_words = 500
X_train = sequence.pad_sequences(X_train, maxlen=max_words)
X_test = sequence.pad_sequences(X_test, maxlen=max_words)
# create the model
model = Sequential()
model.add(Embedding(top_words, 32, input_length=max_words))
model.add(Flatten())
model.add(Dense(250, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
model.summary()
# Fit the model
hist = model.fit(X_train, y_train, validation_data=(X_test, y_test), epochs=10, batch_size=128, verbose=1)
# Final evaluation of the model
scores = model.evaluate(X_test, y_test, verbose=1)
print("Accuracy: %.2f%%" % (scores[1]*100))


%matplotlib inline
import matplotlib.pyplot as plt

fig, loss_ax = plt.subplots()

acc_ax = loss_ax.twinx()

loss_ax.plot(hist.history['loss'], 'y', label='train loss')
loss_ax.plot(hist.history['val_loss'], 'r', label='val loss')

acc_ax.plot(hist.history['acc'], 'b', label='train acc')
acc_ax.plot(hist.history['val_acc'], 'g', label='val acc')

loss_ax.set_xlabel('epoch')
loss_ax.set_ylabel('loss')
acc_ax.set_ylabel('accuray')

loss_ax.legend(loc='upper left')
acc_ax.legend(loc='lower left')

plt.show()

OUTPUT = always Accuracy 100%

作为一种基本的深度学习模式, 如果您启用imdb注解,它将正常输出。你知道吗

我不认为文本预处理过程是错误的。你知道吗

我下载了imdb.csv文件直接归档,处理,打印,显示相同的图形

IMDB_GraphMYData_Graph(非常奇怪的MYData图..)

作为参考,my Csv file

我把恐怖片分为恐怖片和野蛮片。你知道吗

[残忍,震惊]我把它分类成标签。你知道吗

我们能坦率地解决这个问题吗?我一直在怀疑。你知道吗

我不知道是数据本身错了还是代码错了。你知道吗


你知道怎么了吗?你知道吗

为什么总是显示100%的准确度?你知道吗


Tags: thefromtestimportmodeltoptrainax