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ę

Podobne dokumenty