paint-brush
特権情報による異常検出 - パート 1by@dsmoliakov
6,634
6,634

特権情報による異常検出 - パート 1

Dmitrii Smoliakov5m2023/12/13
Read on Terminal Reader

サポート ベクター データ記述 (SVDD+) を通じて、異常検出の高度な領域を探索します。トレーニング中に特権情報を含めることで分類の精度がどのように向上するかを明らかにします。修正された SVDD+ アルゴリズム、その二次最適化タスク、および医療異常検出とマルウェア分析におけるそのアプリケーションについて学びます。 SVDD+ による異常検出についての理解を深めます。
featured image - 特権情報による異常検出 - パート 1
Dmitrii Smoliakov HackerNoon profile picture


サポート ベクター データ記述 (SVDD) は、異常検出のための機械学習で使用される一般的な境界手法の 1 つです。 SVDD の目標は、通常の (異常ではない) データの特性を捕捉し、これらの特性から逸脱するインスタンスを異常として識別するモデルを作成することです。


異常検出は、クレジット カード、保険、医療の不正検出、サイバー セキュリティの侵入検出、安全性が重要なシステムの障害検出、敵の活動に対する軍事監視など、さまざまなアプリケーションで幅広く使用されています。


一連のデータ ポイントがあり、そのほとんどが通常の動作を表していると想像してください。 SVDD は、データの大部分がこの境界内に収まるように、これらの通常のデータ ポイントの周囲に境界を作成することを目的としています。この境界外のデータ ポイントは異常または外れ値とみなされます。


言い換えれば、私たちは一連の例に基づいて「正常」がどのようなものであるかを認識するようにコンピューターに教え、学習したパターンに適合しない場合に何かを「異常」としてフラグを立てることができるようにしています。


この記事では、SVDD の基本概念を深く掘り下げ、トレーニング段階での特権情報の利用法、つまり異常検出シナリオでの分類精度を高めることを目的とした手法について詳しく説明します。


オリジナルのSVDD

上で述べたように、異常検出への古典的なアプローチは、1 クラス分類技術を使用して予想される (「正常な」) 動作を記述することです。つまり、幾何学的場所を記述するなど、多くの例を使用して「正常な」状態の記述を構築します。特徴空間におけるトレーニング パターンの説明。新しいテスト パターンが「正常」クラスに属さない場合、それは異常であると見なされます。


「通常の」ドメインを構築するには、サポート ベクター ドメイン記述などのよく知られたアプローチを使用できます。


特権情報を使用せずに、元の SVDD の簡単な説明から始めます。 iid サンプル (x1, . . . , xl) があります。


このアルゴリズムの主なアイデアは、「正常」とみなされるサンプルの重要な部分を、ある意味で「異常」とみなされるサンプルから分離することです。元のデータ ポイントをより表現力豊かな特徴空間にマッピングすることを φ(·) で表します。たとえば、いくつかの多項式特徴を追加したり、ディープ ニューラル ネットワークを使用して何らかの特徴抽出を適用したり、マッピングが何らかの無限次元空間にあると仮定したりすることさえできます。


a を特徴マップの画像内の点、R を正の値とする。パターン x が球 ∥a − φ(x)∥ ≤ R 内にある場合、パターン x は「正規」クラスに属します。中心aと半径Rを見つけるには、最適化問題を解きます。



ここで、ξ は球の外にある xi から球の表面までの距離です。点が球の内側にある場合、ξi = 0 とみなします。変数 R は、正の値が必要な場合にのみ半径とみなすことができます。ただし、ν ∈ (0, 1) の場合、および ν ̸ ∈ (0, 1) の場合、解にすべての点が含まれるか、まったく含まれない場合、この条件が自動的に満たされることは簡単に証明できます。


おそらくご想像のとおり、アルゴリズムの名前でサポートがあるため、二重の問題を解決することになります。



ここで、スカラー積 (φ(xi) · φ(xj )) を対応するカーネル K(xi, xj) に置き換えます。 αi > 0 となる任意の xi を使用して a と R を計算できます。



