Jak sztuczna inteligencja może wpłynąć na rozwój diagnostyki medycznej? Wywiad z zespołem tworzącym Shen.AI.

geek.justjoin.it 1 rok temu

Nowoczesna medycyna aktywnie pracuje nie tylko nad metodami pozwalającymi przedłużyć życie pacjentów, ale i znacznie ułatwić i przyspieszyć diagnozę schorzeń. W rozmowie z zespołem engineeringu MX Labs zapytaliśmy o sposób działania narzędzia Shen.AI., jego wpływu na nowoczesną diagnostykę oraz emocji towarzyszącym twórcom podczas tworzenia i szlifowania tak innowacyjnego oprogramowania.

To, co robicie, wydaje się bardzo interesujące i jednocześnie skomplikowane. Czy jako zespół w takim składzie pracujecie ze sobą od dłuższego czasu? Powiedzcie co było dla Was największym wyzwaniem w trakcie tworzenia narzędzia Shen.AI?

Dominik: Zespół zaczął kreować się około dwa lata temu. Wcześniej Filip, nasz lider, działał jako wolny strzelec, natomiast wtedy dołączyłem ja i Miłosz, i mogliśmy rozpocząć współpracę. Przy tworzeniu Shen.AI odpowiadamy za bardzo szerokie spektrum technologii, trudno więc wskazać jedno największe wyzwanie, na każdym polu będzie to co innego. Ja staram skupiać się nad tym, by nasze rozwiązanie było jak najbardziej elastyczne i odporne. I mam tu na myśli zarówno algorytmy wizyjne, które mają działać w możliwie każdych warunkach, jak i bardziej inżyniersko, aby kod działał bez zarzutu, w czasie rzeczywistym na desktopach, platformach mobilnych i przeglądarkach.

Szymon: Jestem najkrócej pracującym w MX Labs członkiem zespołu, dołączyłem do niego kiedy narzędzie Shen.AI było już działające i dojrzałe. Moją rolą jest uzupełnienie kompetencji całości o projektowanie i wdrażanie głębokich sieci neuronowych do celów przetwarzania wizji. W tym kontekście najtrudniejsze jest projektowanie tych systemów, aby wystarczająco dokładne, ale również na tyle szybkie, aby działały w czasie rzeczywistym na różnych urządzeniach końcowych.

Miłosz: Jako członek zespołu Engineeringu jestem odpowiedzialny za tworzenie i rozwijanie algorytmów widzenia komputerowego, w szczególności tych związanych z modelowaniem trójwymiarowym. Jednym z największych wyzwań podczas tworzenia Shen.AI było dokładne modelowanie i ekstrakcja ruchów mimicznych twarzy, które są istotne w diagnozowaniu stanu emocjonalnego pacjenta. Opracowanie odpowiedniego algorytmu wymagało dużo czasu i testów, ale udało nam się osiągnąć satysfakcjonujące wyniki.

Jakie dokładnie modele sztucznej inteligencji opracowujecie i jakie są ich zastosowania w diagnostyce medycznej?

Dominik: Nasze algorytmy są dosyć skomplikowaną mieszanką tzw. metod klasycznych, jak i podejść opartych o sieci neuronowe. Skupiamy się na dwóch dziedzinach: wizji komputerowej i analizie sygnału. Ja jestem bliżej związany z tą pierwszą. Naszym głównym punktem zainteresowania jest tutaj ludzka twarz, więc przewijają się u nas takie tematy jak detekcja twarzy, czy punktów szczególnych, ale generalnie polegamy na metodach bardziej ogólnych, takich jak śledzenie obiektów w przestrzeni, rekonstrukcja 3D, przetwarzanie obrazu.

Prowadzi nas to oczywiście do zastosowań w diagnostyce medycznej, dążymy do jak najlepszego wydobycia sygnału fotopletyzmograficznego, czyli przepływu krwi przez naczynia krwionośne w twarzy, aby przy jego pomocy, wyliczać metryki związane z pracą serca, takie jak puls, zmienność pulsu, czy częstotliwość oddechów. Ekstrakcja tego sygnału, aby była możliwa w różnych warunkach, wymaga szerokiego wachlarza algorytmów, zaczynając od samego pozyskiwania obrazu z kamery, przez wizyjne analizowanie twarzy, aż po wydobycie i analizę sygnału.

