ayousanz commited on
Commit
5f35236
·
verified ·
1 Parent(s): 2973145

Upload folder using huggingface_hub

Browse files
Files changed (3) hide show
  1. README.md +44 -13
  2. config.json +21 -211
  3. model.ckpt +2 -2
README.md CHANGED
@@ -2,10 +2,16 @@
2
  license: cc-by-sa-4.0
3
  language:
4
  - ja
 
 
 
 
 
5
  ---
6
- # Piper Plus Base Model (Japanese)
7
 
8
- 日本語TTS用の事前学習済みベースモデルです。このモデルは単一話者のファインチューニング用に最適化されています。
 
 
9
 
10
  ## Model Details
11
 
@@ -17,14 +23,21 @@ language:
17
  | 品質 | medium |
18
  | 音素タイプ | OpenJTalk |
19
  | 話者数 | 0 (単一話者用) |
 
 
 
20
 
21
- ## 使用方法
22
 
23
- ### ファインチューニング
 
 
 
 
24
 
25
- このベースモデルを使用して、新しい話者の音声でファインチューニングできます。
26
 
27
- #### 1. データセットの前処理
28
 
29
  ```bash
30
  uv run python -m piper_train.preprocess \
@@ -37,15 +50,26 @@ uv run python -m piper_train.preprocess \
37
  --phoneme-type openjtalk
38
  ```
39
 
40
- #### 2. ファインチューニングの実行
 
 
 
 
 
 
 
 
 
 
 
41
 
42
  ```bash
43
  uv run python -m piper_train \
44
- --dataset-dir /path/to/dataset \
45
  --accelerator gpu \
46
  --devices 1 \
47
  --precision 16-mixed \
48
- --max_epochs 50 \
49
  --batch-size 32 \
50
  --checkpoint-epochs 1 \
51
  --base_lr 1e-4 \
@@ -54,7 +78,7 @@ uv run python -m piper_train \
54
  --default_root_dir /path/to/output
55
  ```
56
 
57
- ### 推奨パラメータ
58
 
59
  | パラメータ | 値 | 説明 |
60
  |-----------|-----|------|
@@ -63,13 +87,20 @@ uv run python -m piper_train \
63
  | `--max_epochs` | 50-100 | 少量データの場合は短め |
64
  | `--batch-size` | 32 | GPUメモリに応じて調整 |
65
 
 
 
 
 
 
 
 
66
  ## Citation
67
 
68
  ```bibtex
69
  @software{piper_plus,
70
- title = {Piper Plus: Japanese TTS with VITS},
71
  author = {ayousanz},
72
  year = {2024},
73
- url = {https://github.com/ayousanz/piper}
74
  }
75
- ```
 
2
  license: cc-by-sa-4.0
3
  language:
4
  - ja
5
+ tags:
6
+ - tts
7
+ - vits
8
+ - japanese
9
+ - piper
10
  ---
 
11
 
12
+ # Piper Plus Base Model (Japanese) with Prosody Features
13
+
14
+ 日本語TTS用の事前学習済みベースモデルです。prosody_features (A1/A2/A3) に対応しており、自然なアクセント・イントネーションを学習できます。
15
 
16
  ## Model Details
17
 
 
23
  | 品質 | medium |
24
  | 音素タイプ | OpenJTalk |
25
  | 話者数 | 0 (単一話者用) |
26
+ | **prosody_dim** | **16** |
27
+
28
+ ## Prosody Features
29
 
30
+ このモデルはA1/A2/A3プロソディ特徴量をサポートしています:
31
 
32
+ | フィールド | 意味 | 値の例 |
33
+ |-----------|------|--------|
34
+ | A1 | アクセント核からの相対位置 | -4, -3, ..., 0, 1, ... |
35
+ | A2 | アクセント句内のモーラ位置 | 1, 2, 3, ... |
36
+ | A3 | アクセント句内の総モーラ数 | 1-10+ |
37
 
38
+ ## Usage
39
 
40
+ ### Step 1: Dataset Preprocessing
41
 
