1. 定義と概要
文字バイグラムとは、テキストを文字単位で分割したうえで、隣り合う2文字の組を1つの単位として、1文字ずつずらしながら切り出す手法(英語表記は character bigram)です。文字Nグラムにおいて、Nの値を2とした特殊なケースにあたります。たとえば「東京都」という3文字の文字列に文字バイグラムを適用すると、先頭から1文字ずつずらしながら「東京」「京都」という2文字ずつの組が2個得られます。
文字を1つずつ独立に扱う文字ユニグラムでは、使われている文字の集合と出現回数が同じであれば、並び順が異なる文字列を区別できません。隣り合う2文字をひとまとまりとして扱う文字バイグラムは、直前の1文字という最小限のつながりの情報を単位に取り込むことで、この弱点の一部を補う位置づけにあります。
また、英語のようにスペースで単語が区切られない日本語では、単語単位でテキストを扱うために形態素解析(辞書と文法規則を使って文章を単語に分割する処理)という前処理が必要になります。文字バイグラムは文字数で機械的に区切るだけで済むため、この前処理を経ずに扱える手法として、日本語の全文検索システムで古くから使われてきました。
2. 試験対策ポイント
まず整理したいのは、文字バイグラムが文字Nグラムでnを2とした場合を指す語であり、隣接する2文字をひとまとまりの単位として1文字ずつずらしながら切り出す点にあります。
文字ユニグラム・文字トライグラム(連続する3文字をひとまとめにした単位)・単語バイグラムといった似た名前の単位との呼称の対応も、あわせて整理しておきたいところです。
| 用語 | 切り出し方 | Nの値 |
|---|---|---|
| 文字ユニグラム | 1文字ずつ独立に扱う | 1 |
| 文字バイグラム | 隣り合う2文字をひとまとまりにする | 2 |
| 文字トライグラム | 連続する3文字をひとまとまりにする | 3 |
| 単語バイグラム | 単語Nグラムで、隣接する2単語をひとまとまりにする | 2 |
文字か単語かという分割の単位と、Nの値がいくつかという2つの軸で呼び名が決まる関係です。この対応関係はG検定の教材でも扱われる内容です。
最大の特徴は、文字ユニグラムでは失われる文字の並び(隣接関係・つながり)の情報を部分的に保持できる点にあります。直前の1文字という局所的なつながりを単位に取り込めるため、文字ユニグラム単独よりも文脈を捉えやすくなります。
日本語の全文検索やインデックス(検索を高速化するためにあらかじめ作っておく検索用のデータ構造)の作成で広く使われてきた手法という位置づけも、押さえておきたいポイントです。文字数で機械的に区切るだけで済むため、辞書を使う形態素解析を経ずに部分一致検索を実現でき、未知語(辞書に載っていない新しい言葉や固有名詞)や表記ゆれ(送り仮名や漢字・かなの書き方が揺れて複数の表記になること)にも強いという利点があります。
一方で、文字ユニグラムに比べて扱う組み合わせの種類が増える点は制約になります。次元(ここでは文字の組み合わせパターンの種類の数を指します)はおおむね文字種の数の2乗規模になりますが、文字トライグラム以上ほど爆発的には増えず、実用的な範囲に収まりやすいのが特徴です。Nグラム全体の考え方や単語バイグラムとの詳細な使い分けは、姉妹記事に譲ります。
3. 関連概念との比較・相違点
文字ユニグラムとの最大の違いは、文字の並び(隣接関係)を捉えられるかどうかという点です。文字ユニグラムは1文字ずつ独立に扱うため並び順の情報を完全に失いますが、文字バイグラムは隣り合う2文字を組にすることで、その情報を部分的に保持できます。その代わり、文字バイグラムが扱う組み合わせの種類は、文字ユニグラムより多くなります。
単語バイグラムとの最大の違いは、分割の単位が文字か単語かです。単語バイグラムは分かち書き(形態素解析を経て単語の区切りを明示すること)を前提に、隣接する2単語を組にします。これに対して文字バイグラムは、単語の境界判定を経ずに隣接する2文字を組にします。
この違いは、得意な場面の違いにも表れます。単語バイグラムは意味のまとまりを保ちやすい一方で未知語に弱く、文字バイグラムは未知語や表記ゆれに強い代わりに、単語としての意味のまとまりを保持しません。
4. ビジネス・実務での活用シナリオ
全文検索・情報検索システムの分野では、文字バイグラムで文書をインデックス化することで、辞書に無い新語や固有名詞、表記ゆれを含む文書も検索対象にできます。形態素解析を経ずに部分一致検索を実現できるため検索漏れを抑える効果があり、日本語の全文検索システムで古くから採用されてきた方式です。
顧客データの名寄せ・住所照合の場面では、氏名や住所の送り仮名・入力ミスを含むデータでも、文字バイグラムの一致度を手掛かりに同一人物・同一住所の候補を拾えます。表記が完全には一致しないデータどうしを結びつける必要がある実務で、有効な手掛かりです。
スパムフィルタ・言語判定の分野では、文字バイグラムの出現頻度パターンを特徴量(機械学習モデルへの入力として使う数値化した手掛かり)にすることで、文章がどの言語で書かれているかや迷惑メールらしい文体の傾向を統計的に判別できます。個々の単語の意味を解釈せず、文字の並びの癖だけから判定できる点が実務上の強みです。
5. 要点まとめ
- 文字バイグラムは文字Nグラムでnを2とした場合であり、隣り合う2文字の組を1文字ずつずらしながら切り出す手法です。
- 文字ユニグラムでは失われる文字の並び(つながり)の情報を部分的に保持でき、日本語の全文検索で形態素解析なしに部分一致検索を実現する手法として使われてきました。
- 単語バイグラムとは分割の単位(文字か単語か)で異なり、扱う次元は文字ユニグラムより増えますが、実用的な範囲に収まりやすい特性があります。
6. 確認問題
問1文字バイグラムとは、文字Nグラムにおいてnを2とした場合であり、隣り合う2文字の組を1文字ずつずらしながら切り出す。
解答・解説をみる
○ 正しい
文字バイグラムは文字Nグラムでnの値を2とした特殊なケースで、隣接する2文字を単位として1文字ずつずらしながら切り出す手法です。「東京都」から「東京」「京都」を取り出す例で確認しておきたい定義です。
問2文字バイグラムは文字ユニグラムと同様に、文字の並び(隣接関係)の情報を完全に失う。
解答・解説をみる
× 誤り
正しくは逆の関係にあります。文字ユニグラムは1文字ずつ独立に扱うため並びの情報を完全に失いますが、文字バイグラムは隣接する2文字を組にすることで、その情報を部分的に保持できます。
問3文字バイグラムは日本語の全文検索において、形態素解析を経ずに部分一致検索を行う手法として使われてきた。
解答・解説をみる
○ 正しい
文字バイグラムは文字数で機械的に区切るだけで済むため、辞書を用いた形態素解析を経ずにインデックスを作成でき、未知語や表記ゆれにも強い部分一致検索を実現してきました。

