/ Модель

Характеристики

Контекст
512 токенов
Параметры
412 млн
Лицензия
CC BY-SA 4.0
Архитектура
roberta · dense
Базовая модель
roberta-large-japanese-aozora-char
Опубликована
22 июн 2022

roberta-large-japanese-aozora-ud-head

Ответы на вопросыТекст → текст3 профессии

Японская RoBERTa-модель, которая определяет синтаксические вершины слов в задаче анализа зависимостей, оформленной как question answering.

161скачиваний за 30 дней0лайковвеса обновлены1 сен 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Koichi Yasuoka разработал японскую модель RoBERTa для определения синтаксической вершины слова в задаче dependency parsing. Она дообучена на базе KoichiYasuoka/roberta-large-japanese-aozora-char с использованием UD_Japanese-GSDLUW и представлена как задача question answering: в вопросе указывают слово, а в контексте модель находит его голову; маркер [MASK] в контексте помогает различать повторяющиеся слова. Модель содержит 412,3 млн параметров, использует веса PyTorch и принимает последовательности длиной до 512 токенов.

Модель предназначена для анализа зависимостей в японском тексте. Для лицензированного использования применяются условия CC BY-SA 4.0. Карточка описывает конкретный сценарий синтаксического разбора; сведений о других языках или задачах нет.

Сценарии применения

  • определение головы слова в японском предложении
  • анализ синтаксических зависимостей японского текста
  • разбор длинных единиц слов в японском корпусе

Ограничения

Описанный сценарий ограничен японским синтаксическим разбором и контекстом до 512 токенов; маркер [MASK] рекомендуется для неоднозначных повторяющихся слов. Карточка не описывает качество на других задачах или языках.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

roberta-large-japanese-aozora-ud-head

Model Description

This is a RoBERTa model pretrained on 青空文庫 for dependency-parsing (head-detection on long-unit-words) as question-answering, derived from roberta-large-japanese-aozora-char and UD_Japanese-GSDLUW. Use [MASK] inside context to avoid ambiguity when specifying a multiple-used word as question.

How to Use

from transformers import AutoTokenizer,AutoModelForQuestionAnswering
tokenizer=AutoTokenizer.from_pretrained("KoichiYasuoka/roberta-large-japanese-aozora-ud-head")
model=AutoModelForQuestionAnswering.from_pretrained("KoichiYasuoka/roberta-large-japanese-aozora-ud-head")
question="国語"
context="全学年にわたって小学校の国語の教科書に挿し絵が用いられている"
inputs=tokenizer(question,context,return_tensors="pt",return_offsets_mapping=True)
offsets=inputs.pop("offset_mapping").tolist()[0]
outputs=model(**inputs)
start,end=outputs.start_logits.argmax(),outputs.end_logits.argmax()
print(context[offsets[start][0]:offsets[end][-1]])

or (with ufal.chu-liu-edmonds)

class TransformersUD(object):
  def __init__(self,bert):
    import os
    from transformers import (AutoTokenizer,AutoModelForQuestionAnswering,
      AutoModelForTokenClassification,AutoConfig,TokenClassificationPipeline)
    self.tokenizer=AutoTokenizer.from_pretrained(bert)
    self.model=AutoModelForQuestionAnswering.from_pretrained(bert)
    x=AutoModelForTokenClassification.from_pretrained
    if os.path.isdir(bert):
      d,t=x(os.path.join(bert,"deprel")),x(os.path.join(bert,"tagger"))
    else:
      from transformers.utils import cached_file
      c=cached_file(bert,"deprel/config.json")
      d=x(os.path.dirname(cached_file(bert,"deprel/pytorch_model.bin")))
      s=cached_file(bert,"tagger/config.json")
      t=x(os.path.dirname(cached_file(bert,"tagger/pytorch_model.bin")))
    self.deprel=TokenClassificationPipeline(model=d,tokenizer=self.tokenizer,
      aggregation_strategy="simple")
    self.tagger=TokenClassificationPipeline(model=t,tokenizer=self.tokenizer)
  def __call__(self,text):
    import numpy,torch,ufal.chu_liu_edmonds
    w=[(t["start"],t["end"],t["entity_group"]) for t in self.deprel(text)]
    z,n={t["start"]:t["entity"].split("|") for t in self.tagger(text)},len(w)
    r,m=[text[s:e] for s,e,p in w],numpy.full((n+1,n+1),numpy.nan)
    v,c=self.tokenizer(r,add_special_tokens=False)["input_ids"],[]
    for i,t in enumerate(v):
      q=[self.tokenizer.cls_token_id]+t+[self.tokenizer.sep_token_id]
      c.append([q]+v[0:i]+[[self.tokenizer.mask_token_id]]+v[i+1:]+[[q[-1]]])
    b=[[len(sum(x[0:j+1],[])) for j in range(len(x))] for x in c]
    with torch.no_grad():
      d=self.model(input_ids=torch.tensor([sum(x,[]) for x in c]),
        token_type_ids=torch.tensor([[0]*x[0]+[1]*(x[-1]-x[0]) for x in b]))
    s,e=d.start_logits.tolist(),d.end_logits.tolist()
    for i in range(n):
      for j in range(n):
        m[i+1,0 if i==j else j+1]=s[i][b[i][j]]+e[i][b[i][j+1]-1]
    h=ufal.chu_liu_edmonds.chu_liu_edmonds(m)[0]
    if [0 for i in h if i==0]!=[0]:
      i=([p for s,e,p in w]+["root"]).index("root")
      j=i+1 if i<n else numpy.nanargmax(m[:,0])
      m[0:j,0]=m[j+1:,0]=numpy.nan
      h=ufal.chu_liu_edmonds.chu_liu_edmonds(m)[0]
    u="# text = "+text.replace("\n"," ")+"\n"
    for i,(s,e,p) in enumerate(w,1):
      p="root" if h[i]==0 else "dep" if p=="root" else p
      u+="\t".join([str(i),r[i-1],"_",z[s][0][2:],"_","|".join(z[s][1:]),
        str(h[i]),p,"_","_" if i<n and e<w[i][0] else "SpaceAfter=No"])+"\n"
    return u+"\n"

nlp=TransformersUD("KoichiYasuoka/roberta-large-japanese-aozora-ud-head")
print(nlp("全学年にわたって小学校の国語の教科書に挿し絵が用いられている"))

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · question-answering

Можно запустить

Подбираем GPU…

Класс архитектуры
RobertaForQuestionAnswering
Ревизия весов
f0c4c5b

0 моделей