Bachelor's Thesis

Faster and Explainable Neural Networks through Automata Learning

Final Thesis 1.22 MB

Author of thesis: Marek Antoňů

Acad. year: 2024/2025

Supervisor: doc. Mgr. Lukáš Holík, Ph.D.

Reviewer: doc. Mgr. Adam Rogalewicz, Ph.D.

Abstract:

This thesis explores the possibility of using neural networks in network anomaly detection. Specifically the option of converting probabilistic deterministic automaton to neural network model and expanding it to analyse additional network communication parameters. Because our previous experiments showed that pure neural networks were a comparable detection method, accuracy-wise, but were significantly slower to learn new models. The conversion of the automaton to a neural network model was successfully completed. By adding the neural network in parallel to the automaton, we can analyse communication parameters that the automaton alone could not analyse correctly.

Keywords:

neural networks, probability automata, PyTorch, anomaly detection, cybersecurity

Date of defence

16.06.2025

Result of the defence

Not defended (thesis was not successfully defended)

znamkaFznamka

Grading

F

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Komise ohodnotila práci stupněm 4F, z důvodů nedostatečné kvality textové části včetně nedostatečných experimentálních výsledků. Student dále v rámci své obhajoby neobhájil přínos své práce. Komise shledala nedostatky práce natolik závažné, že se práci rozhodla hodnotit jako nevyhovující.

Topics for thesis defence

  1. Proč má generovaná neuronová síť pouze jeden neuron? Nebylo by lepší vytvořit například neuron pro každý ze stavů automatu a propojit je podobným způsobem, jak jsou propojené stavy automatu?
  2. Co tvoří nejobtížnější část řešení Vaší BP?
  3. Proč neuronová síť dostává jako vstup pouze sekvenci časových razítek. Proč nedostává celé trojice "časové razítko, typ zprávy a důvod zprávy"? Výsledek by tak mohl být mnohem lepší.
  4. Můžete se vyjádřit k získaným výsledkům?
  5. Jak jste neuronovou síť učil?

Language of thesis

English

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

doc. RNDr. Milan Češka, Ph.D. (předseda)
Ing. Zbyněk Křivka, Ph.D. (člen)
Ing. Zdeněk Materna, Ph.D. (člen)
doc. Ing. Jan Kořenek, Ph.D. (člen)
Ing. Jaroslav Rozman, Ph.D. (člen)

Supervisor’s report
doc. Mgr. Lukáš Holík, Ph.D.

Student pracoval většinu semestru velmi dobře na náročném novém tématu. Tuto jeho práci hodnotím jako nadprůměrnou. V závěru ale nedokázal vyrobit rozumný text, provedl jen první základní experiment, který nepřinesl dobré výsledky, a na provedení lepšího experimentu nezbyl čas. Prezentovaný výsledek práce je tak o několik řádu horší, než čeho se dalo dosáhnout na základě studentem odvedené práce. 

Evaluation criteria Verbal classification
Informace k zadání

Náročné výzkumné zadání s vysokou mírou nejistoty, jedná se o velmi novou myšlenku a nezvyklou kombinaci automatového a neuronového učení, se kterou nejsou zkušenosti.

Práce s literaturou

Adekvátní a poměrně aktivní. V oblasti neuronového učení si student musel pomoci víceméně sám, což zvládl. 

Aktivita během řešení, konzultace, komunikace

Student byl poměrně aktivní, i když ve druhém semestru aktivita poněkud opadla. Pracoval až příliš samostatně, některé problémy jsme diskutovali zbytečně pozdě, o nepříznivých výsledcích experimentu jsem se dozvěděl až na poslední chvíli. Souvisí to s přetrvávajícími problémy se získáním vhodných testovacích dat. Muselo být použito záložní řešení, k realizaci experimentu ale došlo příliš pozdě na to, aby se dalo na nepříznivý výsledek reagovat. Student ale odvedl poměrně velké množství velmi samostatné a dobré práce. Myšlenky a implementační techniky jsou nové a nestandardní, realizace vyžadovala řešení velkého množství praktických problémů. 

Aktivita při dokončování

Student se dostal při dokončování do velkého časového presu. Silně podcenil přípravu textu a experimentování. Toto vedlo k drastické degradaci kvality prezentované práce, což je vzhledem k poměrně velkému množství práce studentem ve skutečnosti odvedené opravdu nešťastné. 
Vina za tento průběh leží i na mé straně. Student měl závěr práce pod kontrolou mnohem méně, něž jsem si myslel já a pravděpodoně i on sám, a potřeboval  kontrolu detailnější kontrolu a vedení. 

Publikační činnost, ocenění

Práce má potenciál vést k publikaci, ne však v současné podobě. Bylo by potřeba provést smysluplnější experiment a kvalitně techniku popsat. 

Points proposed by supervisor: 75

Grade proposed by supervisor: C

