読者です 読者をやめる 読者になる 読者になる

AとBが遠いのか近いのかを測定することはすごく難しい

研究

はてなブックマーク関連エントリー機能が付きましたが、時間やお金が相当かかっているようですし、有能な方がずいぶん関わって、すごい技術が使われているようです。
自分は、こういうものを作る事に関して、ド素人ですが、正直、がっかりしました。プロの人達が集まってこの程度の成果しか出ないものなのでしょうか?
はてなアイディア辺りに転がっている現実的なアイディアがそのまま実装されただけに思えて、残念に感じてしまうのです。これにかかった費用は一千万単位であると思います。そのくらいの費用をかけても、このくらいしか出来ないのは当然なのでしょうか?
こういうものって、案外、コツコツとたくさんの人が地味に作業していくものであって、有能な人が、数日で作り上げるようなイメージは全く間違っているのでしょうか。きっと間違っているのでしょうね・・・こういうものは、このくらい手間隙がかかって当然なんだと理解できるような本やサイトをご紹介下さい。
これだから素人は・・・という声が聞こえてきそうですが、素人が現実的に考えられるように御教授下さい。
自分でやってみれば解る。というのは無しでお願いします。

これをネタに研究話を。

普段、われわれはあまり気にかけていないのですが、AとBというものが存在するときAとBは近いのか遠いのかを測定するのはとても難しいことですし、本来は創造的なことです。近いや遠いだと暗黙に「距離」の概念を含むかもしれないので、似ていると似ていないといっても良いです。あるAとBという二つが近い(似ている)、遠い(似ていない)というのはどうやって測ればよいのでしょう?

最初一歩は、何を基準としてこの二つのものの近い・遠いというのかを定義することです。我々が普段計測に用いている長さや時間の単位は国際単位系というもので定められています(参考:wikipedia.ja:国際単位系)。重要なポイントは、「定められている」という点!元々存在したのではなく、我々が(我々の先祖が)物事を計測するときにはこの基準に基づいて計測しましょうと申し合わせをしたものです。これと同様に近い・遠いという概念も、我々の間での「申し合わせ」にしか過ぎません。我々は暗黙のうちに、あるいはこれまでの教育を通して、ある二つの物体が存在するとき、その物体間の距離が短ければ「近い」といい長ければ「遠い」ということにしているのです。

では、国際単位系に基づいた長さや重さ以外では、二つの物体が近いか遠いか議論できないのでしょうか?そんなことはありません。たとえば、我々は自分たちの親族を考えるとき、遠い親戚と近い親戚を区別します。このときの近い・遠いの基準は「親等」です。他にも「あいつは俺に近い立場の人間だ。」などとおかれている状況や地位、年齢など類似度が高いことを「近い」と言ったりします。

以上のことから何を言えるかといえば、二つの物体が近いか遠いかを議論するためには、何を基準として、そしてその基準においてどうなったときが「近い」のか「遠い」のかを定義しなければならないのです。

定義が終われば二つの物体が近いか遠いか言えるかといえば、まだ、そうではありません。次は、その基準に基づいて二つの物体を計測しなければなりません。計測を行うためには計測機器を用意しなければなりません。じゃあ、どうやってその計測機器を作るのか?これは一つの大きな課題です。自然科学において、この「計測機器を作る」というのは一大研究テーマになっており、さまざまな分野において日々、あらたな計測機器が提案、開発、検証されています。たとえば、十数年前は人間のDNAの類似度を測ることは難しいことでしたが、現在では、裁判の証拠として利用されるほどその計測機器の信頼性や精度が向上してきました。最近話題になった競泳用水着も水着に対する水の動きを計測できるようになったことが開発に至った大きな要因です。

計測機器の開発が終わったらすぐに二つの物体が近いか遠いか判断できるかといえば、まだです。次は計測環境を整える必要があります。計測環境を整えることの重要さは、最近話題になった水からの伝言で明らかです。まともな計測環境において計測をしていなければ、いかなる計測結果が出たとしてもそんなものを信頼にあたりません。自然科学の実験において、実験環境が論文に書かなければならない必須項目になっている理由は、まともな計測環境で計測した結果であることを証明しなければならないからです。

