machine-learning - 如何计算新闻类别预测的分数?
问题描述
我有根据火车数据预测类别的功能。连同我想计算预测类别的分数,即为什么将新闻分配到特定类别,如政治、世界新闻或体育等。
我正在复制想法的功能
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]}')
解决方案
我不习惯 Pytorch,但是在 scikit learn 中,当您对其进行预测时,可以获得实例属于每个类的概率......也许您可以在 Pytorch 上实现同样的效果
推荐阅读
- haskell - 如何进入列表并显示其元素和订单位置(HASKELL)?
- android - 地理围栏如何比定期检查位置更准确?
- java - 使用 MockMvcBuilders.standaloneSetup 时模拟 @Resource
- ios - 当更新我的 UI 以响应异步操作时,我应该在哪里调用 DispatchQueue?
- postgresql - JSONB 索引是否比本机索引慢?
- http - 为获取的文件设置 MIME 类型
- python - 带有应用程序的 Django
- audiounit - OSX 14:识别莫哈韦麦克风缺少权限
- django - Django 2:类的未解析属性引用“get_queryset”
- macos - nodemon:找不到命令