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ę