第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從 Keras Lstm 模型中獲取 n 個高概率輸出的精度

從 Keras Lstm 模型中獲取 n 個高概率輸出的精度

桃花長相依 2022-01-18 16:58:36
我有一個用于序列預測的 Lstm 模型,如下所示:def create_model(max_sequence_len, total_words):    input_len = max_sequence_len - 1    model = keras.models.Sequential()    model.add(layers.Embedding(total_words, 50, input_length=input_len))    model.add(layers.LSTM(50, input_shape=predictors[:1].shape))    model.add(layers.Dropout(0.2))    model.add(layers.Dense(activation='softmax', units = total_words))    model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'], lr=0.01)      return modelmodel_sb = create_model(max_sequence_len, total_words)history = model_sb.fit(X_train, y_train, epochs = 20 , shuffle = True, validation_split=0.3, )它運行良好,但我想從我的模型中獲取 2 個輸出,它們是 softmax 密集層中概率最大的輸出。為了帶走他們,我可以使用以下代碼:predicted = model_sb.predict(test_sequence, verbose=1) 然后通過這段代碼找到前n個高概率輸出:y_sum = predicted.sum(axis=0)ind = np.argpartition(y_sum, -n)[-n:]ind[np.argsort(y_sum[ind])]但是如果輸出是這些 n 輸出之一(帶有“或”條件),我需要知道我的模型的準確性是否有任何包可以幫助我?我的意思是我不想只用一個最大概率輸出來評估我的模型,我想通過 2 個高概率結果來評估準確性和損失。
查看完整描述

1 回答

?
達令說

TA貢獻1821條經(jīng)驗 獲得超6個贊

k = 2在您的情況下,這稱為 top-k 準確性。Keras 已經(jīng)實現(xiàn)了這種準確性:


from keras.metrics import top_k_categorical_accuracy


def my_acc(y_true, y_pred):

    return top_k_categorical_accuracy(y_true, y_pred, k=2)

然后將此自定義指標傳遞給您的模型:


model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=[my_acc]) 


查看完整回答
反對 回復 2022-01-18
  • 1 回答
  • 0 關注
  • 223 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號