Jedná se o celkově nedotaženou práci. Student řešil ne uplně triviální zadání. V rámci řešení udělal některá technická rozhodnutí, která se v rámci experimentálního vyhodnocení ukázala jako nevhodná. Bohužel v rámci práce nijak výsledky nerozebírá ani nenavrhuje možné změny. Nicméně lze konstatovat, že zadání bylo splněno a student odvedl technickou práci v rozsahu akceptovatelném pro BP na FITu. Navrhuji hodnoceni na hraně známky E a doufám, že student v rámci své obhajoby vysvětlí hlavní přínosy své práce a vysvětlí, co bylo na práci obtížné.

Evaluation criteria Verbal classification Points
Náročnost zadání

Evaluation level: obtížnější zadání

Zadání vyžaduje kombinaci technik z oblasti síťového provozu, teorie automatů a neuronových sítí. Tato kombinace dělá zadání obtížnější.

Prezentační úroveň technické zprávy

Prezentační úroveň práce není dobrá. Kapitoly sice na sebe logicky navazují, nicméně některé části jsou popsány velmi povrchně. Konkrétně jde o:

  • Principy učení neuronových sítí.
  • Návrh učícího procesu pro neuronovou síť.
  • Popis kombinace automatu s neuronovou sítí.
  • Analýza dosažených výsledků.

Co mě zarazilo je, že použitá neuronová síť má pouze jeden neuron. Počet vstupů pak odpovídá počtu stavů automatu a aktivační funkce je daná maticí počet stavů x počet stavů. Důvod proč byl zvolen zrovna tento model není nikde popsán.

Další připomínky:

  • sekce 3.1: Na popis metrik "Timestamp, TypeID, CoT" se přeskočí bez dostatečného popisu vazby těchto metrik k tomu, co bylo napsáno v předchozím odstavci.
  • sekce 4.1: autor zmiňuje invertovanou pravděpodobnost, ale nijak neříká, k čemu je to dobré.
50
Formální úprava technické zprávy

Práce je psaná anglicky a text je srozumitelný. Nicméně formální úprava práce má sestupnou tendenci. Nejlepší je část o neuronových sítích, která je nicméně převzatá. Kvalita ostatních sekcí je výrazně horší. Celkově působí text dojmem, že ho autor po sobě nečetl.

  • Na mnoha místech se opakují stejné věty: s. 8: The right Figure 2.3 ...; s. 23: "The transfer matrix ..."; s. 34: "The output from both programs ..."
  • Používají se zvláštní pojmy (s. 10: "draw networks")
  • 3.3: detecting neural network anomalies ->  detecting network anomalies
55
Realizační výstup

Realizační výstup se skládá z implementace v Pythonu nad knihovnou PyTorch a experimenty s datovou sadou. Implementace je asi nejlepší částí této BP, nicméně v práci chybí dokumentace výstupů jednotlivých skriptů.

Výsledky experimentů jsou nezajímavé. Použití navržené neuronové sítě nijak nezlepšilo detekci anomálií oproti použití čistě automatového řešení. Celý experiment působí dojmem, že jeho nastavení není správné.

55
Využitelnost výsledků

Na realizační výstup se dá navázat a pokračovat dále. Je ale otázkou, jestli zvolená architektura dává smysl. Překážkou nicméně bude špatná dokumentace nástroje.

Rozsah splnění požadavků zadání

Evaluation level: zadání splněno s vážnějšími výhradami

Formálně vzato bylo zadání splněno. Nicméně text práce působí dojmem, že zadání bylo splněno pouze velmi povrchně.

Rozsah technické zprávy

Evaluation level: splňuje pouze minimální požadavky

Kapitoly 1-7 jsou vysázeny celkově na 36 stranách. To by bez problému splňovalo standardní rozsah. Nicméně část o neuronových sítích, t.j. sekce 2.3, je z většiny převzata z literatury [3,8]. Tím pádem vlastní práce studenta tvoří 27 vysázených stran.

Práce s literaturou

Jak už bylo zmíněno v části "rozsah", sekce 2.3 je téměř celá převzatá z literatury [3,8]. Student toto uvádí na začátku kapitoly 2.3. Všechny další použité zdroje jsou uvedeny.

Co se mě nelíbí je, že odkaz na použitou datovou sadu je uveden až v kapitole 6, a to přestože se o ní mluví již v kapitole 3. Stejně tak na začátku kapitoly 4 chybí odkaz na nástroj Detano (opět uveden až v kapitole 6). Dále chybí v textu poznámky pod čarou s odkazy na PyTorch, F1 score a Adam optimizer.

50
Topics for thesis defence:
  1. Proč má generovaná neuronová síť pouze jeden neuron? Nebylo by lepší vytvořit například neuron pro každý ze stavů automatu a propojit je podobným způsobem, jak jsou propojené stavy automatu?
  2. Co tvoří nejobtížnější část řešení Vaší BP?
  3. Proč neuronová síť dostává jako vstup pouze sekvenci časových razítek. Proč nedostává celé trojice "časové razítko, typ zprávy a důvod zprávy"? Výsledek by tak mohl být mnohem lepší.
Points proposed by reviewer: 50

Grade proposed by reviewer: E

Responsibility: Mgr. et Mgr. Hana Odstrčilová