A P P R E S S O N o w! No.4 掲載記事
今回は、今後のソフトウェアの在り方を示す興味深い例として、reCAPTCHAというプロジェクトを紹介したいと思います
まずおさらいですが、CAPTCHA(キャプチャ)とは、ユーザーが人間であるかどうかを確認するために、グニャグニャに歪んだ英数字や単語をユーザーが入力する仕組みのことです。「ああ、ウェブのサービスを使っていると時々出てくるあれか」と思い起こされる方も多いのではないでしょうか。
通常のCAPTCHAでは一塊の文字や単語を入力しますが、reCAPTCHAでは、二組の文字を入力する必要があります。一つは正解のわかっている文字、そしてもう一つは、正解のわかっていない文字です。現在、世界の様々なところでOCRを用いた書籍のデジタル化が進んでいますが、インクが滲んでしまっていたり、かすれて薄くなってしまっていたりすると、プログラムでは判別できない文字というのがどうしても出てきてしまいます。そこで、どのOCRで読んでも同じ文字と認識されるような「正しいことがわかっている単語」と、OCRによって読取結果が異なるような「正解のわからない単語」とを一つずつCAPTCHAの入力画面に表示し、前者はユーザーが人間であることの認証に、後者は機械が読み取れなかった文字の解読に用いるのです。
reCAPTCHAでは、無償のCAPTCHAサービスを提供しており、ウェブでサービスを始める際にはreCAPTCHAを使えばCAPTCHAの機構を自分で作成することなく利用できるようになっています。そして、reCAPTCHAを採用しているサービスに文字を入力する時、私たちは自分が人間であることを証明するだけでなく、書籍や各種文書のデジタル化に、間接的に貢献しているのです。
「気づかぬうちに何かに貢献している」という話としては、改札を通る人達の「踏みつけエネルギー」を発電につなげようという東京駅の発電床が有名ですが、reCAPTCHAプロジェクトは「いつのまにか貢献している」ことの他にも、まず機械ができるところまではプログラムで処理し、どうしてもダメだったところを人間が対応する、という機械と人間のコラボレーションの事例としても大変興味深い事例です。
ソフトウェアには、例えばビジネスアプリケーションを使って業務効率を上げたり、ゲームソフトで遊んで楽しんだり、といったようなソフトウェア単体での使い方もありますが、reCAPTCHAプロジェクトが示したように、ユーザーがソフトウェアを通じて、自然と何かに貢献するようなアーキテクチャを設計することも可能なわけです。こうした変化が起こりつつあることを踏まえて、今後のソフトウェアの在り方や、開発するプロダクトの方向性を考えて行きたいものです。
*1「機械と人間のコラボレーション」という意味では、Amazon Mechanical
Turkというサービスがありますが、これはこれで大変面白いサービスなので、また別の機会にでも紹介したいと思います。
(APPRESSO Now! 2010年3月3日 第4号)
このコラムは、アプレッソ・メールマガジン【APPRESSO Now!】で配信しています
メールマガジン購読をご希望の方は、こちらからご登録ください。
メルマガに関するお問い合わせ先
株式会社アプレッソ メルマガ運営事務局merumaga@appresso.com