Szymon: Część modeli, które opracowujemy i wdrażamy, rozwiązują powszechnie znane problemy i są dobrze opisane w literaturze, dotyczy to na przykład wyznaczania regionów w obrazie lub jego klasyfikacja. Natomiast inne, które między innymi dotyczą przetwarzania sygnałów fotopletyzmograficznych oraz detekcji czynności życiowych nie są jeszcze dobrze zbadane i powszechnie opisane więc praca nad nimi wymaga projektowania i testowania na różnych poziomach złożoności. W obu przypadkach jednak dużym wyzwaniem jest dostępność danych o proces optymalizacji pod urządzenia końcowe.

Miłosz: Moje badania skupiają się na monitorowaniu aktywności mięśni twarzy. Wspólnie z zespołem pracujemy nad wykorzystaniem algorytmów widzenia komputerowego i sztucznej inteligencji do analizy ruchów mięśniowych w celu diagnozowania i poprawy zdrowia psychicznego. Opracowujemy modele, które umożliwią automatyczną analizę danych dotyczących ruchów mięśni, co pozwoli na szybszą i bardziej precyzyjną diagnozę, a także na monitorowanie postępów w leczeniu. Nasza praca ma na celu poprawę jakości życia pacjentów i skrócenie czasu potrzebnego na diagnozę i leczenie.

Jakie są główne zadania i obowiązki programisty w MX Labs? Pracujecie na co dzień samodzielnie, czy zespołowo? Czy realizowane są regularne spotkania zespołu, jakie wtedy omawiacie tematy?

Dominik: Tak jak mówiłem, nasz zespół odpowiada za dosyć szerokie spektrum technologii związanej z produktem. Z inżynierskiej strony, rozwijamy Shen.AI jako SDK, które można zintegrować na platformach mobilnych jak i w przeglądarce, dbamy o jakość kodu oraz cały proces dostarczania produktu. Z drugiej strony zajmujemy się też samymi algorytmami, które sprawiają, iż Shen.AI jest tak innowacyjnym narzędziem, oraz całym zapleczem do testowania algorytmów, analizy danych i eksperymentów.

Odnośnie podziału pracy, każdy ma u nas sporą autonomię w swoich zadaniach. Przyjmujemy raczej strategię, w której każdy ma swój problem do rozwiązania i decyduje jak do niego podejść. Oczywiście współpracujemy tam, gdzie przynosi to korzyść, przy wymianie pomysłów, dzieleniem przemyśleniami itd. Na spotkaniach, jeżeli nikt nie napotyka blokerów, które trzeba wspólnie rozwiązać, staramy się raczej wysokopoziomowo upewnić, iż zmierzamy w dobrym kierunku i każdy wie, co ma robić. Sam zespół też ma dużą autonomię, wpływają do nas raczej listy priorytetów niż konkretne zadania, to my decydujemy co i w jaki sposób zrobimy.

Szymon: Warto wspomnieć, iż taka autonomia i elastyczność w doborze narzędzi i metod wynika z odpowiedniego podziału kompetencji. Każdy z nas ma swoje mocne strony, które znane są innym członkom zespołu, a zadania przydzielane są tak, aby to jak najlepiej wykorzystać. Istotnym aspektem pracy zespołowej w MX Labs są bardzo szczegółowe code review, w dłuższej perspektywie owocuje to lepszą jakością kodu źródłowego, nad którym pracujemy oraz przy okazji możemy się od siebie sporo nauczyć.

    Miłosz: Moi koledzy wyczerpująco przedstawili charakterystykę naszej pracy. Pozostaje mi jedynie dodać, iż jako zespół MX Labs współpracujemy również z naukowcami ze świata medycyny, tak aby zapewnić najwyższą jakość naszej technologii, a także umożliwić profesjonalne zastosowanie naszych rozwiązań w pracy lekarskiej.

    Idź do oryginalnego materiału