• 検索結果がありません。

SPAIDA: 関係性の動的な補完機構を用いたSPARQLクエリ実行機構の提案

N/A
N/A
Protected

Academic year: 2021

シェア "SPAIDA: 関係性の動的な補完機構を用いたSPARQLクエリ実行機構の提案"

Copied!
5
0
0

読み込み中.... (全文を見る)

全文

(1)

人工知能学会研究会資料 SIG-SWO-041-05

SPAIDA:

関係性の動的な補完機構を用いた

SPARQL

クエリ実行機構の提案

Toward a SPARQL Query Execution Mechanism using Dynamic

Mapping Adaptation -A Preliminary

Report-足立拓也

1

福田直樹

2

Takuya Adachi

1

Naoki Fukuta

2

1

静岡大学情報学部

1

Faculty of Informatics, Shizuoka University

2

静岡大学学術院情報学領域

2

College of Informatics, Academic Institute, Shizuoka University

Abstract: 本研究では,クエリ記述に使用したオントロジーとクエリ対象のオントロジーのバージョ ン違いなどの状況に適用可能な,関係性の動的な補完機構の設計を示し,本機構を用いて SPARQL クエリを実行できるシステムについて述べる.本機構を用いることにより,検索対象のエンドポイン トにオントロジーの情報がない場合,入力として与えたオントロジーを用いて,マッピングによる関 係性の補完を行うことによって,SPARQL クエリの記述を支援できると考えられる.

1

はじめに

Linked Open Data を提供している SPARQL エンド ポイントは,少なくとも 565 のエンドポイントが確認 されており,240 個のエンドポイントが稼働しており1 数あるエンドポイントの中からユーザが必要としてい る情報を格納しているエンドポイントを検索する研究が 行われている [Noguchi 13b, Adachi 16b, Hasnain 16].

エンドポイントに格納されているデータには,オン トロジーがなく,RDF で表現されていることがある. 例えば,DBpedia Japanese のようにデータの登録とオ ントロジーの更新が独立して非同期に行われるときに 顕著になる [加藤 16].オントロジー中の語彙を用いて SPARQL クエリを記述し,オントロジーを用いた推論 を行うことができず,オントロジーがないような状況 でクエリを実行する場合がある. 本研究では,この解決のために,関係性の動的な補 完機構を用いた SPARQL クエリ実行機構を提案する. 本機構を用いることにより,検索対象のエンドポイン トにオントロジーの情報がない場合,入力として与え たオントロジーを用いて,マッピングによる関係性の 連絡先: 静岡大学        静岡県浜松市中区城北 3-5-1        E-mail: [email protected] 1http://sparqles.ai.wu.ac.at/availability 補完を行うことによって,SPARQL クエリの記述を支 援できると考えられる.

2

背景

SPARQL エンドポイント上でのオントロジーとデー タとのミスマッチを解消する手段の 1 つとして,オン トロジーマッピング [Noy 09] を用いて SPARQL クエ リを行う手法を実装した SPARQLoid[Fujino 14] があ る.SPARQLoid は重み付きオントロジーマッピング [Atencia 12] を利用するクエリを生成するために,既存 の SPARQL の文法を拡張したクエリ言語と,その変換 エンジンのことを呼ぶ.拡張したクエリ言語の構文に は,重み付きオントロジーマッピングに付与された重 みに基づく並び替えやフィルタリングが可能である. 拡張された SPARQL クエリである SPARQLoid ク エリを記述することは,記述が SPARQL クエリより 複雑になる部分があり,初めて SPARQL を知った人や SPARQL を利用する人にとって,それらの拡張構文の 記述のみならず,適切な語彙の選択にも何らかの支援が あることが望ましいと考えられる.これらの課題に対し て,SPARQL クエリの語彙・エンドポイント検索支援の 手法である SuPARQooL[Noguchi 13a] と SuPARQooL を拡張した試作機構 [Adachi 16b][足立 16a] がある.試

(2)

