我正在尝试使用keras和电影镜头1m数据集制作电影推荐系统,但是每次运行模型时,评估(保存模型后)都会得到不同的结果,这是第一次发生这种情况,在此之前,我已经使用嵌入层制作了一些模型,它们运行良好,有人可以向我解释为什么会这样吗?谢谢=)
train, test = train_test_split(df, test_size=0.2, random_state=42)
print(test.head(10))
train_rating = train.rating
test_rating = test.rating
train.drop(['rating'], axis=1, inplace=True)
test.drop(['rating'], axis=1, inplace=True)
# constructing the model
model = Sequential()
model.add(Dense(64, input_shape=(4,), activation='linear'))
model.add(Dense(32, activation='linear'))
model.add(Dense(16, activation='linear'))
model.add(Dense(8, activation='linear'))
model.add(Dense(1))
model.compile(optimizer=optimizers.Adam(), loss='mean_absolute_error')
#Training the predicting
if(os.path.exists('reg.h5')):
load_model('reg.h5')
else:
# model.fit([train.age, train.gender, train.occupation, train.genre], train_rating)
model.fit(train, train_rating, epochs=10, validation_split=0.2)
model.save('reg.h5')
effeciency = model.evaluate(test, test_rating)
print(effeciency)
predictions = model.predict(test.head(10))
for i in range(0, 10):
print(predictions[i], test_rating.iloc[i])