デジタルサーチャー講座

検索を科学する
塩田 紳二

第5回

連想検索を可能にする GETA

多くの検索では、ユーザーが指定したキーワードを、対象データの中から直接探し出す。このため、キーワードの選択が検索結果を直接左右する。つまり、正しいキーワードを使えば正しく結果を得られるが、キーワードが正しくなければ正しい結果を得られない。
こうした問題を解決できそうな技術の 1 つが連想検索である。今回は、この連想検索について、計算エンジンの「GETA」
を例に解説する。

連想検索とは？

ピュータは人間とは違うため、何の情報つの写真がまったく同じビットマップを持もなしに連想してはくれない。連想のたつかどうかでさえ、ドット単位で全部調べ

連想検索とは簡単にいえば、入力されめの辞書を作ればいいのではないかともなければ一致を判定できない。同じものた言葉から連想できるもの、あるいは関思えるが、実際にはこうしたものを作るのを別々に撮影した 2 つのデジカメ写真

連性が高い情報を含むものを探す方法ではかなり大変だ。
「ニワトリ」と「ヒヨコ」とデータが同じものを撮影したのかどうかある。また、キーワードではなく、文章やいった連想は簡単に浮かんでも、「砂袋」

は、コンピュータにとっては、さらに判定が文書全体を指定し、内容が似た文書を探（砂嚢の俗称。いわゆる砂肝）
なんて単語難しい。

すのも一種の連想検索である。

がニワトリと関係するなんてことは、なかこうした問題があるため、連想検索をただ、連想といっても、人間の連想のなか思いつかない。これをおよそ考えら実現するためにはいろいろと工夫が必要

中には、個人的な記憶や経験によるもの、れるキーワードすべてに対して作るなんてになる。

たとえば「犬→怖い」
といったものがあることは簡単な作業ではない。また、キーが、実際の検索では、こうした連想はあまワードを特定することも困難だろう。労力り役立たない。何らかの意味的なつながに対して、効果がほとんどないといえる。

りがあったり、特定の分野での頻度が高文書が提示されたときに、それに似た連想検索で、キーワードと連想されるいもの同士といった論理的な連想だけが文書を探すという連想も簡単ではない。

単語（複数）は、立場を変えてもその関係検索では有効だ。最近のいい方をすれ人間は、文書全体を読まなくともタイトルが成り立つはずである。つまり、連想はば「○○つながり」が、検索分野でいうとや最初の一部を読んだだけで、文書の類一方通行ではなく、双方向であり、お互ころの連想である。たとえば、「ニワトリ」

似性（あるいは文書同士が無関係なこと）

いに連想できる単語がグループ（集合）ををユーザーが指定したときに、ニワトリはを簡単に判断できる。しかし、コンピュー構成していることになる。

含まないが「ヒヨコ」を含む文書を検索でタがこれを行うのは簡単ではない。

連想計算

では、このグループはどうやって出来上

コンピュータには、人間が持っているよがるのかというと、これは検索対象の文

ただし、この連想検索だが、キーワードうな全体を一度に把握するといった機能書が作り出すことになる（図 1）。通常、文検 索 に 比 べ ると実 現 が 難し い 。コンがなく、たとえば、デジカメで撮影した 2

書が含む用語のうち特徴的なものは、そきるというのが連想検索である。

92 │ INTERNET magazine │ 2005 │ 11 │インターネットマガジン／株式会社インプレスR&D©1994-2007 Impress R&D

の文書が記述している事柄に対して相互焼鳥屋の文書に連想が可能な集まりとなる。たとえば、

キャバレー
ニワトリの文書

ニワトリについての文書であれば、ニワト
水商売

リに関するキーワードを多数含み、関係のない事柄を表すキーワードは少ないは

トサカ

ヒヨコ

焼き鳥
砂肝ずである。

ニワトリ

鳥類の文書

辞書を作らなくとも、検索される文書自鳥類

砂袋

体から連想のための単語を取り出せばい
土嚢いわけだ。対象の文書から取り出した単タカハト語を使って、連想を行えるような集合を水害作り出せば、結果的に連想検索できるはずである（図 2）。なんだか、答えを見て防災の文書検索で有効な単語の連想関係は、出現する文書でグループ化されるから問題を作るような感じだが、世の中の検索システムはすべて、検索される対図 1 検索として有用な連想は、文書に対応してグループを作る。

象（文書）は特定されていて、そこから何らかの情報を取り出しておくことは検索の検索対象の文書の集まり常道手段ともいえる。

出現単語の集まり①検索語を発見

どんな文書も単語の利用頻度には偏りがある。すべての単語を使う文書という②文書を発見のはありえない。また、ある程度の長さであれば、異なる 2 つの文書の単語とその③単語グループ頻度が完全に同一になるということもな④類似文書の発見

い。つまり、文書の単語の出現頻度は、文書固有のパターンを持っているといえる（図 3）。
そのうちのいくつかの単語は、特定の事柄について記述した文書にしか現れないなどの特徴を持つ。
これを利用すれば、ユーザーが入力したキーワードを含む文書があったとき、そ図2

