2011-02-13

セマンティックWebのオントロジ

この数日、各地で大雪だったようですね。
皆さんは、大丈夫でしたか?

そんな中、愛媛の実家から、宅急便が届きました。
開けてみると、バレンタイン(?)なのか、リラックマのチョコレート。


・・・が、一瞬でリラックマ命のわが子に、確保されてしまいました。
気の毒な私に、代わりのチョコレートをあげようという方、14日に限らず受け付けていますので、いつでもどうぞ?(笑)




-------------------------------------------------------------------


さて、今日の本題。

<●「セマンティックWebのオントロジ」>

先日、大阪市立大学 創造都市研究科の授業「情報資源管理論」の中で、セマンティックWebについて勉強しました。
自分の選択テーマについて30~40分ほどの発表(+1時間ほどの質疑応答や先生の補足に耐える)というスタイルの授業でした。

今回、自分のための再整理を兼ねて、ごくかいつまんでセマンティックWebとオントロジについて、記してみます。
予備知識もない中、一ヶ月足らずのにわか勉強ですので、いろいろと細かい不備もあろうかと思いますが、そこは大人の対応をお願いします。(笑)

なお、オントロジ言語OWLをベースに学習したのですが、細かいタグの説明は割愛し、セマンティックWebという概念についてのみ、ご紹介する形にしたいと思います。
ここではセマンティックWebについて、白紙の方に説明することをイメージしていますので、そのつもりでご覧ください。


○授業で使用したスライド

スライドの左右部分をクリックすることで、前後のスライドを表示することができます。






このスライドの内容を少しだけ膨らませて、以下にセマンティックWebとオントロジについて、簡単に紹介したいと思います。



○現在のWebの問題点

まず、こんな経験はないでしょうか?

大阪の梅田近辺で、水曜の午後に営業している歯医者を探したい。

そこでサーチエンジンを検索すると・・・
→ 「梅田」太郎さんが開業している「梅田歯科」がヒットしたりする。
→ 実際に梅田にあるのか、いちいちページを開いてみないと判らない。
→ 梅田近辺の歯医者もヒットするが、水曜やっているか、いちいちページを開いてみないと判らない。


これらは、そもそもコンピュータが、入力した「梅田」が地名なのか、人名なのかを理解していないことに起因していますね。

最近のサーチエンジンはお利口ですから、梅田(あるいは「大阪」)の場合、ほぼ地名だと判断してくれるようです。
ですが、梅田太郎さんの病院を知りたいケースであれば、逆にまともにヒットしない恐れがありますね。また、梅田ですから地名と判断しやすいだけで、「中野」だとか「山口」のようなケースですと、地名も人名も多くヒットしてしまいそうです。

また、営業時間などがWebサイトに掲載されていても、その判断ができない場合もあります。
典型的な例は、「診察日:月~土」などと書かれている場合ですね。これではとても、コンピュータに水曜やっているかどうか判断させるのは、無理でしょう。
仮に、「梅田 歯医者 営業 水曜」などといった条件で検索しても、ヒットしないわけです。

当然と言えば当然ですが、これらは現在のWebやサーチエンジンでは、解決が難しい問題です。


○セマンティックWebとは?

先ほどの課題を解決するには、コンピュータがWebに掲載されている情報の意味を理解できればいい、ということになりますね。
  • ホームページに記載されている「梅田」が、人名なのか、所在地なのか。
  • 「診察日」と書かれている表記が、「営業日」にあたるものなのか。
現在のWebが人間が読んで理解するためのものであるのに対し、コンピュータにWeb上の情報を理解させ、こうした判断をできるようにしたWebを、「セマンティックWeb」(Semantic Web=「意味を持つWeb」)と呼びます。

これは、現在のWebの生みの親とも言うべきTim Berners-Leeが提唱した概念です。彼はこれを、コンピュータが処理できる「データの網の目」(Web of data)とも呼んでいます。

具体的な例を挙げましょう。 「梅田」というデータは「所在地」のデータである、というように、データにデータを付与しておきます(データに対するデータを、「メタデータ」といいます)。

「診察日」であろうと、「診療日」であろうと、「開業日」であろうと。これらがいずれも「営業日」を表すもの、というデータを付与すれば、それを読んだコンピュータが理解できますね。



