有没有办法限制Keras模型的预测类别

时间:2020-07-03 12:52:05

标签: python keras prediction

我创建了一个简单的Keras神经网络,该神经网络在两个数据集(组合了两组类别(一组19个类别和一组具有54个类别))上进行了训练,我想限制这些预测只能将模型定义为一组类(即仅来自测试数据集的类(54个类))。

这是我的(相关)代码:

network = Sequential([])
network.add(Dense(units, activation='relu', input_shape=(768*3,)))
network.add(Dropout(dropout))
network.add(Dense(len(rels), activation='softmax'))
optimizer = Adam(lr=learning_rate)
network.compile(optimizer=optimizer,
                loss='categorical_crossentropy',
                metrics=['accuracy'])

trainX, valX, trainy, valy = train_test_split(trainX, trainy, random_state=2020, test_size=0.1)
    
history = network.fit(trainX, trainy, validation_data=(valX, valy), epochs=epochs, batch_size=batch_no, verbose=0)

y_pred = network.predict(testX, verbose=0)

我希望y_pred而不是对所有73个类别都具有概率,而对前19个类别的标准概率为0,对所有其他类别的预测概率则为

我希望能够获得此修改后模型的测试准确性和测试损失。

我将如何去做?

0 个答案:

没有答案
相关问题