オントロジーマッチング技術について

機械学習技術 Clojure デジタルトランスフォーメーション技術 人工知能技術 セマンティックウェブ技術 オントロジー技術 確率的生成モデル サポートベクトルマシン スパースモデリング トピックモデル Python ウェブ技術 知識情報処理技術 自然言語処理 本ブログのナビ

オントロジーマッチング技術について

オントロジーマッチング技術とは、異なるオントロジー間の関係を調整するための技術となる。オントロジーは、ある分野の特定の領域に関する知識や概念を表現するための形式化された枠組みであり、異なるオントロジー間でのデータ統合や検索を可能にする。しかし、異なるオントロジー間では、同じ概念が異なる用語で表現されたり、同じ用語が異なる概念を表したりすることがあり、このような問題を解決するために、オントロジーマッチング技術が使用される。

オントロジーマッチング技術には、さまざまな手法がある。例えば、シソーラスや辞書などの既存の言語資源を使用する手法や、文法的なパターンマッチング、類似度計算、意味論的な解析を使用する手法など。これらの手法を使用して、異なるオントロジー間での用語や概念のマッチングを行い、オントロジーの統合やデータの統合を実現することができる。

オントロジーマッチング技術は、異なる分野や業界の間でのデータ統合や検索に適用される。また、オントロジーマッチング技術により、オントロジーの再利用性を高めることができ、オントロジーの維持管理や開発にかかるコストを削減することができる。ただし、オントロジーマッチング技術には、マッチングの精度を向上させるための課題や問題も存在しており、オントロジーマッチング技術の研究や開発が今後も進められている。ここでは、このオントロジーマッチング技術に関して「Ontology Matching」をベースに述べる。

Ontology Matching

オントロジーマッチングは、異なるオントロジーの意味的に関連するエンティティ間の対応関係を見つけることを目的とした技術となる。

これらの対応は、オントロジーエンティティ間の等価性や、結果、サブサンプション、ディスジョイントネスなどの他の関係を表すことができ、これまでに、データベース、情報システム、人工知能などの様々な観点から、多くの異なるマッチングソリューションが提案されてきている。

オントロジーマッチングを行うための方法としては、単純なストリングマッチングから始まり、様々な機械学習によるアプローチ、データの相互リンク、オントロジーのパーティショニングとプルーニング、コンテキストベースのマッチング、マッチャーのチューニング、アライメントのデバッグ、ユーザーによるマッチングへの参加など様々な手法が提案されている。

内容は以下のようなものとなる。

<Part1 Matching Problem(マッチング問題)>

  • Chapter1 Application(アプリケーション)
  • Chapter2 The Matching Problem(マッチング問題)
  • Chapter3 Methodology(手法)

<Part2 Ontology Matching Techniques(オントロジーマッチング手法)>

  • Chapter4 Classifications of Ontology Matching Technique (オントロジーマッチング手法の分類)
  • Chapter5 Basic Similarity Measures(基本的な類似度測定)       

様々なデータを扱うタスクの中で、自然言語の中でのsimilarity(類似性)を評価して利用するケースは多々ある。オントロジーのマッチングの観点から、個々のインスタンスレベル、グラフデータとしての集まりに対する類似性について述べられているオントロジーマッチング技術についてまとめる。

今回は類似性/非類似性の数学的な定義と、エンティティ間の距離の定義について述べる。

文字列のみを考慮したマッチング手法について述べる。

文字列ベースのメソッドは、文字列の構造(文字の並びとして)を利用する。文字列ベースのメソッドでは、通常、クラス Book と Textbook は似ていると判断するが、クラス Book と Volume は似ていないと判断する。

文字列を比較する方法は、文字列の見方によって様々な方法がある。例えば、正確な文字の並び、誤った文字の並び、文字の集合、単語の集合などとなる。(Cohen et al. 2003b)では,距離類似関数からトークンベースの距離関数まで,様々な文字列照合技術を比較している.ここでは、最も頻繁に使用される手法について述べる。

