ディープラーニングの「常識」を疑え!相関分析が“無力”に見える理由と、それでも使うべき本当の価値

こんにちは。ゆうせいです。

さて、前回は「相関分析」が、機械学習(ML)において「役立つ特徴量を見つける最強のスカウトマン」だというお話をしましたね。

「なるほど、気温とアイスの売上みたいに、関係が強いデータを見つければいいんだな!」

そう理解してくれたと思います。

では、その知識を持って、今をときめく「ディープラーニング(深層学習)」の世界に飛び込むとどうなるでしょう?

「ディープラーニングでも、まず相関分析で使うデータを選ぶのがセオリーなんでしょ?」

そう思ったあなた。実は、そこには大きな「落とし穴」があるんです。

ディープラーニングの世界では、相関分析は私たちが思うほど「万能」ではありません。

なぜ、あれほど強力だったスカウトマンが、主役の座を降りてしまったのか?

そして、「じゃあ、もう学ばなくていいの?」と聞かれたら、私は「いいえ、絶対に必要です!」と答えます。

今日は、相関分析とディープラーニングの、ちょっと複雑で「裏側」にある関係について、じっくり解説していきますね。

なぜDLでは相関分析が「主役」じゃないのか?

従来の機械学習で大活躍した相関分析が、なぜディープラーニングでは表舞台に立ちにくくなったのか?

それには、ディープラーニングの「とんでもない得意ワザ」が関係しています。

理由1:ディープラーニングは「グニャグニャの関係」が大好物だから

まず復習です。相関分析(ピアソンの相関係数)が得意なのは、「直線的な関係」でした。

片方が増えれば、もう片方も(まっすぐ)増えるか減るか、です。

しかし、世の中の関係はそんなに単純でしょうか?

例え:肥料の量と作物の収穫量

あなたが農家になったとします。「肥料をまけば、作物が育つ」と考えました。

  • 肥料ゼロ → 収穫ゼロ
  • 肥料を少し使う → 収穫が増える!(これは「正の相関」っぽいですね)
  • 肥料をもっと使う → 収穫がさらに増える!

では、肥料を「やりすぎたら」どうなりますか?

…そう、作物は枯れてしまい、収穫はガクンと 減って しまいますよね。

この「増やすと増えるけど、増やしすぎると減る」という関係は、まっすぐな「直線」では到底表せません。

こういうグニャグニャした関係を、専門用語で「非線形(ひせんけい)な関係」と呼びます。

もし、この「肥料の量」と「収穫量」の相関分析をしたら、どうなるでしょう?

増える部分と減る部分が打ち消しあって、相関係数は「0(ゼロ)に近い」という結果が出てしまうかもしれません。

相関分析スカウトマンは、「うーん、この2つ、あんまり関係なさそうですね…」と見逃してしまうんです!

しかし!ディープラーニングの真骨頂は、まさにこの「非線形性」を捉えることです。

層を深く、複雑に重ねることで、モデル自身が「あ、このデータ、最初は増えるけど途中から減る、あの山みたいな関係だな」ということを、自動で学習してくれます。

ディープラーニングからすれば、「相関分析(直線)? そんな単純なモノサシだけじゃ、この世界の複雑さは測れないよ」というわけなんです。

理由2:ディープラーニングは「特徴量」を自分で見つけるから

従来の機械学習では、人間が「このデータが役に立つはずだ!」と必死に特徴量を探し、モデルに「はい、これ使って」と渡してあげる必要がありました。相関分析は、そのための「探す道具」でした。これを「特徴量エンジニアリング」と呼びます。

一方、ディープラーニング(特に画像認識や音声認識)は、その作業をある程度、自動化してしまいます。

例えば、猫の画像を認識させるとき。

従来のML:「猫の耳の形」「ヒゲの長さ」「目の色」…といった特徴量を、人間が計算して与える。

ディープラーニング:「猫の画像(ピクセルの集まり)」をそのままドン!と渡す。

すると、モデルは深い層の中で、

  • 浅い層:「ただの線」や「色のカド」を見つける
  • 中間の層:「線」を組み合わせて「目」や「耳」っぽい部品を見つける
  • 深い層:「部品」を組み合わせて「猫の顔全体」を認識する…というように、学習に必要な特徴量を「自分で」見つけ出してくれるんです。

だから、人間が事前に「このピクセルとあのピクセルの相関は…」なんて地道に調べる必要性が、従来のMLに比べて格段に減ったのです。

