オントロジー
武田英明
AIにおけるオントロジーはいまや大変幅広い文脈をもっている。AIにおいてオントロジーという用語が受け入れられたのは直接的には知識表現(KR)の分野での知識共有プロジェクトが大きな役割を担ったが、自然言語分野での大規模シソーラスや知識システム開発などとむすびつき、多様な文脈が生まれている。近年はWWWや電子商取引の基礎技術になると注目されている。このため多様なリソースが現在、WWWに公開されている。以下ではWWWでアクセス可能なものを使って、オントロジーの現状を紹介する。
1.INTORODUCTION オントロジーとは何か
まず知りたいのはオントロジーが何か、ということであろう。
これに関しては一つの答えを出すことは困難である。AIの中での歴史的にみればGruberの定義[1-1]がある。GruberはOntolinguaを提唱した人物であり、このころのオントロジー研究推進のシンボル的役割を果たした。現実にオントロジーの研究者が何を考えているかについてはKR96(TheFifth International Conference on Principles of Knowledge Representationand Reasoning)で行われたパネルの資料[1-2]が役に立つ。
このパネルでは先のOntolinguaなどを開発してきたスタンフォード大学のKSL(KnowledgeSystems Laboratory)[5-1]のRichard Fikes、エンタープライズオントロジーTOVE[4-5]の開発をしているトロント大学のMarkFox、 formal ontologyの研究グループ[5-2]を率いているItalian National ResearchCouncilの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]を参照されたい。
IDEF[3-15]は視覚的な記号を用いて様々な活動をモデル化するための標準を提供しているが、このなかでIDEF5はオントロジーのための標準を提供している。
- [3-1]
- Knowledge Interchange Format (KIF)
http://logic.stanford.edu/kif/kif.html - [3-2]
- Ontolingua Home Page
http://www.ksl.Stanford.EDU/software/ontolingua/ - [3-3]
- Open Knowledge Base Connectivity Working Group
http://www.ai.sri.com/~okbc/ - [3-4]
- FIPA
http://www.fipa.org/ - [3-5]
- OIL
http://www.ontoknowledge.org/oil/ - [3-6]
- XOL Ontology Exchange Language
http://www.ai.sri.com/pkarp/xol/ - [3-7]
- bio-ontology
http://smi-web.stanford.edu/projects/bio-ontology/ - [3-8]
- Standard Upper Ontology Study Group
http://ltsc.ieee.org/suo/index.html - [3-9]
- Conceptual Graphs
http://www.bestweb.net/~sowa/cg/ - [3-10]
- Conceptual Graphs Home Page
http://www.cs.uah.edu/~delugach/CG/ - [3-11]
- Ontology Markup Language (OML)
http://wave.eecs.wsu.edu/CKRMI/OML.html - [3-12]
- SHOE
http://www.cs.umd.edu/projects/plus/SHOE/ - [3-13]
- Semantic Web roadmap
http://www.w3.org/DesignIssues/Semantic - [3-14]
- Resource Description Framework (RDF) Schema Specification 1.0
http://www.w3.org/TR/rdf-schema/ - [3-15]
- IDEF
http://www.idef.com/
4. PROJECTS オントロジー関わるプロジェクトを知る
現在進行中あるいは過去のオントロジーに関わるさまざまなプロジェクトの情報が参照可能である。すでに過去のプロジェクトであるが歴史的に意味で重要なARPAKnowledge Sharing Effortのページは今でも公開されている[4-1]。前述のCyc Projectも開発そのものは終了しているが言語、オントロジーなどを提供している[4-2]。またヨーロッパの知識工学に関する代表的なプロジェクトであったCommonKADSは現在も改良が加えられつつ、公開されている[4-3]。自然言語系からの取り組みとしては前述のSENSUSも重要なプロジェクトである[4-4]。分野特定のオントロジーのプロジェクトとしてはエンタープライズオントロジーTOVEを開発したトロント大学のページも有益である[4-5]。エンタプライズオントロジーにはほかにはイギリスのAIAI(ArtifcialIntelligence Applications Institute)のページも参考になる[4-6]。
近年のプロジェクトとしてはDAML(DARPA Agent Markup Language Program)[4-7]がオントロジーに関係している。この中でのスタンフォード大学KSLはオントロジー統合の研究などをするようである[4-8]。同じスタンフォード大学のデータベースグループのGio WiederholdらはScalable Knowledge Composition (SKC)プロジェクトというのを行っている[4-9]。オントロジーを含む知識ベース開発環境としては同じくスタンフォード大学のKnowledge Modeling Groupが長年にわたってProtege[4-10]というシステムを作っており、多くの人/グループが利用している。ここではツールキットを得ることができる。
On-To-Knowledgeプロジェクト[4-11]は主にヨーロッパの企業と大学で行われているIT分野でのオントロジー利用の図るプロジェクトである。このプロジェクトの一環として後述のOILも開発されている。
その他オントロジーエディタOntoEdit[4-12]、WWWページに注釈をいれることで知識流通をはかるOntoBroker[4-13]なども開発されている。
- [4-1]
- ARPA Knowledge Sharing Effort
http://ksl-web.stanford.edu/knowledge-sharing/ - [4-2]
- Cycorp: Makers of the Cyc Knowledge Server for artificial intelligence-based Common Sense
http://www.cyc.com/ - [4-3]
- CommonKADS, Engineering and Managing Knowledge
http://www.commonkads.uva.nl/ - [4-4]
- sensus
http://www.isi.edu/natural-language/resources/sensus.html - [4-5]
- TOVE Manual
http://www.eil.utoronto.ca/tove/ontoTOC.html - [4-6]
- The Enterprise Project
http://www.aiai.ed.ac.uk/~entprise/enterprise/ - [4-7]
- DAML.org
http://www.daml.org/ - [4-8]
- DAML Project for Stanford Knowledge Systems Laboratory
http://www.ksl.stanford.edu/projects/DAML/ - [4-9]
- CALABLE KNOWLEDGE COMPOSITION
http://www-db.stanford.edu/SKC/ - [4-10]
- The Protege project
http://camis.stanford.edu/projects/protege/ - [4-11]
- Welcome to Ontoknowledge
http://www.ontoknowledge.org/ - [4-12]
- Ontology Engineering Environment OntoEdit
http://ontoserver.aifb.uni-karlsruhe.de/ontoedit/ - [4-13]
- OntoBroker Homepage
http://ontobroker.aifb.uni-karlsruhe.de/
5. SITES オントロジーを研究する
上記のプロジェクトを行っている研究グループを含めて、中心的な研究拠点および集約的なフォーラムをいくつか挙げる。