如何计算新闻类别预测的得分?

问题描述 投票:0回答:1

我具有根据火车数据预测类别的功能。我还要计算预测类别的得分,即为什么将新闻分配到特定类别,例如政治,世界新闻或体育等。

我正在复制功能以供参考

import spacy
nlp = spacy.load('en')

def predict_category(model, head, desc):
    model.eval()
    head = head.lower()
    desc = desc.lower()
    tokenized_head = [tok.text for tok in nlp.tokenizer(head)]
    tokenized_desc = [tok.text for tok in nlp.tokenizer(desc)]
    indexed_head = [TEXT.vocab.stoi[t] for t in tokenized_head]
    indexed_desc = [TEXT.vocab.stoi[t] for t in tokenized_desc]
    tensor_head = torch.LongTensor(indexed_head).to(device)
    tensor_desc = torch.LongTensor(indexed_desc).to(device)
    tensor_head = tensor_head.unsqueeze(1)
    tensor_desc = tensor_desc.unsqueeze(1)
    prediction = model(tensor_head, tensor_desc)
    max_pred = prediction.argmax(dim=1)
    return max_pred.item()

pred = predict_category(model, "Volkswagen Finance picks up 25 per cent stake in Kuwy Technology", "The partners will also offer finance, insurance and warranty products for Volkswagen group customers on Kuwy platform.")
print(f'Predicted category is: {pred} = {LABEL.vocab.itos[pred]}')
machine-learning deep-learning kaggle
1个回答
0
投票

我不习惯使用Pytorch,但是在scikit中学习时,有可能在进行预测时获得实例属于每个类的概率……也许您可以在Pytorch上实现相同的效果

© www.soinside.com 2019 - 2024. All rights reserved.