パスワードを忘れた? アカウント作成
15086369 journal
人工知能

yasuokaの日記: GuwenBERT-baseは「孟子[MASK]梁惠王」の[MASK]に何を埋めてくるのか

日記 by yasuoka

Transformersのモデルページに、古典中国語モデルGuwenBERT-baseが収録されているのを見つけたので、ちょっとだけGoogle Colaboratoryで試してみた。

!pip install transformers
import torch
from transformers import AutoTokenizer,AutoModelForMaskedLM
tokenizer=AutoTokenizer.from_pretrained("ethanyt/guwenbert-base")
model=AutoModelForMaskedLM.from_pretrained("ethanyt/guwenbert-base")
tokens=tokenizer.tokenize("孟子[MASK]梁惠王")
print(tokens)
mask=tokens.index("[MASK]")
ids=torch.tensor([tokenizer.convert_tokens_to_ids(tokens)])
with torch.no_grad():
  outputs=model(ids)
  pred=outputs[0][0,mask].topk(5)
for i,t in enumerate(tokenizer.convert_ids_to_tokens(pred.indices)):
  tokens[mask]=t
  print(i+1,tokens)

「孟子[MASK]梁惠王」という例文に対し、私(安岡孝一)の手元では、以下の結果が得られた。

['孟', '子', '[MASK]', '梁', '惠', '王']
1 ['孟', '子', '见', '梁', '惠', '王']
2 ['孟', '子', '曰', '梁', '惠', '王']
3 ['孟', '子', '谓', '梁', '惠', '王']
4 ['孟', '子', '说', '梁', '惠', '王']
5 ['孟', '子', '对', '梁', '惠', '王']

いきなり「孟子见梁惠王」を当ててくるとは、なかなか素晴らしい。ただ、古典中国語なのに簡化字で、しかも1文字ずつトークナイズしてるようだ。さて、どうしたものかな…。

この議論は、yasuoka (21275)によって「 ログインユーザだけ」として作成されている。 ログインしてから来てね。
typodupeerror

私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike

読み込み中...