機械学習でほとんどの人がつまずく2つの間違い

“機械学習(ML)はデータサイエンスで最もホットな分野のひとつだ。アマゾン、ネットフリックス、フェイスブックを通じてMLが主流になるやいなや、人々はデータから何を学ぶことができるかに目を輝かせてきた。しかし、現代の機械学習(つまり、70年代に登場した理論的な統計学習ではない)は非常に発展途上の分野であり、その多くの成功にもかかわらず、我々はまだMLがデータ実務者のために何ができるかを学んでいるところである。

機械学習はコンピュータ・サイエンスの一分野であり、アルゴリズムが、より多くのデータを観察するにつれて、あるタスクのパフォーマンスを向上させる。そのためにアルゴリズムは、手元のデータを最もよく 説明する仮説を選択し、その仮説が将来の(未見の)データに一般化することを期待する。

例えとして、住宅価格とそれに対応する広さ(平方メートル)で住宅の価格と大きさの間には直線的な関係がある。家の大きさが大きくなるにつれて、価格も直線的に上昇するの仮説を立てる。

データ漏れ
データ漏れは、仮説を学習するために使っているデータが、たまたま予測しようとしている情報を持っていた場合に起こります。データ漏れの最も基本的な形は、予測したいデータと同じデータをモデルの入力として使うことである(例えば、同じ家の価格を予測するために家の価格を使う)。しかし、多くの場合、データ漏れは微妙に、そして不注意に起こる。例えば、生データとは対照的に異常値、つまり長期的な平均からの乖離を学習したいと思うかもしれない。しかし、多くの場合、異常値を計算する前にテストデータを削除することを怠り、その結果、異常値は削除される前に平均値や標準偏差に影響を与えたため、予測したいデータに関する情報を含んでしまう

クラウディア・パーリッヒがこのテーマに関する素晴らしい論文で概説しているように、データ漏洩を回避する方法はいくつかある。しかし、特効薬のようなものはなく、気づかないうちに破損したデータセットを引き継いでしまうこともある。データ漏洩を発見する一つの方法は、目に見えない独立したデータに対して非常に悪い結果を出している場合である。例えば、2000年から2010年までのデータセットを誰かからもらったが、2011年以降から自分でデータを集め始めたとする。新しく収集したデータでモデルのパフォーマンスが悪い場合、それはデータ漏れの兆候かもしれない。破損している可能性のあるデータと新しいデータの両方でモデルを再学習させたい衝動に駆られるのを我慢しなければなりません。その代わりに、新しいデータでパフォーマンスが低下した原因を特定するか、より良い方法は、データセット全体を独自に再構築することです。経験則として、最善の防御策は、どのようなデータセットにおいてもデータ漏れの可能性を常に意識することである。

サンプリング・バイアス
サンプリング・バイアスとは、偏ったデータセットやランダムでないデータセットでモデルを学習させることによって、モデルを短絡的に修正し、その結果、一般化可能な仮説が不十分なものになることである。住宅価格の場合、何らかの理由で収集した住宅の価格やサイズがすべて巨大な豪邸のものであった場合、サンプリング・バイアスが発生する。しかし、モデルをテストするときになって、最初に予測する必要があった価格が2ベッドルームのアパートの価格だった場合、それを予測することはできませんでした。サンプリング・バイアスは、主に人間として、偏った(非ランダムな)サンプラーであることで悪名高いため、非常に頻繁に起こります。このバイアスの最も一般的な例の一つは、スタートアップや投資で起こる。ビジネススクールのコースに参加すると、成功する会社の作り方について「ケース・スタディ」が使われる。このようなケーススタディは、ほとんどの企業が失敗しているように、実際には異常値を描いているのであって、標準を描いているわけではない。つまり、自動化されたデータ主導の投資戦略を構築するには、成功した企業と失敗した企業の両方のサンプルが必要なのだ。

Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です