6

Pracuję nad projektem i mam podzbiór danych o czasie naciśnięcia klawisza użytkownika. Oznacza to, że użytkownik wykonuje n prób, a ja wykorzystam te zarejestrowane dane czasu prób w różnych rodzajach algorytmów klasyfikacji do przyszłych prób użytkownika. sprawdź, czy proces logowania jest wykonywany przez użytkownika lub inną osobę. (Po prostu mogę powiedzieć, że to jest biometria)jaki jest najlepszy sposób generowania fałszywych danych dla problemu klasyfikacji?

Mam 3 różne czasy procesu logowania użytkownika, oczywiście, że jest to podzbiór nieskończonych danych.

do tej pory jest to łatwy problem z klasyfikacją, postanowiłem użyć WEKA, ale o ile rozumiem, muszę stworzyć fałszywe dane, aby podać algorytm klasyfikacji. Zmierzone próby użytkownika będą wynosić 1, a fałszywe dane będą wynosić 0

Czy mogę użyć niektórych algorytmów optymalizacji? lub jest jakiś sposób, aby utworzyć te fałszywe dane, aby uzyskać min fałszywych alarmów?

Dzięki

Odpowiedz

5
Istnieje

kilka różnych sposobów można przejść o zbliża ten.

Zdobywaj negatywne przykłady - Jednym z łatwych rozwiązań byłoby po prostu zbieranie danych dotyczących czasu naciśnięcia klawisza od innych osób, które mogłyby być używane jako negatywne przykłady. Jeśli chcesz zebrać dużą próbkę bardzo tanio, jak w około 1000 próbek za około 10 USD, możesz skorzystać z usługi takiej jak Amazon Mechanical Turk.

To znaczy, że można połączyć zadanie ludzkiej inteligencji (HIT), które ma ludzi wpisujących losowe hasła, takie jak sekwencje. Aby uzyskać informacje o czasie, musisz użyć numeru External Question, ponieważ ograniczony kod HTML na zwykłe pytania nie obsługuje JavaScript.

Użyj modelu generatywnego - Alternatywnie można wytrenować generatywny model prawdopodobieństwa dla zachowania klawisza użytkownika. Na przykład możesz wyszkolić Gaussian mixture model (GMM) na opóźnienie między naciśnięciami klawiszy.

Taki model daje prawdopodobieństwo oszacowania informacji o czasie naciśnięcia klawisza generowanego przez określonego użytkownika. W takim przypadku wystarczy ustawić próg prawdopodobieństwa, że ​​informacje o taktowaniu powinny być takie, aby użytkownik mógł zostać uwierzytelniony.

Użyj 1-klasowych maszyn SVM - Wreszcie, 1-class SVMs umożliwia trenowanie klasyfikatora SVM podobnego do niego przy użyciu tylko pozytywnych przykładów. To learn one-class SVMs in WEKA, użyj opakowania LibSVM, jeśli używasz wersji 3.6. Jeśli używasz najnowszej wersji programisty, jest weka.classifiers.meta.OneClassClassifier.

+0

dziękuję za odpowiedź Daniela. Po zrozumieniu twoich punktów opublikuję tutaj, by uzyskać pomoc. – berkay

+0

Jasne, daj mi znać, jeśli jest coś, co powinno zostać opracowane. Jeśli uważasz, że ta odpowiedź lub inne informacje są przydatne lub informacyjne, pamiętaj, aby głosować w górę i wybrać jedną z nich jako zaakceptowaną odpowiedź na pytanie. – dmcer

Powiązane problemy