42
  ```bash
43
  uv run python -m piper_train.preprocess \
 
50
  --phoneme-type openjtalk
51
  ```
52
 
53
+ ### Step 2: Add Prosody Features (Recommended)
54
+
55
+ 既存のデータセットにprosody_featuresを追加します:
56
+
57
+ ```bash
58
+ uv run python add_prosody_features.py \
59
+ --input-dataset /path/to/dataset/dataset.jsonl \
60
+ --output-dir /path/to/dataset-prosody \
61
+ --workers 4
62
+ ```
63
+
64
+ ### Step 3: Fine-tuning
65
 
66
  ```bash
67
  uv run python -m piper_train \
68
+ --dataset-dir /path/to/dataset-prosody \
69
  --accelerator gpu \
70
  --devices 1 \
71
  --precision 16-mixed \
72
+ --max_epochs 100 \
73
  --batch-size 32 \
74
  --checkpoint-epochs 1 \
75
  --base_lr 1e-4 \
 
78
  --default_root_dir /path/to/output
79
  ```
80
 
81
+ ## Recommended Parameters
82
 
83
  | パラメータ | 値 | 説明 |
84
  |-----------|-----|------|
 
87
  | `--max_epochs` | 50-100 | 少量データの場合は短め |
88
  | `--batch-size` | 32 | GPUメモリに応じて調整 |
89
 
90
+ ## Origin
91
+
92
+ このベースモデルは20話者prosodyモデル(200エポック学習)から変換されました:
93
+ - 元データセット: moe-speech-20speakers-prosody
94
+ - 話者埋め込み層を削除
95
+ - prosody_dim=16を保持
96
+
97
  ## Citation
98
 
