Algorytm weryfikacji użytkownika na podstawie dynamiki użycia
Transkrypt
Algorytm weryfikacji użytkownika na podstawie dynamiki użycia
Algorytm do rozpoznawania człowieka na podstawie dynamiki użycia klawiatury Paweł Kobojek, prof. dr hab. inż. Khalid Saeed Zakres pracy • Przegląd stanu wiedzy w dziedzinie biometrii, ze szczególnym naciskiem na dynamikę użycia klawiatury • Propozycja własnego algorytmu, przetestowanie go oraz porównanie z innymi Dynamika użycia klawiatury • ang. Keystroke Dynamics • Technika biometrii behawioralnej (dotyczącej wyuczonych zachowań) • Sposób użycia klawiatury przez człowieka okazuje się być dobrym wyznacznikiem tożsamości Dynamika użycia klawiatury • Dwell time - czas wciśnięcia danego klawisza • Flight time - różnica czasu pomiędzy wciśnięciami kolejnych klawiszy Algorytm - cele • Wykorzystanie w scentralizowanym systemie udostępniającym usługę logowania na podstawie sposobu wpisywania tekstu (adresu e-mail) • Nieograniczona ilością użytkowników skalowalność • Jak najwyższa skuteczność przy braku błędów typu False Positive Algorytm • Założenie, że dane mają naturę sekwencji (jedynie przesłanka) • Oddzielny klasyfikator dla każdego użytkownika • Wybór: sieci rekurencyjne Sieci rekurencyjne • Naturalna zdolność do działania na sekwencjach • Szeroko stosowane (choć nie w swojej podstawowej formie) do problemów z danymi o naturze ciągów (np. modelowanie języka naturalnego, tłumaczenie maszynowe) Sieci rekurencyjne • W swojej podstawowej formie trudne do wytrenowania ze względu na problem zanikającego/eksplodującego gradientu • Rozwiązanie: alternatywne architektury - LSTM, GRU LSTM • Dodatkowy wektor - stan komórki (ang. cell state) przekazywany do kolejnych kroków • Bramka zapominania (ang. forget gate) - decyduje jakie informacje powinny zostać usunięte ze stanu • Bramka wejściowa (ang. input gate) - decyduje co i w jakim stopniu zapamiętać GRU • Bramka zapominania i wejściowa są połączone w jedną - bramkę uaktualnienia (ang. update gate) Regularyzacja • Dropout - w trakcie uczenia usuwanie wybranej w sposób losowy części neuronów (i ich połączeń) • Daje to podobny efekt do zastosowania tzw. „ensemble models”, czyli kilku klasyfikatorów • Standardowa regularyzacja Dane negatywne • Potrzeba danych negatywnych jest poważnym ograniczeniem i utrudnia praktyczne zastosowania algorytmu • Podjęto próbę wygenerowania sztucznych danych na podstawie prawdziwych zaburzając je szumem z rozkładem naturalnym Zbiory uczące - zbiór własny • Dane zebrano od 10 osób (studentów) • Każdy wpisał swój adres 5 razy i adres pozostałych uczestników 1 raz • Część próbek usunięto ze względu na niską jakość (np. metoda kopiuj-wklej) • Ostatecznie dane od 6 osób po kilkanaście próbek (bardzo mały zbiór) Zbiory uczące - zbiór referencyjny • Dostępny publicznie (na stronie: http:// www.cs.cmu.edu/~keystroke/) zbiór. Autorzy: Kevin Killourhy, Roy Maxion • Stanowi część pracy, która porównuje detektory anomalii zastosowane do problemu weryfikacji użytkownika na podstawie dynamiki użycia klawiatury • 51 uczestników po 400 próbek (każdy wpisał to samo hasło) Zbiór referencyjny • Podzielony na oddzielne zbiory dla każdego użytkownika • Dane pozytywne: wszystkie próbki danego użytkownika • Dane negatywne: losowe 400 próbek wybrane spośród pozostałych danych (w celu zbalansowania zbioru) Testowane architektury • LSTM(250) -> Dropout(0.5) -> LSTM(100) -> Dropout(0.5) -> LogisticRegression(1) • (tylko na zbiorze referencyjnym) LSTM(240) -> Dropout(0.5) -> LSTM(240) -> Dropout(0.5) -> LSTM(240) -> Dropout(0.5) -> LogisticRegression(1) • (tylko na zbiorze referencyjnym) GRU(240) -> Dropout(0.5) -> GRU(240) -> Dropout(0.5) -> GRU(240) -> Dropout(0.5) -> LogisticRegression(1) Wyniki - zbiór własny • Podana jest średnia skuteczność dla modeli bez dropoutu i z dropoutem • Najlepszy model bez eliminacji FP: 0.85 (0.88) • Najlepszy model bez FP: 0.52 (0.8) Wyniki - pojęcia • Dwie najważniejsze miary: EER (equal error rate) oraz zero-miss rate • FPR - False Positive Rate = FP / (FP + TN) • TPR - True Positive Rate = TP / (TP + FN) • EER - punkt, w którym TPR = 1 - FPR • zero-miss rate - punkt (wartość FPR), w którym TPR =1 Wyniki - zbiór referencyjny • 2 warstwy LSTM • Średnie wyniki; w nawiasach podano odchylenie standardowe • EER - 0.227 (0.094) • Zero-miss rate - 0.764 (0.221) Wyniki - zbiór referencyjny • 3 warstwy LSTM • EER - 0.219 (0.106) • Zero-miss rate - 0.747 (0.221) Wyniki - zbiór referencyjny • 3 warstwy GRU • EER - 0.150 (0.087) • Zero-miss rate - 0.613 (0.260) Wyniki, c.d. • Zbiór referencyjny poza danymi na temat dwell time zawiera też dane o flight time • Ze względu na to, że w zbiorze własnym były tylko dane o dwell time to najpierw testowany był ograniczony zbiór referencyjny • Następnie dokonano eksperymentów ze wszystkimi danymi Wyniki - wszystkie dane • Najlepszy model pod względem EER: 0.136 (0.176) • Najlepszy model pod względem zero-miss rate: 0.333 (0.282) Porównanie • W porównaniu do wyników w pracy referencyjnej pod względem EER plasuje się na 7 miejscu (na 14) - wyżej niż pozostałe sieci neuronowe • Pod względem zero-miss rate na 1. miejscu (0.333 w porównaniu do 0.468) • Trzeba zaznaczyć, że wyniki nie mogą być wprost porównane ze względu na inny sposób ewaluacji i inną naturę algorytmu Dane negatywne Najlepszy (EER): 0.441 (0.336) Wnioski i ocena algorytmu • Satysfakcjonujące wyniki zarówno na małym zbiorze jak i na zbiorze referencyjnym • Użycie obu miar (dwell i flight time) ma wyraźny wpływ na wyniki • Udało się uzyskać skalowalność (model dla każdego użytkownika zajmuje ok. 3.5 MB) • Sposób generowania danych sztucznych powinien zostać usprawniony Algorytm - wady • Potrzeba danych negatywnych podczas uczenia • Długi czas uczenia Dalszy rozwój • Akceleracja GPU - przyspieszenie uczenia • Lepsza generacja sztucznych danych negatywnych • Zastosowanie sieci LSTM jako detektorów anomalii i zastosowanie tych samych co w pracy referencyjnej sposobów ewaluacji Dziękuję za uwagę