このページの本文へ

OSS愛あふれる「Microsoft Connect」レポート 第5回

人間なら10年かかる大量文書、Cognitive Servicesは一瞬で読む

誰がケネディを殺したのか――公開された暗殺文書をマイクロソフトのAIで解読

2017年11月27日 07時30分更新

文● 羽野三千世/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

日本マイクロソフトは11月17日、米国ニューヨークで11月15日~17日(現地時間)に行われた開発者向けイベント「Microsoft Connect 2017」の内容を日本向けに紹介するイベント「Microsoft Connect Japan 2017」を開催した。

 今年10月26日、米国立公文書館は、1963年に起こったジョン・F・ケネディ大統領の暗殺事件に関して、これまで機密扱いだったFBIやCIAなどの内部記録文書をWebサイトに公開した。3万ページにもおよぶ膨大なドキュメントは、人間が1人で読もうとすると10年~20年かかる量だ。ここで、ドキュメントの理解にAIを使うことで、人間の何倍ものスピードで内容を解読することができる。

 Microsoft Connect Japan 2017の佐藤直生氏(日本マイクロソフト Azureテクノロジスト)のセッションでは、学習済みのAI API群「Microsoft Cognitive Services」を活用して、ケネディ大統領暗殺文書を理解するシナリオが紹介された。

日本マイクロソフト Azureテクノロジストの佐藤直生氏

 このシナリオでは、公開された全ドキュメントを取り込み、Cognitive Servicesを使ってアノテーション(意味を付加)し、全文検索サービス「Azure Search」で検索するシステムを構築している(追記:マイクロソフトはこのシステムをWebサイトで公開しており、誰でも使うことができる)。

 公開ドキュメントでは、当時の新聞記事や印字された文書、手書きの記録文書が“画像”として納められているが、システムでは取り込んだ画像データから、Cognitive ServicesのOCR(画像に含まれる文字列をテキストデータとして抽出する)機能を使って文字列(手書き文字の認識にも対応している)を抜き出している。また、容疑者や関係者へ尋問した音声データも公開されており、こちらはCognitive ServicesのSpeech to Textでテキストデータ化している。

「Oswald」のキーワードを含む画像や音声データを検索

 デモでは、システム上で当時暗殺の実行犯の容疑で逮捕されたオズワルドについて「Oswald」のキーワードを検索すると、Oswaldの文字列を含む文書、オズワルドの顔写真(Cognitive Servicesの顔認識APIで抽出)、さらにはCIAがオズワルドの隠語として用いていた“GPFLOOR”の文字列を含む文書まで関連データとして検索できる様子を紹介した。OswaldとGPFLOORを同義語と理解するのには、Cognitive ServicesのEntity Linking Intelligence Service APIを使っている。

 また、オズワルドの写真など公開ドキュメントに含まれるビジュアルコンテンツについては、Cognitive ServicesのComputer Vision APIで誰のどのような状況の写真なのか説明文を付加している。これによって、大量の写真の中から目的のコンテンツをキーワードで検索することが可能になる。

Computer Vision APIで写真に説明文を付加して検索性を高める

 さらに、このシステムでは複数の文章やキーワードの関連性を導出して可視化する機能を実装している。デモでは、全ドキュメントから「Oswald」に関連の強い人物の相関図をグラフ形式で表示。ここでは人間の憶測を挟まず、「事前のナレッジなしに、ドキュメントの文脈から関連性を出している」(佐藤氏)。

 システムが表示した人物相関図のグラフデータから、「Silvia」という人物がオズワルドと強い関連があることが分かる。この人物はKGB(ソ連国家保安委員会)に関係しており、暗殺に関与した容疑でCIAに長期間尋問を受けていたことが公開された尋問の音声データから明らかになっているという。

全ドキュメントから「Oswald」に関連の強い人物の相関図をグラフ形式で表示

サーバーレスでAI APIを呼び出し、抽出データをCosmos DBに格納

 このシステムのアーキテクチャだが、まず、一般公開されたドキュメントをAzure Blob Storageにファイル形式で格納し、Azure FunctionsでCognitive Service APIを呼び出すサーバーレスの実装になっている。Cognitive ServiceのOCRやComputer Vision APIなどでBlob Storageから抽出・アノテーションしたデータは、JSON形式でNoSQLデータベースの「Azure Cosmos DB」に格納。フロントエンドは、Azure Searchを実装したWebアプリケーションをPaaSのWeb App Serviceにホストしている。

 また、文章やキーワードの関連性を可視化するグラフデータは、機械学習エンジンのAzure Machine Learningを使ってCosmos DB内のタグ付けされたデータを分析して導出している。

システムのアーキテクチャ

 10月に公開された暗殺文書はまだ一部であり、今後さらに倍量のドキュメントが出てくると言われている。人間と同等かそれ以上の認知能力で大量のドキュメントを理解するAIが、暗殺事件の真相を究明するかもしれない。

Connect 2017ではAI関連の新サービスが多数登場

 本稿では、学習済みのAIを使って文書を「理解」するシナリオを紹介した。佐藤氏のセッションでは、AI活用のもう一つのシナリオとして「推論」を挙げている。学習済みAIを使った推論も可能だが、特定の用途で精度を高めたいケースでは、Azure Machine Learningなどを使い機械学習/深層学習のモデルの開発、トレーニング、アプリケーション開発が必要になる。

 Microsoft Connect 2017では、機械学習/深層学習に関連する新サービスとして、Visual Studio上でCNTKやTensorFlowなどの深層学習フレームワークのモデル開発・トレーニング・モデルのデプロイなどができる「Visual Studio Tools for AI」、Azure Machine Learningで開発したモデルをIoTエッジデバイス上で実行する「Azure IoT Edge」、セルフサービスの機械学習が可能なApache Sparkベースの分析プラットフォーム「Azure Databricks」などが発表されている(関連記事)。

カテゴリートップへ

この連載の記事