文書と出現単語のグループは対応しており、キーワードを使って文書を見つけることができる。さらにその文書特有の単語から、似た文書を見つけることが可能。この文書は、最初のキーワードを含んでいる必要はない。の単語が文書の中でどの程度重要なのかを調べることが可能だ。キーワードが、文書の特徴となるような単語と一致すれ出現頻度

ば、その文書は、ユーザーが探している文書である可能性が高い。この処理は、単語あらかじめ、文書から出現単語とその頻度の表を作っておけば、すぐにでも見つ出現頻度けることができる（図 4）。
また、この文書の特徴を表すような単単語語が得られれば、今度は、これから似たような文書を探すことが可能になる。こ

出現頻度

れも、文書同士を直接比較するのではな
く、出現単語の頻度表を使って処理する
単語ことが可能だ。

図 3 文書の単語の使用には偏りがあり、単語の出現頻度を表にすると、文書ごとに違ったパターンを作る。

インターネットマガジン／株式会社インプレスR&D

デジタルサーチャー講座
検索を科学する │ INTERNET magazine │ 2005 │ 11 │ 93
©1994-2007 Impress
R&Dこのようにすれば、ユーザーが入力し集を参照頂きたい。GETA は、前述のよたキーワードを直接含まない文書を探す

うな連想検索システムを作るための基本

簡単にいうと、連想計算は、文書別にことが可能になる。

的な演算機能（連想計算）を提供するプロ

単語とその頻度を表にしたデータ（出現グラムライブラリーである。すでにいくつ頻度表）を作り、これに対して、ユーザーかのサイトの検索機能で利用されており、が指定した単語群との類似を判定するもその場合、GETA のロゴが付けられていのだ。

計算エンジン「GETA」
今回は、10 月号の特集でも紹介した単語を取り出すことである。

る（図 5）。

ただし、一般に文書を構成する単語のGETA（Generic Engine for Transpos-

実際に GETA が提供するのは、文書か数は多く、表は大きなものとなってしまう。

able Association：国立情報学研究所）

ら抽出した単語の頻度リストと、指定されGETA は、こうした大きな表の計算を効で、連想検索の仕組みを探ってみることた単語や単語群を使って連想計算を行率的に行うような仕組みを持ち、一般的にする。概要などについては 10 月号の特い、最も近い文書や、それらが持つ特徴な PC クラスの性能で、1000 文書を対象にした連想計算を 2 〜 3 秒で行うことができる。

単 単 単 単 単 単 単 単 単 単 単 単 単 単 単 単 単 単 単 単語 語 語 語 語 語 語 語 語 語 語 語 語 語 語 語 語 語 語 語
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

全部の文書から採取した単語

文書1

また、GETA は、連想検索以外にも応用が可能だ。たとえば、文書の類似性を判定できることを利用すれば、多数の文文書2文書3書を類似性でグループ化することができ文書4文書5る。このような処理をクラスター化、クラス文書6
文書7タリングと呼ぶ（図 6）。簡単にいえば、文文書8書が分野ごとに整理されて棚に並んでい文書9文書すべて 文書10るようなものである。こうした処理を自動文書11
文書12化することもできるわけだ。

文書13
文書14
文書15

類似性の計算

文書16
文書17
文書18

単語20の文書19での頻度文書19

もう 1 つ、GETA は、この単語群の類似性を判定する計算をユーザーが定義

図4

GETA では、全文書から収集した単語を各文書内での出現頻度の表にして連想計算を行う。この表は、大きなものになる可能性がある。

できるという特徴を持つ。
GETA は、この類似性を計算する式を使って、ユーザーが指定した単語と表GETA を使ったサイトのデータから、各文書に対して評価値（スコ例。これは国立情報学研究所がア）を計算する。そして、評価値の高いも図5

運営する図書検索サービスの「Webcat Puls」のを候補として挙げるわけだ。
この計算式にはいくつかの種類がある

http://webcatplus.nii.ac.jp/

が、GETA での基本的な考え方は、検査対象の文書の中での単語の重要性と文書全体の中での単語の重要性を使って、単語（複数の可能性もある）と文書の類似性を計算することである。ただし、このとき、文書の長さなどを考慮する必要がある。というのは、文書が長ければ長いほど多くの単語を含むことになるため、短い文書に比較して有利になってしまうからである。このような現象を抑制すること

94 │ INTERNET magazine │ 2005 │ 11 │インターネットマガジン／株式会社インプレスR&D©1994-2007 Impress R&D

を「正規化」という。正規化することで、重要度の判定を文書の長さなどに依存せずに評価することが可能になるわけだ。

出現単語による類似性

出現単語による類似性

出現単語による類似性

GETA の動作
キーワードを 1 つだけ指定した場合、GETA による連想計算は、重要度を考慮

似た内容の文書

似た内容の文書似た内容の文書したキーワード検索になる。すでに各文書の出現単語の頻度表が出来上がっているので、該当のキーワードを含む文書を探すのは簡単に行える。その上で、単語の重要性を考慮すれば、キーワードが重要な単語となっている文書を選ぶことができる。
文書のグループ化（自動的な内容による文書分類）

