Licealista z Polski stworzył aplikację zapobiegającą wypadkom
Organizowany przez Intel AI Global Impact Festival to konkurs mający na celu demokratyzację wiedzy na temat zastosowań sztucznej inteligencji i uczenia maszynowego. W ostatniej jego edycji jednym z laureatów był licealista z Polski: Maksymilian Paczyński.
Maksymilian Paczyński ma 17 lat i pochodzi z małej miejscowości pod Radomiem. Informatyką i programowaniem interesuje się od około 1,5 roku. Jego aplikacja, poświęcona zwiększeniu bezpieczeństwa kierowców, analizuje twarz kierowcy w czasie rzeczywistym, aby rozpoznać podstawowe znaki zmęczenia: długie zamknięcie oczu, ziewanie, bądź przechylanie głowy. Mieliśmy przyjemność porozmawiać z Maksymilianem o jego pasji.
Hubert Taler, Spider's Web: Jak to się stało że trafiłeś na AI Global Impact Festival?
Maksymilian Paczyński: W naszej szkole był organizowany konkurs Intel AI for Youth. Miał on za zadanie pokazać młodym ludziom, do czego służy sztuczna inteligencja, jak działa uczenie maszynowe, i jakie są jej zastosowania. Takie było założenie tego projektu - była to pierwsza edycja. Intel ma w planach do 2030 roku przeszkolić ok. 30 milionów osób w temacie sztucznej inteligencji.
Czy wcześniej się interesowałeś programowaniem?
Zaledwie kilka miesięcy, byłem więc w tym nowy. Trochę liznąłem Pythona, trochę C++, ale nadal były to moje pierwsze kroki. Później dostaliśmy się na kurs organizowany przez PCSS (Poznańskie Centrum Superkomputerowo-Sieciowe). Współpracują oni z Intelem i organizują kursy związane ze szkoleniem w programowaniu, bazach danych i sztucznej inteligencji np. Tensorflow. Poznaliśmy również podstawowe biblioteki Pythona np. Pandas czy numpy. Nauczyliśmy się również narzędzi do rozpoznawania mowy i obrazów.
Na czym polegał konkurs?
W pracy konkursowej trzeba było stworzyć aplikację, która porusza jeden lub więcej z zaproponowanych tematów: Computer Vision (rozpoznawanie obrazów), Data (dane), i Natural Language Processing (przetwarzanie języka naturalnego). Postanowiłem użyć w swoim projekcie wszystkich trzech. Jako wsparcie każdy z uczestników otrzymał mentora z firmy Intel - moim był pan dr Dariusz Szyfelbein. Pomagał on nie w pisaniu samej aplikacji, ale w znajdowaniu odpowiedniej dokumentacji.
Co robi Twoja aplikacja?
Moja aplikacja konkursowa to program o nazwie FATIK - Fatigue Detection Model to Prevent Accidents, choć pełnej nazwy i tak nikt nie zapamięta... Pierwszy zamysł to rozpoznawać zmęczenie użytkownika. Aplikacja pobiera rzeczywisty obraz z kamery i analizuje go za pomocą sieci neuronowych: czy mamy zamknięte oczy, czy otwarte. Następnie za pomocą algorytmu, który oblicza czas pomiędzy klatkami, ustalamy, czy użytkownik zapadł w mikrosen. Włącza się wtedy alarm, który wyłącza się sam po dłuższym otwarciu oka. Wszystkie czasy snu zapisują się również do bazy danych. Zapisujemy również czas ziewnięć oraz obroty i przechylenia głowy - w tej chwili nad tym aspektem pracuję najwięcej - choć ogranicza mnie trochę złożona matematyka.
Technicznie, moja praca skupiła się na analizie oka - stworzyłem około 130 sieci neuronowych w tym celu. Uczyłem je na 27 tysiącach zdjęć, na których byli ludzie z otwartymi bądź zamkniętymi oczami. Następnie przetestowałem je na specjalnie do tego stworzonym zbiorze innych zdjęć - było ich 3300. Uzyskałem skuteczność 90,25%. Jest to dość dużo - bo fotografie oka otwartego i zamknięte niewiele różnią się od siebie, jest to często mały szczegół na fotografii. Moje rozwiązanie działa offline i jest niezależne od usług chmurowych.
W jaki sposób rozpoznajesz ziewnięcia?
Za pomocą algorytmu, który liczy powierzchnię pomiędzy punktami opisującymi usta.
Co się zainspirowało do podjęcia takiej właśnie tematyki?
Chciałem zrobić projekt, który jest użyteczny - nie chciałem zrobić czegoś, co powstanie jedynie na konkurs. Chciałem coś, co będę mógł później dalej rozwijać, i co może się komuś przydać. Zmęczenie to według mnie plaga naszych czasów. Świetnie było znaleźć się wśród laureatów - choć szkoda, że samą galę nie można było polecieć ze względów epidemicznych.