データのドリフトとコンセプトのドリフト: 違いは何ですか?

データのドリフトとコンセプトのドリフト: 違いは何ですか?

ソースノード: 1936845

モデルドリフトとは、機械学習モデルのパフォーマンスが時間とともに低下するときに発生する現象を指します。 これは、データ分布の変更、モデルの目標または目的の変更、モデルが動作している環境の変更など、さまざまな理由で発生します。 メインはXNUMXつ モデルドリフトの種類 発生する可能性があるのは、データのドリフトとコンセプトのドリフトです。

データ ドリフトとは、モデルが適用されるデータの分布の変化を指します。 コンセプトのドリフトとは、モデルの根本的な目標または目的の変化を指します。 データのドリフトとコンセプトのドリフトの両方が、パフォーマンスの低下につながる可能性があります。 機械学習 モデル。

モデルのドリフトは、不正確または信頼性の低い予測または決定につながる可能性があるため、実世界の設定で展開される機械学習システムにとって重大な問題になる可能性があります。 モデルのドリフトに対処するには、機械学習モデルのパフォーマンスを継続的に監視し、新しいデータでモデルを再トレーニングしたり、モデルのパラメーターを調整したりするなど、それを防止または軽減するための措置を講じることが重要です。 これらの監視および調整システムは、組織の不可欠な部分でなければなりません。 ソフトウェア展開システム ML モデルの場合。

コンセプトのドリフトとデータのドリフト: 違いは何ですか?

データドリフト

データドリフト、または共変量シフトは、データ入力の分布が、 MLモデル モデルが適用されるデータ入力の分布とは異なります。 これにより、モデルの精度が低下したり、予測や意思決定の効果が低下したりする可能性があります。

データ ドリフトの数学的表現は、次のように表すことができます。

P(x|y) ≠ P(x|y')

ここで、P(x|y) は、出力データ (y) が与えられた場合の入力データの確率分布 (x) を指し、P(x|y') は、新しいデータの出力データが与えられた場合の入力データの確率分布です。モデルが適用される (y')。

たとえば、ML モデルが特定の小売店の顧客データのデータセットでトレーニングされ、そのモデルを使用して、年齢、収入、場所に基づいて顧客が購入するかどうかを予測したとします。 

モデルに供給される新しいデータの入力データの分布 (年齢、収入、および場所) が、トレーニング データセット内の入力データの分布と大きく異なる場合、データ ドリフトが発生し、モデルの精度が低下する可能性があります。

データドリフトの克服

データのドリフトを克服する XNUMX つの方法は、重み付けやサンプリングなどの手法を使用して、データ分布の違いを調整することです。 たとえば、モデルが適用される新しいデータの入力データ分布により厳密に一致するように、トレーニング データセットの例に重みを付けることができます。 

または、新しいデータとトレーニング データからサンプリングして、モデルをトレーニングするためのバランスの取れたデータセットを作成することもできます。 もう XNUMX つのアプローチは、ソース ドメイン (トレーニング データ) とターゲット ドメイン (新しいデータ) の間のマッピングを学習することにより、モデルを新しいデータ分布に適応させることを目的としたドメイン適応手法を使用することです。 これを達成するXNUMXつの方法は、 合成データの生成 アルゴリズム

コンセプトドリフト

コンセプト ドリフトは、モデルの入力データと出力データの間の機能的な関係が変化したときに発生します。 コンテキストが変更されても、変更を認識せずに、モデルは同じように機能し続けます。 したがって、トレーニング中に学習したパターンは正確ではなくなります。

概念ドリフトは、クラス ドリフトまたは事後確率シフトと呼ばれることもあります。 これは、異なる状況間の確率の変化を参照しているためです。

Pt1 (Y|X) ≠ Pt2 (Y|X)

このタイプのドリフトは、外部プロセスまたはイベントによって引き起こされます。 たとえば、さまざまな地域を入力として、地理的な場所に基づいて生活費を予測するモデルがあるとします。 ただし、各地域の開発レベルは増減する可能性があり、現実世界での生活費が変化します。 したがって、モデルは正確な予測を行う能力を失います。 

「コンセプト ドリフト」の本来の意味は、特定のラベルに対する理解の変化です。 一例として、電子メールで「スパム」とラベル付けされているものがあります。 大量の電子メールが頻繁に送信されるなどのパターンは、かつてはスパムの兆候と見なされていましたが、現在は必ずしもそうとは限りません。 これらの古い属性をまだ使用しているスパム検出器は、スパムを識別する際の効果が低くなります。これは、概念のドリフトがあり、再トレーニングが必要になるためです。

コンセプトのドリフトの例を次に示します。

  • 税務コンプライアンスを予測するモデルに対する税法への変更の影響
  • 製品販売を予測するモデルに対する顧客行動の進化の影響
  • 企業の利益予測に対する金融危機の影響

コンセプトのドリフトとデータのドリフト

データ ドリフトでは、決定境界は変わりません。 入力の確率分布のみが変化します – P(x)。 概念のドリフトにより、決定境界が変化し、入力分布と出力分布の両方が変化します – P(x) と P(y)。 

もう XNUMX つの重要な違いは、データ ドリフトは主に、データの収集、処理、トレーニングなどの内部要因の結果であるということです。 概念のドリフトは、通常、現実世界の状況などの外的要因から生じます。

データとコンセプトのドリフトを検出して克服するための戦略

機械学習システムでモデルのドリフトを検出して克服するのに役立つ戦略がいくつかあります。

  • パフォーマンス監視: ホールドアウト データセットまたは本番環境で ML モデルのパフォーマンスを定期的に評価すると、精度の低下や、モデルのドリフトを示す可能性のあるその他の指標を特定するのに役立ちます。
  • データとコンセプトのドリフト検出アルゴリズム: Page-Hinkley 検定や Kolmogorov-Smirnov 検定などのデータ ドリフトを検出するために特別に設計されたアルゴリズムと、ADWIN アルゴリズムなどの概念ドリフトを検出するアルゴリズムがあります。 これらのアルゴリズムは、モデルのドリフトを示す可能性のある入力データまたはタスクの変化を自動的に識別できます。
  • データとコンセプトのドリフトを防止するテクニック: これらの手法は、データやコンセプトのドリフトが最初に発生するのを防ぐのに役立ちます。 たとえば、データ拡張または合成データ生成を使用すると、ML モデルが幅広い代表的な範囲のデータに確実に公開されるようになり、データ分布の変化に対する回復力が向上します。 同様に、転移学習またはマルチタスク学習を使用すると、モデルが変化するタスクまたは目的に適応するのに役立ちます。
  • 再トレーニングと微調整: モデルのドリフトが検出された場合、新しいデータでモデルを再トレーニングまたは微調整すると、ドリフトを克服するのに役立ちます。 これは、定期的に行うことも、データまたはタスクの大幅な変更に応じて行うこともできます。

モデルのドリフトを定期的に監視し、それを防止または軽減するための事前対策を講じることで、機械学習モデルの精度と信頼性を長期間維持することができます。

まとめ

結論として、データ ドリフトとモデル ドリフトは、機械学習 (ML) モデルのパフォーマンスに影響を与える XNUMX つの重要な現象です。 

共変量シフトとも呼ばれるデータ ドリフトは、ML モデルがトレーニングされた入力データの分布が、モデルが適用される入力データの分布と異なる場合に発生します。 コンセプト ドリフトとも呼ばれるモデル ドリフトは、ML モデルがトレーニングされたデータの統計的特性が時間の経過とともに変化するときに発生します。 

データ ドリフトとモデル ドリフトはどちらも、モデルの精度が低下したり、予測や意思決定の効果が低下したりする可能性があります。ML モデルのパフォーマンスを長期的に維持するには、これらの現象を理解して対処することが重要です。 

データのドリフトとモデルのドリフトを克服するために使用できるさまざまな手法があり、更新されたデータでモデルを再トレーニングする、オンライン学習または適応学習を使用する、モデルのパフォーマンスを経時的に監視するなどがあります。

タイムスタンプ:

より多くの データバーシティ