【发布时间】:2023-04-05 04:10:01
【问题描述】:
在这里,我得到的数据是 [0 1 0 0] 或 [0 0 0 1],--- 我知道它告诉我 [0 1 0 0] 是 label2,[0 0 0 1] 是 label4,[1 0 0 0] 是 label1,[0 0 1 0] 是 label3。
import pickle
from keras.preprocessing.sequence import pad_sequences
MAX_SEQUENCE_LENGTH = 1000
MAX_NB_WORDS = 20000
with open ('textsdata', 'rb') as fp:
texts = pickle.load(fp)
tokenizer = Tokenizer(num_words=MAX_NB_WORDS)
tokenizer.fit_on_texts(texts)
sequences = tokenizer.texts_to_sequences(texts)
inputquery = ["Play some music will ya"]
sequences = tokenizer.texts_to_sequences(inputquery)
model = load_model('my_model.h5')
model.compile(loss='categorical_crossentropy', optimizer='rmsprop', metrics=['acc'])
print("sequences", sequences)
data = pad_sequences(sequences, maxlen=MAX_SEQUENCE_LENGTH)
classes = model.predict(data)
y_classes = classes.argmax(axis=-1)
print(y_classes)
我需要它的百分比,就像它确信它是 label1 为 0.67 softmax之前的值或者有足够把握告诉它的值是label1 or label2 or label3 or label4--
我需要它的百分比是其中任何一个或所有这些百分比,例如...
如果给定一个输入,输出是这样的
Class1 - 0.87
Class2 - 0.3
Class3 - 0.5
Class4 - 0.5 我怎样才能得到这种输出而不仅仅是 [1 0 0 0] 我应该在上面的代码旁边添加什么请告诉
【问题讨论】:
-
只打印包含未校准概率的类变量。
-
现在我只有两个类 0 或 1
-
“只打印你的类变量,其中包含未校准的概率”——我该怎么做才是准确的问题
标签: python keras conv-neural-network