Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

BAD 傾向分析レポート (2026-02-16)

概要

  • コミット: 917ec986 (main)
  • corpus-stats: v2026.0216.0
  • 評価日: 2026-02-16
  • Good: 6,727 / Top-5: 345 / Bad: 3,993 / Recall: 93.19%

BAD 3,993件の内訳を分類し、改善の方向性を検討する。

カテゴリ別内訳

カテゴリ件数割合対処方針
同音異義語・誤変換3,50487.8%コーパス / bigram / スコアリング改善
表記揺れ(ひらがな⇔漢字・カタカナ)3679.2%accept.tsv でフィルタ
数字含み文の誤変換671.7%数詞パーサ / コーパス
全角半角・句読点差401.0%accept.tsv でフィルタ
数詞→アラビア数字化150.4%数詞パーサ修正 / コーパス

即効性のある改善: accept.tsv の拡充

表記揺れ 367件 + 全角半角差 40件 = 約407件は、accept.tsv に追加するだけで Real BAD を 3,993 → 約3,586 に削減できる。

表記揺れの主なパターン

パターン件数
無い → ない91心当たりが無い → 心当たりがない
気 → 木 の混同ではなく良/よ差39良いとも → いいとも
分かる → わかる21分かった → わかった
良い → いい / よい18+10良く冷えた → よく冷えた
付く → つく14区別が付かん → 区別がつかん
行く → いく13幕張行くんで → 幕張いくんで
言う → いう12と言うか → というか
鳴く → なく12目覚ましが鳴った → なった
見る → みる11見ます → みます

これらは日本語としてどちらも正しい表記であり、accept.tsv に追加して評価から除外すべき。

全角半角の差 (40件)

? vs % vs など。これらも accept.tsv でフィルタ可能。

主要課題: 同音異義語 (3,504件)

BAD の大半を占める。さらにサブカテゴリに分類する。

高頻度の1文字差 同音異義語ペア

corpus → akaza件数深刻度対処案
気 → 木36bigram「木がする」を抑制。「気がする」コーパス追加
と → 途24「途」の unigram スコアが高すぎる。助詞「と」の接続を強化
再 → 賽17「賽」の unigram 抑制。「再コンパイル」等コーパス追加
話 → 和15「話」の短い読み「わ」が「和」に負ける
あった → 会った14「あった」(存在)と「会った」(面会)の文脈区別
以上 → 異常9「以上よろしく」のbigram強化
結構 → 欠航9「欠航」のスコアが高すぎる(Wikipedia偏り)
そこ → 底9「底」が文頭・助詞位置に出現
大 → 第8「大至急」→「第至急」など。bigram 不足
資料 → 飼料7Wikipedia の畜産記事による偏り
円 → 縁7通貨の「円」が「縁」に負ける
旧 → 急7「旧体制」→「急体制」
使用 → 私用6「しよう」の同音衝突
暑い → 厚い6文脈依存の同音異義語

分節崩壊 (34件)

corpus と akaza の長さが3文字以上異なるケース。分節の切り方自体が壊れている。

入力期待実際
じゅうらんしゃじけん銃乱射事件自ゅうらんしゃじけん
がんこうしゅていのやから眼高手低の輩眼光シュテイ野家から
1にちさいちょう8じかん1日最長8時間1日祭超8字管

分節崩壊は辞書への複合語登録で対処するのが効果的。

未変換パターン (117件)

漢字に変換されるべきところがひらがなのまま残る。

入力期待実際
どんぐりのせいくらべ団栗の背比べどんぐりのせいくらべ
めったにいかないけど…滅多に行かないけど…めったにいかないけど…
たくさんもらっても沢山貰ってもたくさんもらっても
でふぉるとのせっていで…デフォルトの設定で…デフォルトの設定でごちゃごちゃ…

多くは口語的な表現で、ひらがな表記も自然なケースが多い。accept.tsv 候補でもある。

過変換パターン (21件)

ひらがな・カタカナで書くべきところが漢字化される。

入力期待実際
バカにはバカなりのバカにはバカなりの馬鹿には馬鹿なりの
ダイオウイカダイオウイカ大王烏賊

改善の優先順位

優先度1: accept.tsv 拡充 (推定 -400件)

最も低コストで効果が大きい。表記揺れ・句読点差をフィルタすることで、Real BAD を約3,586件に削減。注力すべき真の問題が見えやすくなる。

対象:

  • ひらがな⇔漢字の表記揺れ (無い/ない、分かる/わかる、良い/いい 等)
  • ひらがな⇔カタカナの表記揺れ (バカ/馬鹿、マジ/まじ 等)
  • 全角⇔半角 (?/?、%/%)

優先度2: 高頻度同音異義語のコーパス追加 (推定 -100〜200件)

patterns.txt の上位パターンに対して should.txt にコーパスを追加。

特に効果が見込めるもの:

  • 気→木 (36件): 「気がする」「気にする」「気をつける」等の頻出フレーズ
  • と→途 (24件): 助詞「と」の bigram 強化
  • 再→賽 (17件): 「再起動」「再コンパイル」「再利用」等
  • 以上→異常 (9件): 「以上よろしく」「以上のように」
  • 結構→欠航 (9件): 「結構いい」「結構です」

優先度3: Wikipedia 偏りの是正 (推定 -50件)

Wikipedia に偏った語のスコアが日常語を上回るケース:

  • 賽(賽の河原)が「再」に勝つ
  • 欠航が「結構」に勝つ
  • 飼料が「資料」に勝つ
  • 数寄が「好き」に勝つ
  • 咆哮が「方向」に勝つ

対処: should.txt に日常語のコーパスを追加して矯正。

優先度4: 辞書への複合語登録 (推定 -30件)

分節崩壊を防ぐため、SKK-JISYO.akaza に複合語を登録する案。

ただし、分節崩壊の例に挙がった「眼高手低」のようなケースは注意が必要。 「眼高手低」は SKK-JISYO.L には未収録だが、JMdict には収録されている。Wiktionary の四字熟語カテゴリには未収録。 日常で使われる頻度は低く、anthy コーパスにたまたま含まれている程度。 こういったエントリのために個別に辞書を足すのは anthy コーパスへの過学習。

四字熟語の体系的な補完ソースとして以下を調査した:

結論: evaluate の BAD から個別に辞書を足すのは過学習。体系的に補完するなら JMdict の yoji エントリと SKK-JISYO.L の差分を取るアプローチが有効。ただしニッチな四字熟語を追加しても変換候補のノイズが増えるリスクがあるため、実際のユーザー頻度を考慮すべき

優先度5: 数詞パーサの改善 (推定 -80件)

数字含み文の誤変換 67件 + 数詞アラビア数字化 15件。 「せん→1000」「まん→10000」等の数詞パーサ誤爆は v2026.0216.0 で一部コーパスで対処済みだが、根本的にはパーサ側のスコアリング調整が必要。

まとめ

施策推定削減コスト備考
accept.tsv 拡充-400件スクリプトで半自動化可能
高頻度同音異義語コーパス-100〜200件退行チェック必須
Wikipedia 偏り是正-50件双方向同音異義語に注意
辞書複合語登録-30件副作用少ない
数詞パーサ改善-80件コード変更必要

全施策を実施した場合、Real BAD を現在の約3,993件から約3,200〜3,400件程度まで削減できる見込み。