人気ブログランキング | 話題のタグを見る

本の索引から人工知能へ

ブログ記事を書くなどと、久しぶりのことではあるが、ここいら書きとめておかないと忘れてしまいそうなので、facebookに書くのも良いけれど、久しぶりにブログに書いてみたりする。

本の索引がなぜ、人工知能につながるのか…。
本を検索するための書誌データがあり、全文検索は技術的に可能だが権利的にムニャムニャ〜。でも権利的に問題なく、しかも人工知能社会に貢献…いや貢献どころか、人工知能を支える知識ベースは、図書館に存在していることに、気がついて欲しいと思うのだ。

本の索引
 図書館の仕事を初めて10年以上になる。最初は図書館業界でも有名な我らが理事長の元、門前の小僧もなんとやらで、図書館に対してはど素人でもそれなりに勉強しながらやってこれた。当初より僕は「図書館の本をバラバラに分解したい」と思っている、図書館業界にはあるまじき考え方の持ち主ではあったが、多分それは、今でも変わらない。物理的にバラすことができないならば、デジタル的にバラすことはできないか。バラしたのちに再構築できる技術はないだろうか?などと考えたものである。最初は図鑑や辞典などの項目ごとに解体できないだろうか? などと思っていたが、本には索引があるじゃないか!と改めて本のページを開くと、これがまたすごいことになっている。
 日本の書籍には「索引」が欠落している。
 諸外国のいわゆる洋書を紐解けば、児童向けの十数ページの本であっても1ページ程度のINDEXが付いている。またドキュメンタリーや伝記においては、INDEXの充実ぶりは目をみはるものがある。日本語に翻訳された書籍ではINDEXも翻訳されるものもあるが、必ずしもすべてではない。原書にはあったINDEXが、邦訳では削除されている事例も見受けられる。
 それほどまでに、日本語の書籍には「索引」が少ない。
 理由はいろいろあろうが、索引は著者が作るもの、いやいや編集部が作らなければ、そんな時間はないから外注に、おいおいそんなコストは出せないと出版社…と、まぁこんな感じで『日本の書籍には索引がない』状態が、今もなお続いている。逆に言えば、これは未開拓の地が広がっている…とも言える。まだまだ、開拓できる知的フロンティアが、図書館には存在している。

索引データベースを作る
 すでに索引の付いている本から、索引をデータベース化する。
 1冊の本に対して索引を作る…データベース的に言えば、本1冊を1レコードとしたデータベースに、索引フィールドを作成し、複数行の索引データを入力する方法もあるが、これでは次の応用ができない。
 書籍データベースに、索引フィールドを作るのではなく、書籍データベースとは別に、索引データベースを作り、リレーションを取る。リレーショナルを使うことで、何件になるわからない索引を1行1件で蓄積するデータベースを構築することができる。何をリレーションのキーにするかは見当が必要であるが、書籍データベースとは別に、索引データベースを構築することで、むしろ「総合的な索引データベース」を構築することができる。
同じ見出語の索引を持つ書籍には、何があるか。それぞれ何ページにその見出語が掲載されているか。複数の本にわたって総合索引データベースが構築出来れば、それだけでも図書館の使い勝手は大きく向上する。
 実のところ、今での「レファレンス辞典」という形で、図鑑や辞典などの見出語とその掲載文献をまとめたものはある。しかし、業界向けということもあり非常に高価なのだ。また、児童向けではないし、子供向けの図鑑は対象外である。
 この総合索引データベースを、図書館が自ら作るようになることで、図書館の使い勝手向上を図る余地は、とても大きいと思うのだ。

 総合索引データベースにおけるフィールドの基本構造は、
[索引ID]
[見出語(索引語)]
[見出語ふりがな]
[書籍ID]
[掲載ページ]
これに、若干利便性を高めるためのフィールドを幾つか付け加える感じ。

索引データベースから見出語を抽出
 総合索引データベースは、一件一件の索引情報を入力するものですが、この索引データベースで登場する[見出語(索引語)]を抽出する作業が必要である。
見出語データベースあるいは見出語マスターと言ってもいい。

見出語マスターの基本構造は、
[見出語ID]
[見出語]
[見出語(ふりがな)]
ど、同時に、総合索引データベースのフィールドに[見出語ID]を追加する必要がある。

見出語マスターは、索引語から抽出したものであるが、そこにはちょっとした落とし穴がある。[同意語]の問題だ。同意語という以前に、例えば人名表記(特に外国人)に関しては、実に様々ものが登場する。例えば、アインシュタイン。すでにテストケースで作っていても、これだけある。

