Algorytm do rozpoznawania człowieka na podstawie dynamiki użycia klawiatury. Paweł Kobojek, prof. dr hab. inż. Khalid Saeed

Podobne dokumenty
Automatyka i Robotyka, V rok. promotor: dr Adrian Horzyk. Kraków, 3 czerwca System automatycznego rozpoznawania

9. Praktyczna ocena jakości klasyfikacji

Wprowadzenie do uczenia maszynowego

Systemy uczące się wykład 2

Sztuczna Inteligencja w medycynie projekt (instrukcja) Bożena Kostek

Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład II 2017/2018

Dariusz Brzeziński Instytut Informatyki, Politechnika Poznańska

Data Mining Wykład 4. Plan wykładu

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

Jakość uczenia i generalizacja

Stan dotychczasowy. OCENA KLASYFIKACJI w diagnostyce. Metody 6/10/2013. Weryfikacja. Testowanie skuteczności metody uczenia Weryfikacja prosta

Testowanie hipotez statystycznych

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

Przykładowa analiza danych

Temat: Sieci neuronowe oraz technologia CUDA

Wstęp do teorii sztucznej inteligencji Wykład III. Modele sieci neuronowych.

Projekt Sieci neuronowe

Zastosowanie sztucznych sieci neuronowych w prognozowaniu szeregów czasowych (prezentacja 2)

Technologia dynamicznego podpisu biometrycznego

Podstawy Sztucznej Inteligencji (PSZT)

Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych. Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS

Algorytmy sztucznej inteligencji

Dokumentacja Końcowa

WYKŁAD 7. Testowanie jakości modeli klasyfikacyjnych metodyka i kryteria

Budowa sztucznych sieci neuronowych do prognozowania. Przykład jednostek uczestnictwa otwartego funduszu inwestycyjnego

Zastosowania sieci neuronowych

Wprowadzenie do uczenia maszynowego

KLASYFIKACJA. Słownik języka polskiego

Rozpoznawanie obrazów

Testowanie hipotez. Marcin Zajenkowski. Marcin Zajenkowski () Testowanie hipotez 1 / 25

Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład I dr inż. 2015/2016

Biometria podpisu odręcznego

Indukowane Reguły Decyzyjne I. Wykład 8

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Wprowadzenie do klasyfikacji

Wstęp do sieci neuronowych, wykład 13-14, Walidacja jakości uczenia. Metody statystyczne.

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Uczenie sieci neuronowych i bayesowskich

Testowanie modeli predykcyjnych

Temat: Sztuczne Sieci Neuronowe. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Wstęp do sieci neuronowych, wykład 09, Walidacja jakości uczenia. Metody statystyczne.

Prof. Stanisław Jankowski

Rozpoznawanie obrazów

Elementy modelowania matematycznego

Widzenie komputerowe

Wprowadzenie do sieci neuronowych i zagadnień deep learning

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Krzywe ROC i inne techniki oceny jakości klasyfikatorów

Najprostsze modele sieci z rekurencją. sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga;

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Optymalizacja ciągła

Elementy inteligencji obliczeniowej

Algorytm grupowania danych typu kwantyzacji wektorów

Metody systemowe i decyzyjne w informatyce

MobiBits: Multimodalna baza danych zebrana za pomocą urządzeń mobilnych

Testowanie hipotez statystycznych.

Sieć Hopfielda. Sieci rekurencyjne. Ewa Adamus. ZUT Wydział Informatyki Instytut Sztucznej Inteligencji i Metod Matematycznych.

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Zadanie 1. Analiza Analiza rozkładu

P R Z E T W A R Z A N I E S Y G N A Ł Ó W B I O M E T R Y C Z N Y C H

Weryfikacja hipotez statystycznych, parametryczne testy istotności w populacji

Metoda weryfikacji mówcy na podstawie nieuzgodnionej wypowiedzi

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

ALGORYTM RANDOM FOREST

ROZPOZNAWANIE SYGNAŁÓW FONICZNYCH

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

2

Biometryczna Identyfikacja Tożsamości

Testowanie hipotez statystycznych.

Sterowanie wielkością zamówienia w Excelu - cz. 3

ZeroR. Odpowiada zawsze tak samo Decyzja to klasa większościowa ze zbioru uczącego A B X 1 5 T 1 7 T 1 5 T 1 5 F 2 7 F

NEURAL NETWORK ) FANN jest biblioteką implementującą SSN, którą moŝna wykorzystać. w C, C++, PHP, Pythonie, Delphi a nawet w środowisku. Mathematica.

Sieci neuronowe jako sposób na optymalizacje podejmowanych decyzji. Tomasz Karczyoski Wydział W-08 IZ

Prognozowanie kierunku ruchu indeksów giełdowych na podstawie danych historycznych.

Biometryczna Identyfikacja Tożsamości

4.1. Wprowadzenie Podstawowe definicje Algorytm określania wartości parametrów w regresji logistycznej...74

Prognozowanie zanieczyszczeń atmosferycznych przy użyciu sieci neuronowych

Sieci neuronowe do przetwarzania informacji / Stanisław Osowski. wyd. 3. Warszawa, Spis treści

WEKA klasyfikacja z użyciem sztucznych sieci neuronowych

Naiwny klasyfikator Bayesa brał pod uwagę jedynie najbliższe otoczenie. Lecz czym jest otoczenie? Jak je zdefiniować?

Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

Sztuczne sieci neuronowe i sztuczna immunologia jako klasyfikatory danych. Dariusz Badura Letnia Szkoła Instytutu Matematyki 2010

ZJAZD 4. gdzie E(x) jest wartością oczekiwaną x

Ontogeniczne sieci neuronowe. O sieciach zmieniających swoją strukturę

Zadania ze statystyki cz.8. Zadanie 1.

RILL - przyrostowy klasyfikator regułowy uczący się ze zmiennych środowisk

HAŁASU Z UWZGLĘDNIENIEM ZJAWISK O CHARAKTERZE NIELINIOWYM

Uczenie maszynowe w zastosowaniu do fizyki cząstek

Ocena dokładności diagnozy

Próbkowanie. Wykład 4 Próbkowanie i rozkłady próbkowe. Populacja a próba. Błędy w póbkowaniu, cd, Przykład 1 (Ochotnicy)

Recenzja rozprawy doktorskiej mgr inż. Szymona Lechwara

Zadania ze statystyki cz. 8 I rok socjologii. Zadanie 1.

Krzysztof Ślot Biometria Łódź, ul. Wólczańska 211/215, bud. B9 tel

komputery? Andrzej Skowron, Hung Son Nguyen Instytut Matematyki, Wydział MIM, UW

Projekt badawczy. Zastosowania technologii dynamicznego podpisu biometrycznego

Testy nieparametryczne

Systemy uczące się Lab 4

Spis treści. Przedmowa... XI. Rozdział 1. Pomiar: jednostki miar Rozdział 2. Pomiar: liczby i obliczenia liczbowe... 16

Instrukcja obsługi dla studenta

Transkrypt:

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ę