モデルの過剰適合を防ぐにはどうすればよいですか?この記事では6つの重要な方法を紹介します

モデルの過剰適合を防ぐにはどうすればよいですか?この記事では6つの重要な方法を紹介します

バフェット氏は「正確に間違っているよりも、おおよそ正しい方が良い」と述べています。

機械学習では、過剰適合によりモデルの予測パフォーマンスが低下する可能性があり、通常、パラメータが多すぎるなど、モデルが複雑すぎる場合に発生します。この記事では、オーバーフィッティングとその解決策についてまとめます。

[[377248]]

機械学習では、モデルが特定のトレーニング データに集中しすぎて要点を見失った場合、そのモデルは過剰適合していると言われます。モデルによって提供される答えは正解から遠く離れており、つまり精度が低下しています。このようなモデルは、無関係なデータ内のノイズを信号として扱うため、精度に悪影響を及ぼします。モデルが損失が低くなるように十分にトレーニングされている場合でも、新しいデータではパフォーマンスが低下します。アンダーフィッティングとは、モデルがデータのロジックを捉えていない場合を指します。したがって、適合度の低いモデルでは精度が低くなり、損失が大きくなります。

モデルが過剰適合しているかどうかを判断するにはどうすればよいでしょうか?

モデルを構築する際、データはトレーニング セット、検証セット、テスト セットの 3 つのカテゴリに分割されます。トレーニング データはモデルのトレーニングに使用され、検証セットは各ステップで構築されたモデルをテストするために使用され、テスト セットは最後にモデルを評価するために使用されます。通常、データは 80:10:10 または 70:20:10 の比率で分散されます。

モデルを構築するプロセスでは、検証データを使用して、各エポックで現在構築されているモデルをテストし、モデルの損失と精度、および各エポックの検証損失と検証精度を取得します。モデルが構築された後、テスト データを使用してモデルをテストし、精度を取得します。精度と検証精度に大きな差がある場合は、モデルが過剰適合していることを意味します。

検証セットとテスト セットの両方の損失が高い場合、モデルはアンダーフィットしています。

過剰適合を防ぐ方法

1. クロスバリデーション

クロス検証は過剰適合を防ぐのに適した方法です。クロス検証では、複数のトレーニングとテストの分割を生成し、モデルを調整します。 K 分割検証は標準的なクロス検証方法で、データを k 個のサブセットに分割し、サブセットの 1 つを検証に使用し、他のサブセットをアルゴリズムのトレーニングに使用します。

クロス検証によりハイパーパラメータの調整が可能になり、パフォーマンスはすべての値の平均になります。この方法は計算コストが高いですが、あまり多くのデータを無駄にしません。クロス検証プロセスを次の図に示します。

2. より多くのデータでトレーニングする

より関連性の高いデータを使用してモデルをトレーニングすると、信号をより適切に識別し、ノイズを信号と間違えることを防ぐことができます。データ拡張はトレーニング データを増やす方法であり、反転、変換、回転、拡大縮小、明るさの変更などによって実現できます。

3. 機能を削除する

特徴を削除すると、モデルの複雑さが軽減され、ノイズがある程度回避され、モデルの効率が向上します。複雑さを軽減するには、レイヤーを削除したり、ニューロンの数を減らしてネットワークを小さくすることができます。

4. 早期終了

モデルを繰り返しトレーニングしていくと、各反復のパフォーマンスを測定できます。検証損失が増加し始めたら、モデルのトレーニングを停止する必要があります。これにより、過剰適合を防ぐことができます。

次の図は、モデルのトレーニングを停止するタイミングを示しています。

5. 正規化

正規化を使用すると、モデルの複雑さを軽減できます。これはペナルティ損失関数を通じて行われ、L1 と L2 の 2 つの方法で実行できます。数式は次のとおりです。

L1 ペナルティの目的は、重みの絶対値の合計を最適化することです。外れ値に対して堅牢な、シンプルで解釈可能なモデルを生成します。

L2 は重み値の二乗の合計にペナルティを課します。このモデルは複雑なデータパターンを学習できますが、外れ値に対しては堅牢ではありません。

どちらの正規化方法も過剰適合問題の解決に役立ち、読者は必要に応じてそれらを使用することを選択できます。

6. ドロップアウト

ドロップアウトは、ニューラル ネットワーク ユニットをランダムに無効にする正規化方法です。任意の隠し層または入力層に実装できますが、出力層には実装できません。このアプローチにより、他のニューロンへの依存が不要になり、ネットワークが独立した相関関係を学習できるようになります。この方法では、次の図に示すように、ネットワークの密度を減らすことができます。

要約する

過剰適合は、既存のデータを効果的に使用することを妨げるため、対処する必要がある問題です。モデルを構築する前に、過剰適合を予測できる場合もあります。過剰適合の兆候は、データ、データの収集方法、サンプリング方法、誤った仮定、誤った表現を調べることで見つけることができます。これを回避するには、モデリングする前にデータを確認してください。しかし、過剰適合は前処理中には検出できず、モデルの構築後にのみ検出されることがあります。上記の方法を使用して、過剰適合の問題を解決できます。

<<:  EUがAIを活用して社会イノベーションを推進する方法

>>:  人工知能専攻にはどのような専攻が含まれますか?見通しはどうですか?

ブログ    
ブログ    
ブログ    

推薦する

画像分類を40ナノ秒で完了、ニューラルネットワークを内蔵した画像センサーがNatureに掲載

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

520 開発者のバレンタインデー: 全プラットフォームで 35 の PaddlePaddle アップグレード「Show AI」

「新インフラ」は中国の「産業インテリジェンス」に強力な新たな原動力をもたらした。インテリジェント時...

「アルゴリズムとデータ構造」時間と空間の複雑さ

[[361000]]この記事はWeChatの公開アカウント「Unorthodox Front-en...

あなたの頭上に「ロボット」がやって来ます!起業家の知恵:リアルタイムで位置を特定し、自動的に警報を鳴らすスマートヘルメットの開発

[[317160]]建設作業中には、火災、電気、機械など、多くの潜在的な安全上の危険が存在します。安...

バイリアン・スマートが2021 NIDIアジェンダ中国新小売・デジタルイノベーションサミットに出席

6月22日、2021NIDIアジェンダ中国新小売・デジタルイノベーションサミットが上海で盛大に開催さ...

AI による IoT センサー電力の管理

[[352688]]センサーの電源喪失は IoT の悩みの種です。数百万個のセンサーを導入しても、そ...

Python+AI で古い写真をカラー化

こんにちは、みんな。今日も引き続き、興味深い AI プロジェクトを皆さんと共有したいと思います。前回...

機械学習開発者が知っておくべき 5 つのディープラーニング フレームワーク

ディープラーニングには大量の計算が必要です。通常、多数のノードを持つニューラル ネットワークで構成さ...

スマートテクノロジーは高齢化問題の解決に役立つでしょうか?

世界保健機関によれば、2050年までに世界中で約20億人が60歳以上になると予想されています。これら...

2枚の写真でビデオを「計算」できる、Redditのネットユーザーに衝撃

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

自動運転タクシー市場が急成長中。最初にこの市場を活用できるのは、Google、Uber、それともTeslaのどれでしょうか?

ウェイモは世界クラスのレベル4自動運転車工場を建設し、テスラは「世界クラスのチップ」を発表し、ウーバ...

Swin Transformerをベースに、清華大学などがMoBY自己教師学習法のコードを提案し、オープンソース化されている。

[[409974]]過去 2 年間で、コンピューター ビジョンの分野では 2 つの大きな変革が起こ...