ここでは、(1)比較する文字列を共通のフォーマットに縮小するために用いられる正規化技術、(2)文字列間の共通の文字に基づいて類似性を求める部分文字列または部分配列技術、(3)ある文字列が別の文字列の誤ったバージョンである可能性をさらに評価する編集距離、(4)2つの文字列の関係に重みをつけることで文字列内の単語の重要性を確立する統計的尺度、(5)パス比較を区別している。

前回は文字列は文字の並びとして考えてきたが、一般的な活用を考えると、単語単体ではなく文字列(文)として扱うことが重要となる。ここで例えばtheoretical peer-reviewed journal articleという文字列を、辞書の項目に由来して、容易に識別可能な文字の並びである単語(theoretical, peer, reviewed, journal, article)に分割する時、これらの単語は、情報検索で使われるようなBag of Wordではなく、文法的な構造を持った配列の中に入っているものとなる。ここではpeerのような単語は、意味を持ち、ある概念と関連しているが、文章の中で適切に扱われるべきより有用な概念は、peer-reviewやpeer-reviewed journalなどの用語になる。

用語とは、概念を特定するためのフレーズであり、オントロジーの概念のラベル付けによく用いられるものになる。そのため、オントロジーのマッチングでは、文字列の中の用語を認識・識別することで、大きなメリットを得ることができる。これは、Peer-reviewed journal という用語を、査読者によって査読された科学定期刊行物というラベルで認識することに相当する(journal review paper ではない)。

言語ベースの手法では、自然言語処理(NLP)技術を使用して、テキストから意味のある用語を抽出する。これらの用語とその関係を比較することで、オントロジーのエンティティの名前やコメントの類似性を評価することができる。これらは何らかの言語的知識に基づいているが、大きく分けて(1)アルゴリズムのみに依存する手法(内在的な方法)と、(2)辞書などの外部リソースを利用する手法(外在的な方法)とに区別することができる。

名前や識別子を比較する代わりに、あるいはそれに加えて、オントロジー内のエンティティの構造の情報を比較することができる。この比較は、エンティティの内部構造、つまり名前やアノテーションの他に、プロパティや、OWLオントロジーの場合はデータタイプで値を取るプロパティを比較する場合と、エンティティとそのエンティティが関連する他のエンティティとの比較に細分化される。前者を内部構造、後者を関係構造と呼ぶ。

内部構造は主にデータベーススキーマのマッチングに利用され、一方、関係構造は正式なオントロジーやセマンティックウェブネットワークのマッチングでより重要になる。

内部構造に基づく手法は、文献では制約に基づくアプローチと呼ばれることもある(Rahm and Bernstein 2001)。これらの方法は、エンティティの内部構造に基づいており、プロパティのセット、プロパティの範囲(属性と関係)、カーディナリティまたはマルチプライオリティ、プロパティのトランジシティまたはシンメトリーなどの基準を使用して、エンティティ間の類似性を計算するものとなる。

個々の表現(またはインスタンス)が利用可能な場合は、マッチングシステムにとって非常に都合の良いケースとなる。2つのオントロジーが同じインディビジュアルのセットを共有している場合、マッチングは非常に容易になる。例えば、2つのクラスが全く同じ個人のセットを共有している場合、これらのクラスは同等であると強く推定することができる。

クラスが同じ個人の集合を共有していない場合でも、簡単には変更されない有形の指標に基づいて照合処理を行うことができる。例えば、本のタイトルは変化する理由がない。つまり、本のタイトルが違えば、それは同じ本ではないということになる。そうすると、マッチングは再び個々の比較に基づいて行われることになる。
このようにして、拡張手法を、(1)共通のインスタンスセットを持つオントロジーに適用するもの、(2)従来の手法を用いる前に個別の識別技術を提案するもの、(3)識別を必要としない、つまり異種のインスタンスセットに適用するものの3つに分類することができる。

