Seminar:CommonLisp:2006
「2日間みっちり! Lispチュートリアル & Lisp 事例紹介セミナー」
一日目
Lispチュートリアル & Lispセミナー (一日目午前)
- フランツ社社長 ご挨拶
- AllegroGraph を使ったセマンティックWebアプリケーション
- 基本的な内容は以前のセミナーと同じ
- network analysis の話が増えて、それが聴衆に受けていた感じ
昼飯
Lispチュートリアル & Lispセミナー (一日目午後)
- RacerPro で遊ぶ オントロジー入門
- 同じ言葉が違う意味を持つとき、それを区別したい
- e.g. OWL と OWL と OWL
- どれかが梟の OWL で、どれかがオントロジー記述言語の OWL で……
- T-Box は Terminology Box のこと
- CN は Concept Name
- CDC は Concrete Domain Concept
- DL (Description Logic) の難しいところ
- not のある Open World Assumption になっている <-> 閉世界仮説
- OWL Lite だとないけれど、OWL DL 以上ではそうはいかないし
- 閉世界仮説では真と定義されていないものを全て negative だということにしてしまえば良いけれど、Open World Assumption ではそうはいかなくなる
- クラスの多重継承ができる
- オーバーラップしたインスタンスが定義できる
- DL を Rule Query として使って取り出せるのは、indivisual なもののみ
- constraint の話は時間がないので省略
- Recent Technology Investments at Franz
- The Semantic Technology Terrain
- Web サービスのトレンドとビジネスモデル
- 接続の課金モデル
- パケットごとの課金は、Giga bit のデータのやりとりを前提とするモデルには合わないので衰退していく
- その代わりに接続ごとにかけるモデルがある。VoIP などもこの方式
- 大量・頻繁にアクセスされる場合の接続量がサーバーに負担をかける原因になるのであって、一度接続してしまえば後は楽……という考え方は転送量を負担する必要のある ISP にはうまくいかない気がするんだけど、どうだろう?
- もちろん SoftBank がやっているように月ごとにかけるというモデルもある。講演者の前所属企業でも実現すべく検討を重ねていくところ。
- Web 2.0 には、AJAX などの実現のためのツールが多く提供されている
- 対して Semantic Web には、まだそういったツールはほとんど提供されていない
- Semantic Web は Enterprise DB Integration を実現する
- つまりそれぞれの DB にある違ったデータは、関連性のあるものとして意味付けできる
- Ontology を使って、Location Based Servies を実現する
- Lisp - 流転するプログラミングユニバース
- 基本的には LL Ring でやったのと同じ内容
- ただ、ところどころ長くなったり、不要なので飛ばしたりしていた
- LL Ring の発表時間は短かったので、話し足りなかった
- パネル・ディスカッション
- CommonLisp より良い言語はない。他のどんな言語を持ってこようと問題点を指摘し、CommonLisp より良い言語がないことを証明してみせる。
- AllegroCache でつくってみよう、自分の Google
- Namazu から AllegroCache を使った自前の全文検索システムへ変更
- 色々とチューニングしているうちに、Janz から「ソート使っている?」というアドバイスを貰う
- よく考えてみると当然の話。B-Tree なのでソートしていれば、キャッシュへのヒット率が高くなる
懇親会
- AllegroCache って Cache`を使っているの?
- 無関係。全て自前で実装
- Berkley DB などを使おうとしていた時期もあったけれど、遅かったし、他社にとられてしまった。
二日目
Lispセミナー
- 或るLispコンサルタントの日々 ~物質・材料研究機構(NIMS) ポータルサイト構築事例~
- Geospatial Image Understanding in Common Lisp
- LispとSemantic Webを利用したセキュア通信システムの構築
- セマンティックWeb、その展開と教訓
- Lucene をベースに検索エンジンを作った
- 現在の検索エンジンはどんどん対象を絞り込んでいくのには良いけれど、検索対象をどんどん広げていく場合には良いものがない。
- EDR をコンパクトして DODDLE という日本語のオントロジーを検索するエンジンを作った
- 日本語に対しては Word Net のようなオープンソースのオントロジーが今はない
- 実装したSWCLOS は、OWL Full をサポートしている唯一の処理系
- CLOS は OWL のクラスモデルとの親和性が高かったので、そのまま実装できた
- MetaClass が MetaClass によって定義されているというのは、ラッセルのパラドックスに抵触するので数学者や論理学者には理解されない
- Why Semantic Technology is Important
- セマンティックWeb 技術の将来予測
- Web 2.0 とは入手できるデータ(DB)を Mash up してサービスを提供することである
- でも、そこまでで終わり
- そこにさらに DB の層を加えようとすると、messy なものになってしまう
- Semantic Web なら、一貫性をもって Mash up することができる
- サービスへの課金
- User の場合には、そのまま提供したサービスの代価をもらう
- サービスを使ってさらに上の層のサービスを作る場合には、元のサービスへの課金+新たなサービスへの課金という形で徴収する
- ケータイでうごくiアプリすぷ
懇親会
「2006年7月開催 Common Lisp セミナー」
Allegro Common Lisp 8.0 概要
- Allegro Cache で CLOS を store できるようになった
- Allegro Cache では Heap を無限のものとして扱えるので、これは便利
- ディスククラッシュ等を起こしても、commit log から Allegro Cache に保存していたデータを復活させることができる
- SOAP で CLOS が扱えるように
- これまでは WSDL から生成される Lisp のコードをカスタマイズする必要があったけど、直接 CLOS の Structure が作れるラッパーができた
- Allegro Serve は Apache よりもパフォーマンスがよい
セマンティックWeb と Common Lisp
- 3月にやった「スケーラブルな RDF triple store (AllegroGraph)」や 5月頃にヨーロッパでやったカンファレンスと同じ内容
- 配布資料はなし
- Allegro Cache は cache を使うのに対し、 Allegro Graph は RDF Triple を利用するという違いがある
- Racer PRO
- Semantic Web の Logic, Ontrogy, Rules などのより高い layer をサポート
- このあたりは言葉にしても分かりづらいので、スライドを見てください
- Allegro Graph の DataBase に Oracle や Sybase などの DB を使うにはどうしたらいい?
- DB Schema から Graph を作ったり、Relational Database から RDF Triple を作ることもできるけど、とても難しい
- Oracle であれば Btree に store しておいた Triple を取り出すといやり方もあり
- XML DB なら DTD も必要ないし、簡単
- これらの方法は isomorphic
「2006年3月開催 Common Lisp セミナー」