作機構において,幅広いエンドポイントに対して,語 彙・エンドポイント推薦機構を行う際,処理に時間がか かってしまうことが課題であった.SPARQL Endpoint Status2から取得できるエンドポイントの特徴に基づく 機械学習による手法等を用いて処理時間の削減の実現 や,検索者がオントロジーマッピングの詳細な情報を 意識せずに,クエリを記述した場合にも,オントロジー マッピングを効果的に利用可能なクエリへ拡張を行える ための機構が試作されている [Adachi 16b][足立 16b]. 使用するオントロジーマッピングに対して動的なオン トロジーマッピングの生成を用いて,SPARQLoid クエ リにおけるデバッグ支援を試作している [Adachi 16a]. オントロジーマッピングを用いた拡張 SPARQL クエ リでは,オントロジーの語彙を用いてクエリ記述を行 う.しかしながら,検索対象のエンドポイントにオント ロジーの情報がないため,オントロジーの語彙を用い てクエリを記述されない場合がある.図 1 に解決した い課題の概略を示す.本研究では,このような課題の解 決のため,関係性の動的な補完機構を用いた SPARQL クエリ実行機構の実現を目指す.

3

SPAIDA

我々が提案する関係性の動的な補完機構を用いた SPA-RQL クエリ実行機構を SPAIDA と呼ぶ.SPAIDA の目 的は,オントロジーマッチング [Jim´enez-Ruiz 11, David 11, David 07] やインスタンスマッチング [Nguyen 16] で得 られたマッピングを利用し,クエリ記述に使用したオ ントロジーを用いて,検索対象のエンドポイントに合 わせた SPARQL クエリへ変換し実行できるようにす ることである.また,用意したマッピングにクエリ記 述と検索対象のエンドポイントとの関係性が存在しな い場合,関係性の動的な補完機構を用いることにより, マッチングツール等で得られるような精度を持つマッ ピングを短時間で生成し,クエリを実行することがで きる機構を試作している. 図 2 に SPAIDA を用いたクエリ実行の概観を示す. SPAIDA では,SPARQL や拡張 SPARQL クエリ[Fujino 14] を入力された時,入力されたクエリから語彙を抽出し, 用意されたマッピングや検索対象のエンドポイントに 対して,調査用クエリを実行し関係性の確認および調 査を行う.調査によって関係性がない,または不十分 だと判断された場合,関係性の動的な補完機構を用い て,クエリ記述にある語彙と検索対象のエンドポイン トとの必要最小限のマッチングを行い,補助的な一時 マッピングを生成する.その後,関係性を用いてクエ リを調整し実行することで,クエリ結果を取得するこ とができる. 2http://sparqles.ai.wu.ac.at

3.1

マッピングインスペクター

SPAIDA では,クエリ記述中のオントロジーの語彙 と検索対象となるエンドポイントとの関係性を表すマッ ピングが必要であり,クエリ実行前に用意されたマッ ピングに該当するものがあるか確認しなければならな い.また,用意されたマッピングに該当するマッピン グがあったとしても,そのマッピングがクエリ記述に 適したものであるか判断することは難しい場合がある [Fujino 14]. SPAIDA は,用意されたマッピングの調査やマッピ ング先の情報を調査するための機能を用意している. クエリ記述に基づいて調査するためのクエリを生成し, マッピングが読み込まれているエンドポイントと検索 対象のエンドポイントにクエリを実行する.クエリ結 果を用いて,用意されたマッピングに該当するものが あるか,そのマッピングがクエリ記述に適したものか の判断を自動的に行う. 図 3 に試作システム上のマッピングデータおよびマッ ピング先の情報の表示例を示す.ここでは用意したオン トロジーマッピングから “子育てしやすい環境づくり” という語彙とのマッピングが存在するかを検索し,対応 する語彙と重みを取得し,対応する語彙と “rdf:type” および “rdfs:subClassOf” の関係で結ばれている語彙 がいくつあるかを検索し,取得した結果を表示してい る [足立 16c].このような表示に基づいて,マッピング を利用してオントロジーを用いた SPARQL クエリが 実行できるかを確認する.

3.2

関係性の動的な補完機構

