私のブックマーク:オントロジー
武田英明
AIにおけるオントロジーはいまや大変幅広い文脈をもっている。AIにおいてオントロジーという用語が受け入れられたのは直接的には知識表現(KR)の分野での知識共有プロジェクトが大きな役割を担ったが、自然言語分野での大規模シソーラスや知識システム開発などとむすびつき、多様な文脈が生まれている。近年はWWWや電子商取引の基礎技術になると注目されている。このため多様なリソースが現在、WWWに公開されている。以下ではWWWでアクセス可能なものを使って、オントロジーの現状を紹介する。
1.INTORODUCTION オントロジーとは何か
まず知りたいのはオントロジーが何か、ということであろう。これに関しては一つの答えを出すことは困難である。AIの中での歴史的にみればGruberの定義[1-1]がある。GruberはOntolinguaを提唱した人物であり、このころのオントロジー研究推進のシンボル的役割を果たした。現実にオントロジーの研究者が何を考えているかについてはKR96(The
Fifth International Conference on Principles of Knowledge Representation
and Reasoning)で行われたパネルの資料[1-2]が役に立つ。このパネルでは先のOntolinguaなどを開発してきたスタンフォード大学のKSL(Knowledge
Systems Laboratory)[5-1]のRichard Fikes、エンタープライズオントロジーTOVE[4-5]の開発をしているトロント大学のMark
Fox、 formal ontologyの研究グループ[5-2]を率いているItalian National Research
CouncilのNicola Guarinoなどが参加している。それぞれのオントロジーの位置付け方が違うのがよくわかる。またこのなかのGuarinoが書いた論文[1-3]がオントロジーを理解する助けになる論文の一つである。インターネットコマースなどの関係から理解するには[1-4]の中のオントロジーの説明も簡潔である。日本語では大阪大学の溝口理一郎氏のチュートリアル[1-5]がある。
-
[1-1]
- Whatis an Ontology?
http://www-ksl.stanford.edu/kst/what-is-an-ontology.html
-
[1-2]
- KR96 Panel for Ontologies
http://www-ksl.stanford.edu/KR96/Panel.html
-
[1-3]
- KBKS95 paper
http://www.ladseb.pd.cnr.it/infor/Ontology/Papers/KBKS95.pdf
-
[1-4]
- Ontology.Org - Enabling Virtual Business
http://www.ontology.org/main/papers/faq.html
-
[1-5]
- Tutorial of Ontological Engineering
http://www.ei.sanken.osaka-u.ac.jp/japanese/tutorial-j.html
2. ONTOLOGY BASE オントロジーを見る/使う
理屈はどうあれ、オントロジーを見てみるあるいは使ってみるというのもオントロジーを理解する一つの方法であろう。いくつかのオントロジーがWWWを通じて公開されている。
Cyc Project[4-2]は元々は大規模知識ベースを構築することが目的であったが、その成果のうち、上位部分(抽象的部分)はCYCオントロジーとしてフリーではないが、プロジェクトのページからWWWで入手可能である[2-1]。約3000個の用語が含まれている。
Ontolinguaで作られたオントロジーはスタンフォード大学KSLのontology
serverを利用して蓄積され、利用可能である[2-2]。
SENSUS[4-4]はWordNetなどさまざまなシソーラスを元にそれらを再構成して利用可能にしようするプロジェクトであり、WEB用のインタフェース(Ontosaurus)[2-3]を通じてアクセスすることができる。
イタリアのCNR-ITBMのオントロジーグループ[5-3]によるON9[2-4]は主に医療分野のための基礎概念を提供している。これもWWWで公開されている。
自然言語におけるシソーラスについては様々あるが、オントロジー研究者になじみ深いWordNet[2-4]はデータファイルあるいはWWWから利用することができる。Mikrokosmosも言語系のプロジェクトであるが、この中のオントロジーも参照可能である[2-6]。
-
[2-1]
- Cyc Public Ontology
http://www.cyc.com/cyc-2-1/index.html
-
[2-2]
- Stanford KSL Network Services
http://www-ksl-svc.stanford.edu/
-
[2-3]
- Ontosaurus
http://mozart.isi.edu:8003/sensus/sensus_frame.html
-
[2-4]
- ON9
http://saussure.irmkant.rm.cnr.it/onto/ON9.2a/index.html
-
[2-5]
- WordNet
http://www.cogsci.princeton.edu/~wn/
-
[2-6]
- Introduction to Mikrokosmos Ontology
http://crl.nmsu.edu/Research/Projects/mikro/htmls/ontology-htmls/onto.index.html
3. LANGUAGE, FORMAT & STANDARD オントロジーを書く
オントロジーに関係するフォーマットあるいは規格に関わる情報は多数存在する。オントロジーそのものを記述するフォーマットであるOntolingua[3-1]やその中で使われている知識表現記法KIF[3-2]は初期のころからよく使われたフォーマットである。OKBC(Open
Knowledge Base Connectivity)[3-3]では、KIF + Ontolingua Frame Ontologyを知識交換言語のプロトコルとして提案している。これはFIPAでも採用されている。
FIPA(The Foundation for Intelligent Physical
Agents)[3-4]はマルチエージェントシステムの標準化を提案する団体であるが、この中でオントロジーサーバのためのプロトコルの標準も提案している。
OIL(Ontology Interchange Language)[3-5]はKRにもWWWにもなじみやすいオントロジーの記述方法を提供するプロジェクトであり、XMLとRDFに基づく構文でかかれている。OILの構文はXOL(XML
Ontology Exchange Language)[3-6][3-7]を元にしている。これは生物学の研究者の情報交換のニーズから始まったのものであるが、仕様は一般性がある。OKBC-liteのセマンティックスをXMLのシンタックスで書いている。
オントロジーの内容の方に関してはIEEE Standard
Upper Ontology (SUO) Study Group[3-8]が一般目的用上位レベルオントロジーの標準化を提案している。ここではオントロジーを自然言語と論理で記述しようとしている。
なお、上記のものは基本的にフレームを知識表現の基本としているが、これとは別にJohn
Sowaが提唱するCoceptual Graphもオントロジー記述のフォーマットの一つである。これはSowa本人のページ[3-9]、あるいは[3-10]からフォーマットからシステムまで様々な情報を得ることができる。OML(Ontology
Markup Language)[3-11]はOILやXOLと同様にXMLのシンタックスを用いている記法であるが、セマンティックスはConceptual
Graphを利用している。これはHTMLそのもののタグにオントロジーを埋め込むというSHOEプロジェクト[3-12]の流れを汲んでいる。
このようにオントロジーとXMLはいまや密接になっている。WWWコミュニティからもよりセマンティックスを取り込もうというアプローチも盛んである。この点に関してはSemantic
Web[3-13]やRDF Schema[3-14]を参照されたい。