これに基づいて、決定関数を定義できます。


f(x) > 0 の場合、パターン x は球の外側に位置し、異常とみなされます。また、f(x) の戻り値に気づくことができ、真陽性値と真陰性値の目標レベルを達成するようにしきい値を調整できます。


SVDD と特権情報

オリジナルの 2 クラスのサポート ベクター マシンでは、異なるクラスのデータ ポイント間に最適な境界を作成するアルゴリズム、ヴァプニクが提案した分類の精度を向上させるために、トレーニング段階で特権情報を考慮できるようにする修正。


特権情報の例をいくつか挙げてみましょう。画像分類問題を解決すると、特権情報としてテキストによる画像の説明を使用できます。マルウェア検出の場合、マルウェアのソース コードを使用して、分類のための追加機能を取得できます。


異常の検出と分類にトレーニング済みモデルを使用する場合、そのような情報はテスト段階では利用できません (たとえば、計算量が法外であるか、取得するにはコストがかかりすぎる可能性があります)。ただし、トレーニング段階でも使用できます。


トレーニング データがペア (xi, xi*) で来ると仮定しましょう。たとえば、X 線画像の異常を検出しようとしていると想像してください。画像自体と医師の説明の両方があります。一般に、テキストによる説明で十分ですが、追加の支援が必要です。モデルのトレーニング中に使用できますが、画像を使用した予測のみを行うことはできますか?この追加情報を使用して検出を向上させることができます。


前の定式化では、ξi の形式に誤差があります。特権データが非常に優れているため、エラーのサイズを予測できると仮定しましょう。


これは、トレーニング中に「この値では小さな誤差は発生しない」と教える賢い教師と考えることができます。他のより価値のある例に焦点を当てるのは合理的です。


さて、この怪物のような方程式を書き留めてみましょう。

ここで、γ はスラック変数の線形近似の正則化パラメータです。 zei は、「正の」半平面に属するパターンがペナルティを受けるのを防ぐ操作変数です。 γ が無限大になると、解は SVDD の元の解に近づくことに注意してください。


ラグランジュ関数をいじる複雑さを避けるために、この問題の双対形式を書き留めます。



ここで、スカラー積 (φ* (xi* ) · φ*(xj* )) を、対応するカーネル関数 K* (xi*, xj*) に置き換えます。最終的に、決定関数は元の SVDD の場合と同じ形式になります。


元の問題よりも若干怖いですが、このタスクは二次最適化と呼ばれる特定の種類の最適化であり、対数バリア関数などの標準的なアプローチで簡単に解決できることに注意してください。


結論

元の SVDD アプローチは、高次元空間内の通常のデータ ポイントの周囲に境界を構築することに焦点を当てています。ただし、SVDD+ 理論では、分類の精度を高めるために、トレーニング段階で特権情報の概念が導入されています。


テスト中には利用できない特権情報をトレーニング中に利用して追加の洞察を提供し、モデルの異常検出能力を向上させることができます。特権情報の組み込みには、元の SVDD アルゴリズムの修正が含まれ、医療異常検出における画像に伴うテキストの説明など、トレーニング中に補足データを考慮できるようになります。


特権情報の組み込みは、モデルの学習を改善するために貴重な洞察を提供する知識豊富な教師に似た、インテリジェントな指導の形式として枠組み化されています。修正された SVDD+ 定式化には二次最適化タスクが含まれており、対数バリア関数などの標準的なアプローチを通じて解決できます。特権情報を含めることによって生じる複雑さにもかかわらず、 SVDD+ 理論の決定関数は元の SVDD と同様の形式を維持し、実用的な実装を容易にします。


要約すると、SVDD+ 理論は、トレーニング段階で特権情報を活用することで異常検出を向上させる有望な手段を示し、画像分類やマルウェア検出など、さまざまな分野にわたる潜在的なアプリケーションを提供します。