SPAIDA は,SPARQL クエリ記述中のオントロジー の語彙と検索対象のエンドポイント中のクラス等との マッピングがない場合,オントロジーマッチング手法 [Euzenat 13] を動的に用いて補助的な一時オントロジー マッピングを生成し,それを併用することを可能にす る機構を試作している. Algorithm 1 に動的マッピング拡張アルゴリズムを示 す.動的マッピング拡張アルゴリズムは,拡張 SPARQL クエリ (Qe) と検索対象のエンドポイント (endpoint), クエリ記述に使用したオントロジー (O),用意したマッ ピング (Mp) を入力として与え,関係性を動的に補完し たマッピング Mdを出力する.まず,extractTerms(Q) では,関係性の動的な補完を行う語彙を取得するため, 与えられたクエリからリソースを示す語彙 (T ) を抽出 する.次に,getMappings(T ,Mp) では,マッチング用 の SPARQL クエリ (Qs) を生成するため,用意した マッピング (Mp) から抽出した語彙を含むマッピング (Mt) を取得する.抽出した語彙を含むマッピング (Mt) が空 (ϕ) ではなかった場合,generateQuery(T ,Mt,O)

(3)

!"#$%& '()*"&( !#%+"$$%# !"#$%& '()*"&( !#%+"$$%# ,-./"0%# 1-$("# 2%3 ,%4 563 2%3 ,%4 563 !"#$%& !"#$%$ 2%378,%4 '9:9;28<='2=>;28? @A9B98C D$()*"&(8-8E'()*"&(8F8G !"#$%& '()*"&( '9:9;28<='2=>;28? @A9B98C D$()*"&(8-8E'()*"&(8F8G !#%+"$$%# ,-./"0%# 1-$("# 2%3 ,%4 563    図 1: 解決したい課題の概略 !"#$%# !"#&'() *+%",$+-!"#$%&'( !"#$%&'( クエリ中の語彙との 関係性を取得 関係性を用いて クエリを変換して実行 クエリ対象となる語彙を 使わずに記述したクエリを実行 変換したクエリの 実行結果を取得 )*#$ './01 *23045360 &/743869 $9:;/5360 './01 <69=/0360 './01 &/:.73 ,93676>1 &%?)!360/ 図 2: SPAIDA を用いたクエリ実行の概観 では,抽出した語彙 (T ) と取得したマッピング (Mt), クエリ記述に使用したオントロジー (O) を用いてマッ チング用の SPARQL クエリ (Qs) を生成する.もし 抽出した語彙を含むマッピング (Mt) が空 (ϕ) であっ た場合には,generateQuery(T ,O) のように抽出した 語彙を含むマッピングがないことを前提としたマッチ ング用の SPARQL クエリ (Qs) を生成する.その後, executeQuery(Qs,endpoint) でクエリ対象のエンドポ イントにマッチング用の SPARQL クエリ Qsを実行 し,クエリ結果 R を取得する.抽出した語彙 T とク エリ結果 R との関係性 A を matching(T ,R) で求め, makeMappings(A) で関係性を動的に補完したマッピ ング Mdを出力する. 検索対象のエンドポイントへ大量の SPARQL クエ リを実行してしまうと,検索対象のエンドポイントが 負荷のため落ちてしまったり,クエリ実行が拒絶され てしまう恐れがある.これらを考慮し,動的オントロ ジーマッチングを行う際には,SPARQL クエリの実行 回数を制限し,1 回の SPARQL クエリで得られる結果 に基づいてマッチングを行うことで試作を進めている. 図 3: 使用するオントロジーマッピングとターゲットオ ントロジーのインスペクター上の表示例 図 4 に SPIDA で利用するオントロジーマッピング の概略を示す.図 4 中の丸枠はクラスを表し,ひし形 はインスタンスを表す.この手法は,Student のインス タンスを取得するクエリが記述され,用意されたマッ ピングにクエリ記述中のクラスと検索対象の語彙との マッピングが存在する,または同じ語彙が使われてい た場合,マッピング先である検索対象の語彙に結ばれ ているサブクラスを調査する.調査の結果としてサブ クラスがあることが確認された場合,クエリ記述中の 語彙とそのサブクラスとの一時オントロジーマッピン

(4)

Algorithm 1 動的マッピング拡張アルゴリズム

Require: Qe, endpoint, O, Mp

Ensure: Md (on-the-fly mappings)

1: T = extractTerms(Q); 2: Mt= getMappings(T ,Mp); 3: if Mt!= ϕ then 4: Qs = generateQuery(T ,Mt,O); 5: end if 6: else 7: Qs = generateQuery(T ,O); 8: end else 9: R = executeQuery(Qs,endpoint); 10: A = matching(T ,R); 11: Md = makeMappings(A); 12: return Md グを生成する.生成された一時マッピングを併用する ことにより,検索対象のエンドポイントが OWL-DL3 等の推論が行うことができない場合でも,インスタン スを取得することが可能となる. !"#$%& '()*"&( !#%+"$$%# ,-./"0%# 1-$("# 2%3 ,%4 563 !"#$%$ !"#$%& '()*"&( '78792:;<'2<=92:> ?@7A7:B C$()*"&(:-:D'()*"&(:E:F !#%+"$$%# ,-./"0%# 1-$("# 2%3 ,%4 563  2%3 ,%4 1-GG6&H 1-GG6&H 図 4: SPAIDA で利用するオントロジーマッピング

3.3

試作システム上の動作例

図 5 に試作システム上での拡張 SPARQL クエリを 変換した例を示す.このクエリは,本研究室で作成し ている木曽町オントロジーと LOD を用いて,子育て しやすい環境づくりを実現するための具体的な施策を 検索するクエリを変換し,クエリを拡張したものであ る.オントロジーマッピングを格納した SPARQL エン ドポイントがある場合,そのエンドポイントに格納さ れたオントロジーマッピングと生成した一時オントロ ジーマッピングを併用できるようにクエリを拡張して いる. 3http://www.w3.org/TR/owl-features/ 図 5: 拡張 SPARQL クエリを変換した例 図 6 に試作システム上での図 5 の実行結果の提示し た例を示す.一時オントロジーマッピングを生成し,用 意したオントロジーマッピングと併用することにより, “まちづくりアプリの開発・活用” や “医療・福祉シス テムの構築” といったものがあることを確認できる. 図 6: 図 5 の SPARQL クエリの実行結果

4

おわりに

本研究では,クエリ記述に使用したオントロジーと クエリ対象のオントロジーのバージョン違いなどの状 況に適用可能な,関係性の動的な補完機構の設計を示 し,本機構を用いて SPARQL クエリを実行できるシス テムについて述べた. 本機構を用いることにより,検索対象のエンドポイ ントにオントロジーの情報がない場合,入力として与 えたオントロジーを用いて,マッピングによる関係性 の補完を行うことによって,SPARQL クエリの記述を 支援できると考えられる.

(5)

謝辞

本研究の一部は,JST CREST の支援を受けたもの である.

参考文献

[Adachi 16a] Adachi, T. and Fukuta, N.: Toward Better Debugging Support on Extended SPARQL queries with On-the-fly Ontology Mapping Gener-ation, in Proc. of The 11th International Workshop

on Ontology Matching (OM2016) (2016), (poster)

[Adachi 16b] Adachi, T., Yamada, N., and Fukuta, N.: Towards Better Query Coding Support Utilizing Ontology Mappings, in Proc. of

1st International Workshop on Platforms and Ap-plications for Social problem Solving and Collective Reasoning (PASSCR2016), pp. 96–99 (2016)

[Atencia 12] Atencia, M., Borgida, A., Euzenat, J., Ghidini, C., and Serafini, L.: A Formal Seman-tics for Weighted Ontology Mappings, in Proc. of

the 11th International Semantic Web Conference (ISWC2012), pp. 17–33 (2012)

[David 07] David, J., Guillet, F., and Briand, H.: As-sociation Rule Ontology Matching Approach,

In-ternational Journal on Semantic Web and Infor-mation Systems, pp. 27–49 (2007)

[David 11] David, J., Euzenat, J., Scharffe, F., and Santos, dos C. T.: The Alignment API 4.0, in

Semantic Web Journal 2(1), pp. 3–10, IOS Press

(2011)

[Euzenat 13] Euzenat, J. and Shvaiko, P.: Ontology

Matching, Springer-Verlag Berlin Heidelberg (2013)

[Fujino 14] Fujino, T. and Fukuta, N.: Utiliz-ing Weighted Ontology MappUtiliz-ings on Federated SPARQL Querying, in Kim, W., Ding, Y., and Kim, H.-G. eds., Lecture Notes in Computer

Sci-ence, Vol. 8388, pp. 331–347, Springer-Verlag

(2014)

[Hasnain 16] Hasnain, A., Mehmood, Q., Zainab, e S. S., and Hogan, A.: SPORTAL: Searching for Public SPARQL Endpoints, in Proc.

of the 15th International Semantic Web Conference (Posters & Demos) (ISWC2016) (2016)

[Jim´enez-Ruiz 11] Jim´enez-Ruiz, E. and Grau, B. C.: LogMap: Logic-based and Scalable Ontology Matching, in Proc. of the 10th International

Se-mantic Web Confernece (ISWC2011), pp. 273–288

(2011)

[Nguyen 16] Nguyen, K. and Ichise, R.: Ranking Feature for Classifier-based Instance Matching, in

Proc. of the 15th International Semantic Web Con-ference (Posters & Demos) (ISWC2016) (2016)

[Noguchi 13a] Noguchi, H., Fujino, T., and Fukuta, N.: On Implementing a SPARQLoid Query Coding Support - Vocabulary Discovery for Queries with Weight Ontology Mappings, in

Proc. of International Workshop on Linked Data in Practice (LDPW 2013), pp. 33–38 (2013)

[Noguchi 13b] Noguchi, H., Fujino, T., and Fukuta, N.: On Implementing SPARQLoid and its Query Coding Support Framework - Querying with Weighted Ontology Mappings, in Proc. of

the 3rd Joint International Semantic Technology Conference (JIST2013) (2013), (demonstration)

[Noy 09] Noy, N. F.: Ontology Mapping, in Staab, S. and Studer, R. eds., Handbook on Ontologies, pp. 573–590, Springer-Verlag Berlin Heidelberg (2009) [加藤 16] 加藤 文彦:DBpedia Japaense の現状 2016, 第 39 回セマンティックウェブとオントロジー研究会 (SIG-SWO-039) (2016) [足立 16a] 足立 拓也, 山田 直希, 野口 宙毅, 福田 直 樹:オントロジーマッピングに基づく SPARQL クエ リ記述支援システムの拡張機構の試作, 第 38 回セマ ンティックウェブとオントロジー研究会 (SIG-SWO-038) (2016) [足立 16b] 足立 拓也, 福田 直樹:オントロジーマッピン グを用いた SPARQL クエリにおけるマッピングに関 する詳細知識を必要としないシステムの試作, 第 30 回人工知能学会全国大会 (JSAI2016), 1N4-OS-19a-5in2 (2016) [足立 16c] 足立 拓也, 福田 直樹:拡張 SPARQL クエ リのための動的オントロジーマッチングとチューニ ング支援機構の試作, 第 39 回セマンティックウェブ とオントロジー研究会 (SIG-SWO-039) (2016)

参照

関連したドキュメント

そればかりか,チューリング機械の能力を超える現実的な計算の仕組は,今日に至るま

これはつまり十進法ではなく、一進法を用いて自然数を表記するということである。とは いえ数が大きくなると見にくくなるので、.. 0, 1,

ヒュームがこのような表現をとるのは当然の ことながら、「人間は理性によって感情を支配

本論文での分析は、叙述関係の Subject であれば、 Predicate に対して分配される ことが可能というものである。そして o

長期入院されている方など、病院という枠組みにいること自体が適切な治療とはいえないと思う。福祉サービスが整備されていれば

優越的地位の濫用は︑契約の不完備性に関する問題であり︑契約の不完備性が情報の不完全性によると考えれば︑

第一五条 か︑と思われる︒ もとづいて適用される場合と異なり︑

下山にはいり、ABさんの名案でロープでつ ながれた子供たちには笑ってしまいました。つ