/ Модель

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

Параметры
113 млн
Лицензия
cc-by-sa-3.0
Архитектура
dual_ctc · dense
Базовая модель
wavlm-base-plus
Библиотека
transformers
Опубликована
9 мар 2026

wavlm-base-plus-hiragana-ctc-v2

Распознавание речиАудио → текст3 профессии

Японская модель на WavLM распознаёт речь и выводит её в виде хираганы и фонем.

193скачиваний за 30 дней3лайкавеса обновлены9 мар 2026

Бенчмарки

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

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

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

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

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

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

Это японская модель распознавания речи на основе WavLM-Base-Plus, разработанная автором репозитория TylorShine. В ней используется энкодер WavLM и две CTC-головы: одна выводит хирагану, другая — фонемы. Модель содержит 113,3 млн параметров и рассчитана на аудио с частотой 16 кГц.

Модель предназначена для преобразования японской речи в последовательности хираганы и фонем, включая студийную запись, речь разных дикторов и шёпот. По описанию автора, отсутствие авторегрессионного декодера помогает избежать повторяющихся галлюцинаций, а вывод ограничен хираганой и фонемами. В тестах на JSUT-BASIC5000 и наборах JVS сообщаются ошибки KER от 3,97% до 11,6% и PER от 3,33% до 7,51% в зависимости от условий записи.

Репозиторий использует пользовательскую архитектуру DualCTCModel и библиотеку Transformers; для загрузки требуется разрешить выполнение кода из репозитория через trust_remote_code=True. Модель распространяется по лицензии CC BY-SA 3.0.

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

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

Ограничения

Вывод ограничен хираганой и фонемами, поэтому модель не выдаёт обычную запись японского текста с кандзи. Для загрузки требуется trust_remote_code=True; приведённые метрики относятся к конкретным тестовым наборам и условиям записи.

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

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

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

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

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

Открыть на Hugging Face

wavlm-base-plus-hiragana-ctc

WavLMをベースに、ひらがなと音素のデュアルCTC(Dual CTC)ヘッドを搭載した軽量な日本語音声認識(ASR)モデルです。
自己回帰デコーダを持たないため繰り返すハルシネーションを起こさず、ひらがな(および音素)のみを安定して出力します。

前バージョンの wavlm-base-plus-hiragana-ctc から、音素CTCとかなCTCのHead両方をMLPに変更しています。

このモデルはカスタムアーキテクチャを採用しており、Hugging Faceの AutoModel (trust_remote_code=True) を使用して簡単に読み込むことができます。

🚀 元モデルからの変更点

オリジナルである japanese-wav2vec2-large-hiragana-ctc から以下の点を変更しています。

  1. ベースモデルを WavLM に変更 よりノイズに強く、幅広い音声表現を獲得できる WavLM-Base-Plus をエンコーダに採用しました。
  2. Head位置の変更 WavLM: Large-Scale Self-Supervised Pre-Training for Full Stack Speech Processing のデータを参考に、音素CTCとかなCTCのHead位置を変更しました。
  3. Hugging Face AutoModel ネイティブ対応 カスタムモジュール (modeling_dual_ctc.py) を同梱したため、ローカルのチェックポイントファイルを意識することなく、transformers から直接モデルをロードして推論できるようになりました。

🏗 Architecture

Audio (16kHz) → WavLM Encoder
                  ├── Intermediate Layer 9 → Kana CTC Head (84 classes)
                  └── Intermediate Layer 11 → Phoneme CTC Head (44 classes)

💻 Usage

本モデルはカスタムコード(DualCTCModel)を使用しているため、ロード時に trust_remote_code=True を指定する必要があります。

インストール

pip install torch torchaudio transformers

推論コードの例

import torch
import torchaudio
from transformers import AutoFeatureExtractor, AutoModel, PreTrainedTokenizerFast

model_id = "TylorShine/wavlm-base-plus-hiragana-ctc"

# 特徴量抽出器とモデルのロード
processor = AutoFeatureExtractor.from_pretrained(model_id)
model = AutoModel.from_pretrained(model_id, trust_remote_code=True)
model.eval()

# トークナイザーのロード
kana_tokenizer = PreTrainedTokenizerFast.from_pretrained(model_id, subfolder="kana_tokenizer")
phoneme_tokenizer = PreTrainedTokenizerFast.from_pretrained(model_id, subfolder="phoneme_tokenizer")

# 音声ファイルの読み込み (16kHzにリサンプリング)
waveform, sample_rate = torchaudio.load("nihongo_no_onsei.wav")
if sample_rate != 16000:
    resampler = torchaudio.transforms.Resample(orig_freq=sample_rate, new_freq=16000)
    waveform = resampler(waveform)

# 前処理
inputs = processor(waveform.squeeze().numpy(), sampling_rate=16000, return_tensors="pt")

# 推論
with torch.no_grad():
    outputs = model(**inputs)

# ひらがなと音素のロジットを取得
kana_logits = outputs["kana_logits"]
phoneme_logits = outputs["phoneme_logits"]

# Greedy Decoding
kana_preds = torch.argmax(kana_logits, dim=-1).tolist()
phoneme_preds = torch.argmax(phoneme_logits, dim=-1).tolist()

# print("Kana Token IDs:", kana_preds[0])
# print("Phoneme Token IDs:", phoneme_preds[0])

# `model.ctc_decode()` でトークンをテキストに変換
kana_text = model.ctc_decode(kana_preds, kana_tokenizer, is_kana=True)
phoneme_text = model.ctc_decode(phoneme_preds, phoneme_tokenizer, is_kana=False)

print("Kana:", kana_text)
print("Phoneme:", phoneme_text)

📊 Model Details & Evaluation

PropertyValue
ArchitectureWavLM + Dual CTC (Kana & Phoneme)
PrecisionBF16
Kana vocab84 tokens
Phoneme vocab44 tokens
DatasetConditionKERPER
JSUT-BASIC5000スタジオ収録、単一話者3.97%3.33%
JVS pallarel100100話者5.46%4.35%
JVS whisper10100話者、ささやき声11.6%7.51%
ReazonSpeech (20k samples from medium subset)TV音声17.5%14.7%

📜 License

Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) license. See LICENSE for details.
(CC BY-SA 3.0 ライセンスはWavLMから継承しています。)

🎓️ References / Acknowledgements

本モデルのベースとさせていただいたプロジェクト(Wav2Vec 2.0版)に関する詳細は、以下をご参照ください。

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

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

GPU в ailist

Универсальный рантайм · transformers

Нельзя запустить

Модели нужен код из репозитория; автор пока не в списке доверенных организаций.

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

0 моделей