前回までに紹介した基本的な類似性は、2つのエンティティ間の類似性または非類似性を評価するために、それらの適切な特性(名前、内部構造、拡張子)のみを考慮しているため、ローカルな方法と考えられる。今回は、様々なエンティティを比較するために、内部構造ではなく、エンティティの外部構造を使用するグローバルな方法について述べる。

オントロジー内にサイクルや関係的な類似性を支配する制約における非線形性が存在する場合、単純な類似性の計算はできない。そこで、反復的な類似性計算技術を行う必要性が出てくる。これらのアプローチは、制約に対する最適解を近似する形となる。それらマッチング問題を解決するアプローチとして、まず古典的な最適化手法によるアプローチがある。また、グローバルな手法としては、オントロジーやアラインメントの構造に基づいて、関連するエンティティの確率を計算する確率的な手法がある。更に、オントロジーとアラインメントのそれぞれのグローバルな解釈に依存した意味論的手法がある。

Taxonomic(分類学的な)構造の次によく知られている構造は、mereologic(部分と全体)構造、つまり、part-of関係に対応する構造となる。BookとVolumeという2つのクラスが等価であることがわかり、それぞれInBookとBookChapterというクラスとの間にmereologicな関係がある場合、この2つのクラスは同様に関係している可能性があることを示唆している。この推論は部分から全体という逆の方向にも当てはまる。これは、個別の部分がある場合、つまりジャーナルIssueの部分がeditporial、article、recesions、lettureに区別される場合としてある。
このような構造を扱う上での難しさは、単なる構造を持つプロパティを見つけるのが容易ではないことなる。例えば、ProceedingsクラスはInProceedingsクラスといくつかのwhole-part関係を持つことができるが、それはproperties communicationsによって表現されるものとなる。これらのInProceedingsオブジェクトは、今度はセクションプロパティで表現される単なる構造を持つことになる。

しかし、単なる構造をサポートする関係を検出することができれば、これをクラス間の類似性を計算するために使用することができる。類似した部分を共有する場合、それらはより類似しているといえる。これは、クラスの拡張を比較する際に、より有用となる。なぜなら、同じパーツのセットを共有するオブジェクトは同じであると推測できるからだ。

複合的な類似性の計算は、ノードの近隣を考慮して類似性を提供するだけなので、まだ局所的なものとなる。しかし、類似性はオントロジー全体を対象としており、最終的な類似性の値は、最終的にすべてのオントロジーエンティティに依存する可能性がある。さらに、オントロジーが有向非環状グラフに還元されていない場合、局所的な方法で定義された距離は、循環的に定義される可能性がある。これは最も一般的なケースである。例えば、2つのクラス間の距離が、そのクラス間の距離に依存するインスタンス間の距離に依存する場合や、オントロジー内に循環が存在する場合などに発生する。この循環する2つのグラフは、様々な意味でホモ・モルフィックとなる。

このようなケースのために、このグローバルな類似性を計算するための戦略を定義する必要がある。ここでは、そのような方法を2つ紹介する。1つ目は、グラフ内の類似性を伝播するプロセスとして定義されるもの、2つ目は、類似性の定義を一連の方程式に変換して、数値解析技術によって解くものとなる。

前回は類似性を表す方程式のセットを用いた反復的な類似性計算アプローチについて述べた。今回はそれらを更に拡張した最適化アプローチについて述べる。

期待値最大化(EM)は,最尤推定問題に対する反復アプローチとなる(Dempster et al. 1977)。隠れマルコフモデルのように、観測データが欠損していたり、部分的にしか存在しない場合に、(パラメトリックな確率分布の)パラメータの推定に用いられ、最大の事後評価を行う。欠損データは,観測されたデータをもとに,条件付期待確率によって推定される。言い換えれば,欠損データは,その上に潜在的に有用な情報を推測することで強化される。そして,欠損データが既知であると仮定して,尤度関数を最大化する。つまり、EMの各反復は、Eステップと呼ばれる期待と、Mステップと呼ばれる最大化の2つのステップで構成され、Eステップで近似された尤度関数の連続した局所的な改善を最大化するものとなる。これは固定点法であり、各反復において尤度を増加させることで収束が保証される。

