gpt4 book ai didi

tensorflow - 我应该将分类输出转换为整数吗?如何转换?

转载 作者:行者123 更新时间:2023-11-30 09:43:22 24 4
gpt4 key购买 nike

我正在使用神经网络对文本进行分类,训练数据的标签是0或1(即二元分类)。它在训练和评估过程中效果很好,但预测输出是浮点值而不是整数0或1。我怎样才能总是得到整数结果?我需要手动转换它们或更改网络参数吗?

model = Sequential()
e = Embedding(vocab_size, embedding_dim, weights=[embedding_matrix],
input_length=max_length, trainable=False)
model.add(e)
model.add(Dropout(0.2))
model.add(Flatten())
model.add(Dense(1, activation='sigmoid'))

# compile
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['acc'])
print(model.summary())

# fit
model.fit(padded_docs, labels, epochs=5, verbose=2)

# eval
loss, accuracy = model.evaluate(padded_docs, labels, verbose=0)
print('Accuracy: %f' % (accuracy*100))

# predict
result = model.predict(padded_docs_test, verbose=2)

最佳答案

您需要通过设置阈值来手动转换它们,例如:

threshold = 0.5

result = model.predict(padded_docs_test, verbose=2)
result = result > threshold

这将给出二进制预测。 Keras 在计算二进制精度时使用阈值 0.5。

关于tensorflow - 我应该将分类输出转换为整数吗?如何转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56073949/

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