英文とベクトル空間モデル
著者 橋本 直樹
雑誌名 英語英文学研究
巻 12
ページ 83‑92
発行年 2006‑09
出版者 東京家政大学文学部英語英文学科
URL http://id.nii.ac.jp/1653/00009668/
英文とベクトル空間モデル
橋 本 直 樹
§1.序論
英語の文章の特徴を抽出する方法に多くの研究が遂行され、さまざまな方 法が考案されてきた。その中で、より客観的、科学的に分析する方法がコン ピュータの発達とともに盛んになり、著者の特性を定量的に分析することに より著者が不明な文章の推定や著作の時期の特定などに用いられはじめてい る。既に確立した方法には次のようなものが知られている。それは単語の長 さの分布を調べる方法で、文章中の単語の長さごとにその出現度を求め、各 文章間の分布の相違を図または表で示して比較研究を行うものである。英文 以外にもいくっかの自然言語に対し調べられている。他の方法として文章中 の文の長さの平均値の比較分析をする方法も良く知られているが、この方法 の有効性は疑われている[1]。また、各品詞の使用頻度を分析する方法や、
著者の文章中にある特徴的な単語(識別語)の分布を調べる方法、n−gram の分布の分析や音韻の特徴を比較分析する方法などもある[2]。これらの方 法に統計分析を行って文章の特徴を得ることができる。
一方、文書検索やテキスト分類というカテゴリがある。そこでは数学的な 方法(アルゴリズム)により文書が処理される。ベクトル空間モデルの最近 接法やサポートベクトルマシンなどの代表的な方法がよく知られている[3,4]。
本論文では、文書検索・テキスト分類に使用されているベクトル空間モデ ルの最近接法を精密化して文章の特徴抽出の方法として用い、英文の特徴分 析に適用する方法論を示す。これはコンピュータを用いることではじめて可 能となる手法であり、文献[5]における英文のクロスリファレンスを得る計 算方法の一っ応用でもある。以下§2でベクトル空間モデルの基礎概念を述
べ、§3において我々の方法を示し、§4でその適用例を述べる。分析する 文書例として、Edgar Allan Poeの散文と詩を用いる。
§2 ベクトル空間モデル
ベクトル空間モデルは、Salton, Wong and Yang(1975)[4]によって提 唱された方法で、文書検索やパターンマッチングに適用され、多くの派生的 な方法も開発されている。Saltonらの方法では文書集合1)、(i=1,_,n)(nは文 書の数)に対して、各D、を、t一次元ベクトルで表す。すなわち、
DF(d,1,d,2,._..,d,,)
とする。ここで成分偽はノ番目の索引語の重みを表している。その索引語の 重みとしてはいくっかの選択肢があるが、一般的には 索引語頻度 (tf法)
が用いられる。これは特定の単語の文書中における出現頻度数のことで、こ の値が高い語ほどよく出現するありふれた語であることを示している。現在 では他にtf 一 idf重み付け等の方法も存在し、その有効性にっいて多くの議 論がなされている。この準備の下でSalton[4]は、文書D,と1)kの類似度(de−
gree of similarity)の概念を導入し、それをs(D,,DA)と表した。そして、こ の類似度を測るものとして内積またはそのベクトル間の幾何学的な角度(コ サイン尺度と呼ばれる)が利用できることを示した。内積は次の式で定義さ
れる。
D,・q−2d ,、 g,j ノ・・e1
Salton[4]は、実際には文書ベクトルD、の代わりに検索質問のベクトル q−(9、,……,9,)を用い、D,・q芝嚇を計算している.方法論としては本質 ノ
的に同じものである。また検索質問ベクトルと文書ベクトルのコサイン尺度 は、次の式で定義される。
D,・q COSθ=S(D,,q)=
IID, lillqll ただし
t t
ilD,・li一Σd2 ・, llqll一Σq2/
」=1 ノ=
である。これらはノルムともいわれる。以上の2っの尺度は、ベクトルが1 の大きさに正規化してあれば数学的に一致するが、普通の解析では索引語の 重みを整数で扱うため正規化しないので別個に扱う。内積は、同程度の長さ の文書に対して検索質問をし比較する場合は、その値の比較分析に意味があ る。またより簡単に計算できるメリットもある。しかし文書の長さが大きく 異なるものを比較する場合は、その値から結論を導くのが困難である。その 点、コサイン尺度は計算量が少し増すが文書の長さには余り影響されないの で通常はコサイン尺度を使って分析する。コサイン尺度では、その値が1に 近いときは類似度が高く、また0に近いときは類似度が低い。値は0と1の 間の実数となる。
実際の検索質問の分析では2っの問題点が生じる。1っは検索質問ベクト ルおよびその次元数をどのように選択するかということである。また2っ目 は前述したように索引語の重み付けとして何を使うかということで、この2 つの事項は密接に関連している。多くの分析では、多数の事例をあたること で経験的に選択している。
§3.分析方法
文書の特徴を抽出するとき、特定の単語にだけ注目しその頻度等を分析し て結論を得ることは、研究者に大きく依存する。特にキーワードとなるtt索 引語 の組合せを選択する基準にさまざまなものが考案されている。従って これらの曖昧さをなくした科学的な分析手段が必要と考えられる。我々は前 節で述べた文書検索に用いられてきたベクトル空間モデルの最近接法をコン ピュータを使う前提の下で機能を拡張し、文書の特徴抽出の手段として応用
する。本節では、その概念と手続き(アルゴリズム)を示す。
前節で用いたものと同じ記号で、文書ベクトルをD1、D2とする。本質的に 2っの文書にっいて考えれば十分なのでn=2とする。ここで、文書ベクトル
D,、1),の次元は必ずしも同じでない。このベクトルD,(i=1,2)の成分を(d,1,d,2,
_.Cd、。i)とする。ここで各めはノ番目の単語の出現頻度を表す。ただし重複 して単語の種類を選択しない。また、〃1、は文書D、に含まれる独立な単語数で ある。一般に加1翻2である。すなわち各文書の独立な単語の数は通常は異な る。§2で述べた文書ベクトルと異なる点は、D,がその文書中に存在するす べての単語の出現頻度を表すベクトルであるということである。今の場合ベ クトルの次元は非常に高く、数万次元になることも予想されるので分析には
コンピュータを使用することが必須となる。また、(d, 1, d,2,__,d、m,)の並び方
は自由であるが処理を簡単にするために辞書式オーダーに整列しておく。大 文字、小文字は区別することも可能である。
次に、議論をわかりやすくするため単語の集合A,Bを考える。集合A,
Bのそれぞれの要素は文書Aと文書Bの単語の集合とする(記号の乱用)。
ほとんどの場合、Aで用いられている単語の一部はBでの単語の一部と重複 している(場合がある)。それをA∩Bと書く。#を集合記号前に付けたと きその集合の要素の数を表すとするとA,Bの集合内の独立な単語の数は、
#A+#B−#A∩Bである。以下この数をMとする。その独立な単語の 数を、文書集合AUBのベクトル空間の次元と定義する。そして、AUBの 中に現れる独立な単語をそのベクトル空間の基底(base)として、ベクトル 表現する。そのベクトルの成分は、前述したようにこの基底(単語)の出現 頻度とする。2っより多い文書を考える場合は、このベクトル空間の基底は 拡大していく。すなわち、2つの文書の張るベクトル空間は、文書数がより 多い文書集合のなすベクトル空間に埋め込まれていると考える。この操作で 基底(base)を作る過程を簡単な例で次に示す。
(例)(Joseph Conrad: 『The Lagoon』より )
文書A The white man, leaning with both arms over the roof of the little house in the stern of the boat,
said to the steersman.
文書B:The white man rested his chin on his crossed arms and gazed at the wake of the boat.
このときのAUBの基底は次元=26で次のようになる。
ただし、基底の順番は辞書式順序である。
基底:and arms at boat both chin crossed gazed his house in leaning little man of over roof rested said stern steersman the to wake white with
ここでは簡単化をして、文書Aと文書Bを同一の作品の文の中から選んで いる。本来は、作品ごとまたはその集まりを各文書に対応させる。
各文書の成分による表現は次のようにする。文書ベクトルD,=(d、 1,∂d,2,.._.,
d,mi)のそれぞれの次元はm、(i=1,2)であった。これらを共通のM次元ベクト ル空間に埋め込む。Mは、〃11,〃22以上の整数である。各D、をM次元ベクトル 空間で表現したベクトルとしその成分要素を伍海,ル)(i=1,2)と表す。基底 を取り直したので協は、4ヴと必ずしも同じではない。この操作で実際の成分 ベクトルを作成する。そしてこの成分表現を用いて2っのベクトルの最近接
距ee s(D且,D2)を、
s(b・・fi2)=c・・(・)−ll書li偉ll
で計算する。D,とD2は、 D,および】)、とは異なり同じ次元数なのでベクトル の内積を計算できる。その分子の内積D,・D2は、両方の文書に存在する単語
だけによる出現頻度の積の和である。それぞれの文書だけに存在する単語の 出現頻度による寄与は、分母のノルムの値に反映される。最終的に角度θは、
s(Di,D2)=cos(θ)の値より逆関数として求められるので2っの文書D1とD2 の類似度を角度θによって表現することが可能である。
ここまで、文書の特徴抽出に曖昧さをなくすための分析方法として述べた が、人為的に特定の単語に着目し、その重要度などを研究する場合もある。
そのたあに、上記の方法をより一般的に拡張し、これらの場合をすべて包含 する方法を提示する。s(D,,D2)の定義は上と同じであるが、ベクトルの内 積を一般化する。これは、ノルム計算の一般化も含んでいる。ベクトルDt の成分を伍漁.ノ1のとしたとき、2っの文書ベクトルD,、Dノの一般化された 内積を
D ・Dノ= f、・f」、Wi+f,、f,、w、+・…+f、Mf」 w
と定義する。Wl,w2,_..,WMは、非負の実数で重み(weights)という。これによ る内積は通常の 内積 の条件をすべて満たし重み付き内積と言われる。す べてのが1のときは、我々のはじめの方法と完全に一致する。また、ある 自然数があって、そのkに対する・・VAを0とすることは、考えているベクト ル空間の部分空間を扱うのと同じである。このためこれを極端にして分析す ると、文書検索に用いられてきた今までのベクトル空間モデルによる分析と 同一になる。コサイン尺度は、重み付き内積に対しても形式的に定義できる。
しかし、その値の絶対値が1以下であることを示さないと幾何学的な意味を 持たない。そのためには、非負の任意の実数w1,w2,._,1・VMに対して、
∂ W2たゐMΣ周× 喉2κオ〃Σ伺︵
k
ゆ
塩 塩
〃Σ周︵
を示せば十分である。この式が成立することはCauchy−Schwartzの不等式 から容易に証明できるので、重み付き内積の定義によるコサインの値は
wel1−defined であることがわかる。従って一般的なコサイン尺度をこの 内積を使って定義できる。なお重みを決あることは、文書検索の場合と同様 の議論をするか、または全く別の考えに基づいて決定する必要がある。
本論文では、すべての1,Vl,1,v,,._。WMが1のときを扱うが、文書抽出にも、特 に得たい情報だけをこの重みを使って抽出できる可能性がある。今後の研究 課題である。
§4.分析の手続きと例
ここでは、コサイン尺度の具体的な計算方法を述べ、1っの例を解析する。
重み1〃1,w2,_.,WMをすべて1とした場合の計算方法を示す。計算する原文書 をD,,D2としてその計算手続きを示す。
①各文書D, (i=1,2)のクロスリファレンステーブル(相互参照表)を作成 する。これは文献[5]のプログラムを用いる。
②各文書D、のクロスリファレンステーブルを合体させて文書Tを作る。
③文書Tの単語を辞書式順序に整列(ソート)する。その文書をT。とす るQ
④文書T。に対し、重複する単語を取り去り基底Bを作成する。
⑤各文書D,のクロスリファレンステーブルを、作成した基底Bを用い て表現し直し、それをD,とする。
⑥コサイン尺度COSθの値を計算し、その逆関数として角度θを求める。
現在は、これらの処理を連続に一括して行うプログラムは作成していない。
それぞれのステップごとに別々のプログラムを作り処理する。もし、重み
(weights)を考慮する必要が生じたらステップ⑤、⑥を変更すればよいから である。
文書の特徴を調べる文書例として、Edgar Allan Poeの英文を選択した。
著者は、散文と詩を多数書いているたあ、文書の特徴をっかむ例として適切
であると考えたことおよび文献[6]の研究におけるコーパスデータの多くを 利用できるためである。本論文では、個々の文書ごとの特徴ではなく、Poe の著作による散文の集まりと、詩の集まりの間の関連またはその差異を求め それをコサイン尺度で表す。
Poeの散文データとして、1834年の『The Assignation』、1838年の『A Predicament』、1843年の『The gold−bug』や『The Black−cat』、および
『The poetic principle criticism』などの数多くの作品合計88文書を選択し た。詩のデータは、1827年の『ADream』や1845年の『The Raven』、1849
年の『Annabel Lee』など計49作品を選んだ。これらのタイトルを含めた 88個の散文を一っにまとめた文書をD,とし、同様に49個の詩をまとめた文 書をD,とした。この段階では数字や記号は変更しないで処理する。この準 備の下で、上述のアルゴリズムをステップ①から実行する。
まずD,とD2のテキストファイルを別個に、我々のクロスリファレンスプ ログラムで処理をする。数字や記号等をカウントするかどうかはここで決め ることが出来る。我々はこれらを考慮しないことにした。この処理の結果、
出力として辞書式順序に整列した単語リストとその出現頻度を得る。
出力ファイルはテキストファイルなので、エディタにより簡単に2っの出力 ファイルを合体させることができ、ステップ②を終了する。
ステップ③は、プログラムを新たに作成しなくてもUNIX上のsortコマ ンドやMicrosoft Windowsのコマンドプロンプトでのsortコマンドで整列
(ソート)することが可能である。またはMicrosoft Exce1の「並べ替え」
機能でも出来る。これにより整列済みの合体テキストファイルT。を得る。
ステップ④では合体文書T。の中に、両方の文書に含まれていた単語が2行 となって出現している。そこでは同じ単語が、それぞれの文書中での出現頻 度で連続している。これを1っの単語の分類にしてその出現頻度の合計を計 算する。単に単語のみを得るのであれば、クロスリファレンスプログラムだ けでも処理できるが、各文書の出現頻度も同時に処理する必要があるのでそ のプログラムは使えない。そのため、ここでは新たにプログラムを自作した。
Visual Basicを用いたがC言語での作成も容易である。出力ファイルは、
辞書式順序に整列された基底Bとその基底に対する出現頻度である。基底と 出現頻度を別個に取り扱いができるようにしておく。これは次で計算過程の チェックに使う。
次にステップ⑤で、基底BによりD,、D2のベクトルの成分要素を表現し直 す。このために、C言語で次のような簡単なプログラムを作成した。まず、
基底Bをプログラム中に読込み、次にDのクロスリファレンス出力ファイル の単語リストとその出現頻度を読み込む。そしてD、の単語を1っずっ調べて 基底の中から同一のものを探し出し、見っかった基底にその頻度を登録する。
これによりD を作成する。これは文書ごとに処理する。出力ファイルには、
基底順に並べられた出現頻度だけ含まれて入れば十分である。これによりベ クトルD の成分要素を得る。ここでステップ④の出力結果と相互チェックし、
計算に誤りがないかを確認する。
ステップ⑥では、DbD2の成分要素からコサイン尺度を計算する。今のPoe の文書例では、基底の次元はM=10190である。散文の集合DIの次元は8953 で、詩の集合の次元は3049であった。次元Mが約1万なので、以降の処理 はExcelで行うことが可能である。もしMが65536を越えるときは、 C言語 でプログラムを作成しなければならないが、この例ではそれは不必要であっ た。Exce1にD,,D2の成分データを読み込んで計算する。その結果は、
s(Di,D2)=0.95072
となった。この値は、cosθ=0.95072なので、θを逆関数として求めると、
θニ18.1度となる。コサイン尺度s(D,,D2)の値は、1に近いほど2っの文書 ベクトルは、同じ方向を向いていることを示す。
以上のアルゴリズムにより文書の特徴を抽出するためにベクトル空間モデ ルの最近接法、すなわちコサイン尺度の計算を比較的簡単にできる。手によ る計算では不可能な分析がコンピュータを用いることにより短時間にできる
ため、多くの文書の分析が進みこの分野での発展が望まれる。
我々が得た値をより定量的に議論するたあには、多くの文書にっいて比較 分析をする必要がある。角度θによる表現は我々の幾何学的感覚と結びっき、
理解しやすいと思われる。その際、より多くの文書を比較するためには、処 理をもっと自動化する必要がある。一方、そのようにすると途中結果の出力 がないので、副産物として得られる種々のデータを再利用することが難しい。
そのためにはXML処理をするのが最もよい方法と考えている。
参考文献
1.Slnith, M.W.A.(1983), Recent experienceαnd neωdevelopments of methods for the determinαtion ofαuthorship, Association for Literary and Linguistic Computing Bulletin,11,pp 73−82 2.金明哲、村上征勝、「言語と心理の統計』(岩波書店)
3.北研二、津田和彦、獅々堀正幹、『情報検索アルゴリズム』(共立出版)
4.Salton,G., Wong, A., and Yang,C.S.(1975), A Vector spαce model
for Autornαtic Indexing, Communications of the ACM, Vol.18,
No.11., pp 613−620
5.橋本直樹(2005)、「英文の相互参照表」、
東京家政大学文学部英語英文学会、第11号、pp 77−88 6.橋本直樹(2003)、「パスワードとセキュリティ」、
東京家政大学文学部英語英文学会、第9号、pp 78−88