○セマンティックWeb提唱までの背景
  • もともとインターネットは、大学間などある程度クローズされた中で、文書間をリンクするなどといったものを想定。

  • Bernars-Leeが、情報をハイパーテキストとするWebを提唱。これが現在のWebにつながったが、リンク先がどういう意味・情報なのか、その説明などをする機能を持たない。
    現在のWebは、(当初の理念からみれば)整合性などを犠牲にして単純さ・分散を志向し、巨大なハイパーシステムとして普及した。

  • そのため、現在のWebは元の理念からすれば、欠陥だらけ。「ある意味では驚くほど役立たず」(Tim Berners-Lee)

  • そこで、Webの発展のため、1994年にW3C(WWW Consortium)が設立された。XMLなど、新しい仕様の策定を行っている。今後、セマンティックWebについても、舵取り役を期待されている。


 ○セマンティックWebを支える技術

セマンティックWebを表す際に、それを支える技術を階層的に示した、下図が用いられます(これを、レイヤーケーキと呼びます)。



このレイヤーケーキは、Tim Berners-Leeが用いているものですが、技術の進歩・普及などにより、今までに何度かの改訂を経ています。 以下、底辺から順にざっと紹介します。
  • URI/IRI
    底辺に位置し、セマンティックWebを大元で支える技術です。Web上のリソースを識別するためのもので、ホームページのURLなどに代表されるものです。

  • RDFとXML
    RDFについては、後述します。XMLは、機械処理を可能にするためのマークアップ記述言語です。簡潔で厳密、使いやすい標準的な技術です。

  • Query:SPAQRL, Ontology:OWL, RDFS, Rule:RIF
    メタデータで用いられる、意味情報の共有するための技術です。OWLとRDFSについては、後述します。

  • Trust, Proof, Unifying logic
    セマンティックWebを利用しての推論が、正しいことを証明する技術です。

  • Crypto
    全体を支える暗号技術です。



○RDFとは

RDFとは、“Resource Description Framework”の略です。 Web上のリソースに関する情報を、明瞭かつ論理的に表現するデータモデルで、それを記述するための言語体系です。すべてのデータを、主語+述語+目的語で表現します。

例えば、以下の図の場合。



「自分の名前は、井上である」ということを表す図(ラベル付き有向グラフ)です。
この場合、主語=「自分」、述語=「~の名前は~である」、目的語=「井上」となります。 これらは、URIを使用して、記述することができます。 (これは例ですので、架空のURIを使用しています)


これを、XMLとRDFで表現すると、以下のようになります。


このようにRDFは、
  • 情報の意味
  • 他の情報との関係
  • Web上の場所
・・・などを表現することができます。

さらに、RDFS(RDF Schema)により、RDFの語彙を定義することができます。
RDFは述語(プロパティ)を用いて言葉の関係を示しますが、述語自体がどういうものかは、このRDFSで定義します。グループ分け、プロパティの定義域、値域、階層関係なども表現できます。
 こうして、「梅田」が「所在地」であるということを、きちんと定義すればよいのですね。


ところで皆さんは、ご贔屓のブログを、どのようにチェックされていますか? RSSリーダーを使っておいでの方は、RDFの実用例として理解しやすいのではないでしょうか。


上の写真は、サンプルのGoogleリーダーです。 ざっくりというと、自分のお気に入りサイトが更新されたら、知らせてくれる仕掛けですね。

RSS(RDF Site Summary)は、対応しているブログから、タイトルや更新日付などの情報を受取っています。それは、何がタイトルなのか、何が更新日付なのかを、RDFを用いてやり取りしたり、表現したりすることができるからなのです。


○OWLとは?

概念の記述、関係、形式化、推論などを示すものが、オントロジーです。
オントロジーによって、「診療日」と「営業時間」が同じものを指すことを表現することができます。 (上に書いたRDFSは、RDFの語彙を定義できますが、概念やリソースの関係を精密に表現するのは難しい面もあります)
そして、オントロジー言語として、W3Cに勧告されているのがOWLです。

OWLと書いて、「アウル」と読みます(「オウル」と呼ぶケースもあるようですが)。
これは、Web Ontology Languageの略です。普通に考えるとWOLになりそうですが、他にWOLと略される言葉があることから、フクロウ(知恵の象徴)をもじってOWLになったそうです。