期待値の最大化の例。オントロジーマッチング問題は、(Doshi et al. 2009; Thayasivam and Doshi 2011) において最尤推定として扱われている。この方法では、隠れた変数として扱われる対応関係の欠落がある場合に、観測されたデータからアライメントの最尤推定値を探索する。

前回は類似性を計算する為の、期待値最大化と粒子群最適化の2つの手法について述べた。今回はそれらの確率的アプローチに拡張したものに対して述べる。

確率的手法は、オントロジーマッチングにおいて、利用可能なマッチング候補を増やすためなどに汎用的に使用されることがある。本節では、ベイジアンネットワーク、マルコフネットワーク、マルコフロジックネットワークに基づいたいくつかの手法を紹介する。

意味論的手法の主な特徴は、その結果を正当化するためにモデル理論的な意味論を用いることとなる。したがって、これらは演繹的手法に分類される。他のグローバルな手法と同様に、純粋な演繹的手法は、オントロジーマッチングのような本質的に帰納的なタスクに対して単独ではあまりうまく機能しない。そのため、アンカーが必要となる。すなわち、例えば、(名前の同一性、外部リソース、またはユーザーの入力などに基づいて)等価であると宣言されたエンティティである。これらのアンカーは、演繹的手法を適用するための最初のアライメントを構成する。意味論的手法は、これらのシードアラインメントを増幅する役割を果たす。

意味論的手法の基本は、新たな対応関係を推論すること、あるいはアラインメントの充足性をテストすることにある。これは、アライメントセマンティクスを実装したリアソナーを用いることで実現できる。そのようなシステムはいくつかあるが、最も一般的に使われている手法は、還元セマンティクスを使うものになる(Meilicke et al. 2009; Meilicke and Stuckenschmidt 2009; Meilicke 2011)。

以下では、命題とモードの充足性に基づく意味論的手法と、新しい対応関係を推論するための記述論理に基づく手法を紹介する。アラインメントの不整合を検出し、それを修復する方法は次章で紹介する。

前回までに紹介した基本技術とグローバル技術は、マッチングシステムを構築するためのビルディングブロックとなる。オントロジーエンティティ間の類似性または非類似性が得られれば、あとはアライメントを計算するだけでよい。これには、より包括的な処理が必要となる。本章では、実用的なマッチングシステムを構築するために、特に以下の点を検討する。

      • 必要に応じて、大規模なオントロジーを処理するための準備。
      • 様々な類似性やマッチングアルゴリズムの組み合わせを整理する。
      • 背景知識ソースの活用。
      • エンティティ間の複合的な類似性を計算するために、基本的な手法の結果を集約する。
      • エンティティ間の複合的な類似性を計算するために基本的な手法の結果を集約する。
      • データからマッチャーを学習し、それをチューニングする。
      • 結果として得られた(非)類似性からアライメントを抽出する:実際、異なる特性を持つ異なるアラインメント実際、同じ(非)類似性から異なる特徴を持つ異なるアラインメントが抽出されることがある。
      • 曖昧さの解消、デバッグ、修復によるアラインメントの改善。

前回はオントロジーマッチング戦略の概略について述べた。今回はそれらのアプローチのひとつであるコンテキストベースのマッチングに対して述べる。

2つのオントロジーをマッチングさせる場合、比較のベースとなる共通の基盤がないことが多い。オントロジーマッチングの目的は、この基盤を見つけることである。これは、オントロジーの内容を比較することで達成される場合もあれば、オントロジーのコンテキスト、つまりオントロジーが使用されている環境との関係を扱うことで達成される場合もある。

この共通点は、オントロジーを外部のリソースと関連付けることで見つかることが多い。これらのリソースは、「広さ」「形式」「状態」の3つの特定の次元で異なる場合がある。

前回はオントロジーマッチング戦略の一つであるコンテキストベースのマッチングについて述べた。今回は別のアプローチのひとつである重み付けによる選択に対して述べる。

