共起行列とは?初心者にも分かる基本と活用法を徹底解説共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
共起行列とは?初心者にも分かる基本と活用法を徹底解説共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


共起行列とは?

共起行列とは、テキストの中である語と別の語がどれくらいの頻度で一緒に現れるかを示す表のことです。自然言語処理の分野でよく使われ、文章の意味的なつながりを数値で表現する基礎的な道具として活躍します。日本語の文章は語と語のつながりが複雑なので、まずは「窓幅」という範囲を決め、同じ窓の中に現れた語の組み合わせを数えます。例えば窓幅を3語に設定すると、ある語の周りの3語と一緒に現れた回数を計測します。こうして得られたデータを行列に並べると、行と列が語を表す表、セルには共起の回数が入ります。

作り方のイメージ

実際の作り方は、テキストデータを準備し、分かち書き(日本語の場合は単語に分ける処理)を行います。次に、ウィンドウサイズを決め、各語と周囲の語のペアをすべて数えます。結果を辞書型のデータとして集計し、語を行と列に対応させて共起回数をセルに入れます。最後に、行列を正規化して距離や似ている語を見やすくする加工を施します。初心者向けには、多くのツールがこの流れをサポートしてくれますが、基本の考え方は「語同士のつながりの強さを表現する数字の集まり」である点です。

活用のしかた

SEOの観点では、共起行列を使ってキーワードの関連性を把握し、記事の構成を最適化します。たとえば、ある中心語(例えば「SEO」)と頻繁に共起する語を洗い出し、それらをまとめたトピックのグループを作ることで、読み手が欲しい情報を整理しやすくなります。さらに、語のベクトル表現を学習する際の入力として使うこともあり、検索エンジンが理解する「語間の意味的距離」を測る手助けになります。

表で見る例

語1語2共起回数
SEO記事42
検索エンジン34
共起行列18

注意点

語の分割が難しい日本語では、形態素解析が必要になることが多いです。分野によっては、二語以上の窓を使うことで、意味の繋がりをより長く拾えます。ただし、窓幅が大きくなるとデータが Sparse になり、計算量が増える点には注意しましょう。

用語の解説

窓幅: 語を取り巻く範囲のこと。例: 窓幅3なら前後1語ずつを対象にします。

正規化: 行列の値を比較しやすくするために、確率や相対頻度に変換します。

まとめ

要するに、共起行列はテキスト中の語の共起関係を数値化する基本ツールです。正しく作れば、語のつながりが見え、SEOや自然言語処理の設計に役立ちます。初心者のうちは小さなデータから試し、窓幅や正規化の方法を少しずつ変えて、どんな結果になるか観察してみましょう。


共起行列の同意語

共起頻度行列
単語同士が同じ窓内に現れた回数を数えた行列。行 i, j の要素は語 i と語 j が一緒に出現した回数を表します(対称になることが多いです)。
同時出現行列
語が同じ窓内で同時に出現した回数を表す行列。共起頻度行列と似た意味で、同時出現の度合いを数値化します。
共起カウント行列
語同士の共起回数を集計した行列。通常は共起頻度と同義で使われます。
共起マトリクス
共起を表す行列の別称。語同士の共起関係を格納するデータ構造として使われます。
語彙共起行列
語彙(語)間の共起を表す行列。語彙レベルでの共起頻度を集計します。

共起行列の対義語・反対語

非共起
共起が起こらない、二語が同時に現れにくい状態を指す概念。
無共起
共起が全く起こらない、またはほとんど起こらない状態を指す語彙間の関係。
反共起
共起の反対の性質を示す、二語が一緒に現れにくい関係を表す言葉。
非共出現
ある語と別の語が同時・同一ウィンドウに現れない現象を指す語。
単独出現
語が他の語と同時に現れず、単独で現れる傾向を示す状態。
独立出現
語が互いに依存せず独立して現れる出現パターン
分離出現
語同士が近接して現れず、遠く離れて出現する状態。
疎結合
語間の結びつきが弱く、共起が低い状態を指す概念。
相関なし
二語間の共起に基づく相関がない状態。
無相関
二語間の出現が相関を示さず、独立的である状態。
低共起率
共起の発生頻度が低いことを表す指標的表現。
独立分布
語の出現が互いに独立した分布をとることを意味する概念。
離散出現
語の出現が離れており、同時出現が少ない状態。
同時出現が少ない
二語が同時に現れる頻度が低いことを表す言い方。

共起行列の共起語

