--- title: "読み上げ用のふりがな、実際どれくらい正しい? 話し言葉5,000文でVOICEVOXと比べた" description: "自作のふりがなライブラリ ja-furigana が、チャットのような話し言葉をどれくらい正しく読めるのか。素のVOICEVOXと同じ5,000文を読ませて数えました。漢字の読みの推定正解率は96.3%対93.5%。差がつくのはどこで、どこで負けているのかまで書きます。" url: https://ryuuneko.com/blog/furigana-reading-accuracy published: 2026-09-14 15:19:30.318695 updated: 2026-09-14 15:19:30.318695 --- 読み上げボットを作っていると、ずっと気になっていることがあります。 **「で、実際どれくらい正しく読めているの?」** コメントを音声で読み上げるとき、いちばん困るのは声の質ではなく、**読み間違い**です。「身体(からだ)」を「しんたい」、「草(くさ)」を「そう」と読まれると、内容が合っていても聞いている側は一瞬止まります。 そこで、自分で作っているふりがなライブラリ **ja-furigana** が、実際の話し言葉をどれくらい正しく読めるのかを測りました。比べる相手は、読み上げでよく使われる **VOICEVOX** です。 先に結論を書くと、こうなりました。 | | 文単位の推定完全正解率 | |---|---| | **ja-furigana** | **96.3%** | | 素の VOICEVOX 0.25.2 | **93.5%** | (どちらも推定値です。なぜ推定になるのかは後で書きます) この記事は、この数字をどうやって出したか、そして**どこで差がついて、どこで負けているのか**の話です。 --- ## 何と何を比べたのか **ja-furigana** は、日本語の文にふりがな(読み)を振るライブラリです。文を単語に区切る仕組みの上に、辞書と「こういう並びならこう読む」というルールを重ねて読みを決めています。 狙っている用途は **話し言葉** です。チャットや会話に出てくる、ネットの言い回しや作品の固有名詞まで正しく読んで、それを読み上げソフトに渡す。そのための前段です。Web から使える形は [ふりがなAPI](/blog/furigana-api) として公開していて、読み上げボットの裏側でも動いています(読み上げの仕組み全体は [読み上げBotの「声が遅い・途中で止まる」を潰した話](/blog/zunda-yomiage-backbone) に書きました)。 比べる相手は **VOICEVOX 0.25.2** です。VOICEVOX にはユーザー辞書を登録できますが、今回は**何も登録していない素の状態**で比べました。「何もしなければ、こう読まれる」という基準にしたかったからです。 なお、比べているのは**声の良さではありません**。音声を作る前の段階の「この文をどう読むか」という読みの解析だけを比べています。 --- ## 正解がないのに、どうやって正しさを数えるか ここがいちばん悩んだところです。 正しさを数えるには、本当は「この文の正しい読みはこれ」という正解が要ります。でも、話し言葉 5,000 文に正解の読みを付けたデータは、どこにもありません。全部を人が読んで付けるのも現実的ではありません。 そこで、こう考えました。 **両方に読ませて、読みが同じなら、たぶんどちらも正しい。食い違ったところだけ、人が見ればいい。** 5,000 文のうち、読みが食い違うのは一部だけです。そこだけを一本ずつ見て、どちらが正しいかを決めていきます。 ![正解の読みがないので、両方に読ませて食い違ったところだけを人が判定した流れ](/blog/uploads/furigana-reading-accuracy-method.svg) ただ、この考え方には穴が 2 つあります。 ### 穴 1:書き方が違うだけで「食い違い」に見える たとえば「いいなぁ」と「いいなー」、「つづく」と、読みとして表された「つずく」。どちらも読み上げでは同じ発音になるのに、文字だけ見ると違います。これを全部「食い違い」として拾うと、人が見る量がふくれあがります。 そこで、比べる前に**発音が同じになる書き方の揺れは同じものとして扱う**ようにしました。小さい「ぁ」と伸ばし棒、「づ」と「ず」、助詞の「は」と「わ」などです。 揺れを消しすぎると、本物の読み間違いまで消してしまいます。なので先に 200 文で人が判定したものと照らし合わせました。**この 200 文では、取りこぼしや余分な検出は確認されませんでした**。それを確かめてから使っています。 ### 穴 2:両方そろって間違えることがある 読みが同じでも、両方が同じように間違えていることがあります。これは食い違わないので、上のやり方では見つかりません。 そこで、**読みが一致した文から 200 文を無作為に抜いて、全部を目で確かめました**。その結果、両方そろって間違えていたのは 3 文(1.5%)。この割合を、両方の数字から同じだけ差し引いています。 同時誤読の補正を両者へ同じように適用しているため、今回の集計上、**143 対 59 という比較には影響しません**。ただ、200 文からの推定なので、**正解率そのものには数ポイント程度の不確かさ**があります。この記事に出てくる正解率は、この補正を含んだ推定値です。 ### 評価に使った文 - **自分が運営しているサービスで扱っている、読み上げ用途の話し言葉のテキスト**から 5,000 文を使いました。辞書の調整に使ったことのない文から、同じ文の重複を除いて無作為に選んでいます - 名前・URL・メンションなど、個人につながりうる情報を含む文は除外しました。スタンプ記法の文も、読みではなく前処理の問題なので外しています - **データ自体は、プライバシー上の理由から公開していません。** そのため、同じ文での再現はできません - **英字・数字を含まない文 3,000 文**と、**英字や数字が混ざる文 2,000 文**に分けています。英字や数字は読みの正誤というより「読み上げ用にどう扱うか」の違いが大きいので、別に数えました --- ## 結果:漢字の読み 英字・数字を含まない文 3,000 文のうち、表記が崩れていて正しい読みが決められなかった 7 文を除いた 2,993 文で数えました。 | | 正しかった文(推定) | 文単位の推定完全正解率 | |---|---|---| | **ja-furigana** | 約 2,882 | **96.3%** | | VOICEVOX | 約 2,798 | **93.5%** | 「約 2,882」は、読みが一致した 2,750 文のうち目視の標本から約 98.5% を正解と推定し(2,750 × 0.985 ≒ 2,709)、そこへ「ja-furigana だけ正しい」143 文と「書き方の揺れだけ」30 文を足したものです。VOICEVOX も同じ計算で、2,709 + 59 + 30 ≒ 2,798 文になります。どちらも 2,993 文で割っています。 読みが一致した文のうち両方そろって間違えていた割合は、200 文からの推定です。そのため、**正解率の絶対値には数ポイント程度の不確かさ**があります。一方で、同時誤読の補正を両者へ同じように適用しているため、今回の集計上、**143 対 59 という比較には影響しません**。 ![ja-furigana 約 96.3%、VOICEVOX 約 93.5%(どちらも推定値)](/blog/uploads/furigana-reading-accuracy-score.svg) 中身をもう少し分けると、こうなります。 | 両者の関係 | 文の数 | |---|---| | 読みが一致した | 2,750 | | **ja-furigana だけが正しかった** | **143** | | **VOICEVOX だけが正しかった** | **59** | | 書き方の揺れだけで、どちらも正しい | 30 | | 食い違ったうえで、どちらも間違い | 11 | ![片方だけが正しかった 202 文は ja-furigana 143 文、VOICEVOX 59 文に割れた](/blog/uploads/furigana-reading-accuracy-split.svg) 勝ち負けを分けるのは「片方だけが正しかった」202 文で、これが **143 対 59** に割れました。このデータ上では、**偶然のばらつきだけでは説明しにくい差**でした(統計の言葉では McNemar 検定で p = 3.1×10⁻⁹)。 ただし、「鳥山明」を 4 回読み間違えたように、同じ言葉の誤読が何度も数えられている分があります。一文一文が完全に独立しているわけではないので、この数字はそのぶん割り引いて見てください。 --- ## どこで差がつくのか 数字より、こちらのほうが面白いかもしれません。 ### ja-furigana が正しく読んだもの 差の大半は、**話し言葉に出てくる言葉を知っているかどうか**でした。 | 種類 | 例 | VOICEVOX の読み | |---|---|---| | 作品の固有名詞 | 仙豆(せんず) | せんまめ | | ネットの言い回し | 草(くさ)生える | そう | | ネットの言い回し | 一択(いったく) | いちよ | | 文脈で変わる読み | 身体(からだ)が大事 | しんたい | | 文脈で変わる読み | とんでもない奴(やつ) | やっこ | | 文脈で変わる読み | 手(て)に持って | しゅ | 「身体」は、辞書的には「しんたい」も正しい読みです。でも「身体が大事だからね」と話し言葉で言うなら、ふつうは「からだ」です。**どちらも間違いではない言葉を、場面に合わせて選べるか**。ここで差がつきました。 ### VOICEVOX が正しく読んだもの 負けた 59 文にも、はっきりした型がありました。 | 種類 | 例 | ja-furigana の読み | |---|---|---| | 人の名前 | 鳥山明(あきら) | めい | | 音読みと訓読みの取り違え | 喉(のど)が痛い | こう | | 音読みと訓読みの取り違え | 秋の旅(たび) | りょ | | 「〜上」の読み | 仕様上(じょう) | うえ | | 濁るはずが濁らない | 恨み節(ぶし) | ふし | | 動詞の形 | 来(こ)られる | きたられる | 特に「鳥山明」は 4 回も「めい」と読んでいました。人の名前は辞書に載っていないと、ふつうの漢字の読みで読んでしまいます。 どれも **辞書やルールで直せる種類の間違い** です。つまりこの 59 文は、そのまま「次に直すもの」のリストになりました。 --- ## 英字と数字が混ざる文 英字や数字を含む 2,000 文は、正解率ではなく**ふるまいの違い**を数えました。ここは読み上げでの差が、いちばん目立つところです。 ### 笑いの「w」 チャットで「〜だろw」のように付く笑いの「w」。これを含む 1,047 文で比べると、こうなりました。 - **VOICEVOX:98% で「ダブリュー」と読み上げる** - **ja-furigana:変換せず、w のまま出力する**(実際に読むかどうかは、後ろにつなぐ読み上げソフト次第) ![笑いの w を、VOICEVOX は 98% でダブリューと読み上げ、ja-furigana は w のまま出力する](/blog/uploads/furigana-reading-accuracy-laugh.svg) 「それはないだろダブリュー」と読まれるのは、話し言葉の読み上げではかなり気になります。 ただ、ja-furigana も「w」を消しているわけではありません。**変換せずに w のまま出しているだけ**なので、ここは両方にまだ改善の余地があります。 ### 英単語や略語 「DH」「NARUTO」のような英字は、VOICEVOX は一文字ずつ綴って読みます(NARUTO なら「エヌエーアールユーティーオー」)。ja-furigana は 78% を変換せず、英字のまま出力しています。 どちらが正しいかは、使う読み上げソフト次第で変わるので、ここは点数にしていません。 ### 数字と単位 単位が付くと、得意不得意がはっきり分かれました。 | 書き方 | ja-furigana | VOICEVOX | |---|---|---| | 29°C | ◯ にじゅうきゅうど | ✕ にじゅうきゅうしい | | 54m | ◯ ごじゅうよんメートル | ✕ ごじゅうよんエム | | 20:19 | ◯ にじゅうじじゅうきゅうふん | ✕ にじゅうじゅうきゅう | | M3.7 | ✕ 小数点で文が切れる | ◯ エムさんてんなな | | 震度:2 | ✕ 「2」が読まれない | ◯ に | | 100kg | ✕ ひゃくキログラム | ◯ ひゃっキログラム | 気温の「°C」を「シー」と読むのは VOICEVOX の弱いところで、地震情報の「M3.7」や「震度:2」は ja-furigana の弱いところです。 --- ## この数字を読むときの注意 - **検証した範囲での結果です。** 評価文はチャットや会話のような話し言葉です。ja-furigana の辞書はまだ小さく、この範囲の外、たとえば新聞や小説のような書き言葉や、辞書にない人名が多い文章では、ここまでの結果は出ないと思います - **正解は一人で判定しました。** 口語や愛称の読みには、どうしても判断が入ります。読みが決められなかった 7 文は採点から外しています - **正解率は推定値です。** 読みが一致した文のうち両方そろって間違えていた割合を、200 文の目視から推定しています。絶対値には数ポイント程度の不確かさがあります。補正は両者へ同じように適用しているので、今回の集計上、143 対 59 の比較には影響しません - **評価データは公開していません。** 自分のサービス上のテキストで、プライバシー上の理由から出せないためです。数字の検算はできても、同じ文での再現はできません - **VOICEVOX はユーザー辞書なしです。** 辞書を育てた VOICEVOX なら、また違う結果になります - **英字の読み方は採点していません。** 綴るのが正しいか、そのまま渡すのが正しいかは、使う読み上げソフトで変わります --- ## この比較で見えた立ち位置 ja-furigana は、人名や一般的な文章を何でも完璧に読むためのライブラリではありません。**配信のコメントやチャットのように、ネット特有の言葉が混ざる文章を、読み上げソフトに渡す前に整えるためのもの**です。 今回の結果も、あくまでその範囲で測ったものです。辞書はまだまだ小さく、範囲から外れると、やはり読み間違いは増えます。負けた 59 文に人名や音読みと訓読みの取り違えが多かったのも、その表れです。 ふつうの文章だけを読むなら、VOICEVOX のユーザー辞書でも十分だと思います。一方で、「草」「一択」、作品の名前、数字と単位がひんぱんに出てくる読み上げでは、専用の前処理を一段はさむ意味があります。 --- ## 使っている限り、辞書は育て続ける 今回いちばん大きかったのは、96.3% という数字そのものより、**負けた 59 文が「直すべき読みのリスト」として手に入ったこと**でした。 人の名前、音読みと訓読みの取り違え、「〜上」、濁るはずが濁らない。これは辞書で直します。小数点、コロンの後の数字、「ひゃっキロ」の詰まる音、そして笑いの「w」。これはライブラリ側で直します。 ふりがなの辞書は、一度作って終わりにはなりません。新しい言葉は毎日出てきますし、読み間違いは使っていれば見つかります。**使っている限り、そしてやる気が続く限り、見つけた読み間違いを直していく**つもりです。 そして、直したら**同じ 5,000 文で測り直します**。今回の文と判定の手順はそのまま残してあるので、辞書を育てるたびに、数字がどう動いたかを確かめられます。 「実際どれくらい正しく読めているの?」という問いに、次からは数字で答えられます。 --- ※この記事は 2026 年 9 月時点の ja-furigana の辞書と、VOICEVOX 0.25.2 をもとにしています。