計測環境を整え、計測したら二つの物体が近いか遠いか判断できるかといえば、残念ながらまだです。次は、誤差を見積もる必要があります。一般的に、いかなる計測結果も誤差を含みます。「じゃあ、誤差がでないような計測器機と計測環境を整えろよ」という意見が出るのはわかりますが、それは現実問題として無理です。理論的に不可能な場合もありますし、コスト的に不可能な場合もあります。たとえば、二つの物体が近い・遠いとする基準に「人間と人工物が存在しない環境で〜を測定する」という条件が含まれていたとき、そんな環境を用意することは不可能です(計測機器がどうやっても実験系に含まれてしまう)。そういう場合は、計測機器を設置することによって生ずる誤差を考慮しないといけません。

計測環境を整えて、計測して、計測結果から誤差を考慮したならば、お待たせしました、やっと二つの物体が近いか遠いか判断することができます。ただし、残念なお知らせとして、そこまでして得た結果が多くの人に受け入れられるかどうかはこれまた別の話です。

Googleが登場したとき、技術者がびっくりしたのは従来、人間でなければ判定できないと思っていた「入力したキーワード」と「Webページ」の関連性をページランクという基準で計測して見せたからです。しかも、その計測によって判定された「近さ」「遠さ」は我々人間が判断するものと似通っていたのです。Googleが行った計測は

  • 「入力したキーワード」と「Webページ」の間においてそのキーワードを含むWebページのページランクの高さを入力したキーワードとの「距離」と定義し、ページランクが高ければ高いほど「近い」低ければ低いほど「遠い」と定義した
  • 実際にページランクを計算する方法(アルゴリズム)を提案した(計測機器の提案と一緒)
  • ページランクの計算にはWebページ間のリンク関係の情報が必要であったので、大規模PCクラスタを用意し、とてつもない量のWebページ間のリンク関係を収集してみせた。しかも、その膨大な関係から「入力したキーワード」と「Webページ」の関連性を瞬時に計測しせた
  • ページランクはその計算方法上、スパムトラックバックやスパムリンク集ページに弱い。そのため、この計測誤差を考慮して計測結果を表示するようにした
  • 発表して10年弱、多くの人がこの計測方法に納得し、業界第一位の座を占めるようになった

今では、ページランクという計測基準に基づき、キーワードとあるWebページが近いか遠いかを判定するのは当たり前となりました。当たり前となっている現在からみれば、Googleがやっていることは大したことがない地味な話に思えます。これはある意味しょうがありません。大したことに思えなくなった=業界標準デファクトスタンダード)になったということですから。

たかが、計測ですが、業界標準となるまでの計測というのは基本的に創造的な作業です。そして、科学の第一歩は常に「計測」からスタートします。まともな計測ができなければ、いかなる問題把握、問題解決もありえません。このため、まともな業界ならば、まともな計測ができる人は高度な技術者として遇されます。

計算機科学・情報工学においては、計測の定義、計測器機の開発、計測環境の整備がすべて計算機内で完結するために「計測」の重要性がわかりづらいですが(さっぱり分かっていない人も存在するので怖い)、基本は他の自然科学・社会科学における計測の話と変わりません。純粋なソフトウェア系の人は、この計測の軽視があるので困ったことです。まあ、実はこれは私のことで、私が計測の重要性を理解するようになったのが小説のパラサイト・イブを読んでからだったので。何で、学部生のときに情報系以外の工学部や理学部の学生が鬼のように実験をやらされているのか、本やで実験や計測のやり方が専門書として販売されているのかがやっとわかりました。

感性情報学と呼ばれる分野においては、特に計測の定義、計測方法、計測環境、誤差の見積りは研究の根幹を為す部分です。今回のはてなブックマークの関連ページ表示というは、明らかに、「人間が関連あると思うページを提示する」という感性情報の処理です。当然、計測の定義、計測方法、計測環境、誤差の見積りには創造的な部分が含まれているはずです。この創造的な部分をどう評価するかによって、今回の話が大変なことなのかそうでないのかの評価が分かれると思います。すごい機能なのかどうか(適切な関連ページを出してくれるのかどうか)についてはまた別のお話。