Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
自力でTTSモデルを作った話
Search
Tatsuya Ando
February 22, 2025
Programming
0
210
自力でTTSモデルを作った話
オープンソースカンファレンス2025 Tokyo Springの東海道らぐLT大会で発表したスライドです
Tatsuya Ando
February 22, 2025
Tweet
Share
More Decks by Tatsuya Ando
See All by Tatsuya Ando
GitHub Copilotと和解せよ
zgock999
0
110
我ギガスクール構想ニ勝テリ
zgock999
0
100
GPUパススルーでVMからVRしてみよう
zgock999
0
2.6k
Other Decks in Programming
See All in Programming
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
230
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
980
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
4
970
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
47
31k
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
1.6k
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
1
690
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
810
エンジニア向け採用ピッチ資料
inusan
0
160
すべてのコンテキストを、 ユーザー価値に変える
applism118
2
870
童醫院敏捷轉型的實踐經驗
cclai999
0
190
DroidKnights 2025 - 다양한 스크롤 뷰에서의 영상 재생
gaeun5744
3
330
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Raft: Consensus for Rubyists
vanstee
140
7k
What's in a price? How to price your products and services
michaelherold
246
12k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
700
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
930
Transcript
自力で TTS(用モデル)を 作った話 東海道らぐ2025 Tokyo Spring
お前誰よ ▪ ・安藤と申します ▪ ・openSUSEユーザー会名古屋ドメイン ▪ ・体調の都合でしばらくお休みしてました
最近はAI関係でよく遊んでます ▪ ・画像生成AIで遊んだりとか ▪ ・ローカルでLLM建てたりとか ▪ ・ついに音声合成にも手を出して(今回はここの話)
Zonosという音声生成システム ▪ ・2月頭に登場したバリバリの新星 ▪ ・いわゆるワンショットTTS/ボイスクローナー ▪ ・同種のいろいろよりもかなり高いクローン性能
いいことばかりでもない ▪ ・出力がかなりガチャで良い時は良いが、ひどい時もある ▪ ・そもそも一部日本語を読ませると出力が破綻する ▪ ・ただ、それで見切ってしまうにはあまりにも惜しいクローン性能
よろしい、ならば ▪ ・まっとうに日本語が読める学習系TTSの素材吐かせればよくね?
Style-Bert-VITS2 ▪ ・最近人気の日本語TTS ▪ ・中国生まれのTTS、Bert-VITSの日本語特化fork ▪ ・元テキストの文脈から、ある程度感情分析しながら発音 ▪ ・読みのbackendにpyopenjtalkを使っており、読めない日本語があった
りとかはさすがにない ▪ ・学習させるには延べ10~30分ぐらいの音声素材が必要 ▪ ・↑この素材をZonosに作らせたらええやん!
ITAコーパス ▪ https://github.com/mmorise/ita-corpus ▪ ・日本語に登場する音素を網羅した読み上げ用テキスト ▪ ・100個の短い文章で構成されている ▪ ・テキストそのものはCC0
▪ ・Style-Bert-VITS2の学習元作成ではスタンダード ▪ ・Zonosにこれを読ませよう
ダメでした ▪ ・Zonosの日本語の音素化が不完全なため、半分ぐらいの文章で出力が 破綻する ▪ ・そもそもITAコーパスがTTS苛めといっても良いぐらい意地悪な内容 ▪ 「どーすんの、このお店。完ッ全に閑古鳥が鳴いちゃってるじゃない。」 ▪
「ひぇーん。びぇーん。ぴぇーん。」 ▪ 「ラーテャン。」 ▪ ↑↑テスト用データとしては極めて正しい
なんで破綻するのか ▪ ・Zonosの音素化バックエンドはespeak-ng ▪ ・かなーり昔からある多言語対応TTS ▪ ・日本語サポートを一応しているがめっちゃ不完全 ▪ ・不完全なサポートのまま日本語辞書は3年前から未更新
▪ ・「とても恐ろしい集団真理である...そう、誰もメンテをしていないのである」 ▪ ・対策...するか
いろいろ考えた、いろいろ試した ▪ ・backendをpyopenjtalkにする? →そもそもZonosがespeak-ngの不完全な音素で学習してるので pyopenjtalkが吐いた音素からうまく推論できない ▪ ・espeak-ngをメンテする? →そもそもZonosがespeak-ngの不完全な音素で学習(略) ▪
・espeak-ngが破綻した音素を吐いたら後処理で補正する? →そもそもZonosがespeak-ngの不(略)
超絶雑ハック注意 ▪ ・espeak-ngはカタカナしか読めないのでZonosではSudachiを使ってカ タカナ化して渡している ▪ ・この時点でespeak-ngが破綻するカタカナパターンをフィルタする (「ティ」を「チ」に、「ヴィ」を「ビ」にetc..) ▪ ・多少滑舌が怪しくなるけどエラーで破綻するよりはましやろがい!
というわけでパッチ当てた ▪ https://github.com/zgock999/Zonos-Ja ▪ ・日本語対策雑パッチ適用 ▪ ・ついでにうちのQuadro RTX5000で動くようにfp16で動くモードを追加。 (デフォルトはbfloat16なのでRTX30xx以降専用)
さあ、データ作るべ ▪ ・openGameArtからCC0の英語ボイスを調達 ▪ ・バッチ処理でITAコーパスを一括で出すpythonコードを記述 ▪ ・数回の生成ガチャで出来の良い音声を抽出 ▪ ・Style-Bert-VITS2で学習(RTX3060で3時間程度)
できますた ▪ Zonoko Japansese Voice for Style-Bert-VITS2 ▪ https://huggingface.co/zgock/style-bert-vits2-zonoko-cc0
▪ https://hub.aivis-project.com/aivm-models/7fc08a41-b64d-456d- 8b22-8e1284674775