オントロジーには、語彙の関係を示すレベルから、厳密な論理的帰結を導く概念記述を行うものまで、さまざまあります。
ここでは詳しく触れませんが、OWLにはニーズに応じるための3つのサブ言語があり、以下のようなさまざまな関係などを表現することができます。
  • 2つ以上の論理組み合わせ(積、和など)
  • 取り得る値に関する制約
  • 出現回数に関する制約
  • 他のプロパティとの関係

・・・と書いても、イメージできませんよね?書いている私自身、何が何だかよく判らなくなりそうに・・・。(笑)


○OWLで表現できる例

例えば、以下のようなことをOWLで表現できます。
  • ピアノ・トリオは、3人の奏者で構成され、少なくとも1人はピアノ奏者である、と条件づけ。
  • 「広報部報道課」と「コミュニケーション本部広報部」から、報道課はコミュニケーション本部の一部門であることを推論できる。
  • 学生番号が判れば、学生を特定できることを示す。
とてもじゃないですが、ここでOWLの詳しい記述はしきれません。ご興味がある方は、スライドに掲載している参考文献をご覧ください。


○セマンティックWebの今後の課題

セマンティックWebの有用性を疑う人はほとんどいないとは思うのですが、実現までのハードルは、極めて高そうですね。素人の私が考えるだけでも、いろいろな課題が思い浮かびます。
  1. 誰がメタデータを付与するのか。モチベーション?意識せずに参加できるしくみ?
  2. データの信頼性・安全性をどのように担保するのか?
  3. キラーコンテンツが必要?
  4. 人工知能開発とのオーバーラップ?
これらが妥当な懸念かどうかすら怪しいですが(笑)、特に1,2について、何らかのスキームができないとしんどいでしょうね。

最近の無料ブログツールはほとんど、RSS対応ですね。そのため、今ブログを書いている人の大半は、自分が意識していないうちにRSS対応のブログを発信している状況です。
こんな感じで、ユーザーが意識しないうちに、一定のルールに乗ってしまう仕組みが必要に思います。


・・・ということで、セマンティックWebのおさらいでした。
今ざっと読み返しましたが、予備知識なくこのブログを読んだ方は、この説明では全然判らないでしょうねえ・・・。(涙)
それに、予備知識がある方には、説明不足やツッコミどころが山ほどあるんでしょうねえ・・・。(大涙)

このブログでは全然判らないでしょうから、勉強したい方は、参考文献からどうぞ!




<●勉強会情報>

関西圏で開催される勉強会で、私が参加予定のものです。よかったら、ご一緒にどうでしょう?

(再掲)日本図書館研究会 2010年度研究大会

【日時】 2月19日(土)~20日(日)
【場所】 相愛大学
【プログラム等】 公式サイト参照
【参加費】 会員2,000円、非会員3,000円、懇親会参加費5,000円

【事前申込み】 原則、2/14までに公式サイト参照の上、申込み。
(特に昼食、懇親会は事前登録必要)

【懇親会】 19日(土)17:30-19:30

私も入会しています、日本図書館研究会の研究大会です。会員でない方の参加も大歓迎ですので、いかがでしょうか? 長尾NDL館長、北先生、湯浅先生、常世田さんといったビッグネームも、大勢いらっしゃいますよ!



<●どうでもいい独り言(最後も雑談)>

今日は、私のいる道場の主催する空手大会です。

この数日、体調不良で今一つでしたが、今日はそんなことは言っていられません。今日は一日、審判をしないといけませんから。

子どもたちが真剣に勝負する場、いい加減な状態では臨めませんよね!珍しく薬も飲んで、昨夜も9時には寝ましたよ~。

ちなみに私、ある意味でだけ、審判に自信を持っています。
判定の技術はまだまだ駆け出しですが、迷わないこと、揺らがないことには、自信があります。おそるおそる旗を挙げたりしませんし、他の審判が何と言おうと、自分の信じたとおり旗を挙げます。

やっぱり審判は、堂々としていること、揺らがないことが大事ですよね!

今日も、頑張ります!押忍!

0 件のコメント: