






























Studiuj dzięki licznym zasobom udostępnionym na Docsity
Zdobywaj punkty, pomagając innym studentom lub wykup je w ramach planu Premium
Przygotuj się do egzaminów
Studiuj dzięki licznym zasobom udostępnionym na Docsity
Otrzymaj punkty, aby pobrać
Zdobywaj punkty, pomagając innym studentom lub wykup je w ramach planu Premium
Społeczność
Odkryj najlepsze uniwersytety w twoim kraju, według użytkowników Docsity
Bezpłatne poradniki
Pobierz bezpłatnie nasze przewodniki na temat technik studiowania, metod panowania nad stresem, wskazówki do przygotowania do prac magisterskich opracowane przez wykładowców Docsity
Dokument zawiera opracowanie następujących zagadnień: - rodzaje anomalii, metody wykrywania anomalii, - techniki poprawiania danych uczących, - anomalie w danych jednowymiarowych - metody nadzorowane, nienadzorowane, - anomalie w szeregach czasowych, - Problemy modeli z danymi spoza zbioru - OoD, OoD Detection, - open set vs close set, - few-shot learning, relation network, -meta-learning, zero-shot learning, incremental learning - XAI. Uwaga, część tekstów jest w języku angielskim.
Typologia: Notatki
1 / 38
Ta strona nie jest widoczna w podglądzie
Nie przegap ważnych części!
Notatki ogólne 1
Rodzaje anomalii: anomaly novelty outlier out-of-distribution Metody wykrywania anomalii: statystyczne parametryczne nieparametryczne gęstościowe kątowe oparte na klasteryzacji: nadzorowane nienadzorowane Wykrywanie anomalii w danych wysokowymiarowych Klasyfikacja open-set - wykrywanie danych nieznanych OoD Anomalie w szeregach casowych i w danych grafowych Cross Industry Standard Process for Data Mining (CRISP-DM) – schemat ilustrujący ogólny proces eksploracji danych.
Notatki ogólne 2
Przykład - anomalie w danych pomiarowych: Dane z procesu produkcji. Do anomalii zaliczmy wartości odstające i ekstremalne. Techniki do wykrywania takich anomalii to np. progowanie (IQR lub sigma). Techniki poprawiania danych uczących: Nullify – zamiana na missing (następnie wykonujemy missing value imputation) Coerce – przesuń w kierunku legalnych wartości Discard – usuń obserwację z anomaliami
Przykład - wykrywanie obserwacji out-of-distribution w klasyfikacji otwartej (open-set) DNN uczone jako modele dyskryminacyjne (uczone rozróżniania klas treningowych) rozpoznają próbki z klas nieznanych jako jedne ze znanych klas. W jaki sposób rozpoznawać dane OoD? Np. za pomocą modelu generatywnego zbudowanego na podstawie danych treningowych znanej klasy. Popularne metody OoD detection: Odległość Mahalanobisa badanej próbki od znanych danych - jako miara netypowości (outlierness) próbki
Notatki ogólne 4
(uwaga: zawartość tweeta (text) – reprezentowana za pomocą metod NLP, np. BoW, fastText, word-embeddings, BERT, itd.) Metoda 2 Wykorzystujemy sieci grafowe – np. GNN – Graph Neural Networks Reprezentacje węzłów są tworzone / modyfikowane przez macierz sąsiedztwa grafu
Intrusion detection Fraud detection Obrazowanie medyczne (anomalie w ECG, EEG, zdjęciach z CT, …) Fault detection / industrial damage detection Przetwarzanie obrazów – odszumianie obrazów (szumy impulsowe – np. metody oparte na LOF) Text data (nowy temat – novelty detection) Incremental learning
Notatki ogólne 5
Wykład 2
Anomalie w danych jednowymiarowych Anomalie można wykryć w oparciu o takie techniki jak: progowanie - z wykorzystaniem metryki IQR. Najlepiej pokazuje się na wykresie pudełkowym
wartości odstające (outliers) to zakres poza Q1-1,5IQR oraz Q3+1,5IQR wartości ekstremalne to zakres poza Q1-3IQR oraz Q3+3IQR progowanie - w oparciu o std rozkładu (normalnego)
wartości odstające (outliers) dla |z_i|> progowanie w oparciu o Median Absolute Deviation MAD
wartości odstające (outliers) dla |z_i|>
Są one oparte o klasyfikatory (SVM, NN) Założenie jest takie, że normalne obserwacje i anomalie rozróżnialne na podstawie cech, dostępne dane uczace/historyczne Dane uczące są zlabelowane (nieanomalnia i anomalia/fraud/atak/ruch botnetu) Uczymy model rozpoznawania znanych typów anomalii, ataktów itd. Co z nieznanymi anomaliami? Korzysta się z metod nienadzorowanych
Notatki ogólne 7
Oparte na klasteryzacji: K-means, grupowanie hierarchiczne, DBSCAN założenie: normalne obserwacje tworzą klastery, anomalie – nie należą do klastra założenie: normalne obserwacje tworzą liczne/duże klastry, anomalie – małe klastry założenie: normalne obserwacje leżą blisko centroida klastra, anomalie – daleko od centroida najbliższego klastra Nie musimy mieć danych otagowanych
Inne metody: kNN – outlierness score jako średnia odległość od najbliższych sąsiadów ABOF – score jako wariancja kątów zdefiniowanych przez pary punktów z klastra Metody oparte na błędzie rekonstrukcji (duże błędy rekonstrukcji outliers): PCA-AD AutoEncoder
Notatki ogólne 8
Statistical data depth (~ wielowymiarowa mediana – p. IRWD w lab.) OneFlow – minimal volume regions Novelty / OoD detection Założenie: dane X zawierają normalne obserwacje (in-distribution, ID) Outlierness score - służy do oceny czy nowe dane pochodzą z tego samego rozkładu co X, czy spoza tego rozkład – dane oceniamy jako ID vs OOD
Anomaly / outlier detection Założenie: dane X zawierają obserwacje normalne oraz obserwacje odstające (anomaly, outliers) Celem jest zidentyfikowanie obserwacji w zbiorze X, które są (najbardziej) odstające Założenie: przyjmujemy, że udział obserwacji odstających w X wynosi p (ozn. contamination)
Wykład 3
Anomalie w szeregach czasowych Wykrywanie anomalii w systemach ICT (Information and Communication Technology) jest kluczowym elementem zarządzania i monitorowania tych systemów. Anomalie w szeregach czasowych mogą wskazywać na problemy takie jak ataki DDoS, awarie sprzętu, błędy konfiguracyjne czy nieautoryzowane działania. Opracowanie dla przykładowego ataku DDoS z zbiorem danych DARPA1998 pokazujące proces analizy szeregów czasowych i wykrywania anomalii.
Analiza szeregów czasowych często rozpoczyna się od dekompozycji, czyli podziału oryginalnego sygnału na komponenty. Dekompozycja pozwala lepiej zrozumieć strukturę danych i ułatwia wykrywanie anomalii.
Notatki ogólne 10
Zbiór danych DARPA1998 zawiera 1215 minut ruchu sieciowego, z 53 próbkami zawierającymi ataki typu DDoS (SYN FLOOD). Analizując wybrane cechy ruchu, takie jak liczba pakietów ( n_packets ) i entropię źródłowych/destynacyjnych IP oraz portów, możemy zidentyfikować anomalie.
Wykrywanie anomalii w szeregach czasowych w systemach ICT jest kluczowe dla utrzymania bezpieczeństwa i wydajności. Analiza dekompozycji oraz zastosowanie różnych metod wykrywania anomalii pozwala na skuteczne identyfikowanie problemów. Przykład ataku DDoS z wykorzystaniem zbioru DARPA1998 ilustruje, jak można wykorzystać te techniki w praktyce.
Detekcja anomalii 2.1 1
Modele głębokiego uczenia, takie jak sieci neuronowe, zazwyczaj są trenowane na określonym zbiorze danych, co powoduje, że stają się eksperckie w rozpoznawaniu wzorców w tym zbiorze. Problem pojawia się, gdy model napotyka dane spoza tego zbioru (tzw. dane Out-of-Distribution, OoD). Dlaczego modele nie radzą sobie w momencie podania danych spoza zbioru? Wyjściowo model z dość dużą dokładnością klasyfikuje daną próbkę jednak jest to wynik niepoprawny. Wynika to z działania funkcji straty, której działanie kara mocno model, jeśli nie przypisze zdjęcia do danej klasy. Głównym zadaniem modelu jest przecież klasyfikacja i rozdział, separacja danych między sobą. Główne przyczyny problemów: Funkcja straty : Standardowa funkcja straty (np. cross-entropy) kara model za nieprzypisanie danych do jednej z klas, co prowadzi do błędnej klasyfikacji, nawet jeśli dane nie należą do żadnej z trenowanych klas. Overfitting : Model często dopasowuje się do wzorców występujących w zbiorze treningowym, ignorując nietypowe dane. Brak reprezentacji OoD : Modele są trenowane na danych reprezentujących tylko określone klasy, więc nie uczą się rozpoznawać danych, które nie pasują do żadnej z nich.
Convolutional Neural Networks (CNN) : W CNN receptywne pole (receptive field) jest lokalne i rośnie wraz z głębokością sieci. CNN dobrze radzą sobie z lokalnymi cechami, takimi jak krawędzie i tekstury. Vision Transformers (ViT) : ViT korzystają z mechanizmu self-attention, który ma globalne receptive field już od pierwszej warstwy, co pozwala na lepsze uchwycenie globalnych wzorców i relacji.
Detekcja anomalii 2.1 3
ich pozycje. Pomaga to modelowi zachować informacje o strukturze przestrzennej obrazu.
Różne cechy obrazów Texture : Powtarzalne wzorce, które mogą być dobrze uchwycone przez lokalne receptive fields w CNN. Object : Koncepty wyższych poziomów, składające się z wielu części i cech. Edges : Proste, liniowe cechy, które są podstawą do wykrywania bardziej złożonych wzorców. Patterns : Powtarzające się motywy, które mogą być wykrywane na różnych poziomach abstrakcji. Parts : Elementy obiektów, które mogą być łączone w bardziej złożone struktury.
Zbiór zamknięty : Modele są trenowane na kompletnym zestawie klas. Cechy takie jak tekstury, krawędzie, wzorce, obiekty i części są wystarczające do dokładnej klasyfikacji, ponieważ wszystkie możliwe klasy są znane.
Detekcja anomalii 2.1 4
Zbiór otwarty : Modele muszą radzić sobie z nowymi klasami podczas testowania. Istnieje ryzyko błędnej klasyfikacji, ponieważ cechy nowych klas mogą być podobne do znanych klas. Detekcja OoD polega na identyfikacji danych, które różnią się od danych treningowych pod względem wykrytych cech. OoD : Modele muszą być w stanie wykrywać dane spoza zakresu nauczonego modelu. Wykorzystanie cech takich jak nietypowe tekstury, nowe obiekty, nieznane krawędzie, unikalne wzorce i nieznane części może pomóc w identyfikacji danych OoD.
Różne cechy obrazów mają kluczowe znaczenie w ekstrakcji cech i klasyfikacji w różnych kontekstach. W zbiorach zamkniętych cechy te mogą być wystarczające do dokładnej klasyfikacji, podczas gdy w zbiorach otwartych i detekcji OoD, modele muszą być bardziej elastyczne i czułe na nietypowe cechy, aby skutecznie identyfikować i klasyfikować nowe lub nieznane dane. W analizie obrazów różne cechy, takie jak tekstura, obiekty, krawędzie, wzorce i części, odgrywają kluczowe role w ekstrakcji cech i klasyfikacji, zarówno w zbiorach zamkniętych, otwartych, jak i w detekcji danych spoza zakresu nauczonego modelu (Out-of-Distribution, OoD). W zbiorach zamkniętych modele są trenowane na kompletnym zestawie klas, więc cechy te są wystarczające do dokładnej klasyfikacji. Tekstury i krawędzie pomagają w rozpoznawaniu powierzchni i struktur, obiekty i części w identyfikacji przedmiotów, a wzorce w rozpoznawaniu scen i kontekstu.
Problemy z wielowymiarowością Wielowymiarowość : Modele głębokiego uczenia działają w przestrzeniach o wysokiej wymiarowości, co utrudnia interpretację wyników. t-SNE : Technika redukcji wymiarów, która pomaga wizualizować dane wysokowymiarowe w 2D lub 3D, pozwalając lepiej zrozumieć struktury w danych.
Cechy : Wektory cech wyekstrahowane przez model.
Detekcja anomalii 2.1 6
Opis : Skupia się na wykrywaniu semantycznych anomalii, gdzie testowane obrazy zawierają obiekty inne niż te, na których model był trenowany. Jest to także znane jako wykrywanie nowości dla jednej klasy. (c) Multi-Class Novelty Detection Trening : Model trenuje się na obrazach przedstawiających psa, kota i rybę. Test : Podczas testowania, model klasyfikuje obrazy przedstawiające psa, kota i rybę oraz wykrywa obiekty spoza tych klas (np. ptak). Opis : Model jest trenowany na wielu klasach, a zadanie polega na wykrywaniu nowych klas obiektów, które nie były obecne w zbiorze treningowym. (d) Open Set Recognition Trening : Model trenuje się na obrazach przedstawiających psa, kota i rybę. Test : Podczas testowania, model klasyfikuje obrazy przedstawiające psa, kota i rybę oraz wykrywa obrazy spoza tych klas. Opis : W odróżnieniu od wykrywania nowości, zadaniem modelu jest nie tylko wykrycie nowych klas, ale również poprawne rozpoznanie, które obrazy należą do znanych klas. (e) Out-of-Distribution Detection Trening : Model trenuje się na obrazach przedstawiających psa, kota i rybę. Test : Podczas testowania, model klasyfikuje obrazy przedstawiające psa, kota i rybę oraz wykrywa obrazy spoza tych klas. Opis : Ogólna kategoria, która obejmuje wszystkie techniki detekcji danych spoza zakresu nauczonego modelu, koncentrująca się na wykrywaniu wszystkich typów anomalii i nieznanych klas. (f) Outlier Detection Trening : Model trenuje się na obrazach przedstawiających psa, kota i rybę. Test : Wszystkie obserwacje są dostępne. Model wykrywa obrazy, które są odstające w kontekście całego zbioru danych. Opis : Skupia się na identyfikacji odstających próbek w całym zbiorze danych, uwzględniając zarówno znane, jak i nieznane klasy oraz inne typy anomalii.
Detekcja anomalii 2.1 7
AUC, ROC : Miary efektywności detekcji OoD, które oceniają zdolność modelu do odróżniania danych in-distribution od OoD.
TNR (True Negative Rate) i TPR (True Positive Rate) TPR, znany również jako czułość (sensitivity) lub wskaźnik wykrywania (recall), to miara odsetka prawidłowo wykrytych przypadków pozytywnych. Wzór : TPR = TP / (TP + FN) TP (True Positives) - liczba prawidłowo wykrytych przypadków pozytywnych. FN (False Negatives) - liczba przypadków pozytywnych, które zostały błędnie sklasyfikowane jako negatywne. Znaczenie w detekcji OoD : W kontekście detekcji OoD, TPR mierzy skuteczność modelu w wykrywaniu prawdziwych danych spoza zakresu (OoD). Wysoka wartość TPR oznacza, że model dobrze identyfikuje dane, które nie były częścią zbioru treningowego. TNR, znany również jako specyficzność (specificity), to miara odsetka prawidłowo wykrytych przypadków negatywnych. Wzór : TNR = TN / (TN + FP). TN (True Negatives) - liczba prawidłowo wykrytych przypadków negatywnych. FP (False Positives) - liczba przypadków negatywnych, które zostały błędnie sklasyfikowane jako pozytywne. Znaczenie w detekcji OoD : W kontekście detekcji OoD, TNR
Detekcja anomalii 2.1 9
jest to próba OoD. Bez funkcji softmax : Zamiast normalizować logity przy użyciu funkcji softmax, analizuje się je bezpośrednio. Wartości te mogą dostarczyć bardziej surowe informacje na temat pewności modelu w odniesieniu do klasyfikacji. Jak to działa?
Detekcja anomalii 2.1 10
bardziej zaawansowana i teoretycznie ugruntowana niż prosta analiza logitów.
Global Average Pooling
Architektura : W CNN używamy w pełni połączonych warstw do przekształcenia map cech w końcowe wyjścia, podczas gdy w NIN używamy globalnego średniego poolowania. Wyjścia : W CNN, mapy cech są przekształcane przez w pełni połączone warstwy, co dodaje parametry i może prowadzić do przetrenowania. W NIN, globalne średnie poolowanie prowadzi do bardziej bezpośredniej i zrozumiałej mapy zaufania dla każdej kategorii. Prostota i złożoność : NIN redukuje złożoność modelu poprzez eliminację w pełni połączonych warstw, co może prowadzić do lepszej generalizacji na nowych danych.
Mapy zaufania : Jak zaznaczono na obrazku, NIN tworzy explicite mapy zaufania dla każdej kategorii, które są łatwiejsze do interpretacji. Efektywność : Global average pooling zmniejsza liczbę parametrów w sieci, co może poprawić efektywność obliczeniową i stabilność treningu.