類似性を集約することで、マッチャーの構成を実現することができる。この集約は、異なるマッチャーから提供された類似性を取り、それらを単一の類似性にまとめる。マッチャーには、同じタイプのエンティティをそれぞれの類似性の異なる評価でマッチングさせる競合型と、異なるタイプのエンティティの類似性を特定する補完型がある。これらはそれぞれ異なった形で集約されなければならない。本節では、重み付け(マッチャーに異なる重みを与えて類似性を算術的に結合するもの)、投票、論証の3種類の集約を挙げている。

前回はオントロジーマッチング戦略の一つである重み付けによる選択に対して述べた。今回はアライメントソートのための学習について述べる。

このセクションでは、多くの正しいアラインメント(正例)と正しくないアラインメント(負例)を提示することで、アラインメントのソート方法を学習するアルゴリズムについて説明する。これらのアプローチの主な違いは、本項の技術が学習のためにいくつかのサンプルデータを必要とすることにある。これは、アルゴリズム自身が提供し、判断対象となる対応関係のサブセットのみを用意するなどして、ユーザーが判断することもできるし、外部のリソースから持ってくることもできる。

機械学習を用いたマッチャーは、通常、2つのフェーズで動作する。(1)学習またはトレーニング段階と、(2)分類またはマッチング段階である。第1フェーズでは、例えば、2つのオントロジーを手動でマッチングさせるなどして、学習プロセスのためのトレーニングデータを作成し、システムがこのデータからマッチャーを学習する。第2段階では、学習したマッチャーを新しいオントロジーのマッチングに使用する。得られたアラインメントに関するフィードバックが提供され、それが再びステップ(1)に反映されることもある。学習は、システムが継続的に学習できるように、オンラインで処理することもできるし、精度よりも速度を重視する場合はオフラインで処理することもできる。

ここでは、テキストの分類に用いられてきた有名な機械学習法である、ベイズ学習、WHIRL学習、ニューラルネットワーク、サポートベクター・マシーン、決定木などについて述べる。

今回はアライメントの抽出アプローチについて述べる。

マッチングの目的は、オントロジー間の十分な対応関係のセットを特定することにある。両オントロジーのエンティティ間の(非)類似性測定により、対応関係の大きなセットが得られる。結果的にアライメントの一部となるものは、類似性に基づいて抽出する必要がある。これは、類似性マトリクスに作用する特別な抽出方法、または既に抽出された事前整列に作用する方法によって達成することができる。ここでは、(非)類似性行列をアライメントに変換する抽出器自体と、対応関係の候補をこれらのフォーマットのいずれかに縮小するフィルタを区別する。

類似性フィルターは、例えば、ある閾値以下のセルをゼロにしたり、閾値以上のセルをユニット化したりすることで、(非)類似性マトリックスを変換する。アライメント抽出器は、類似性マトリックスからアライメントを生成する。これがこのセクションのメイントピックである。アライメントフィルターは、類似性フィルターと同じ種類の操作を使用して、アラインメントをさらに操作することができる。
ユーザーはアライメントフィルターとして機能することができる。アライメントは、エンティティペアをその類似性スコアとランクとともに表示し、適切なペアの選択をユーザーに委ねることで得られる。このユーザーの入力は、ヘルパー環境における決定的なアンカーとして、システムを助けるためのアンカーの定義として、あるいは学習アルゴリズムにおける関連性のフィードバックとして受け取ることができる。
さらに一歩進んで、類似性スコアからのアラインメント抽出を自動化するアルゴリズムを定義することも可能である。この課題には、対象となるアライメントの特性に応じて、様々な戦略を適用することができる。

今回はアライメントの曖昧性改善について述べる。

