2018年6月21日木曜日

機械学習で分かるのは「相関」であって「因果」ではない

 機械学習というのは、大規模のデータを統計的なアルゴリズムを使い予測に役立てる技術のことだ。最近のAIで使われる中で最もポピュラーな技術である。大量のデータに対して、統計的な分析やシミュレーションを組み合わせることで、対象となる物事をコンピュータが自動的に分析/予測できるようになる。

 ただし、「統計的な分析」なので、事物を理解するわけではない。あくまで、データで表現されている数値の推移の予測や文字列または画像の分類を行う。これも正式な定義は無いが、対象の理解に重きを置いているのが統計分析で、将来の予測を重視しているのが機械学習である。

 重要なポイントとなるのは、機械学習で判明するのは「相関」であり「因果」ではないということだ。相関ということは、複数の変数に関わりがあることは示せるが、本当に関係しているかどうかは不明なのだ。意味を見いだして「因果」を証明するのは、人間の仕事ということだ。幸いなことに人間の仕事は無くならず、より重要になるのだ。ここに面白い例があるので見てほしい。

 
1 機械学習における相関と因果の事例(クリックで拡大) 出典:Spurious Correlations

 1にある通り、米国メイン州の離婚率と1人当たりのマーガリン消費量の間には、相関があることが分かる。しかしマーガリンの消費量を減らすことと離婚率を減らすことに因果はあるだろうか。ちょっと考えてみれば分かる話なので冗談になるが、製造業の技術者の本業で考えるとこの判別が難しい場合もある。ひとまず、機械学習では相関を扱っている、ということだけは頭の片隅に置いておいた方が良いだろう。

 機械学習に対して否定的に聞こえたかもしれないが、相関しか分からなくてももちろん意味は大きい。機械学習に出番が回ってくるのは、関係する要素が多すぎて因果がそもそも分かっていないからだ。また数値にすることで比較検討ができたり、膨大なデータの分析の見当を付けられたりするだけでも意味はある。また、因果が分かるまではとても時間がかかる。ビジネスではそこまで時間をかけられないという現実があるので、正解ではなくても少しでも良い解なら十分に使えることも多いのだ。

 

0 件のコメント:

コメントを投稿