アインシュタイン
アインシュタイン, アルバート
アインシュタイン、アルベルト
(アルベルト・)アインシュタイン

これらが同じ人物の名前であることを捉えなければならない。そこで、総合索引データベースと見出語マスターとを、多対多でリレーションする必要があり、そのためのデータベースを一つ間に入れる必要がある。
見出語リンク用データベース
[見出語ID]
[索引ID]
これを入れることで、一つの見出語に対して複数の書籍からの索引を関連付けるだけでなく、一つの索引レコードから、複数の見出語をリレーションすることが可能となる。

目録カードの時代で言えば、[アインシュタイン]と描かれている人物典拠カードに、[アインシュタイン,アルバート][アインシュタイン、アルベルト][(アイルベルト・)アインシュタイン]  をも見よ と書くところかもしれない。

さて、ここまでは従来の図書館情報学における資料組織論として取り扱える内容である。
まぁ、残念ながら現在の電子化された目録データベースでは、ここまで取り組んでいる事例は、知らない。もしあれば、不勉強な私にぜひ教えていただきたい。
ここからが、次のステップである。

見出語どうしの関連づけ
一つ一つの見出語を「情報」とするならば、その情報を別の情報を持って記述したものを「知識」としよう。するとこういうことを描くことができる。
 「見出語A」は「見出語B」の「なんとかである」。

例えば、
「ロボット學天則」は「西村真琴」が「作った」
「西村晃」は「西村真琴」の「息子(である)」ちなみに、息子にはさらに「次男」という属性もつく。
  → 自動的に、「西村真琴」は「西村晃」の「父(である)」

こんな関連づけを、見出語にいっぱいつけていく。そんなデータベース作りを考えている。
僕はこれを『多種類情報資源相互参照システム』として構築する事ができる。
AはBのxxである。という関連づけ。しかもその関連づけには様々な属性を付加する事もできる。
そしてこれは、後に(現在)において、『グラフ Graph 』という名前で呼ばれるようになり、Googleは「ナレッジ・グラフ」という名称を用いているようだ。

グラフとセマンティック
 数年前に Google 社が、ナレッジ・グラフ というものを開発した。また、Open Graph というプロトコルもある。

 ナレッジグラフ Wikipedia
 Open Graph protocol

Wikipediaの解説を見ただけではよくわからないところもあるが、要するに 情報は一人ではいられない。他の情報を関連性を持ちながら存在し、その関連性を結んでいけば、連結した先の知識も答えとして導き出すことができる。
例えば、一冊一冊の小説から、時代と場面と登場人物を関連付けながらグラフをつないでいけば、

 文献に見られる、大正時代に、東京御茶ノ水YMCA会館の前を、通った人のリスト(架空人物を含む)が欲しい。

といえば、直接の回答が存在していなくても、結びつきを辿りながら、そんなリストを作り出すことができたりする。
現在、Web技術の方面では、『セマンティックWeb』とか『Linked Data』、『トリプル』とか『SPARQL』と言ったキーワードによる分野で、そんなことが実現出来るWebの記述方法と検索方法が検討されているが、その技術を持って、対象をWebから既存の出版物…特に「図書館の蔵書」を対象にすることで、人類の叡智を結びつけるようなことができるのではないか。「本」というパッケージに囚われている叡智を解放することができるのではないだろうか…などということを考えていたりする。

・・・【追記】
 実はこの夏に、SoftBankの人型ロボット(ヒューマノイド)のPepperが、やってきた。彼の(一応少年の設定)プログラミングをしている中で、なるほど!そういう解決方法があるのか。という場面に遭遇した。
 このブログで言えば、「見出語」マスターの上位に「コンセプト」マスターを置くと、複数の見出語を一括りの概念で括ることができそうだ。そのあたり、もしかしたら図書館情報学で言うところの『件名表目標』が使えるかもしれない。

Pepperの開発環境である Choreographe における QiChat Script でいうと、上の「アインシュタイン」は、

concept:(einstein)[アインシュタイン Einstein "アルバート アインシュタイン" "アインシュタイン、アルベルト" "(アイルベルト・)アインシュタイン" "Albert Einstein" ]

とすることで、[]の中のどの表記(文字列)が来ても、全て einstein という言葉(変数)に対応します。

というわけで、この膨大な「索引データベース」を構築する/構築し続けることで、日本の人工知能は図書館の蔵書から叡智を得ていくのではないだろうか?
by maruyama_takahiro | 2015-10-20 10:26 | SuperOPAC開発日記
<< 多種類情報資源相互参照システム... 民主主義の学びの場にする指定管... >>