機械学習の難所「バイアス・バリアンス」を完全攻略!モデルの複雑さとの関係とは?

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

機械学習の勉強を進めていると、必ずと言っていいほどぶつかる「壁」があります。それが今回のテーマである「バイアス」と「バリアンス」、そして「モデルの複雑性」というお話です。

お手元の問題画像を見て、「うっ、専門用語ばかりで頭が痛い…」と思ってしまったかもしれませんね。

でも大丈夫です!

この問題、実は「洋服選び」や「スポーツの特訓」に例えると、驚くほど直感的に理解できるんです。今日はこの問題を解きながら、機械学習モデルの性格診断を一緒にやっていきましょう。

そもそも「モデルの複雑性」ってなに?

まずは、問題文にある「モデルの複雑性(表現力)」についてお話しします。

これは簡単に言うと、「データに対してどれだけ細かく合わせようとするか」という、モデルの「こだわりの強さ」のことです。

  • 複雑性が小さい(単純な)モデル
    • 性格:大雑把でサバサバしている。
    • イメージ:「フリーサイズのTシャツ」
    • 特徴:誰が着ても「まあ、着られるよね」という感じで、大まかな形しかしません。細かい体型の違いは無視します。
  • 複雑性が大きい(表現力が高い)モデル
    • 性格:几帳面でこだわりが強い。
    • イメージ:「全身採寸した完全オーダーメイドのスーツ」
    • 特徴:その人の体の凹凸にミリ単位でピッタリ合わせます。シワ一つない完璧なフィット感を目指します。

このイメージを持ったまま、次の「バイアス」と「バリアンス」の話に進みましょう。

バイアスとバリアンスの正体

この二つは、モデルが予測を失敗してしまう原因(誤差)の種類を表しています。

バイアス(Bias):思い込みの強さ

バイアスとは、「モデルが勝手に持っている先入観によるズレ」のことです。

  • フリーサイズTシャツ(単純なモデル)の場合「人間の体なんて、だいたいこんな形でしょ?」という先入観(仮定)が強いです。だから、実際に着る人の体型とはどうしてもズレが生じます。つまり、バイアスが大きい状態です。
  • オーダーメイドスーツ(複雑なモデル)の場合先入観を持たず、目の前のデータ(採寸結果)を信じて作ります。だから、その人の体型とのズレはほぼゼロになります。つまり、バイアスが小さい状態です。

バリアンス(Variance):変化への弱さ

バリアンスとは、「学習するデータが変わったときに、結果がどれくらいブレてしまうか」のことです。

  • フリーサイズTシャツ(単純なモデル)の場合Aさんが着てもBさんが着ても、Tシャツの形自体は大して変わりません。多少お腹が出ていても、ゆったりしているので影響を受けにくいですよね。つまり、データが変わってもブレない、バリアンスが小さい状態です。
  • オーダーメイドスーツ(複雑なモデル)の場合Aさん専用のスーツをBさんが着たらどうなるでしょう?キツくて入らなかったり、ブカブカだったりして、全く使い物になりませんよね。特定のデータに合わせすぎたせいで、データが少し変わっただけで結果が大きく変動してしまう。つまり、ブレやすい、バリアンスが大きい状態です。

答え合わせ:複雑になるとどうなる?

さて、ここまでの話をまとめて、問題の答えを出してみましょう。

モデルの複雑性(表現力)が大きくなる、つまり「フリーサイズ」から「完全オーダーメイド」に変えていくとどうなるでしょうか?

  1. データに忠実に合わせるので、ズレ(思い込み)は減ります。→ バイアスは小さくなる
  2. その代わり、特定のデータに特化しすぎて、少しのデータの変化に過敏になります。→ バリアンスは大きくなる

もうお分かりですね!

正解は 4. バイアスは小さくなるが,バリアンスは大きくなる です。

数式で見るトレードオフの関係

この関係性は、機械学習の世界では「トレードオフ(あちらを立てればこちらが立たず)」として知られています。

少し専門的な話になりますが、予測の「総誤差」は次のような式で表されることが多いです。

総誤差 = バイアス ^2 + バリアンス + ノイズ

この式を見ると、バイアスとバリアンスは足し算の関係にあります。

モデルを複雑にしてバイアスを減らそうとすると(第1項を小さくすると)、どうしてもバリアンスが増えてしまう(第2項が大きくなる)という宿命があるのです。

まとめ:何事もバランスが大事!

最後に、それぞれのメリットとデメリットを整理しておきましょう。

  • 単純なモデル(高バイアス・低バリアンス)
    • メリット:安定している。新しいデータに対しても大外ししない。
    • デメリット:学習不足(未学習)になりやすく、精度に限界がある。
  • 複雑なモデル(低バイアス・高バリアンス)
    • メリット:訓練データには完璧に当てはまる。高い表現力を持つ。
    • デメリット:過学習(オーバーフィッティング)になりやすい。未知のデータに対して脆い。

今後の学習の指針

今回は「モデルを複雑にすればするほど良いわけではない」ということを学びました。

これからの学習では、「過学習」というキーワードに注目してください。

複雑になりすぎてバリアンスが大きくなってしまったモデルを、どうやって手なずけるか。そのために「正則化」や「ドロップアウト」といったテクニックが必要になってきます。

「オーダーメイドすぎると普段使いしにくいから、少し余裕を持たせよう」という調整をするわけですね。

このバランス感覚こそが、優秀なAIエンジニアの腕の見せ所ですよ!

まずはこの基本のシーソー関係を、しっかりと心に留めておいてくださいね。

セイ・コンサルティング・グループでは新人エンジニア研修のアシスタント講師を募集しています。

投稿者プロフィール

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

学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。