1

データベースを調べて、通常とは異なる値を特定するためのツールまたはシステムを探しています。リアルタイムチェックを行うために何も必要ありません。夜間またはスケジュールされたポイントで処理を行うシステムだけです。私は2つのレベルのシステムを探しています:

  1. データベース全体:例:すべての従業員の給与を比較し、平均から低すぎるまたは高すぎる給与を特定します。

  2. 従業員ごと:例:従業員の給与履歴を確認し、従業員の通常とは異なる支払いを特定します。

上記の2つは単なる例であり、たとえば、ATMの引き出し、ショッピングの注文履歴、請求書の履歴などの場合を考えてみましょう。

4

4 に答える 4

0

外れ値を見つけるには、距離ベース、クラスターベースなどのさまざまな方法があります。

DataAppliedの外れ値検出またはクラスタリング分析を使用できます。最初のレコードは、N個の最も近いネイバーと最も異なるレコードを自動的に検索します。2つ目は、レコードの大きなグループ(クラスター)を検索し、どのクラスターにも適合しないレコードを識別します。彼らはそれを小さなデータセットのために無料にします、そしてそれはオンラインです(http://www.data-applied.com)。コードを記述する必要はありませんが、必要に応じてWebAPIを使用できます。

于 2010-01-20T18:21:24.390 に答える
0

私は現在MySQLをインストールしていませんが、最初のクエリはこれに似たクエリで達成できると思います(頭のてっぺんから、テストされておらず、まったく機能しませんでした):

SELECT name, salary FROM emp WHERE salary>(SELECT AVG(salary) FROM emp);

または、より複雑なクエリは次のようになります。

SELECT name, salary from emp WHERE salary - (SELECT AVG(salary) FROM emp) >
        (SELECT AVG(salary - (SELECT AVG(salary) FROM emp)) FROM emp);

2つ目は、基本的に、給与の平均と全従業員の給与の差の平均よりも給与が異なる従業員を選択します。

Lemmeはそれが機能するかどうかを知っています。

于 2010-01-17T12:45:45.153 に答える
0

難しいのは「異常」を定義することです。

あなたがやろうとしているのは、誰かがマネーロンダリングをしていることを把握するための不正検出ソフトウェアがすべてであるということです。あなたの簡単な例は簡単なものです。より複雑なものは、データベース、統計、データマイニング、および多くのルールを含むルールエンジンを使用して実行されます。あなたが引用した些細なケースに自分自身を制限したいのでなければ、それは簡単な問題ではありません。

あなたがそれを簡単な問題に変えることができれば、あなたは裕福な人になるでしょう。幸運を。

于 2010-01-17T13:20:10.047 に答える
0

AnalysisServicesとデータマイニングモデルを使用できます。

明らかに、コードを適応させる必要がありますが、Microsoftのサンプルを次に示します。

http://www.sqlserverdatamining.com/ssdm/Default.aspx?tabid=101&Id=83

「このサンプルは、クラスタリングアルゴリズムを使用して、PredictCaseLikelihood()関数を使用して自動データ検証を実行する方法を示しています。サンプルを実行するには、フォームに値を入力して送信ボタンをクリックします。値の組み合わせに妥当な場合可能性が高い場合、フォームは値を受け入れます。受け入れられない場合、予測クエリの追加要素は、受け入れられない可能性が高い値を示します。フォームの[詳細を表示]ボックスをオンにすると、使用された確率比に加えて、送信されたクエリが表示されます。範囲外の値を決定します。」

于 2010-01-18T05:22:07.717 に答える