99
  ```bibtex
100
  @software{piper_plus,
101
+ title = {Piper Plus: Japanese TTS with VITS and Prosody Features},
102
  author = {ayousanz},
103
  year = {2024},
104
+ url = {https://github.com/ayutaz/piper-plus}
105
  }
106
+ ```
config.json CHANGED
@@ -1,5 +1,5 @@
1
  {
2
- "dataset": "moe-speech-50speakers",
3
  "audio": {
4
  "sample_rate": 22050,
5
  "quality": "medium"
@@ -18,218 +18,28 @@
18
  "phoneme_type": "openjtalk",
19
  "phoneme_map": {},
20
  "phoneme_id_map": {
21
- "_": [
22
- 0
23
- ],
24
- "^": [
25
- 1
26
- ],
27
- "$": [
28
- 2
29
- ],
30
- "?": [
31
- 3
32
- ],
33
- "#": [
34
- 4
35
- ],
36
- "[": [
37
- 5
38
- ],
39
- "]": [
40
- 6
41
- ],
42
- "a": [
43
- 7
44
- ],
45
- "i": [
46
- 8
47
- ],
48
- "u": [
49
- 9
50
- ],
51
- "e": [
52
- 10
53
- ],
54
- "o": [
55
- 11
56
- ],
57
- "A": [
58
- 12
59
- ],
60
- "I": [
61
- 13
62
- ],
63
- "U": [
64
- 14
65
- ],
66
- "E": [
67
- 15
68
- ],
69
- "O": [
70
- 16
71
- ],
72
- "": [
73
- 17
74
- ],
75
- "": [
76
- 18
77
- ],
78
- "": [
79
- 19
80
- ],
81
- "": [
82
- 20
83
- ],
84
- "": [
85
- 21
86
- ],
87
- "N": [
88
- 22
89
- ],
90
- "": [
91
- 23
92
- ],
93
- "q": [
94
- 24
95
- ],
96
- "k": [
97
- 25
98
- ],
99
- "": [
100
- 26
101
- ],
102
- "": [
103
- 27
104
- ],
105
- "g": [
106
- 28
107
- ],
108
- "": [
109
- 29
110
- ],
111
- "": [
112
- 30
113
- ],
114
- "t": [
115
- 31
116
- ],
117
- "": [
118
- 32
119
- ],
120
- "d": [
121
- 33
122
- ],
123
- "": [
124
- 34
125
- ],
126
- "p": [
127
- 35
128
- ],
129
- "": [
130
- 36
131
- ],
132
- "b": [
133
- 37
134
- ],
135
- "": [
136
- 38
137
- ],
138
- "": [
139
- 39
140
- ],
141
- "": [
142
- 40
143
- ],
144
- "s": [
145
- 41
146
- ],
147
- "": [
148
- 42
149
- ],
150
- "z": [
151
- 43
152
- ],
153
- "j": [
154
- 44
155
- ],
156
- "": [
157
- 45
158
- ],
159
- "f": [
160
- 46
161
- ],
162
- "h": [
163
- 47
164
- ],
165
- "": [
166
- 48
167
- ],
168
- "v": [
169
- 49
170
- ],
171
- "n": [
172
- 50
173
- ],
174
- "": [
175
- 51
176
- ],
177
- "m": [
178
- 52
179
- ],
180
- "": [
181
- 53
182
- ],
183
- "r": [
184
- 54
185
- ],
186
- "": [
187
- 55
188
- ],
189
- "w": [
190
- 56
191
- ],
192
- "y": [
193
- 57
194
- ]
195
  },
196
  "num_symbols": 58,
197
  "num_speakers": 0,
198
  "piper_version": "1.4.0",
199
- "prosody_num_symbols": 11,
200
- "prosody_id_map": {
201
- "0": [
202
- 0
203
- ],
204
- "1": [
205
- 1
206
- ],
207
- "2": [
208
- 2
209
- ],
210
- "3": [
211
- 3
212
- ],
213
- "4": [
214
- 4
215
- ],
216
- "5": [
217
- 5
218
- ],
219
- "6": [
220
- 6
221
- ],
222
- "7": [
223
- 7
224
- ],
225
- "8": [
226
- 8
227
- ],
228
- "9": [
229
- 9
230
- ],
231
- "10": [
232
- 10
233
- ]
234
  }
235
- }
 
1
  {
2
+ "dataset": "moe-speech-20speakers-prosody",
3
  "audio": {
4
  "sample_rate": 22050,
5
  "quality": "medium"
 
18
  "phoneme_type": "openjtalk",
19
  "phoneme_map": {},
20
  "phoneme_id_map": {
21
+ "_": [0], "^": [1], "$": [2], "?": [3], "#": [4],
22
+ "[": [5], "]": [6],
23
+ "a": [7], "i": [8], "u": [9], "e": [10], "o": [11],
24
+ "A": [12], "I": [13], "U": [14], "E": [15], "O": [16],
25
+ "ç": [17], "ɕ": [18], "ɯ": [19], "ɴ": [20], "ɾ": [21],
26
+ "N": [22], "ʑ": [23], "q": [24], "k": [25],
27
+ "": [26], "ɡʲ": [27], "g": [28], "ɡ": [29], "dʑ": [30],
28
+ "t": [31], "tɕ": [32], "d": [33], "dʲ": [34],
29
+ "p": [35], "pʲ": [36], "b": [37], "bʲ": [38],
30
+ "": [39], "çː": [40], "s": [41], "ʃ": [42],
31
+ "z": [43], "j": [44], "ɲ": [45],
32
+ "f": [46], "h": [47], "hʲ": [48], "v": [49],
33
+ "n": [50], "nʲ": [51], "m": [52], "mʲ": [53],
34
+ "r": [54], "ɽ": [55], "w": [56], "y": [57]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
35
  },
36
  "num_symbols": 58,
37
  "num_speakers": 0,
38
  "piper_version": "1.4.0",
39
+ "prosody_dim": 16,
40
+ "prosody_features": {
41
+ "a1": "アクセント核からの相対位置",
42
+ "a2": "アクセント句内のモーラ位置",
43
+ "a3": "アクセント句内の総モーラ数"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
44
  }
45
+ }
model.ckpt CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:a4ff8c5b35bf37a190fb039fc7e8ed4d209acc2f3fbc75776bdbabd578d32a64
3
- size 288896406
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:18bb25f0c4def313c7432f69efa763acb415c370c447f84f44e063e885f77c9c
3
+ size 289775502