機械学習の難所「バイアス・バリアンス」を完全攻略!モデルの複雑さとの関係とは?
こんにちは。ゆうせいです。
機械学習の勉強を進めていると、必ずと言っていいほどぶつかる「壁」があります。それが今回のテーマである「バイアス」と「バリアンス」、そして「モデルの複雑性」というお話です。
お手元の問題画像を見て、「うっ、専門用語ばかりで頭が痛い…」と思ってしまったかもしれませんね。
でも大丈夫です!
この問題、実は「洋服選び」や「スポーツの特訓」に例えると、驚くほど直感的に理解できるんです。今日はこの問題を解きながら、機械学習モデルの性格診断を一緒にやっていきましょう。
そもそも「モデルの複雑性」ってなに?
まずは、問題文にある「モデルの複雑性(表現力)」についてお話しします。
これは簡単に言うと、「データに対してどれだけ細かく合わせようとするか」という、モデルの「こだわりの強さ」のことです。
- 複雑性が小さい(単純な)モデル
- 性格:大雑把でサバサバしている。
- イメージ:「フリーサイズのTシャツ」
- 特徴:誰が着ても「まあ、着られるよね」という感じで、大まかな形しかしません。細かい体型の違いは無視します。
- 複雑性が大きい(表現力が高い)モデル
- 性格:几帳面でこだわりが強い。
- イメージ:「全身採寸した完全オーダーメイドのスーツ」
- 特徴:その人の体の凹凸にミリ単位でピッタリ合わせます。シワ一つない完璧なフィット感を目指します。
このイメージを持ったまま、次の「バイアス」と「バリアンス」の話に進みましょう。
バイアスとバリアンスの正体
この二つは、モデルが予測を失敗してしまう原因(誤差)の種類を表しています。
バイアス(Bias):思い込みの強さ
バイアスとは、「モデルが勝手に持っている先入観によるズレ」のことです。
- フリーサイズTシャツ(単純なモデル)の場合「人間の体なんて、だいたいこんな形でしょ?」という先入観(仮定)が強いです。だから、実際に着る人の体型とはどうしてもズレが生じます。つまり、バイアスが大きい状態です。
- オーダーメイドスーツ(複雑なモデル)の場合先入観を持たず、目の前のデータ(採寸結果)を信じて作ります。だから、その人の体型とのズレはほぼゼロになります。つまり、バイアスが小さい状態です。
バリアンス(Variance):変化への弱さ
バリアンスとは、「学習するデータが変わったときに、結果がどれくらいブレてしまうか」のことです。
- フリーサイズTシャツ(単純なモデル)の場合Aさんが着てもBさんが着ても、Tシャツの形自体は大して変わりません。多少お腹が出ていても、ゆったりしているので影響を受けにくいですよね。つまり、データが変わってもブレない、バリアンスが小さい状態です。
- オーダーメイドスーツ(複雑なモデル)の場合Aさん専用のスーツをBさんが着たらどうなるでしょう?キツくて入らなかったり、ブカブカだったりして、全く使い物になりませんよね。特定のデータに合わせすぎたせいで、データが少し変わっただけで結果が大きく変動してしまう。つまり、ブレやすい、バリアンスが大きい状態です。
答え合わせ:複雑になるとどうなる?
さて、ここまでの話をまとめて、問題の答えを出してみましょう。
モデルの複雑性(表現力)が大きくなる、つまり「フリーサイズ」から「完全オーダーメイド」に変えていくとどうなるでしょうか?
- データに忠実に合わせるので、ズレ(思い込み)は減ります。→ バイアスは小さくなる
- その代わり、特定のデータに特化しすぎて、少しのデータの変化に過敏になります。→ バリアンスは大きくなる
もうお分かりですね!
正解は 4. バイアスは小さくなるが,バリアンスは大きくなる です。
数式で見るトレードオフの関係
この関係性は、機械学習の世界では「トレードオフ(あちらを立てればこちらが立たず)」として知られています。
少し専門的な話になりますが、予測の「総誤差」は次のような式で表されることが多いです。
総誤差 バイアス
バリアンス
ノイズ
この式を見ると、バイアスとバリアンスは足し算の関係にあります。
モデルを複雑にしてバイアスを減らそうとすると(第1項を小さくすると)、どうしてもバリアンスが増えてしまう(第2項が大きくなる)という宿命があるのです。
まとめ:何事もバランスが大事!
最後に、それぞれのメリットとデメリットを整理しておきましょう。
- 単純なモデル(高バイアス・低バリアンス)
- メリット:安定している。新しいデータに対しても大外ししない。
- デメリット:学習不足(未学習)になりやすく、精度に限界がある。
- 複雑なモデル(低バイアス・高バリアンス)
- メリット:訓練データには完璧に当てはまる。高い表現力を持つ。
- デメリット:過学習(オーバーフィッティング)になりやすい。未知のデータに対して脆い。
今後の学習の指針
今回は「モデルを複雑にすればするほど良いわけではない」ということを学びました。
これからの学習では、「過学習」というキーワードに注目してください。
複雑になりすぎてバリアンスが大きくなってしまったモデルを、どうやって手なずけるか。そのために「正則化」や「ドロップアウト」といったテクニックが必要になってきます。
「オーダーメイドすぎると普段使いしにくいから、少し余裕を持たせよう」という調整をするわけですね。
このバランス感覚こそが、優秀なAIエンジニアの腕の見せ所ですよ!
まずはこの基本のシーソー関係を、しっかりと心に留めておいてくださいね。
セイ・コンサルティング・グループでは新人エンジニア研修のアシスタント講師を募集しています。
投稿者プロフィール
- 代表取締役
-
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。
学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。