DLA STUDENTÓW INFORMATYKI

Dla studentów informatyki: widzenie komputerowe, które pomaga chirurgom

Co zyskują programiści i przyszli inżynierowie uczenia maszynowego: prawdziwe dane i problemy, inżynieria na poziomie przemysłowym, otwarte portfolio, przeglądy kodu, dziedzina medyczna, prace dyplomowe i publikacje.

Ta strona jest wciąż sprawdzana przez naszych ekspertów naukowych, klinicznych i prawnych. Opisuje plany, a nie ukończoną pracę.

W skrócie

Projekt buduje otwarte modele widzenia komputerowego dla chirurgii: rozpoznają one na wideo narządy, narzędzia i fazy operacji. Kod jest otwarty, dane pochodzą z opublikowanych zbiorów chirurgicznych, a obok inżynierów pracują chirurdzy i studenci medycyny.

Dla Ciebie to szansa, by rozwiązać prawdziwy problem na prawdziwych danych, pisać kod przeglądany przez doświadczonych inżynierów i zbudować otwarte portfolio, które pokażesz każdemu pracodawcy lub promotorowi.

Co zyskujesz

Prawdziwy problem zamiast ćwiczenia

Nie kolejny Titanic czy MNIST, ale nagrania prawdziwych operacji: dym, odblaski, krew, narządy zasłonięte narzędziami, długie wideo i mało zaadnotowanych klatek. Tu widać, dlaczego dobry wynik walidacji o niczym nie przesądza i czym badania różnią się od samouczka.

Widzenie komputerowe w pełnej skali

Segmentacja narządów i narzędzi, rozpoznawanie faz operacji na wideo, wykrywanie i śledzenie narzędzi, wstępna adnotacja za pomocą Segment Anything 2. Ablacje, powtarzane uruchomienia, przedziały ufności i uczciwe porównania, według zasad przyjętych w publikacjach naukowych.

Inżynieria na poziomie przemysłowym

Testy i CI przy każdym pull requeście, przeglądy kodu, wersje danych w DVC, konfiguracje w Hydra, eksperymenty w MLflow, usługi FastAPI w Dockerze. Infrastruktura projektu jest opisana kodem: Kubernetes, Terraform, Helm. To nie poligon dydaktyczny, tylko system, z którego korzystają adnotatorzy.

Otwarte portfolio

Twoje commity i pull requesty trafiają do publicznego repozytorium na licencji Apache-2.0. Możesz je podlinkować w CV: pracodawca zobaczy prawdziwy kod, dyskusję i przegląd, a nie linijkę „zna PyTorch”. Profil na stronie zespołu jest publikowany za Twoją zgodą.

Przegląd od doświadczonych inżynierów

Każdą zmianę przegląda inny uczestnik. Informacja zwrotna jest konkretna i pełna szacunku: dlaczego ten test jest lepszy, gdzie wyciekają dane, jak uczynić eksperyment powtarzalnym. Staramy się odpowiedzieć na pierwszy pull request nowej osoby w ciągu 48 godzin.

Dziedzina medyczna

Dowiesz się, czym oprogramowanie medyczne różni się od zwykłego: deidentyfikacja, podziały według pacjentów zamiast według klatek, licencje zbiorów danych, odpowiedzialność za błędy modelu. Będziesz omawiać problemy z chirurgami i studentami medycyny – to rzadkie doświadczenie interdyscyplinarne, cenione w firmach zajmujących się medyczną AI i w zespołach badawczych.

Prace dyplomowe, semestralne i praktyki

Zebraliśmy ponad 50 tematów badawczych, z czego ponad dwadzieścia technicznych: od porównania architektur segmentacji po deidentyfikację wideo i infrastrukturę dla medycznej AI. Pracę w projekcie jako praktykę może zaliczyć tylko Twoja uczelnia; na prośbę projekt potwierdzi zakres i treść Twojej pracy.

Publikacje i konferencje

Wyniki możesz przedstawiać na konferencjach studenckich, w sesjach młodych badaczy i na warsztatach o widzeniu komputerowym w medycynie. Autorstwo publikacji projektu wynika z umowy o wkładzie.

