人工知能技術 ウェブ技術 知識情報処理技術 セマンティックウェブ技術 自然言語処理 機械学習技術 オントロジー技術 オントロジーマッチング技術
様々なデータを扱うタスクの中で、自然言語の中でのsimilarity(類似性)を評価して利用するケースは多々ある。オントロジーのマッチングの観点から、個々のインスタンスレベル、グラフデータとしての集まりに対する類似性について述べられているオントロジーマッチング技術の5章から7章までをまとめる。
まず類似性の定義は以下のようになる。
定義 1 (類似性) 類似性 σ : o × o → R は,一対の実体から実数への関数であり, 次のような 2つの対象物の類似性を表す。 ∀x,y ∈o, σ(x, y) ≥ 0 (正性) ∀x∈o,∀y,z ∈o, σ(x, x) ≥ σ(y, z) (極大性) ∀x,y ∈o, σ(x, y) = σ(y, x) (対称性)
類似性を表す関数σは正であり、自分と自分(同一)の類似性がMaxの値を示し、xとyの類似性とyとxの類似性は同じとなる。ここで類似性の逆となる非類似性を定義すると以下のようになる。
定義2(非類似性) 一組の実体が与えられたとき、非類似性δ:o×o→Rは、 一組の実体から次のような実数に変換する関数である。 ∀x, y ∈ o, δ(x, y) ≥ 0 (正性) ∀x ∈ o, δ(x, x) = 0 (極小性) ∀x, y ∈ o, δ(x, y) = δ(y, x) (対称性)
非類似関数は、自分と自分との類似性が極小になる以外の正性、対称性は類似関数のそれと同じになる。
ここで類似関数に「非対称(非)類似性」を導入したというアプローチ(Tverski 1977)もある。その場合、非対称尺度または前類似性という用語を使用する。非類似性よりも制約の多い概念として、距離や超計量法などがある。(参考論文)
またコンピューターの数学の基礎のパートで述べた「同値関係」は(1)a〜a、(2)a〜bならばb〜a、(3)(a〜bかつb〜c)ならばa〜cの3つの関係が成り立つものとして定義される。類似性の定義と比較すると、(3)の推移律まで成り立てば等価(同一のもの)、(2)の対称性(交換律)と(2)の反射律のみ成り立つものは類似と解釈することができる。
定義 3 (距離) 距離(またはメトリック)δ : o × o → R は、定性不等式と三角不等式を満たす非類似関数である。 ∀x,y∈o, δ(x,y) = 0 if and only if x=y (確定性) ∀x,y,z∈o, δ(x,y) + δ(y,z) ≥ δ(x, z) (三角不等式)
x=yの時には、δは0となり、xとy、yとzの距離は、xとzの距離以上となる。
定義4(超距離空間) 一つの実体が与えられたとき、超距離空間上では以下のような関数となる。 ∀x,y,z∈o, δ(x,y) ≤ max(δ(x,z),δ(y,z)) (超距離空間不等式)
特に、異なる種類のエンティティの類似性を比較しなければならない場合は、測定値を正規化する必要がある。考慮される空間の大きさに比例して、各値を同じ尺度に減らすことが、正規化の一般的な方法となる。
定義 5 (正規化された(非)類似性) (非)類似性が実数の単位区間[0 1]に渡っている場合、 その類似性は正規化されていると言われる。 (非)類似度の正規化されたものをσ(δ)とする。
正規化された類似度σは、正規化された非類似度δ=1-σに対応し、その逆もまた然りである。以降は、ほとんどが正規化された測定値であり、2つのエンティティ間の非類似度関数が0と1の間の実数を返すと仮定して述べる。
正規化には2つの方法がある。一つは(i)可能な最大値を使用するもので、もう一つは(ii)実際の最大値を使用するものになる。可能性のある最大値が常に存在するとは限らないので、今後はすべて実際の最大値を基準にして正規化する。
以上の定義から、類似性と非類似性は、エンティティのペアを実数にマッピングする完全な関数であると見ることができる。実体の有限集合に対するこのような関数の代替表現としては、行列がある。行列には、プログラム間で交換可能な有限のデータ構造であるという利点がある。
名前ベースのテクニック
用語集の中には、文字列を比較するものがある。これらのメソッドは、エンティティの名前、ラベル、またはコメントに適用して、類似したものを見つけることができる。これは、クラス名やURIの比較にも使用できる。
本節では、集合Sは文字列の集合、すなわち、アルファベットL上の任意の長さの文字の配列を表します:S = L∗。空の文字列をεとし,∀s,t∈S, s + tは文字列sとtを連結したものである。|s[i] for i∈[1 |s|]は,sのi番目の位置にある文字を表す。
例 5.6 (文字列) 文字列 ‘article’ はアルファベットの a, r, t, i, c, l, e で構成されており、その長さは 7 文字です。peer-reviewed’と’ ‘は他の2つの文字列(’-‘と’ ‘はアルファベット)で、これらを連結した’peer-reviewed’+’ ‘+’article’は、長さが21の文字列’peer-reviewed article’となる。
文字列sは、他の文字列tの部分文字列である。これは、2つの文字列s′とs′が存在し、′+s+s′=tとなる場合(bys∈tと表記)である。2つの文字列が等しい(s=t)のは,s∈tとt∈sのときだけである.tの中でsが出現する数(s#tとする)は,s′+s+s′=tとなるような異なるペアs′,s′′の数である.
例 5.7 (基板) 文字列 ‘peer-reviewed article’ は、文字列 ‘peer-‘+’review’+’ed article’=’peer-reviewed article’ のため、文字列 ‘review’ を部分文字列として持つ。文字列’homonymous’には、文字列’o’が3回、文字列’mo’が2回、文字列’nym’が1回だけ出現する。
オントロジーのエンティティをラベルに基づいて比較する際の主な問題は、同義語と同音異義語の存在によって発生する。
同義語とは、同じエンティティの名前に使用される異なる単語のことです。例えば、ArticleとPaperは、ある文脈では同義語となる。
同音異義語とは、異なる実体を表すのに使われる言葉となる。例えば、名詞としてのpeerには、「同等」という意味と、「貴族の一員」という意味がある。1つの単語が複数の意味を持つことは、多義性とも呼ばれる。
そのため、2つのエンティティが同じ名前であれば同じものであり、異なる名前であれば異なるものであると、確実に推論することはできない。このようなことが起こる理由は、synonymyやhomonymy以外にも特に以下のような場合にある。
– 英語、フランス語、イタリア語、スペイン語、ゲルマン語、ギリシャ語など、異なる言語の言葉が同じ実体の名前に使われている。例えば、英語のBookは、フランス語ではLivre、ロシア語ではknigaと呼ばれる。
– 同じ単語でも、許容される綴りや略語、任意の接頭辞や接尾辞の使用などの違いにより、構文上のバリエーションが生じることがある。例えば、Compact disc、CD、C.D.とCD-ROMは、ある文脈では同等と考えられる。しかし、他の文脈では、CDはCorps diplomatique(外交官)を意味する場合もあるし、ディレクトリを変更する(change directory)場合もある。
このようなバリエーションは、1つのオントロジー内でも発生するが、オントロジー間ではさらに頻繁に発生する可能性がある。しかし、日々のコミュニケーションにおいて、物事の名前の付け方は非常に重要であり、名前は類似性や非類似性の良い指標となる。さらに、2つの用語を表す文字列の類似性・非類似性にかかわらず、それらの用語の類似性を評価するために、さまざまな手法が考案されている。
文字列のみを考慮する方法と、文字列を解釈するために何らかの言語的知識を用いる方法の2つに大別される。
次回は、文字列をベースとした類似性について述べる。
コメント
[…] 前回の類似性の概要を述べ、類似性を見るアプローチには、文字列のみを考慮する方法と、文字列を解釈するために何らかの言語的知識を用いる方法の2つあることを述べた。今回は、文字列のみを考慮した手法について述べる。 […]
[…] 類似性(similarity)について(1) 概要 […]
[…] 前回に引き続きオントロジーマッチングより自然言語の類似性について。前回は、データの型やドメインの情報等の内部構造を領したアプローチについて述べた。今回はそれらを更に拡張したアプローチについて述べる。 […]
[…] 自然言語の類似性(similarity)(1) 概要 […]
[…] 前述の自然言語処理技術は、いくつかの機械学習技術と組み合わされることが多い。例えば、文章から切り出した単語群からその文章に特徴的な単語を抽出したり、単語間の出現頻度の類似性を関連性として抽出したり、様々な応用がある。 […]
[…] 前回はグラフパターンを用いたアプローチの概要とTaxonomicなアプローチについて述べた。今回はグラフパターンのマッチングに対して反復的な類似性の計算を行うアプローチについて述べる。 […]
[…] Basic Similarity Measures(基本的な類似度測定) 1.類似性(similarity)の基礎(1) 概要 2.類似性(similarity)の基礎(2)文字列からのアプローチ […]
[…] 間データを用いた意味の判定(計算)ができるようになる。例えば「類似している:similarity)」では、「similarity(類似性)の基礎(1)概要」で述べたように以下のような式で定義する事ができる。 […]