アライメントの改善とは、生成されたアライメントの品質を測定し、品質が向上するようにアライメントを縮小し、場合によっては結果のアライメントを拡大することを繰り返すこととなる。最初のアラインメントの縮小にはいくつかの可能性があるため、使用するものを選択する必要がある。測定値が特定の閾値に達すると、このプロセスの結果としてアライメントが選択される。選択されたアライメントがマッチャーにフィードバックされるのではなく、 直接出力として提供される場合、改善はアライメントフィルターとして機能する。

一般的なアライメント改善のフレームワーク。最初のアラインメント(A′′)はマッチャーによって生成される。これを固有の尺度(一貫性、一致性、制約違反)に基づいて評価し、互換性のあるサブアラインメントのセット(C)を決定する。これらのうちの1つが選択され、入力アライメント(A)としてプロセスにフィードバックされ、マッチャーがそれを改善できるようにする。このプロセスは、尺度が満足のいく値を示すまで反復され、最後に計算されたアライメント(A′)が最終的に返される。

<Part3 Systems ans Evaluation(システムと評価)>

  • Chapter8 Overview of Matching System(マッチングシステムの概要)
  • Chapter9 Evaluation of Matching System(マッチングシステムの評価)

<Part4 Representing, Explaining, and Processing Alignment>

  • Chapter10 Frameworks and Formats: Representing Alignment (フレームワークとフォーマット:アライメントを表現する)
  • Chapter11 User Involvement(ユーザー参加型)
  • Chapter12 Processing Alignment(アライメントの処理) Part5 Conclusion(結論)
  • Chapter13 Conclusions

<Appendix>

  • Appendix A Legends of Figure
  • Appendix B Running Example
  • B.1 culture-shop.owl
  • B.2 library.owl
  • B.3 scralign.rdf
  • B.4 Alternative Alignment for Evaluation
  • Appendix C Exercises
  • Appendix D Solutions

コメント

  1. […] 様々なデータを扱うタスクの中で、データ同士のsimilarity(類似性)を評価して利用するケースは多々ある。オントロジーのマッチングの観点から、個々のインスタンスレベル、グラフデータとしての集まりに対する類似性について述べられているオントロジーマッチング技術の5章から7章までをまとめる。 […]

  2. […] 前回に引き続きオントロジーマッチングより自然言語の類似性について。前回は類似性の概要を述べ、類似性を見るアプローチには、文字列のみを考慮する方法と、文字列を解釈するために何らかの言語的知識を用いる方法の2つあることを述べた。今回は、文字列のみを考慮した手法について述べる。 […]

  3. […] オントロジーマッチングより自然言語の類似性について。前回は文字列ベースの類似度のアプローチについて述べた。今回は言語ベースのアプローチについて述べる。 […]

  4. […] 前回に引き続きオントロジーマッチングより自然言語の類似性について。前回は、データの型やドメインの情報等の内部構造を領したアプローチについて述べた。今回はそれらを更に拡張したアプローチについて述べる。 […]

  5. […] 前回に引き続きオントロジーマッチングより自然言語の類似性について。前回は内部構造を用いたアプローチについて述べた。今回は外部構造に基づいたアプローチについて述べる。 […]

  6. […] 前回に引き続きオントロジーマッチングより自然言語の類似性について。前回はグラフパターンを用いたアプローチの概要とTaxonomicなアプローチについて述べた。今回はグラフパターンのもう一つのアプローチであるメレオロジックなアプローチについて述べる。 […]

  7. […] オントロジーマッチング […]

  8. […] 前回に引き続きオントロジーマッチングより。前回はアライメントのソートのための機械学習について述べた。今回はマッチングのチューニングアプローチについて述べる。 […]

  9. […] 前回に引き続きオントロジーマッチングより。前回はアライメントのチューニングのアプローチについて述べた。今回はアライメントの抽出アプローチについて述べる。 […]

  10. […] 前回に引き続きオントロジーマッチングより。前回はアライメントの抽出について述べた。今回はアライメントの曖昧性改善について述べる。 […]

  11. […] Ontology Matching […]

  12. […] オントロジーマッチング […]

  13. […] 言語の類似性へのアプローチ […]

タイトルとURLをコピーしました