共起行列
ある語と別の語が一定の文脈内で同時に現れる回数を表す行列。行は語、列は語、セルには共起回数や確率が入る。
共起語
特定の語と同じ文脈で現れる可能性が高い語のこと。共起行列の要素を構成する語
単語-文脈行列
語とその周辺語(文脈語)との共起を集約した行列。語を行、文脈語を列に配置する形式。
語彙 / ボキャブラリ
分析対象として扱う全語の集合。
ウィンドウサイズ
共起を定義する際に参照する周囲語の数。例:窓サイズ5なら前後2語ずつを文脈とする。
文脈窓
共起を捉えるために参照する周囲の語の範囲。
文脈語
共起を計測する際の周辺語。
ペア頻度
語と文脈語の組み合わせが現れた回数。
共起頻度
語同士の共起が起きた回数。
カウント行列
共起回数を格納する行列。
疎行列
多くのセルがゼロとなる稀な値の行列。大規模な共起行列は通常疎になる。
正規化共起行列
セルの値を全体の頻度やベクトル長で調整し、比較しやすくした行列。
PMI
点wise Mutual Information。語と文脈語が独立よりも強く結びつく程度を測る指標。
PPMI
Positive PMI。PMIの負の値を0にすることでノイズを抑える手法。
特異値分解 / SVD
大規模な共起行列を低次元の意味表現へ分解する数学手法。
LSA
潜在意味解析。SVDを用いて意味構造を抽出する手法。
サイン類似度
2つの語ベクトル間の角度を基に類似度を測る指標(0〜1の範囲が多い)。
語ベクトル / 埋め込み
共起統計から得られる、語を表す数値ベクトル。次元削減後の表現が多い。
語彙表現
語を数値化して表す表現全般の総称。
共起ネットワーク
語同士の共起関係をノードとエッジで表現したネットワーク構造。
ノイズ除去 / 平滑化
稀な共起を抑え、信頼性を高める処理。
正規化
行列全体の規模を揃える処理(例:各セルを行の総和で割るなど)。
窓法 / ウィンドウ法
共起を定義する際に文脈窓を用いる方法。
逆文頻度 (IDF)
文書全体で珍しい語ほど重みを高くする指標。共起分析と組み合わせることがある。
トピックモデル
共起情報を用いて文書の主題を推定する枠組み。
LDA
トピックモデルの代表例。潜在トピックと語の関係を推定する。
共起語ペア
同じ文脈で同時に現れた語の組。分析の基本単位。
文脈語ペア
語とその周辺語のペア。共起行列のセルを構成する要素。
欠点・注意点
データ量や窓サイズに敏感、稀な語の影響、スパース性、解釈の難しさなど。

共起行列の関連用語

共起行列
あるコーパス内で、任意の2語が一定の文脈内に同時出現した回数を格納する行列。行は左語、列は右語を表し、セルには出現数が入る。
文脈ウィンドウサイズ
共起を数えるときに対象語の周囲として文脈に含める語数のこと。窓が小さいと局所的、大きいと広い文脈を扱う。
コンテキスト
共起を定義づける周囲の語の集合や情報のこと。
コロケーション
自然に一緒に現れやすい語の組み合わせのこと。共起頻度が高いペアはコロケーションと呼ばれることが多い。
単語ペア
共起の基本要素となる、文中の2語の組み合わせ。
カウント行列
語ペアの出現回数をそのまま格納する行列。
確率行列
セルの値を全出現回数で割って、共起確率として表した行列。
PMI (Pointwise Mutual Information)
特定の語ペアの同時出現が、独立して起こる確率と比べてどれだけ情報を共有しているかを示す指標。
PPMI (Positive PMI)
PMIが負になる場合を0にして非負にした指標。
NPMI (Normalized PMI)
PMIを-1〜1の範囲に正規化した指標。比較の安定性を高める。
Jaccard類似度
共起語ペアの集合の共通部分と合計部分の比で類似度を測る指標。
コサイン類似度
語ベクトル間の角度を用いて類似度を測る指標。値が1に近いほど意味が近い。
LSA (潜在意味解析) / LSI
高次元の共起行列を特異値分解(SVD)して低次元の意味空間に射影する手法。
GloVe (Global Vectors for Word Representation)
共起行列の統計情報を活用して語ベクトルを学習するモデル。全体的な統計を重視する点が特徴。
Word2Vec
周囲の語情報を用いて語彙をベクトル化するニューラルネット系モデル。局所的な共起情報を学習に利用する。
CBOW (Continuous Bag-of-Words)
周囲の語から中心語を予測するWord2Vecの学習モード
Skip-gram
中心語から周囲の語を予測するWord2Vecの学習モード。
単語埋め込み / 語彙埋め込み
語をベクトル空間の点として表す表現形式。
トークン化
テキストを意味のある最小単位(トークン)に分割する前処理。
語彙空間モデル (VSM)
語彙と文書をベクトルで表現する基本的な情報検索の枠組み。
Term-Document Matrix
単語と文書の出現頻度を表す行列。情報検索で頻繁に使われる。
コーパス
分析対象となる大規模なテキスト集合。
スパース性
共起行列は多くのセルが0になる稀なデータ構造になりやすい性質。
次元削減
高次元の共起行列を低次元へ圧縮して意味表現を得る処理。
特異値分解 (SVD)
行列を特異値と左右の特異ベクトルに分解する手法。LSAの核となる処理。
トピックモデリング (LDA)
文書を潜在的なトピックの混合として表現する統計モデルで、共起情報から意味構造を抽出する補助技法。
プラス平滑化
未知語ペアにも小さな確率を割り当て、データ不足による計算不安定を防ぐ平滑化手法。

共起行列のおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
16269viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2768viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1161viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1157viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
1036viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
1001viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
997viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
972viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
865viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
863viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
803viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
802viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
762viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
719viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
703viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
655viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
601viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
601viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
594viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
534viws

新着記事

インターネット・コンピュータの関連記事