6

私はプロジェクトに取り組んでおり、ユーザーのキーストローク時間データのサブセットを持っています。これは、ユーザーがn回試行することを意味し、これらの記録された試行時間データをさまざまな種類の分類アルゴリズムで使用して、将来のユーザーの試行で次のことを確認します。ログインプロセスは、ユーザーまたは他の人によって行われます。(簡単に言えば、これはバイオメトリクスだと言えます)

ユーザーログインの試行プロセスは3回ありますが、もちろんこれは無限データのサブセットです。

これまでは簡単な分類問題でしたが、WEKAを使用することにしましたが、私が理解している限り、分類アルゴリズムにフィードするために偽のデータを作成する必要があります。ユーザーの測定試行回数は1で、偽のデータは0になります。

いくつかの最適化アルゴリズムを使用できますか?または、この偽のデータを作成して最小の誤検知を取得する方法はありますか?

ありがとう

4

1 に答える 1

5

これにアプローチするには、いくつかの方法があります。

否定的な例を収集する - 簡単な解決策の 1 つは、否定的な例として使用できる他の人からキーストロークのタイミング データを収集することです。約 10 ドルで約 1000 個のサンプルなど、大量のサンプルを非常に安価に収集したい場合は、 Amazon Mechanical Turkなどのサービスを使用できます。

つまり、シーケンスのようなランダム化されたパスワードを人々に入力させるヒューマン インテリジェンス タスク (HIT) をまとめることができます。タイミング情報を取得するには、外部質問を使用する必要があります。これは、通常の質問の制限付き HTML が JavaScript をサポートしていないためです。

生成モデルを使用する- または、生成確率モデルをユーザーのキーストローク動作に合わせてトレーニングすることもできます。たとえば、ガウス混合モデル (GMM)をユーザーのキーストローク間の遅延に合わせてトレーニングできます。

このようなモデルは、特定のユーザーによって生成されるキーストローク タイミング情報の確率推定を提供します。次に、ユーザーが認証されるために必要なタイミング情報の可能性のしきい値を設定するだけです。

1 クラス SVM を使用する- 最後に、1 クラス SVMを使用すると、正の例のみを使用して分類器のような SVM をトレーニングできます。WEKA でワンクラス SVM を学習するには、v3.6を使用している場合は LibSVM ラッパーを使用します。最先端の開発者向けバージョンを使用している場合は、weka.classifiers.meta.OneClassClassifier.

于 2010-04-10T05:06:29.193 に答える