Download - Webインテリジェンス論 Protégé演習«–...Reasoning → Classify taxonomy メニューを実行 フロリダがノンアルコールカクテル として分類されない
Webインテリジェンス論 Protégé演習
演習の概要
カクテルオントロジーの作成
クラス階層
プロパティ階層
クラス公理
推論機構の利用
Protégé
世界で最も有名かつ利用されているオントロジー構築支援ツール ユーザ登録数: 約20万人 (2012年6月)
拡張可能なプラグイン機構 http://protegewiki.stanford.edu/index.php/Protege_Plu
gin_Library
最新バージョン: 3系:3.4.8 (3.5 Beta)
4系:4.1 (4.2 Beta)
開発元:Stanford大学 Medical Informatics
入手先:http://protege.stanford.edu/
Protégéにより編集可能な要素
ヘッダ要素
クラス要素
プロパティ要素
インスタンス
カクテルオントロジーの作成
オントロジ技術入門 第4章 OWLウェブオントロジ言語の記述例より
カクテル 主材料 副材料
スクリュードライバー ウォッカ オレンジジュース
バラライカ ウォッカ ホワイトキュラソー
レモンジュース
ギムレット ジン ライムジュース
ジンアンドイット ジン スイートベルモット
フロリダ オレンジジュース レモンジュース
カクテルオントロジーにおける クラス階層の作成
スピリッツ 蒸留酒.醸造酒を蒸留して作られた酒 (出典: wikipedia) ウォッカ,ジン
リキュール 蒸留酒に果実やハーブなどの副材料を加えて調製した酒 (出典:
wikipedia) ホワイトキュラソー,スイートベルモット
ジュース 果汁飲料.
レモンジュース,ライムジュース,グレープフルーツジュース,オレンジジュース
カクテル 主にベースとなる酒に,他の酒またはジュースなどを混ぜて作るアルコール飲料 (出典: wikipedia)
スクリュードライバー,バラライカ,ギムレット,ジンアンドイット,フロリダ
材料
カクテルオントロジーにおける クラス階層の作成
クラス名を入力
下位クラス の作成
兄弟クラス の作成
クラス の削除
カクテルオントロジーにおける プロパティ階層の作成
サブプロパティ の作成
プロパティ の削除
オブジェクト プロパティ の作成
オブジェクト プロパティ
データタイプ プロパティ
定義域の 追加
値域の 追加
カクテルオントロジーにおける プロパティ階層の作成
材料プロパティ
定義域:カクテル
値域:ジュース,スピリッツ,リキュール
カクテルオントロジーにおける クラス公理の作成
スクリュードライバーは,主材料がウォッカ,副材料がオレンジジュースからできるカクテル
OWLのプロパティ制約により表現
スクリュードライバークラスは,主材料プロパティを持ち,その値の少なくとも一つはウォッカクラスのインスタンスである
スクリュードライバークラスは,副材料プロパティを持ち,その値の少なくとも一つはオレンジジュースクラスのインスタンスである
カクテルオントロジーにおける クラス公理の作成
owl:Thing
副材料: オレンジジュース
主材料:ウォッカ
カクテル
スクリュードライバー
カクテルオントロジーにおける クラス公理の作成
制約の 作成
カクテルオントロジーにおける クラス公理の作成
スクリュードライバークラスは,主材料プロパティを持ち, その値の少なくとも一つはウォッカクラスのインスタンスである
カクテルオントロジーにおける クラス公理の作成
<owl:Class rdf:ID="スクリュードライバー"> <rdfs:subClassOf rdf:resource="#カクテル"/> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <owl:ObjectProperty rdf:about="#主材料"/> </owl:onProperty> <owl:someValuesFrom rdf:resource="#ウォッカ"/> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:someValuesFrom rdf:resource="#オレンジジュース"/> <owl:onProperty> <owl:ObjectProperty rdf:about="#副材料"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf> </owl:Class>
スクリュードライバークラスの定義
RDF/XML構文
Protégé
カクテルオントロジーにおける クラス公理の作成
カクテル 主材料 副材料
スクリュードライバー ウォッカ オレンジジュース
バラライカ ウォッカ ホワイトキュラソー
レモンジュース
ギムレット ジン ライムジュース
ジンアンドイット ジン スイートベルモット
フロリダ オレンジジュース レモンジュース
同様に,上記の表を参考にして,プロパティ制約を作成
推論機構の利用
Protégéと推論エンジンを連携させることにより,クラスの自動分類を行うことができる Reasoning → Pellet 1.5.2 (direct)
Reasoning → Classify Taxonomy メニュー
推論機構を利用して,以下のカクテルを自動的に判別させる
ウォッカベースカクテル
アルコール入りカクテル
ノンアルコールカクテル
ウォッカベースカクテルの定義
カクテルクラスの下位クラス
主材料プロパティを持ち,その値の少なくとも一つはウォッカクラスのインスタンスであるという制約を持つ
上記を必要十分条件とする
主材料がウォッカであるカクテル
ウォッカベースカクテルの分類
分類されない
必要条件の場合,主材料がウォッカであっても, ウォッカベースカクテルであるとは限らないという 意味になるため
necessary & sufficient 必要十分条件.完全公理. necessary 必要条件.部分公理.
ウォッカベースカクテルの分類
<owl:Class rdf:ID="ウォッカベースカクテル"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty> <owl:ObjectProperty rdf:ID="主材料"/> </owl:onProperty> <owl:someValuesFrom rdf:resource="#ウォッカ"/> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Class rdf:ID="カクテル"/> </rdfs:subClassOf> </owl:Class>
部分公理(必要条件)
<owl:Class rdf:ID="ウォッカベースカクテル"> <owl:equivalentClass> <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:ID="カクテル"/> <owl:Restriction> <owl:someValuesFrom rdf:resource="#ウォッカ"/> <owl:onProperty> <owl:ObjectProperty rdf:ID="主材料"/> </owl:onProperty> </owl:Restriction> </owl:intersectionOf> </owl:Class> </owl:equivalentClass> </owl:Class>
完全公理(必要十分条件)
ウォッカベースカクテルの分類
Reasoning → Classify taxonomy メニューを実行
推論されたクラス階層
推論結果を表示
アルコール入りカクテルの定義
材料にアルコールが含まれているか,そうでないかを区別
スピリッツとリキュールはアルコールが含まれており,ジュースにはアルコールは含まれていない
アルコール飲料というクラスを作成し,その下位クラスをスピリッツとリキュールとする
アルコール入りカクテルの分類
アルコール入りカクテルの定義
カクテルクラスの下位クラス
材料プロパティを持ち,その値の少なくとも一つはアルコール飲料クラスのインスタンスであるという制約を持つ
上記を必要十分条件とする
主材料,副材料の別を問わず, 材料にアルコール飲料を含むカクテル
アルコール入りカクテルの分類
アルコール入りカクテルの分類
Reasoning → Classify taxonomy メニューを実行
ノンアルコールカクテルの分類
カクテルのうちアルコール入りカクテル以外のもの
フロリダはノンアルコールカクテル
主材料:オレンジジュース
副材料:レモンジュース
補集合(owl:complementOf)を用いて定義可能
アルコール入り カクテル
カクテル owl:Thing
ノンアルコールカクテル
ノンアルコールカクテルの分類
① ②
③
④
Help → Protégé-OWL Syntaxメニューを実行
ノンアルコールカクテルの分類
Reasoning → Classify taxonomy メニューを実行
フロリダがノンアルコールカクテル として分類されない
ノンアルコールカクテルの分類
フロリダクラスのプロパティ制約
開世界仮説では,これだけの条件からは, フロリダに他の材料(アルコール飲料) が含まれる可能性が排除できない
フロリダクラスの材料プロパティ(およびその下位プロパティ)の値は, すべてオレンジジュースクラスまたはレモンジュースクラスの インスタンスである
ノンアルコールカクテルの分類
<rdfs:subClassOf> <owl:Restriction> <owl:allValuesFrom> <owl:Class> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#オレンジジュース"/> <owl:Class rdf:about="#レモンジュース"/> </owl:unionOf> </owl:Class> </owl:allValuesFrom> <owl:onProperty> <owl:ObjectProperty rdf:ID="材料"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf>
RDF/XML構文
ノンアルコールカクテルの分類
ジュースがアルコール飲料ではないということが定義できていない
ジュースクラスとアルコール飲料クラスの関係は互いに素であることを定義 owl:disjointWith
ジュース アルコール飲料 owl:Thing
ノンアルコールカクテルの分類
ジュースクラスと互いに素であるクラスを追加
ノンアルコールカクテルの分類
Reasoning → Classify taxonomy メニューを実行
Protégé: オントロジーの保存
保存場所を指定
参考文献
オントロジ技術入門―ウェブオントロジとOWL
著者:AIDOS
出版社:東京電機大学出版局
ISBN:4501540109
Amazon URL:http://www.amazon.co.jp/dp/4501540109