模型:

voidful/albert_chinese_tiny

英文

albert_chinese_tiny

这是一个来自 brightmart/albert_zh project 的albert_chinese_tiny模型,其是由huggingface的 script 转换的albert_tiny_google_zh模型。

注意

支持AutoTokenizer。

由于albert_chinese_base模型没有使用sentencepiece,您需要调用BertTokenizer而不是AlbertTokenizer!我们可以通过在MaskedLM上运行示例来评估它。

由於albert_chinese_base模型没有使用sentencepiece,你必须调用BertTokenizer而不是AlbertTokenizer!我们可以通过在MaskedLM上运行示例来验证这个做法是否正确。

正当性验证

from transformers import AutoTokenizer, AlbertForMaskedLM
import torch
from torch.nn.functional import softmax

pretrained = 'voidful/albert_chinese_tiny'
tokenizer = AutoTokenizer.from_pretrained(pretrained)
model = AlbertForMaskedLM.from_pretrained(pretrained)

inputtext = "今天[MASK]情很好"

maskpos = tokenizer.encode(inputtext, add_special_tokens=True).index(103)

input_ids = torch.tensor(tokenizer.encode(inputtext, add_special_tokens=True)).unsqueeze(0)  # Batch size 1
outputs = model(input_ids, labels=input_ids)
loss, prediction_scores = outputs[:2]
logit_prob = softmax(prediction_scores[0, maskpos],dim=-1).data.tolist()
predicted_index = torch.argmax(prediction_scores[0, maskpos]).item()
predicted_token = tokenizer.convert_ids_to_tokens([predicted_index])[0]
print(predicted_token, logit_prob[predicted_index])

结果:感 0.40312355756759644