3za3 – Živé IT 2023
Maťo, náš .Net Developer z tímu FLYT HealthCare, viedol víťazný tím na súťaži Živé IT. Okrem toho je celkom aktívnym kolegom, mentoruje, zúčastňuje sa Hack Košice a prednáša na KASV.
O čom bol víťazný projekt sa dočítaš v dnešnom 3za3.
O čom je víťazný projekt?
Je to jeden z projektov, ktoré by som robil rád a nemám na nich čas. 🙂
V tomto prípade ide o detekciu melanómu v obraze natrénovanú neurónovou sieťou. Má slúžiť ako pomôcka pri samodiagnostikovaní rakoviny kože. Z výberu 40 tém si túto študenti vybrali ako prvú čo ma celkom potešilo.
S tímom 5 ľudí sme viedli týždenné stretnutia, kde sme si najprv stanovili cieľ projektu, rozplánovali úlohy, rozdelili si prácu (Front-end, Back-end, mobilista, rôzne netechnické role atď.) a pustili sme sa do práce. Ich progress som kontroloval na týždennej báze a vznikla z toho celkom schopná aplikácia, ktorá je verejne prístupná a vyskúšať si ju môže každý.
Cieľovou skupinou projektu bola laická verejnosť, študenti pripravujúci sa na atestácie a treťou skupinou študenti medicíny celkovo.
Konzultovali ste to aj s odborníkmi z medicíny?
Zapojili sme dve lekárky z kliniky dermatovenerológie, ktoré myšlienka celého projektu zaujala a poskytli nám cenné informácie z praxe. Tie sme sme implementovali v appke. Zároveň nás upozornili, aby sme v appke uviedli, že je skôr poradného charakteru a aby v prípade pozitívneho nálezu užívateľ ihneď vyhľadal odborníka. Toho mu vie poskytnúť samotná aplikácia. Aktuálne tam máme špecialistov z východného Slovenska a zoznam sa vie rozširovať.
V čom a na akom princípe funguje?
Mobilná appka – Flutter, webová appka – Angular, Backend – Django a Python, kontajnerizácia – Docker, Machine Learning – Python.
Najdôležitejšia technická časť celej aplikácie je efektívne natrénovaný model. Tomu sme potrebovali dodať dátové sety (obrázky), na ktorých sa konvolučná neurónová sieť naučí hľadať koreláciu medzi zhubným melanómom a obyčajným znamienkom.
Trénovali sme to na vzorke 1000 malígnych a 1000 benígnych znamienok. Aktuálna úspešnosť natrénovaného modelu je 85 %. Logicky – čím viac dátových setov modelu dodáme, tým viac vie stúpnuť jeho úspešnosť. Proces trénovania je dlhý, no po jeho napojení na backend je to už rýchle.
Z praxe – používateľ uploadne obrázok na webe alebo v mobilnej appke, fotka sa pošle na backend, neukladá sa v systéme kvôli GDPR a model vygeneruje percentuálnu zhodu, tá sa zobrazí používateľovi a pokiaľ je veľká pravdepodobnosť, že rakovinu má, tak mu ponúkne mapu kliník, ktoré môže vyhľadať.
Taktiež v appke vie užívateľ nájsť aj sekciu venovanú osvete. Keďže najlepšia liečba je samotná prevencia a slováci sú v rebríčku tejto nešťastnej choroby na tých vyšších priečkach. Preto všetkým odporúčam nech nezabúdajú na opaľovací krém, aby naša appka bola využívaná čo najmenej 🙂