テキスト読み上げに
ついての詳細
音声出力のサポートについて
スズキクンでは音声出力をサポートしています。幾つかの文章を用意しました。アクセント句境界推定=機械学習/文節,の両方で音声を聞いてみて下さい。下記のページでは,ピッチパタン,アクセント共に上級者用のものが表示されます(初級者用に変更しても,音声は上級者の韻律で出力されます)。無声化すべきモーラは網かけしています。
文章例1(句境界=機械学習/句境界=文節)
文章例2(句境界=機械学習/句境界=文節)
文章例3(句境界=機械学習/句境界=文節)
文章例4(句境界=機械学習/句境界=文節)
文章例5(句境界=機械学習/句境界=文節)
文章例6(句境界=機械学習/句境界=文節)
文章例7(句境界=機械学習/句境界=文節)
文章例8(句境界=機械学習/句境界=文節)
文章例9(句境界=機械学習/句境界=文節)
文章例10(句境界=機械学習/句境界=文節)
文章例11(句境界=機械学習/句境界=文節)
文章例12(句境界=機械学習/句境界=文節)
アクセント句境界推定(機械学習/文節)について
OJAD 講習会で説明していますが,アクセント制御(初めLHと上がってHが続き,やがてHLに落ちてその後はLが続く)が適用される単語系列をアクセント句と呼びます。日本語の場合,このアクセント句が発声のスタイルによって,長くなったり短くなったりします。
「機械学習によるアクセント句境界推定」とは,数千文に対して付与された,自然な話速で読み上げることを前提としたアクセント句境界データを使って,任意の文に対してアクセント句境界を推定するモードです。この場合,適切な語系列長のアクセント句が推定されますが,句境界位置推定およびアクセント核位置推定が,誤る可能性が生じます。一方,一番短いアクセント句は文節となります。文節境界は検出が容易です。そこで文節=アクセント句としたモードが「文節を利用したアクセント句」です。推定の誤りは機械学習利用時より僅かに下がりますが,文中のアクセント核数は最大化されます。
いずれのモードでも,推定結果に対してアクセント句を繋げて,フレーズを一つのアクセント句としたのが「ピッチパターン=初級者」「アクセント=初級者」モードです(但し,3モーラ以上の1型アクセント句があった場合は,それは残しています)。アクセント句を繋げる場合,原則,誤りは生じません。ですので初級者モードでは,機械学習なのか文節なのかは,あまり影響しません。
合成音声の自然性という意味では前者がお勧めです。活用や単語接続によるアクセント結合をしっかり学びたい方は,推定誤りが少ない後者がお勧めです。
機械学習と文節の違いを示す例(句境界=機械学習)
機械学習と文節の違いを示す例(句境界=文節)
話者と話速の制御について
スズキクンでは音声合成時に,話者,話速を指定できますが,これらは音声合成時の「デフォルト話者」「デフォルト話速」として機能しており,テキスト読み上げにおいて,途中で話者や話速を変えることができます。
即ち,入力するテキストに,話者や話速を変えるコマンドを埋め込むことができます。コマンド行は,"//"(全角でもよい)で始めます。
// [話者]
// [話速]
// [話者] [話速]
が可能です。なお,
// [話速] [話者]
はできません。以下,具体的に例を示します。
// M2
話者を M2 に変更。
// S
話速を S (slow) に変更。
// F2 F
話者を F2 に,話速を F(fast) に変更。なお,大文字/小文字,全角/半角は区別しません。
[話者] = F1, F2, M1, or M2
[話速] = F, N, or S
(それぞれ,fast, normal, slow を意味します)
先生と学生の会話の例(句境界=機械学習)
先生と学生の会話の例(句境界=文節)
スズキクンの弱点について
スズキクンは日々改良していますが,まだまだ弱点もあります。正直にそれを示します。
1. アクセント推定の誤りについて
1-1) 平仮名で表記された表現について
平仮名で表記されると単語境界の検出や,単語同定が困難となり(同音異義語の問題),その結果,意図しない単語として検出されてしまうことがあります。
平仮名と漢字で推定結果が異なる例(句境界=機械学習)
平仮名と漢字で推定結果が異なる例(句境界=文節)
1-2) 漢字が使われている表現について
漢字が使われていても,アクセント句境界の推定や,アクセント核位置の推定が誤ることがあります。特に多いのは,名詞が連続する複合名詞表現です。
漢字仮名混じり文で推定が誤る例(句境界=機械学習)
漢字仮名混じり文で推定が誤る例(句境界=文節)
1-3) 未知語のアクセントについて
形態素解析の結果,未知語として同定されたものは,アクセント付与の原則に従ってアクセント核位置を決めていますが,未知語として同定して欲しい表現(例えば留学生の名前)が未知語にならない場合も多いです。
未知語に対する正しい解析例と誤った解析例(句境界=機械学習)
未知語に対する正しい解析例と誤った解析例(句境界=文節)
2. 読み推定の誤りについて
2-1) 文脈に依存して読みが変わる語
スズキクンは,文脈に依存して読みが変わる単語が苦手です。これは音読み/訓読みの曖昧性ではありません。基本的には,複数の訓読みがある場合です。アクセント核位置推定の修正はピッチエディタで行なえますが,読みを修正する手段は提供しておりません。平仮名で入力して下さい。
複数の訓読みがある場合の例(句境界=機械学習)
複数の訓読みがある場合の例(句境界=文節)
2-2) 数詞+助数詞
新スズキクンでは,数表現はかなり読めるようになりました。記号(#$%&=~@+〒¥£)も同様,読めます。ですが,数詞に助数詞が続く表現(数詞+助数詞)はまだ誤ることがあります。助数詞は,読みやアクセントが文脈に依存する典型例です。一本,二本,三本・・・一日,二日,三日・・・などです。数詞+助数詞の読み方は基本的に,形態素解析が出力する読みを後処理することで対応していますが,精度は不十分です。
多様な数表現や記号表現の例(間違う場合あり。句境界=機械学習)
多様な数表現や記号表現の例(間違う場合あり。句境界=文節)
3. 意味の曖昧性とイントネーション制御について
木のしたで雨宿りをしている女性を眺めた。
木のしたで,雨宿りをしている女性を眺めた。
木のしたで雨宿りをしている女性を,眺めた。
「木のしたで」がどこに係るのかで,イントネーションパターンは少し異なると思われますが,各々の句がどこに係るのかを明示的に考慮して,イントネーションを決めている訳ではありません。適切に句読点を入れるなどして,これらの違いは表現して戴くことになります。
きれいじゃない。
これは「きれいであることを感嘆する」場合も,「きれいではないことを主張する」場合も使う表現です。両者の違いはイントネーションの違いです。スズキクンは上記の文がどちらに解釈されるべきなのか,を前後のコンテキストから推定する,などといったことは出来ません。文単位で(前後の文とは独立に)読み上げるだけです。なので,このような高度なイントネーション制御を目的としたテキストを入力することは推薦できません。「出来ない」ものとお考えください(ピッチエディターで修正することは可能です)。