Czym możesz się zająć

  • Dane. Loadery i konwertery otwartych zbiorów danych, podziały według pacjentów bez wycieków, karty danych.
  • Modele. Modele bazowe do segmentacji i rozpoznawania faz, ablacje, przyspieszanie do czasu rzeczywistego.
  • Ewaluacja. Metryki, przedziały ufności, otwarty benchmark i ranking.
  • Adnotacja. Integracja modeli wstępnej adnotacji w CVAT, aktywne uczenie, automatyczna kontrola jakości adnotacji.
  • Deidentyfikacja. Odczyt tekstu na ekranach sprzętu medycznego, wykrywanie twarzy i klatek spoza ciała pacjenta.
  • Usługi i MLOps. FastAPI, Docker, MLflow, CI.
  • Web. Strona projektu w Astro i TypeScript, narzędzia dydaktyczne dla studentów medycyny.
  • Testy i jakość. Przypadki brzegowe, kontrole danych, testy na danych syntetycznych.
  • Infrastruktura. Kubernetes, Terraform, Helm. To system produkcyjny, więc praca nad infrastrukturą jest dla uczestników, którzy już zadomowili się w projekcie; dostęp przyznaje się osobno.

Technologie

Python 3.10+, PyTorch, torchvision, OpenCV, Albumentations, Hydra, MLflow, DVC, FastAPI, Docker, pytest, GitHub Actions. Adnotacja: CVAT i Segment Anything 2. Web: Astro i TypeScript. Infrastruktura: Kubernetes, Terraform, Helm.

Nie musisz znać tego wszystkiego z góry; nauczysz się po drodze.

Jak to działa

  1. Wybierz zadanie. Zacznij od dobrego pierwszego issue lub zaproponuj własne.
  2. Pierwszy wkład w około 30 minut. Instrukcja krok po kroku jest na stronie Współtwórz.
  3. Przegląd i dyskusja. Doświadczony uczestnik przegląda Twoją zmianę, a Ty ją poprawiasz.
  4. Większe zadania. Moduł, eksperyment, usługa – razem z osobą odpowiedzialną za dany obszar.
  5. Własny temat. Opcjonalnie praca semestralna, dyplomowa lub artykuł z listy tematów albo z Twojego pomysłu.

Czas: około czterech godzin tygodniowo, zdalnie, kiedy Ci pasuje. Większość pierwszych zadań nie wymaga GPU: testy, konwertery i metryki działają na zwykłym laptopie. Jak zdobyć moc obliczeniową do trenowania modeli, ustala się w issue.

Kogo szukamy

  • Studentów inżynierii oprogramowania, matematyki stosowanej i informatyki, nauki o danych i pokrewnych kierunków: licencjat od drugiego roku, magisterium i doktorat.
  • Osoby zainteresowane widzeniem komputerowym, uczeniem maszynowym, MLOps, backendem, frontendem, DevOps lub testowaniem.

Potrzebujesz podstaw Pythona i gita. Doświadczenie w uczeniu maszynowym pomaga przy pracy z modelami, ale nie jest wymagane do pozostałych zadań.

Co warto wiedzieć na początek

  • Żadnych danych pacjentów. Pracujemy wyłącznie na opublikowanych zbiorach danych, które każdy pobiera samodzielnie na warunkach ich licencji. Nigdy nie umieszczaj w repozytorium danych medycznych, nawet zdeidentyfikowanych.
  • Wyłącznie do celów badawczych. Modele projektu nie są przeznaczone do diagnozowania ani leczenia.
  • Podpis DCO. Każdy commit jest podpisany (git commit -s), co potwierdza, że masz prawo wnieść ten kod.
  • Wynik negatywny to też wynik. Eksperyment, który uczciwie pokazuje, że pomysł nie działa, jest dla projektu cenny.

Dla nauczycieli akademickich uczelni technicznych

Projekt nadaje się na prace semestralne i dyplomowe, semestralne projekty zespołowe oraz praktyki studenckie i zawodowe. Weź gotowy temat z listy lub zaproponuj własny, także wspólny ze studentami medycyny. Napisz na support@opensurgicalvision.org z tematem „Department: technical university” (po angielsku, by zespół mógł sortować pocztę), a ustalimy formę.

Jak dołączyć

Zacznij od dobrego pierwszego issue i przedstaw się w dyskusjach projektu. Jeśli wolisz e-mail, napisz na support@opensurgicalvision.org z tematem „Student: engineering”.

Studiujesz medycynę? Masz własną stronę.

Zobacz wszystkie ścieżki współpracy