編集部記:Aria Haghighiは、Crunch Networkのコントリビューターである。AriaはPioneer Square LabsのCTOとチーフ・アーキテクトを務めている。
ここ数年、機械学習とそれを活用できる潜在的なアプリへの関心が急速に高まっている。専門外の人は、自社のプロダクトや事業に取り入れる、あるいは投資すべきかを検討するに辺り、機械学習技術を評価する必要が出てくるだろう。機械学習技術に関する専門用語は大量にあって、複雑だ。さらに強気のセールスチームにハイジャックされつつあって、分かりづらくなっている。
この投稿は、機械学習技術への入門編にするつもりはない。この投稿はディープラーニングや特定の技術に関する説明をするものでもない。なぜなら、これらのコンセプトは頻繁に変わるものであり、意思決定にはほとんど関係がないからだ。その代わり、この投稿では技術をどのように評価できるか、そしてビジネスに実用的な価値をもたらすかを判断する方法を提案したい。
タスクを理解する
突き詰めて言えば、機械学習はなにかしらのタスクのために使用されるものだ。課題にはインプットがあり、アウトプットがどのくらい正しいか、間違っているかは客観的に判断できる。使用している技術を理解できなくても、このタスクを理解することは重要なことだ。
曖昧な説明や「文章の意味を理解します」といったタスクの定義が乏しいものを認めてはならない。もし、その人が自分の手がけている機械学習ができることを、他では通用しないような技術的な業界用語なしに説明できないのであれば、それは注意すべきだろう。
機械学習のタスクの種類には共通するものがいくつかあると言える。それは「分類」「回帰」「ランキング」だ。例えば、ImageNetのような画像認識は、分類タスクだ。インプット画像があり、機械学習で画像に映っている重要な被写体を特定することが目標だ(これは犬、あるいは車の写真といったように)。
使用している技術を理解できなくても、このタスクを理解することは重要なことだ。
「回帰」は、インプットから実質的な数値や数列を予測する。例えば、未来における住宅価格や株投資のポートフォリオの価値などだ。「ランキング」は、特定の状況に則した「ベスト」なアイテムを予測し、順位を算出する。例えば、検索ランキングだ。検索エンジンでは、ユーザーが検索している単語、プロフィール、履歴からそのユーザーにとって最も関連性のある結果を表示することを目標とする。
機械学習のピッチを聞く時に最も大事なことは、一歩引いて説明を聞くことだ。
評価軸を理解する
タスクを理解したら、次にタスク処理における機械学習システムの評価方法を理解することが重要だ。通常、機械学習システムがどの程度上手く特定のタスクをこなすことができるかを数値で示す評価軸を定義する。画像認識であれば、画像を正しいカテゴリーに分類できた割合を報告する(機械学習が画像に映っているのが犬と正しく判断できた)といった具合だ。一般的な機械学習タスク(分類、回帰、ランキング)であれば、全て標準となる評価軸があるので、慣れておくと良いかもしれない。
評価軸がないことは悪い兆候だ。
残念ながら、課題を解決するためにとても複雑なアルゴリズムや技術を開発しているが、それに合わせた客観的な評価軸を考えていないというのは良くあることだ。評価軸がないことは悪い兆候だ。それでは開発した「スーパー・ディープラーニング」が実際に明白な利用価値を出せるか客観的に知る方法がない。機械学習、そして基本的には他のいかなる技術の開発に対しても、ビジネス価値を考えるのなら、評価軸にフォーカスし、それを元に動く人と仕事した方が良いだろう。
さらに機械学習技術が複雑なほど、評価軸が良くなるとは限らない。このようなもどかしい現実には頻繁に直面するだろう。特に、データが限定的な場合、シンプルな技術の方が複雑なものよりパフォーマンスが良いということはよくある。
つまり、機械学習を構築するのなら、まずはシンプルな方法を開発して、それを試すということを常に心がけた方が良い。私は個人で機械学習に多くの投資がなされているプロジェクトのコンサルティングに携わってきたが、はるかにシンプルなもの(ナイーブベイズ分類器で良いと分かったのは1回だけではなかった)でもパフォーマンスは同じ水準にあり、その方が劇的にスピードが早く、開発時間も少なくすむことが分かったということが度々あった。
機械学習技術の進歩がビジネスの指標に及ぼす影響を理解する
機械学習技術を評価するのに最も難しい最後の要素は、機械学習技術のタスク解決を改善することが、ビジネスの指標にどのような影響をどの程度及ぼすかを知ることだ。その関係性がとても直接的な場合もある。例えば、検索結果の広告プレースメントであれば、機械学習の指標は、広告のクリックスルー率を予測するものだろう(そして、予測クリック単価の重み付けも考慮していることだろう)。
利益を生み出すクリックスルーとクリックスルー率は、ビジネスにとってコアビジネスの指標、あるいはそれに近いものと成りうる。その場合、機械学習に多く投資することは理にかなうことだ。その進歩は、ビジネスの指標を改善することにつながるのだから。
他の状況では、この関係性は分かりやすいものではないかもしれない。例えば、Netflixにとって映画のレコメンド精度を0.5%改善することは難しいことだが、月毎のサブスクライバーのリテンションの上昇は伴わないかもしれない(他のエンゲージメントといった指標は変わるかもしれないが)。
プロダクトオーナーや投資家であるなら、どのビジネス指標を動かしたいのかを理解すること、そしてその変化を機械学習の改善で成し遂げられるのかを理解することは重要なことだ。
もちろん、Googleがなぜ機械学習に多くの投資する理由の一つはこれだろう。機械学習の改善は、彼らの主要ビジネスと財政面の指標と強く関連しているからだ。一方、AppleがSiriを1%改善したところで、それはiPhoneの販売台数とは弱い、あるいは些細な関連性しかないだろう。
プロダクトに機械学習を実装したり、この分野に投資したいと考えるのなら、機械学習がビジネス上の指標を動かせるものであるかを考慮すべきだ。
[原文へ]