正則化はさまざまな記事や資料でよく見られます。たとえば、一般的な目的関数には次の 2 つの項目が含まれます。 その中で、エラー/損失関数は、モデルがトレーニング データに可能な限り適合するように促し、最終モデルのバイアスが少なくなるようにしています。正規化項はより単純なモデルを推奨します。モデルが単純な場合、限られたデータをフィッティングした結果はランダム性が低くなり、過剰適合の可能性が低くなるため、最終的なモデル予測がより安定します。 しかし、正規化とは何かを明確にする良い記事はこれまでありませんでした。 正規化に関しては、過剰適合の問題から始めなければなりません。 1) 過剰適合の問題 フィッティング問題の例 - 線形回帰住宅価格問題: a) アンダーフィット(ハイバイアスとも呼ばれる、画像出典:スタンフォード大学機械学習レッスン 7「正規化」) b) 適切なフィット: c) 過剰適合(高分散とも呼ばれる) オーバーフィッティングとは何ですか? 特徴がたくさんある場合、学習した仮説はトレーニングセットに非常によく適合する可能性があります( ) ですが、新しいデータについては予測精度が低くなります。 過剰適合の例 2 - ロジスティック回帰: 前の例と同様に、順序は、アンダーフィッティング、適切なフィッティング、オーバーフィッティングです。 a) アンダーフィッティング b) 適切なフィット c) 過剰適合 過剰適合問題を解決する方法: まず、過剰適合の問題は、特徴が多すぎる場合によく発生します。たとえば、次のような特徴を定義したとします。 すると、トレーニング セットの適合は完璧になります。 したがって、過剰適合の問題を解決するには、通常、次の 2 つのアプローチが検討されます。 a) 機能の数を減らす: - 保持する機能を人工的に選択します。 -モデル選択アルゴリズム b) 正規化 - すべての機能を維持しながら、パラメータの量/値を削減します。 - 正則化の利点は、多くの特徴がある場合、各特徴が y を予測するために適切な量の力を発揮することです。 したがって、正規化を使用する目的は、過剰適合を防ぐことです。 上の図に示すように、上下にジャンプする赤い曲線は、過剰適合の想像力が過剰な例です。上記の図と英語の単語「regularization」を組み合わせると、直訳は「regularization」になります。 ルールは何ですか?例えば、どんなに有名なスターでも、法律を破ることはできません。これがルールであり、制約です。同様に、計画とは、訓練すべき目的関数が勝手に拡大したり、不規則に飛び跳ねたり、無法地帯になったりしないように、目的関数に何らかのルール(制約)を加えることです。 L1 正則化と L2 正則化 機械学習では、損失関数の後に追加の項が追加されることがほとんどです。一般的な追加項は 2 つあり、英語では ℓ1-norm と ℓ2-norm、中国語では L1 正規化と L2 正規化、または L1 ノルムと L2 ノルムと呼ばれます。 L1 正則化と L2 正則化は、損失関数のペナルティ項と見なすことができます。いわゆる「ペナルティ」とは、損失関数の特定のパラメータに対するいくつかの制限を指します。 線形回帰モデルの場合、L1 正則化を使用するモデルは Lasso 回帰と呼ばれ、L2 正則化を使用するモデルは Ridge 回帰と呼ばれます。 下の図は、Python での Lasso 回帰の損失関数です。プラス記号の後の項 α||w||1 は L1 正則化項です。 次の図はPythonのリッジ回帰の損失関数です。プラス記号の後の項は これは L2 正則化項です。 一般的な回帰分析では、回帰wは特徴量の係数を表します。上記の式から、正則化項が係数を処理(制限)していることがわかります。 L1 正則化と L2 正則化の説明は次のとおりです。 L1正則化とは、重みベクトルwの各要素の絶対値の合計を指し、通常は次のように表されます。 L2正則化とは、重みベクトルwの要素の2乗を合計し、その平方根を取ることです(リッジ回帰のL2正則化項には2乗の符号が付いていることがわかります)。通常は次のように表されます。 一般的に、正規化項の前に係数が追加されます。これは、Python では α で表され、一部の記事では λ で表されます。この係数はユーザーが指定する必要があります。 では、L1 および L2 正規化を追加すると何の役に立つのでしょうか? L1 正則化は、スパース重み行列、つまり特徴選択に使用できるスパース モデルを生成できます。 L2 正則化により、モデルの過剰適合を防ぐことができます。もちろん、ある程度、L1は過剰適合を防ぐこともできる。 スパースモデルと特徴選択 前述のように、L1 正則化はスパース重み行列を生成するのに役立ち、これは特徴選択に使用できます。なぜスパース行列を作成するのですか? スパース行列とは、多くの要素が 0 で、少数の要素のみが非ゼロ値である行列、つまり、得られる線形回帰モデルの係数のほとんどが 0 である行列です。通常、機械学習では多くの特徴があります。たとえば、テキスト処理では、用語を特徴として使用する場合、特徴の数は数万(バイグラム)に達します。 予測や分類を行う際、これほど多くの特徴量を選択するのは当然困難です。しかし、これらの特徴量を代入して得られたモデルがスパースモデルであるということは、このモデルに寄与する特徴量はごくわずかであり、ほとんどの特徴量は寄与しないか、寄与してもごくわずかであることを意味します(それらの前にある係数は0または非常に小さな値であるため、それらを削除してもモデルには影響がありません)。このとき、係数が0以外の値である特徴量にのみ焦点を当てることができます。これはスパースモデルと特徴選択の関係です。 L1正則化と特徴選択 L1 正則化による次の損失関数を想定します。 ここで、J0 は元の損失関数、プラス記号の後の項は L1 正則化項、α は正則化係数です。 L1 正則化は重みの絶対値の合計であり、J は絶対値符号を持つ関数であるため、J は完全に微分可能ではないことに注意してください。 機械学習のタスクは、いくつかの方法(勾配降下法など)を通じて損失関数の最小値を見つけることです。元の損失関数 J0 の後に L1 正則化項を追加すると、J0 に制約を課すことと同じになります。 L=α∑w|w|とすると、J=J0+Lとなります。ここでの課題は、L制約下でJ0を最小化する解を見つけることです。 2次元の場合を考えてみましょう。つまり、重みはw1とw2の2つだけです。このとき、L=|w1|+|w2|勾配降下法の場合、J0を解くプロセスで等高線を描くことができます。同時に、L1正規化関数Lもw1w2の2次元平面上に描くことができます。 以下のように表示されます。 図中の等高線はJ0の等高線であり、黒い四角はL関数のグラフです。 図では、J0 等高線が LL グラフと初めて交差する場所が最適解です。上図では、J0 と L は L の頂点で交差しており、この頂点が最適解です。この頂点の値は(w1,w2)=(0,w)であることに注意してください。 L 関数には多くの「顕著なコーナー」 (2 次元の場合は 4 つ、多次元の場合はそれ以上) があるため、J0 がこれらのコーナーに接触する確率は L の他の部分に接触する確率よりもはるかに高く、これらのコーナーでは 0 に等しい重みが多数存在することが直感的に想像できます。これが、L1 正規化によってスパース モデルを生成でき、それを特徴選択に使用できる理由です。 正則化係数αはLグラフのサイズを制御できます。 α が小さいほど、L のグラフ (上図の黒いボックス) は大きくなります。一方、α が大きいほど、L のグラフは小さくなり、黒いボックスが原点をわずかに超える程度まで小さくなります。これが最適点 (w1,w2)=(0,w) の値であり、w は非常に小さい値を取ることができます。 同様に、L2 正則化による次の損失関数を想定します。 次のように 2 次元平面上にグラフを描くこともできます。 2 次元平面における L2 正規化関数のグラフは円であり、正方形に比べてエッジが滑らかになります。したがって、J0 が L と交差して w1 または w2 がゼロになる確率は非常に小さくなり、これが L2 正則化がスパースでない理由です。 PRML の本では、これら 2 つのグラフを次のように説明しています。 上図のモデルは、2 つの特徴を持つ線形回帰です。最適化するパラメータは w1 と w2 です。左図の正則化は L2、右図の正則化は L1 です。青い線は最適化プロセス中に遭遇する等高線です。円は目的関数の値を表します。円の中心はサンプル観測値(1 つのサンプルを想定)、半径はエラー値、制限条件は赤い境界(正規化部分)です。2 つの交点が最適なパラメータです。 右側の最適なパラメータは座標軸上でのみ可能であるため、重みパラメータは 0 になり、モデルがスパースになることがわかります。 L2 正則化とオーバーフィッティング フィッティングのプロセスでは、通常、重みをできるだけ小さくし、最終的に比較的小さなパラメータを持つモデルを構築する傾向があります。一般的に、パラメータ値が小さいモデルはより単純で、さまざまなデータセットに適応でき、ある程度の過剰適合を回避できると考えられているためです。 線形回帰方程式の場合、パラメータが非常に大きいと、データのわずかな偏差でも結果に大きな影響を与えますが、パラメータが十分に小さいと、データのわずかな偏差でも結果に影響はありません。これをより専門的な言い方で言うと、「強力な耐外乱能力」になります。 では、なぜ L2 正則化は非常に小さな値を持つパラメータを取得できるのでしょうか? 線形回帰における勾配降下法を例に挙げます。必要なパラメータがθで、hθ(x)が仮説関数であると仮定すると、線形回帰のコスト関数は次のようになります。 勾配降下法では、パラメータ θ を反復的に計算するために使用される反復式は次のようになります。 ここで、α は学習率です。上記の式は、L2 正則化項を追加しない反復式です。元のコスト関数の後に L2 正則化を追加すると、反復式は次のようになります。 ここでλは正規化パラメータです。上記の式から、L2 正則化を追加しない反復式と比較すると、各反復で θj に 1 未満の係数を掛ける必要があるため、θj が減少し続けることがわかります。したがって、一般に、θ は減少し続けます。 冒頭で、L1 正則化によって過剰適合もある程度防ぐことができるとも述べました。前に説明したように、L1 正則化係数が非常に小さい場合、最適解も非常に小さくなり、L2 正則化と同様の効果が得られます。 最後に、もう 1 つの観点を追加したいと思います。正規化は、実際にはモデルのパラメータを事前に設定することであり、これはベイズ学派の見解です。 L1 正則化はラプラス事前分布であり、L2 はガウス事前分布であり、それぞれパラメーター sigma によって決定されます。データが不足している場合は、事前の知識によって過剰適合を防ぐことができます。 最も簡単な例を 2 つ挙げてみましょう。 1 コインを投げて表が出る確率を推測します。 5 回しか投げられない場合は、5 回すべて表になる可能性が非常に高いため、表が出る可能性は 1 であるという誤った結論に達します - 過剰適合です。表が出る確率が 0.5 であることを事前にモデルに追加すれば、結果はそれほど驚くべきものにはなりません。これは実は規則性なのです。 2. 最小二乗回帰問題: L2 ノルム正則化を追加することは、ガウス分布の事前分布を追加することと同等であり、L1 ノルム正則化を追加することは、ラプラス分布の事前分布を追加することと同等です。 |
<<: 2020年のライフスタイルに関する2008年の予測:そのほとんどが実現
>>: CV モデルが動作しないのはなぜですか?理由がこんなに単純だとは思いませんでした...
[[270991]]人工知能技術の復活は、ここ数年の IT に代表される計算能力の大幅な向上が主な要...
有名な数学者テレンス・タオ氏はここ数か月、ChatGPTやGPT-4などのAIツールを使用して数学の...
最近、清華大学コンピュータサイエンス学部の朱軍教授の研究グループが発表したシュレーディンガー橋[1]...
Stability AI は、Stable Diffusion 3 のリリースに続いて、本日詳細な...
編集者 | Yifeng制作:51CTO テクノロジースタック(WeChat ID:blog) Or...
中国の医療サービス市場の規模は巨大です。中国の医療サービス業界は、国家政策の推進により、デジタル化と...
【元記事は51CTO.comより】最近、VR熱血ゲームを題材にした映画『レディ・プレイヤー1』が主要...
ほとんどの場合、テクノロジーがビジネスに与える影響は徐々に増加しますが、時折、ビジネスの世界観全体を...
[[182123]]関連付けアルゴリズムは、データ マイニングにおける重要なタイプのアルゴリズムです...
[[431567]]長い間、テスト セットで優れたパフォーマンスを発揮するモデルは、一般化のパフォー...