じゃあ、DLエンジニアは相関分析が不要? → 答えは「NO」です!

「なるほど、DLが自動でやってくれるなら、相関分析はもう古い技術なんだな…」

そう結論づけるのは、早すぎます!

主役(モデル構築の核)ではなくなりましたが、相関分析は「絶対に知っておくべき名脇役」として、今もなお重要な役割を持っています。

役割1:最強の「データ健康診断(EDA)」ツールとして

ディープラーニングモデルは、学習に非常に時間がかかります。GPUを何時間も、何日も回すこともザラです。

その高いコストをかける前に、データが「そもそも学習する価値があるのか」をサクッと確認したくありませんか?

その「最初の健康診断(探索的データ分析=EDA)」として、相関分析は最速・最強のツールの一つです。

  • 「ほぼ同じデータ」が混じっていないか?「Aという特徴量」と「Bという特徴量」の相関を測ったら「+0.99」だった。これは「ほぼ同じこと言ってるデータが2つある」ということです(多重共線性)。モデルを混乱させる前に、「片方は削除しておこう」と判断できます。
  • 「まったく関係ないデータ」ばかりじゃないか?予測したい「答え(ターゲット)」と、手持ちのどの「特徴量(データ)」の相関を測っても、全部「0.01」とか「-0.03」とか、ゼロに近い値ばかりだったら?「あれ? このデータセット、答えを予測するヒントが何も入ってないかも…?」巨大なDLモデルを回す前に、この「絶望的なサイン」に気づけるのは、ものすごく価値があります。

役割2:「見せかけの相関」を疑う「人間の目」として

前回の「アイスの売上」と「水難事故」の話を思い出してください。

この2つには「見せかけの相関」がありましたね。

ディープラーニングモデルは、非常に賢いですが、「常識」はありません。

データに相関があれば、「アイスが売れると事故が起きるんだな!」と平気で学習してしまう危険性があります。

相関分析で強い関係が出たときに、「待てよ、これは本当に原因と結果か?」「裏に『気温』みたいな共通の原因が隠れてないか?」と立ち止まって考える。

この「因果関係を考察する目」は、モデル任せにできない、私たち人間のエンジニアの重要な仕事です。

役割3:テーブルデータ(構造化データ)では、まだ現役

画像や音声、テキストと違い、Excelの表のような「テーブルデータ(構造化データ)」…例えば、顧客リスト(年齢、性別、購入額、来店回数…)などです。

この分野では、実はディープラーニングが常に最強とは限りません。

XGBoostのような、従来の(?)機械学習モデルの方が高い精度を出すことも、まだまだ多いんです。

そして、そういったモデルを使う場合、相関分析を使った「特徴量スカウト」や「多重共線性チェック」は、今でもバリバリの現役テクニックとして使われています。

まとめと今後の学習

ディープラーニングの登場で、相関分析の立ち位置は変わりました。

  • DLは、相関分析(直線)では捉えきれない「非線形な関係」を自動で見つけるのが得意。
  • そのため、相関分析がモデル構築の「主役」になることは減った。

しかし、

  • 学習前の「データ健康診断(EDA)」
  • 「見せかけの相関」を疑うための「人間の思考ツール」
  • 「テーブルデータ」を扱う際の分析テクニック

として、その価値はまったく失われていません。

むしろ、DLというブラックボックスを扱う上で、その「手前」と「外側」を理解するために、ますます重要になっていると私は思います。

次のステップ

  1. 「非線形」を自分で作って、相関を測ってみようExcelでもPythonでもいいので、y = x^2 (xは-10から+10)のような、きれいな放物線(Uの字)のデータを作ってみてください。そして、そのxとyの相関係数を計算してみましょう。目で見て「明らかに関係がある」のに、相関係数が「ほぼ0」になるはずです。これが「相関分析の限界」であり、「DLの出番」だと体感できます。
  2. 「相互情報量(Mutual Information)」を調べてみよう「直線の関係しか測れないなら、非線形な関係も含めて『関連の強さ』を測るモノサシはないの?」と思ったあなた、鋭い!その名も「相互情報量」という指標があります。相関分析の弱点を補うこの指標について知っておくと、特徴量選択の武器が格段に増えますよ。

DLが自動でやってくれることに甘えず、その「手前」にあるデータの声を聞く。そのための道具として、相関分析をぜひマスターしてくださいね!

セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。