Přístupnostní navigace
E-přihláška
Vyhledávání Vyhledat Zavřít
bakalářská práce
Autor práce: Ing. Martin Pavella
Ak. rok: 2022/2023
Vedoucí: Ing. Radek Kočí, Ph.D.
Oponent: doc. Ing. František Zbořil, Ph.D.
Nástroje pre strojové učenie používajú rôzne formáty pre reprezentáciu a uloženie modelov hlbokých neurónových sietí. Jedným z najpoužívanejších je formát Open Neural Network Exchange (ONNX). Vývoj softwarovej podpory pre hardwarové akcelerátory na vstavaných systémoch je drahý, a ONNX je len výnimočne podporovaný. Potrebné ovládače sú typicky implementované iba pre formát TensorFlow Lite (TFLite). Aktuálne možnosti pre konverziu netrénovaných ONNX modelov na TFLite sú nedostatočné, a produkujú neoptimálne modely. Táto práca sa zameriava na návrh a vývoj priameho konvertoru ONNX modelov na TFLite, ktorý produkuje čo najoptimálnejšie modely. Výsledný program bol v spolupráci so spoločnosťou NXP overený na reálnych modeloch. Tie po konverzii produkujú identické výstupy a rýchlosť ich inferencie na cieľových platformách je značne vyššia.
TFLite, ONNX, TensorFlow Lite, konverzia hlbokých neurónových sietí, konverzia modelov neurónových sietí, flatbuffer, protocol buffer, ONNX na TFLite
Termín obhajoby
13.06.2023
Výsledek obhajoby
obhájeno (práce byla úspěšně obhájena)
Klasifikace
A
Průběh obhajoby
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. Student následně odpověděl na otázky oponenta a na další otázky přítomných, např. ohledně limitů při konverzi operátorů či vlastního přínosu práce. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm výborně / A.
Otázky k obhajobě
Jazyk práce
čeština
Fakulta
Fakulta informačních technologií
Ústav
Ústav inteligentních systémů
Studijní program
Informační technologie (BIT)
Složení komise
doc. Ing. Vladimír Janoušek, Ph.D. (předseda) doc. Ing. Lukáš Burget, Ph.D. (člen) prof. Ing. Jan M. Honzík, CSc. (člen) Ing. Vojtěch Mrázek, Ph.D. (člen) Ing. Radek Kočí, Ph.D. (člen)
Posudek vedoucíhoIng. Radek Kočí, Ph.D.
Přístup studenta hodnotím jako výborný. Přikládám vyjádření odborného konzultanta Roberta Kalmara:
S přístupem studenta jsem nadmíru spokojený. Pravidelně se účastnil dohodnutých konzultací, na které přicházel připravený a umožňoval produktivní diskuse o podrobnostech provádění a o problémech, které se vyskytly. Při své práci prokázal schopnost analyzovat problém, porozumět implementaci třetí strany, navrhnout SW architekturu výsledného řešení a obhájit klíčové aspekty návrhu. Výsledný návrh řešení a implementaci považuji za velmi kvalitní. Student také prokázal vynikající time-management. Na svém BP pracoval pravidelně a od počátku byly k dispozici rané verze softwaru. Jednotlivé body zadání byly splněny včas, finální implementace byla k dispozici zhruba měsíc před předáním.
Zadání bylo vytvořeno ve spolupráci s firmou NXP. Cílem bylo vytvoření konvertoru modelů strojového učení pro účely nasazení na specializovaném hardwaru. Vzhledem k tomu, že student musel nastudovat různé modely s využitím analýzy implementace nástrojů TFLite a ONNX a následná implementace konvertoru byla poměrně rozsáhlá, považuji zadání za náročnější.
Student využil doporučenou literaturu, další zdroje vyhledával sám nebo na doporučení konzultanta z firmy.
Aktivita byla výborná, pravidelně probíhaly konzultace s odborným konzultantem s firmy, o kterých jsem byl informován a několika z nich jsem se přímo účastnil. Student byl vždy připraven a během konzultací probíhala konstruktivní diskuze.
Aktivita při dokončování byla velmi dobrá, realizace i technická zpráva byla konzultována s dostatečným předstihem.
Student zúčastnil konference Excel@FIT 2023.
Známka navržená vedoucím: A
Posudek oponentadoc. Ing. František Zbořil, Ph.D.
Student provedl kvalitní inženýrskou práci a výsledkem je užitečný a originální systém. Přesto hodnotím nižším stupněm B a to zejména proto, protože textová část popisující implementaci tohoto systému mohla být provedena pečlivěji a přehledněji.
Stupeň hodnocení: obtížnější zadání
Zadání považuji za mírně obtížnější z toho důvodu, že dokumentace k jednomu z požadoavných formátů není k dispozici a student tak musel provést zpětnou analýzu některých kódů.
Stupeň hodnocení: zadání splněno
Výsledkem je aplikace, která dokáže transformovat některé modely popsatelné ve formátu ONNX do formátu TensorFlow Lite. Jedná se o modely, které bývají obvyklé, kromě toho ale student zmiňuje, že doposud není možné konvertovat jakýkoliv model a že toto je potřeba dořešit v budoucnu. To ale nepovažuji za nedostatek, jelikož jak jsem uvedl v předchozím bodě, není k dispozici oficiální dokumentace a jednotlivé prvky modelu a jejich funkčnost bylo potřeba získat z analýzy dostupných modelů.
Stupeň hodnocení: je v obvyklém rozmezí
Druhá část práce je bohužel hůře čitelná. Student relativně vágně popisuje implementaci svého systému, odkazuje se často na soubory s kódy aplikace a používá pojmy bez podrobnějšího vysvětlení, což čtenáři komplikuje porozumnění textu. Text je cílen na někoho, kdo má podrobné znalosti o popisovaných modelech a zkušenosti s nimi nad úroveň běžnou v informačních technologií. Takto strukturovaný a sepsaný text pro mě snižuje kvalitu celé práce.
Z formálního hlediska mám výtky k tomu, že v textu se řeší a odkazuje adresářová struktura projektu, která podle mého názoru by měla být uvedena v přílohách. Ukázky kódů zabírajících v jednom případě i celou stranu nejsou pro čtenáře příliš užitečné a zhoršují formální úpravu textu. Po jazykové stánce je text psán správně, až na to, co jsem zmíníl v předchozím bodě, a některé věty jsou stylově volnější, než se předpokládá u bakalářských prací.
Uvedených šestnáct pramenů je relevantních k tématu práce, student je řádně cituje a dle mého názoru jsou i vhodně zvoleny.
Systém je v pořádku a překlady podmnožiny modelů popsatelných ve formátu ONNX lze převádět do formátu TensorFlow Litte. Výsledky ukazují, že tento převod má smysl a v cílovém formátu umožňuje zrychlit vybavování modelu a zmenšit jeho velikost při zachování přesnosti.
Práce byla vytvořena ve spolupráci s firmou NXP a zde bude výsledný systém využíván. Jedná se pravděpodobně o unikátní překladač, který doposud nebyl jinde vytvořen.
Známka navržená oponentem: B
Odpovědnost: Mgr. et Mgr. Hana Odstrčilová