ブルームバーグのデータサイエンス担当者が見た機械学習の課題Computer Weekly

Bloombergでデータサイエンス(自然言語処理、情報の検索と取得、機械学習)を引きているギデオン・マン氏。2008年から機械学習を手掛けてきた同氏には、機械学習の可能性とともに課題も見えている。

» 2017年05月10日 10時00分 公開
[Cliff SaranComputer Weekly]
Computer Weekly

 金融ニュースやデータを提供するBloombergのCTO(最高技術責任者)オフィスは4つの分野に重点的に取り組んでいる。そのうちの一分野がデータサイエンスで、これを率いるのがギデオン・マン氏だ。

Computer Weekly日本語版 5月10日号無料ダウンロード

本記事は、プレミアムコンテンツ「Computer Weekly日本語版 5月10日号」(PDF)掲載記事の抄訳版です。本記事の全文は、同プレミアムコンテンツで読むことができます。

なお、同コンテンツのEPUB版およびKindle(MOBI)版も提供しています。

ボタンボタン

 マン氏が考えるデータサイエンスはこれまでの定義とは異なるという。同氏は次のように話す。「データサイエンスには多種多様な定義がある。Bloombergでのデータサイエンスは従来の定義とは異なり、自然言語処理、情報の検索と取得、中核となる機械学習という3つのテクノロジー分野に重点を置いている」

 恐らく、情報の検索と取得がデータサイエンスの従来の定義に最も近いといえる。マン氏によれば、「1990年代、GoogleもBingもYahooもなかった時代を思い起こしてみると、当時はインターネットでは何も見つからなかった。これは今とは全く違う」という。

 だが、検索エンジンが進化しても限界があると同氏は話す。「目的のドキュメントを見つけたとしても、必要な情報の一部しか見つかっていない可能性もある。情報が複数のドキュメントに散在していればなすすべはない」

 あるテーマを調べるときは、図書館に出向いて目録を読み、本を探して集める。かつてはこれを何度も繰り返し、多くの時間を費やしていた。「ドキュメントを全て集めるのは速くなった。だが、事前に1カ所にまとめられていなければ、情報を評価する手順が必要になることは変わらない」と同氏は言う。

 無駄な情報があまりにも多い。検索エンジンが技術的に飛躍的な進化を遂げたとしても、その膨大な情報の中から真の意味を理解できる人はいないとマン氏は考える。「何が真実か、何が起きているか、別の事実があるかを判断しようとあらゆる議論が行われることで、ドキュメントを集めることから意味を引き出すことへの大きな一歩になる」と同氏は話す。

 Bloombergの自然言語処理は、テキストから情報を取り出す。マン氏によれば、例えば特定の企業に対する感情(センチメント)を見極めるのに自然言語処理を使える可能性があるという。「テキストには多くの情報が含まれている。例えば、Kraftの製品について調べるとする。これまでなら、データ分析を構築する手法を採用していた。これからは、複数のライブラリから情報を取り出すことを検討することになる」

中核となる機械学習

 通常、コンピュータは所定のデータセットを基に正しい結果を導き出すようプログラミングされるが、機械学習が問題を解決する方法はこれとは大きく異なる。そのため、特定の問題解決に機械学習が適しているとしても、IT担当者が当然のようにこの方法を採用することはないと考えられる。

 だが、マン氏は次のように指摘する。「私からすればこれは妄信だ」

 人の期待は時として非現実的なことがある。つまり、機械学習アルゴリズムの制約を理解していないだけだと同氏は言う。「全てを理解しなければならないと考えているわけではない。だが、考え方は伝えなければならない」

 2008年から2009年にかけて、Bloombergが最初に機械学習を採用したのはセンチメント分析だった。「当社は長い間分析を行ってきた。機械学習の採用により、当社の価値観は確実に変わった」とマン氏は話す。

 センチメント分析プロジェクトについて、同氏は次のように話す。「従来の方法で試したが、うまくいかなかった。扱いにくく、多くの手作業が必要だった。だが、機械学習ならうまくいった」

 それ以来、センチメント分析プロジェクトに機械学習を採用したグループは成長を遂げ、社内の別の分野にも取り組んでいる。そこでも機械学習は既に中核を成すコンピテンシーになっている。「当社は、こうした機械学習の経験を有する人材を雇用するようになった。これが採用方針ともいえる」とマン氏は語る。

 マン氏はBloombergでの自身の役割について次のように話す。「できる限り多くの社内関係者に機械学習を行ってもらいたいと考えている。そのためにはさまざまな担当者に機械学習を教える必要がある。プログラマーもその一部だ。彼らには機械学習ソリューションで生じる問題の種類や、問題が発生する条件とその対処法、開発サイクルなどを教えている」

 機械学習ではパフォーマンスの問題が生じることもあり、その場合はさらにデータを収集して人工知能(AI)のトレーニングをやり直し、対応すると同氏は話す。

 通常、開発中のアプリケーションをテストして誤った結果になれば、プログラマーはソースコードに戻り、エラーが発生する部分を突き止める必要がある。しかし、機械学習の場合は誤った結果もトレーニングの一部になるとマン氏は言う。

 「これまでとはテストの考え方を変えることになる。アルゴリズムの正確さはテストしなければならない。アルゴリズムの精度もテストしなければならない。だが、正確さと精度の違いを見極めるのは非常に難しい」

 アルゴリズムの欠陥によってAIは誤った答えを出しているのか、学習用に取り込んだデータに重要な情報が欠落し、AIが正確なパターンマッチングを行えていないのかを見極めるのはプログラマーの課題になる。

リスクが潜むAI

 機械学習の大きな課題には、プログラミング以上にプロジェクトの成否の判断が含まれるとマン氏は言う。「成功の見込みがないプロジェクトは行わないだろう。恐らく成功のチャンスが大きいことを望むことになる。だが、成功が保証されるものなど何もない。思いもよらぬ形で難しさが増すこともある」

 そのため、新たなプロジェクトに着手するときは、失敗のリスクを減らすことから始め、機械が学習できないことを評価する必要があるとマン氏は話す。機械学習プロジェクトは成功する可能性も失敗する可能性もある。プロジェクトリーダーはビジネスケースを提示するとき、このようなリスクに対処できる必要がある。

 上層部が機械学習プロジェクトを大切にしているかもしれないことを考えれば、その期待に添うことも重要だと同氏は話す。「常にリスクはある。十分に準備し、細かいテストを行って概念実証を積み重ね、小規模な取り組みと導入を繰り返して、リスクを減らす洞察力を養っていく」

 最低限の性能を備える製品(MVP)を構築してリスクの高いプロジェクトに取り組むことはよくあるが、機械学習アルゴリズムの場合、機械学習のMVPはそのアルゴリズムの一面にすぎないと同氏は話す。「リスクと真剣に向き合い、そのリスクを最小限に抑えることだ」

別冊Computer Weekly 次世代のサーバOS(転載フリー版)も公開中!

サーバOSにも変化の波が押し寄せている。ストレージやネットワークといったリソース、セキュリティを管理するだけの存在が、新たに要求されている役割とは何か。

※本PDFは、TechTargetジャパン会員でなくても無料でダウンロードできます。


Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