これで 1 つの文書が選択されたら、今度は、その文書の頻度表を使えば、キーワードから連想される単語を取り出すことができる。この場合にも、文書に含まれる各単語の重要度を評価することで、関図6

文書同士の類似度を連想計算で求めることができるため、文書を類似度の高いものでグループ化することができる。

連が深いと思われる単語だけを抽出する

GETA に含まれないものことが可能だ。
さらにこれらの単語を使ってもう一度他GETA が高速に行ってくれるため、小さな労力でパフォーマンスの高い検索エンの文書との関連性を探すことも可能だ。

ただし、GETA は、検索エンジンではジンを作ることが可能だ。GETA を使う

この処理は、結局、最初の処理で単語がなく、検索エンジンを作るための素材でインターネットのウェブサイトには、GETA複数になっただけに過ぎない。

ある。たとえば、ユーザーが入力したの開発チームが直接関与したところもあ

実は、GETA が行うのは、単語と頻度キーワードを検索できるように前処理したるが、それ以外にも、配布されているド表を使って重要度を計算するだけなのでり、入力された文章からキーワードを抽キュメントとソースコードから独自の検索ある。ただし、この計算は簡単ではない。

出したりするような処理などは含まれなエンジンを作り上げたところもあるという。

最も大きな理由は、頻度表が巨大なもい。日本語では、英語のように簡単にはGETA を使ったサイトで検索を行ってのになるからである。頻度表は、すべて単語への分解が行えない。しかし、オーみると、その検索結果が的確であることの文書から採集された単語とその頻度をプンソースとして入手可能な「茶筅」などがわかる。もちろん、GETAといえども万記録したものなので、実際には、ほとんどの「形態素解析ソフト」を使うことで、文章能ではない。単語だけを入れるよりも、の項目がゼロとなる。このような表形式のを解析してキーワードを取り出すことが可

複数単語に分解される文章を入れたほうデータを「疎行列」と呼ぶ。

能になる。形態素解析とは、辞書などをが、よりよい結果を得られるようだ。

GETA は、巨大な配列を圧縮し、オン使って、文を言語として意味を持つ最小ウェブページを見ていて気になったこメモリーで計算できるようするなどのさまのまとまりである形態素に分解して品詞とを調べるときに、キーワードをどうするざまなテクニックを使って、こうした巨大を見分けることをいう。

かを考えるのでなく、そこから抜きだしたな行列の計算を高速に行えるようにしたプログラムライブラリーなのである。
また、大量の文書を検索対象とするとき、GETA は、頻度表を分割して複数のマシンで並列に連想計算を行わせることも可能になっている。

同様に頻度表を作るためには、検索対文章やテキスト全部を入れてしまえば検象データから単語を抽出し、それを数え索できるのが GETA を使った連想検索のなければならない。こうしたデータを作る

強みだ。また、最初の検索で得られた重部分もGETA には含まれない。

要単語を使って Google のような広範囲をただ、連想検索を行う検索エンジンを作ったときに最も重要な連想計算自体は、カバーするキーワード検索を行うこともできるだろう。

インターネットマガジン／株式会社インプレスR&D

デジタルサーチャー講座
検索を科学する │ INTERNET magazine │ 2005 │ 11 │ 95
©1994-2007 Impress
R&D［インターネットマガジン バックナンバーアーカイブ］ ご利用上の注意
この PDF ファイルは、株式会社インプレス R&D（株式会社インプレスから分割）が 1994 年～2006 年まで発行した月刊誌『インターネットマガジン』の誌面を PDF 化し、「インターネットマガジン バックナンバーアーカイブ」として以下のウェブサイト「All-in-One INTERNET magazine 2.0」で公開しているものです。

http://i.impressRD.jp/bn
このファイルをご利用いただくにあたり、下記の注意事項を必ずお読みください。
z 記載されている内容（技術解説、URL、団体・企業名、商品名、価格、プレゼント募集、アンケートなど）は発行当時のものです。
z 収録されている内容は著作権法上の保護を受けています。著作権はそれぞれの記事の著作者（執筆者、写真の撮影者、イラストの作成者、編集部など）が保持しています。
z 著作者から許諾が得られなかった著作物は収録されていない場合があります。
z このファイルやその内容を改変したり、商用を目的として再利用することはできません。あくまで個人や企業の非商用利用での閲覧、複製、送信に限られます。
z 収録されている内容を何らかの媒体に引用としてご利用する際は、出典として媒体名および月号、該当ページ番号、発行元（株式会社インプレス R&D）、コピーライトなどの情報をご明記ください。
z オリジナルの雑誌の発行時点では、株式会社インプレス R&D（当時は株式会社インプレス）と著作権者は内容が正確なものであるように最大限に努めましたが、すべての情報が完全に正確であることは保証できません。このファイルの内容に起因する直接的および間接的な損害に対して、一切の責任を負いません。お客様個人の責任においてご利用ください。

このファイルに関するお問い合わせ先
All-in-One INTERNET magazine 編集部
im-info@impress.co.jp
Copyright © 1994-2007 Impress R&D, an Impress Group company. All rights reserved.