【AIC入門】そのモデル、複雑すぎませんか?「シンプルで賢い」を選ぶ最強の指標
こんにちは。ゆうせいです。
前回、前々回と「変数を増やせば決定係数は上がってしまう」「だから補正が必要だ」というお話をしましたね。
今回は、その流れで絶対に知っておいてほしい、もう一つの強力な武器を紹介します。それが 「AIC(赤池情報量基準)」 です。
「赤池? 日本人の名前?」と思ったあなた、大正解です。これは日本の統計学者、赤池弘次先生が考案した、世界中で使われている偉大な指標なんです。
エンジニアとして「良いモデルとは何か?」を考えるとき、このAICの考え方は技術選定やコーディングの美学にも通じるものがあります。
今日はこのAICを、数式が苦手な方でも感覚的にわかるように解説していきます!
良いモデルって、結局なんだろう?
いきなりですが、質問です。
あなたは、あるシステムの売上予測プログラムを作ることになりました。次の2つのモデル(計算式)のうち、どちらが「優秀」だと思いますか?
- モデルA:変数を50個使い、過去のデータとの誤差はほぼゼロ。でも式は超複雑。
- モデルB:変数は3個だけ。誤差は少しあるけれど、式はとてもシンプル。
直感的に「モデルBの方が良さそうだな……」と思いませんか?
その直感は正しいです。モデルAは、おそらく「過学習(オーバーフィッティング)」を起こしています。過去のデータには完璧に合致しますが、来月の売上予測には全く役に立たない可能性が高いのです。
「データへの当てはまりの良さ」 と 「モデルのシンプルさ」。
この2つはトレードオフ(あちらを立てればこちらが立たず)の関係にあります。このバランスをうまくとり、「ちょうどいい塩梅」を数字で教えてくれるのがAICなのです。
AICの計算式を見てみよう
AICは、以下の式で計算されます。
うわっ、ログ(log)が出てきた……と引かないでください! 一つずつ分解すれば、中身は小学生の算数と同じくらい単純な「引き算と足し算」です。
この式は、2つのパートに分かれています。
- 前半:
ここは 「当てはまりの悪さ」 を表しています。
(尤度・ゆうど)は「モデルがどれくらいデータに当てはまっているか」を示す数値です。よく当てはまっているほど
は大きくなり、計算結果であるマイナスの値はより小さくなります。つまり、精度が良いほど、この数値は小さくなります。
- 後半:
ここは 「複雑さへのペナルティ」 を表しています。
は説明変数の数(パラメータ数)です。変数を増やせば増やすほど、この値は大きくなります。つまり、複雑にするほど、スコアが悪化(増加)します。
結論:AICは「小さいほど良い」
AIC = (当てはまりの悪さ) + (複雑さのペナルティ)
この合計値が 最も小さいモデル が、「精度が高く、かつシンプルである」という理想的なモデルだと判断されます。
エンジニアのための「コード品質」での例え
統計の話だとイメージしづらいかもしれないので、プログラミングコードに例えてみましょう。
あなたがある機能を実装するとき、2通りのプルリクエスト(PR)が来たとします。
- PR A:機能は完璧に動作するが、コードが1000行あり、変数が大量定義されたスパゲッティコード。
- PR B:機能は99%動作(稀なエッジケースだけ未対応)するが、コードは50行ですっきり書かれていて読みやすい。
あなたはどちらをマージしますか?
将来の保守性やバグのリスクを考えれば、間違いなく PR B を選ぶでしょう。
AICの考え方はこれと全く同じです。
「機能(当てはまり)」を追求するあまり、「行数(変数の数)」を増やしすぎると、AICというレビュアーから「このコード、複雑すぎてメンテナンスできませんよ! リジェクト!」と怒られてしまうのです。
無駄な贅肉を削ぎ落とし、本質だけを捉えたモデルこそが至高。これがAICの哲学であり、エンジニアの美学でもありますね。
メリットとデメリット
道具を使うには、その特性を知ることが大切です。
メリット
- モデル間の比較が超簡単「モデルAのAICは100、モデルBのAICは95」なら、迷わず「95のモデルBが良い!」と即決できます。
- 過学習を防げる変数を無闇に増やすとペナルティ(
)が効いてくるので、自然とシンプルなモデルが選ばれます。
デメリット
- 絶対的な数値に意味はないAICが「100」だから良い、「1000」だから悪い、とは言えません。あくまで、同じデータセットを使った モデル同士の比較(相対評価) でしか使えません。
- データ数が違うと比較できないデータの件数が変わるとAICの基準も変わってしまいます。比較するときは、必ず同じデータセットを使ってください。
今後の学習の指針
AICは「オッカムの剃刀(必要なしに多くを仮定してはならない)」という哲学を数学にしたような、非常に美しい指標です。
これを理解したあなたは、もう「とりあえず変数を全部突っ込めばいい」なんて乱暴な分析はしなくなるはずです。
さて、ここからの学習ステップですが、以下をおすすめします。
- 「尤度(ゆうど)」を学ぶAICの式に出てきた
のことです。「確率」と似ていますが少し違います。ここを理解すると、統計の世界が一気にクリアになります。
- BIC(ベイズ情報量基準)との違いを知るAICとよく似た指標にBICというものがあります。BICはAICよりもさらに「複雑さ」に対して厳しいペナルティを課します。どういう時に使い分けるのか、調べてみると面白いですよ。
シンプル・イズ・ベスト。この言葉を胸に、美しいモデルを作っていきましょう!
セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク
投稿者プロフィール
- 代表取締役
-
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。
最新の投稿
山崎講師2025年12月2日積分で面積を計算?P値の正体と「片側・両側」の謎を解き明かそう
山崎講師2025年12月2日【AIC入門】そのモデル、複雑すぎませんか?「シンプルで賢い」を選ぶ最強の指標
山崎講師2025年12月2日「自由度調整済み決定係数」と「補正R2」は同じものですか?
山崎講師2025年12月2日【決定係数の罠】説明変数を増やすとなぜ精度が良く見える?エンジニア1年目が知るべきロジック