Nawet po ponad stu latach od jej wprowadzenia histologia pozostaje złotym standardem w diagnostyce nowotworów i prognozowaniu. Patolodzy anatomiczni oceniają histologię, aby podzielić pacjentów z rakiem na różne grupy w zależności od ich genotypów i fenotypów guza oraz ich wyniku klinicznego [1,2]. Jednak ludzka ocena preparatów histologicznych jest subiektywna i nie jest powtarzalna [3]. Ponadto ocena histologiczna jest procesem czasochłonnym, wymagającym wysoko wykwalifikowanych specjalistów.
Wraz ze znacznym postępem technologicznym w ostatniej dekadzie, techniki takie jak obrazowanie całych slajdów (WSI) i głębokie uczenie się (DL) są obecnie powszechnie dostępne. WSI to skanowanie konwencjonalnych szkiełek mikroskopowych w celu uzyskania pojedynczego obrazu o wysokiej rozdzielczości z tych szkiełek. Pozwala to na digitalizację i gromadzenie dużych zestawów obrazów patologicznych, co byłoby niezwykle czasochłonne i kosztowne. Dostępność takich zestawów danych tworzy nowe i innowacyjne sposoby przyspieszania diagnozy za pomocą technik, takich jak uczenie maszynowe (ML), aby pomóc patologom przyspieszyć diagnozę poprzez szybkie identyfikowanie interesujących ich cech.
W tym poście przyjrzymy się, w jaki sposób programiści bez wcześniejszego doświadczenia w ML mogą korzystać Etykiety niestandardowe Amazon Rekognition wytrenować model, który klasyfikuje cechy komórkowe. Amazon Rekognition Custom Labels to funkcja Amazon Rekognition które umożliwia budowanie własnych wyspecjalizowanych funkcji analizy obrazu opartych na ML w celu wykrywania unikalnych obiektów i scen integralnych z konkretnym przypadkiem użycia. W szczególności używamy zestawu danych zawierającego całe obrazy slajdów raka sutka u psów [1], aby zademonstrować, jak przetwarzać te obrazy i trenować model, który wykrywa figury mitotyczne. Ten zbiór danych został wykorzystany za zgodą prof. dr Marca Aubreville'a, który uprzejmie zgodził się na wykorzystanie go w tym poście. Aby uzyskać więcej informacji, zobacz sekcję Podziękowania na końcu tego wpisu.
Omówienie rozwiązania
Rozwiązanie składa się z dwóch elementów:
- Model etykiet niestandardowych Amazon Rekognition — Aby umożliwić Amazon Rekognition wykrywanie figur mitotycznych, wykonujemy następujące kroki:
- Próbkuj zestaw danych WSI, aby utworzyć obrazy o odpowiedniej wielkości za pomocą Studio Amazon SageMaker oraz kod Pythona działający na notebooku Jupyter. Studio to internetowe, zintegrowane środowisko programistyczne (IDE) dla uczenia maszynowego, które zapewnia wszystkie narzędzia potrzebne do przenoszenia modeli od eksperymentów do produkcji, przy jednoczesnym zwiększeniu produktywności. Użyjemy Studio do podzielenia obrazów na mniejsze, aby wytrenować nasz model.
- Wytrenuj model Amazon Rekognition Custom Labels, aby rozpoznawał figury mitotyczne w próbkach hematoksyliny i eozyny, korzystając z danych przygotowanych w poprzednim kroku.
- Aplikacja frontendowa — Aby zademonstrować, jak korzystać z modelu podobnego do tego, który trenowaliśmy w poprzednim kroku, wykonujemy następujące kroki:
Poniższy schemat ilustruje architekturę rozwiązania.
Wszystkie zasoby niezbędne do wdrożenia omawianej w tym poście implementacji oraz kod całej sekcji są dostępne na stronie GitHub. Możesz sklonować lub rozwidlić repozytorium, wprowadzić dowolne zmiany i uruchomić je samodzielnie.
W kolejnych krokach przejdziemy przez kod, aby zrozumieć różne kroki związane z uzyskiwaniem i przygotowywaniem danych, trenowaniem modelu i używaniem go z przykładowej aplikacji.
Koszty:
Wykonując kroki opisane w tym instruktażu, ponosisz niewielkie koszty związane z korzystaniem z następujących usług AWS:
- Amazon Rekognition
- AWS-Fargate
- Moduł równoważenia obciążenia aplikacji
- Menedżer tajemnic AWS
Ponadto, jeśli okres lub warunki poziomu bezpłatnego nie będą już obowiązywać, możesz ponieść koszty następujących usług:
- Potok kodu
- Tworzenie kodu
- Amazon ECR
- Amazon Sage Maker
Jeśli poprawnie wykonasz kroki czyszczenia po zakończeniu tego przewodnika, możesz spodziewać się kosztów niższych niż 10 USD, jeśli model Amazon Rekognition Custom Labels i aplikacja sieci Web działają przez godzinę lub krócej.
Wymagania wstępne
Aby wykonać wszystkie kroki, potrzebujesz:
Trening modelu klasyfikacji figur mitotycznych
Wykonujemy wszystkie kroki wymagane do nauczenia modelu z notesu programu Studio. Jeśli nigdy wcześniej nie korzystałeś ze Studio, może być konieczne na pokładzie pierwszy. Aby uzyskać więcej informacji, zobacz Szybko dołącz do Amazon SageMaker Studio.
Niektóre z poniższych kroków wymagają więcej pamięci RAM niż jest dostępne w standardowym notebooku ml.t3.medium. Upewnij się, że wybrałeś notatnik ml.m5.large. Powinieneś zobaczyć oznaczenie 2 vCPU + 8 GiB w prawym górnym rogu strony.
Kod dla tej sekcji jest dostępny jako plik Plik notatnika Jupyter.
Po wejściu do Studio wykonaj następujące czynności te instrukcje aby udzielić Studio niezbędnych uprawnień do połączenia się z Amazon Rekognition w Twoim imieniu.
Zależności
Na początek musimy wykonać następujące kroki:
- Zaktualizuj pakiety systemu Linux i zainstaluj wymagane zależności, takie jak OpenSlide:
- Zainstaluj biblioteki fastai i SlideRunner za pomocą pip:
- Pobierz zestaw danych (dostarczamy skrypt, który zrobi to automatycznie):
Przetwórz zestaw danych
Zaczniemy od zaimportowania niektórych pakietów, których używamy na etapie przygotowania danych. Następnie pobieramy i ładujemy bazę danych adnotacji dla tego zestawu danych. Ta baza danych zawiera pozycje w całych obrazach slajdów figur mitotycznych (cech, które chcemy sklasyfikować). Zobacz następujący kod:
Ponieważ używamy SageMakera, tworzymy nowego SageMakera Sesja obiekt, aby ułatwić zadania, takie jak przesyłanie naszego zestawu danych do pliku Usługa Amazon Simple Storage (Amazon S3) wiadro. Używamy również zasobnika S3, który SageMaker domyślnie tworzy, aby przesyłać nasze przetworzone pliki obrazów.
Połączenia slidelist_test
array zawiera identyfikatory slajdów, których używamy jako część testowego zestawu danych do oceny wydajności wytrenowanego modelu. Zobacz następujący kod:
Kolejnym krokiem jest uzyskanie kompletu szkiełek treningowych i testowych wraz z zawartymi w nich etykietami, z których możemy pobrać mniejsze obszary do trenowania naszego modelu. Kod get_slides znajduje się w pliku sampling.py w GitHub.
Chcemy losowo pobierać próbki ze szkiełek szkoleniowych i testowych. Korzystamy z list slajdów szkoleniowych i testowych i wybieramy losowo n_training_images
razy plik do treningu i n_test_images
razy plik do testu:
Następnie tworzymy katalog dla obrazów treningowych i jeden dla obrazów testowych:
Zanim utworzymy mniejsze obrazy potrzebne do uczenia modelu, potrzebujemy kodu pomocniczego, który generuje metadane potrzebne do opisania danych szkoleniowych i testowych. Poniższy kod upewnia się, że dana ramka otaczająca interesujące nas cechy (figury mitotyczne) znajduje się dobrze w strefie, którą wycinamy, i tworzy linię JSON, która opisuje obraz i zawarte w nim funkcje w Amazon SageMaker Ground Prawda format, który jest formatem wymaganym przez Amazon Rekognition Custom Labels. Aby uzyskać więcej informacji na temat tego pliku manifestu do wykrywania obiektów, zobacz Lokalizacja obiektu w plikach manifestu.
Z generate_annotations
w miejscu, możemy napisać kod do tworzenia obrazów treningowych i testowych:
Ostatnim krokiem w kierunku posiadania wszystkich wymaganych danych jest napisanie pliku manifest.json
plik dla każdego z zestawów danych:
Przenieś pliki do S3
Używamy upload_data
metodę udostępnianą przez obiekt sesji SageMaker w celu przesłania obrazów i plików manifestu do domyślnego zasobnika SageMaker S3:
Wytrenuj model Amazon Rekognition Custom Labels
Mając dane już w Amazon S3, możemy przejść do trenowania niestandardowego modelu. Wykorzystujemy bibliotekę Boto3 do stworzenia klienta Amazon Rekognition i stworzenia projektu:
Gdy projekt jest gotowy do użycia, potrzebujesz teraz wersji projektu, która wskazuje na zestawy danych szkoleniowych i testowych w Amazon S3. Każda wersja idealnie wskazuje na różne zestawy danych (lub różne ich wersje). Dzięki temu możemy mieć różne wersje modelu, porównywać ich wydajność i przełączać się między nimi w razie potrzeby. Zobacz następujący kod:
Po stworzeniu przez nas wersji projektu, Amazon Rekognition automatycznie rozpoczyna proces szkolenia. Czas szkolenia zależy od kilku cech, takich jak wielkość obrazków i ich liczba, liczba zajęć i tak dalej. W tym przypadku dla 500 obrazów ukończenie szkolenia trwa około 90 minut.
Przetestuj model
Po przeszkoleniu każdy model w Amazon Rekognition Custom Labels jest w STOPPED
państwo. Aby użyć go do wnioskowania, musisz go uruchomić. Otrzymujemy wersję projektu ARN z opisu wersji projektu i przekazujemy ją do start_project_version
. Zwróć uwagę na MinInferenceUnits
parametr — zaczynamy od jednej jednostki wnioskowania. Rzeczywista maksymalna liczba transakcji na sekundę (TPS), którą obsługuje ta jednostka wnioskowania, zależy od złożoności modelu. Aby dowiedzieć się więcej o TPS, zapoznaj się z tym blogu.
Gdy Twoja wersja projektu jest wymieniona jako RUNNING
, możesz rozpocząć wysyłanie obrazów do Amazon Rekognition w celu wnioskowania.
Używamy jednego z plików w zbiorze danych testowych do testowania nowo uruchomionego modelu. Zamiast tego możesz użyć dowolnego odpowiedniego pliku PNG lub JPEG.
Usprawniona aplikacja
Aby zademonstrować integrację z Amazon Rekognition, używamy bardzo prostej aplikacji w Pythonie. Używamy Strumieniowe bibliotekę do zbudowania spartańskiego interfejsu użytkownika, w którym prosimy użytkownika o przesłanie pliku obrazu.
Korzystamy z biblioteki Boto3 i detect_custom_labels
metodę wraz z wersją projektu ARN, aby wywołać punkt końcowy wnioskowania. Odpowiedzią jest dokument JSON zawierający pozycje i klasy różnych obiektów wykrytych na obrazie. W naszym przypadku są to figury mitotyczne, które algorytm znalazł w obrazie, który wysłaliśmy do punktu końcowego. Zobacz następujący kod:
Wdróż aplikację na AWS
Do wdrożenia aplikacji używamy skryptu AWS CDK. Cały projekt można znaleźć na GitHub . Przyjrzyjmy się różnym zasobom wdrożonym przez skrypt.
Utwórz repozytorium Amazon ECR
Jako pierwszy krok w kierunku konfiguracji naszego wdrożenia tworzymy repozytorium Amazon ECR, w którym możemy przechowywać nasze obrazy kontenerów aplikacji:
Utwórz i przechowuj swój token GitHub w AWS Secrets Manager
CodePipeline potrzebuje osobistego tokena dostępu GitHub do monitorowania repozytorium GitHub pod kątem zmian i pobierania kodu. Aby utworzyć token, postępuj zgodnie z instrukcjami w Dokumentacja GitHub. Token wymaga następujących zakresów GitHub:
- Połączenia
repo
zakres, który jest używany do pełnej kontroli w celu odczytywania i ściągania artefaktów z publicznych i prywatnych repozytoriów do potoku. - Połączenia
admin:repo_hook
zakres, który służy do pełnej kontroli haków repozytorium.
Po utworzeniu tokenu przechowuj go w nowym wpisie tajnym w Menedżer tajemnic AWS w sposób następujący:
Zapisz parametry konfiguracyjne w magazynie parametrów AWS Systems Manager
Skrypt AWS CDK odczytuje niektóre parametry konfiguracyjne z Magazyn parametrów menedżera systemów AWS, takie jak nazwa i właściciel repozytorium GitHub oraz konto docelowe i region. Przed uruchomieniem skryptu AWS CDK należy utworzyć te parametry na własnym koncie.
Możesz to zrobić za pomocą AWS CLI. Po prostu wywołaj put-parameter
polecenie z nazwą, wartością i typem parametru:
Poniżej znajduje się lista wszystkich parametrów wymaganych przez skrypt AWS CDK. Wszystkie są typu String
:
- /rek_wsi/prod/accountId — Identyfikator konta, na którym wdrażamy aplikację.
- /rek_wsi/prod/ecr_repo_name — Nazwa repozytorium Amazon ECR, w którym przechowywane są obrazy kontenerów.
- /rek_wsi/prod/github/branch — Gałąź w repozytorium GitHub, z której CodePipeline musi pobrać kod.
- /rek_wsi/prod/github/owner — Właściciel repozytorium GitHub.
- /rek_wsi/prod/github/repo — Nazwa repozytorium GitHub, w którym przechowywany jest nasz kod.
- /rek_wsi/prod/github/token — Nazwa lub ARN klucza tajnego w Menedżerze sekretów, który zawiera token uwierzytelniania GitHub. Jest to konieczne, aby CodePipeline mógł komunikować się z GitHub.
- /rek_wsi/prod/region — Region, w którym będziemy wdrażać aplikację.
Wskazówka prod
segment we wszystkich nazwach parametrów. Chociaż nie potrzebujemy tego poziomu szczegółowości dla tak prostego przykładu, umożliwi to ponowne użycie tego podejścia w innych projektach, w których mogą być potrzebne inne środowiska.
Zasoby utworzone przez skrypt AWS CDK
Potrzebujemy, aby nasza aplikacja działająca w zadaniu Fargate miała uprawnienia do wywoływania Amazon Rekognition. Więc najpierw tworzymy plik AWS Zarządzanie tożsamością i dostępem (IAM) Rola zadaniowa z RekognitionReadOnlyPolicy
dołączona do niego polityka. Zauważ, że assumed_by
parametr w poniższym kodzie przyjmuje ecs-tasks.amazonaws.com
główny serwis. Dzieje się tak, ponieważ używamy Amazon ECS jako koordynatora, więc potrzebujemy Amazon ECS, aby przyjął tę rolę i przekazał poświadczenia do zadania Fargate.
Po zbudowaniu nasz obraz kontenera aplikacji znajduje się w prywatnym repozytorium Amazon ECR. Potrzebujemy opisującego go obiektu, który możemy przekazać podczas tworzenia usługi Fargate:
Tworzymy nowy VPC i klaster dla tej aplikacji. Możesz zmodyfikować tę część, aby używać własnego VPC, używając pliku from_lookup
metoda Vpc
klasa:
Teraz, gdy mamy VPC i klaster do wdrożenia, tworzymy usługę Fargate. Do tego zadania używamy 0.25 vCPU i 512 MB RAM, a przed nim umieszczamy publiczny Application Load Balancer (ALB). Po wdrożeniu używamy ALB CNAME, aby uzyskać dostęp do aplikacji. Zobacz następujący kod:
Aby automatycznie budować i wdrażać nowy obraz kontenera za każdym razem, gdy przesyłamy kod do naszej głównej gałęzi, tworzymy prosty potok składający się z akcji źródłowej GitHub i kroku kompilacji. W tym miejscu używamy sekretów przechowywanych w AWS Secrets Manager i AWS Systems Manager Parameter Store w poprzednich krokach.
CodeBuild potrzebuje uprawnień do przesyłania obrazów kontenerów do Amazon ECR. Aby udzielić tych uprawnień, dodajemy plik AmazonEC2ContainerRegistryFullAccess
policy na niestandardową rolę IAM, którą jednostka usługi CodeBuild może przyjąć:
Projekt CodeBuild loguje się do prywatnego repozytorium Amazon ECR, buduje obraz Dockera za pomocą aplikacji Streamlit i wrzuca obraz do repozytorium wraz z appspec.yaml
oraz imagedefinitions.json
plik.
Połączenia appspec.yaml
plik opisuje zadanie (port, wersja platformy Fargate itd.), podczas gdy plik imagedefinitions.json
plik odwzorowuje nazwy obrazów kontenerów na odpowiadające im identyfikatory URI Amazon ECR. Zobacz następujący kod:
Na koniec łączymy ze sobą różne etapy potoku. Ostatnią czynnością jest tzw EcsDeployAction
, który pobiera obraz kontenera zbudowany w poprzednim etapie i dokonuje ciągłej aktualizacji zadań w naszym klastrze ECS:
Oczyszczanie
Aby uniknąć ponoszenia przyszłych kosztów, wyczyść zasoby utworzone w ramach tego rozwiązania.
Model etykiet niestandardowych Amazon Rekognition
Zanim zamkniesz notatnik Studio, zatrzymaj model etykiet niestandardowych Amazon Rekognition. Jeśli tego nie zrobisz, nadal ponosisz koszty.
Alternatywnie możesz użyć konsoli Amazon Rekognition, aby zatrzymać usługę:
- Na konsoli Amazon Rekognition wybierz Użyj etykiet niestandardowych w okienku nawigacji.
- Dodaj Projekty w okienku nawigacji.
- Wybierz wersję 1
rek-mitotic-figures-workshop
projekt. - Na Użyj modelu kartę, wybierz Stop.
Usprawniona aplikacja
Aby zniszczyć wszystkie zasoby powiązane z aplikacją Streamlit, uruchom następujący kod z katalogu aplikacji AWS CDK:
Menedżer tajemnic AWS
Aby usunąć token GitHub, postępuj zgodnie z instrukcjami w dokumentacja.
Wnioski
W tym poście omówiliśmy niezbędne kroki, aby wytrenować model Amazon Rekognition Custom Labels dla aplikacji cyfrowej patologii przy użyciu rzeczywistych danych. Następnie nauczyliśmy się, jak używać modelu z prostej aplikacji wdrożonej z potoku CI/CD do Fargate.
Niestandardowe etykiety Amazon Rekognition umożliwiają tworzenie aplikacji medycznych z obsługą uczenia maszynowego, które można łatwo tworzyć i wdrażać za pomocą usług takich jak Fargate, CodeBuild i CodePipeline.
Czy możesz wymyślić jakieś aplikacje, które pomogą naukowcom, lekarzom lub ich pacjentom ułatwić im życie? Jeśli tak, użyj kodu w tym instruktażu, aby skompilować następną aplikację. A jeśli masz jakieś pytania, podziel się nimi w sekcji komentarzy.
Podziękowanie
Chcielibyśmy podziękować prof. dr Marcowi Aubreville za uprzejme udzielenie nam zgody na wykorzystanie zbioru danych MITOS_WSI_CMC w tym poście na blogu. Zestaw danych można znaleźć na GitHub.
Referencje
[1] Aubreville, M., Bertram, CA, Donovan, TA i in. Całkowicie opatrzony adnotacjami cały zestaw danych obrazów slajdów dotyczących raka piersi u psów, aby pomóc w badaniach nad rakiem piersi u ludzi. Dane naukowe 7, 417 (2020). https://doi.org/10.1038/s41597-020-00756-z
[2] Khened M., Kori A., Rajkumar H. i in. Uogólniona platforma głębokiego uczenia się do segmentacji i analizy całych slajdów. Sci Rep 11, 11579 (2021). https://doi.org/10.1038/s41598-021-90444-8
[3] PNAS 27 marca 2018 r. 115 (13) E2970-E2979; opublikowano po raz pierwszy 12 marca 2018 r.; https://doi.org/10.1073/pnas.1717139115
O autorze
Pablo Nuñez Pölcher, Mgr, jest starszym architektem rozwiązań pracującym dla zespołu sektora publicznego w Amazon Web Services. Pablo koncentruje się na pomaganiu klientom z sektora publicznego w służbie zdrowia w tworzeniu nowych, innowacyjnych produktów na platformie AWS zgodnie z najlepszymi praktykami. Uzyskał tytuł mgr inż. w naukach biologicznych na Universidad de Buenos Aires. W wolnym czasie lubi jeździć na rowerze i majstrować przy urządzeniach wbudowanych obsługujących ML.
Razvana Ionaseca, PhD, MBA, jest liderem technicznym ds. opieki zdrowotnej w Amazon Web Services w Europie, na Bliskim Wschodzie iw Afryce. Jego praca koncentruje się na pomaganiu klientom z sektora opieki zdrowotnej w rozwiązywaniu problemów biznesowych za pomocą technologii. Wcześniej Razvan był globalnym szefem produktów sztucznej inteligencji (AI) w firmie Siemens Healthineers odpowiedzialnym za AI-Rad Companion, rodzinę opartych na sztucznej inteligencji i opartych na chmurze cyfrowych rozwiązań zdrowotnych do obrazowania. Posiada ponad 30 patentów w zakresie sztucznej inteligencji/uczenia maszynowego do obrazowania medycznego i opublikował ponad 70 recenzowanych międzynarodowych publikacji technicznych i klinicznych na temat wizji komputerowej, modelowania komputerowego i analizy obrazów medycznych. Razvan uzyskał tytuł doktora informatyki na Uniwersytecie Technicznym w Monachium oraz tytuł MBA na Uniwersytecie Cambridge w Judge Business School.
- '
- "
- &
- 100
- 11
- 110
- 2020
- 2021
- 7
- O nas
- przyśpieszyć
- dostęp
- Konto
- Działania
- Afryka
- AI
- algorytm
- Wszystkie kategorie
- już
- Chociaż
- Amazonka
- Amazon Rekognition
- Amazon Sage Maker
- Amazon Web Services
- analiza
- Zastosowanie
- aplikacje
- APT
- architektura
- sztuczny
- sztuczna inteligencja
- Sztuczna inteligencja (AI)
- Aktywa
- Uwierzytelnianie
- dostępność
- dostępny
- AWS
- stabilizator
- BEST
- Najlepsze praktyki
- Blog
- pobudzanie
- Pudełko
- Rak piersi
- budować
- biznes
- wezwanie
- cambridge
- Może uzyskać
- Rak
- badania nad rakiem
- opłata
- klasyfikacja
- kod
- kolekcja
- komentarze
- Computer Science
- Wizja komputerowa
- pewność siebie
- systemu
- Konsola
- Pojemnik
- Pojemniki
- zawiera
- ciągły
- Koszty:
- Tworzenie
- Listy uwierzytelniające
- Klientów
- dane
- Baza danych
- Bazy danych
- głęboka nauka
- zniszczyć
- detal
- Wykrywanie
- deweloperzy
- oprogramowania
- urządzenia
- różne
- cyfrowy
- IT dla zdrowia i fitness
- digitalizacja
- Doker
- Lekarze
- na dół
- z łatwością
- przegapić
- Punkt końcowy
- Środowisko
- Europie
- przykład
- doświadczenie
- eksport
- członków Twojej rodziny
- Cecha
- Korzyści
- Postać
- i terminów, a
- obserwuj
- widelec
- format
- znaleziono
- Framework
- Darmowy
- pełny
- funkcjonować
- przyszłość
- Generować
- geometria
- GitHub
- Dający
- Globalne
- Złoto
- przyznać
- Dotacje
- mający
- głowa
- Zdrowie
- opieki zdrowotnej
- pomoc
- tutaj
- W jaki sposób
- How To
- HTTPS
- IAM
- tożsamość
- obraz
- Analiza obrazu
- segmentacja obrazu
- Obrazowanie
- importowanie
- Informacja
- Innowacyjny
- integralny
- integracja
- Inteligencja
- odsetki
- na świecie
- zaangażowany
- IT
- Notebook Jupyter
- Etykiety
- duży
- firmy
- wodowanie
- UCZYĆ SIĘ
- dowiedziałem
- nauka
- poziom
- Biblioteka
- Linia
- linux
- Lista
- wykazy
- załadować
- Localization
- uczenie maszynowe
- Mapy
- March
- medyczny
- obrazowanie medyczne
- średni
- Bliski Wschód
- ML
- model
- modelowanie
- modele
- jeszcze
- Monachium
- Nazwy
- Nawigacja
- potrzebne
- Wykrywanie obiektów
- Wprowadzenie
- Inne
- właściciel
- Patenty
- patologia
- pacjenci
- jest gwarancją najlepszej jakości, które mogą dostarczyć Ci Twoje monitory,
- osobisty
- Platforma
- polityka
- Główny
- prywatny
- wygląda tak
- Produkcja
- wydajność
- Produkty
- specjalistów
- projekt
- projektowanie
- zapewniać
- zapewnia
- publiczny
- sektor publiczny
- publikacje
- Python
- RAM
- Badania naukowe
- Zasoby
- odpowiedź
- run
- bieganie
- sagemaker
- skanowanie
- Szkoła
- nauka
- NAUKI
- sektor
- wybrany
- Usługi
- zestaw
- ustawienie
- Share
- Siemens
- znaczący
- Prosty
- Rozmiar
- mały
- So
- Rozwiązania
- ROZWIĄZANIA
- Typ przestrzeni
- wyspecjalizowanym
- dzielić
- STAGE
- początek
- rozpoczęty
- Stan
- Rynek
- przechowywanie
- sklep
- studio
- podpory
- Przełącznik
- systemy
- cel
- Techniczny
- Techniki
- Technologia
- test
- Źródło
- Przez
- czas
- czasochłonne
- razem
- żeton
- narzędzia
- Top
- Trening
- transakcje
- wyjątkowy
- uniwersytet
- Uniwersytet Cambridge
- Aktualizacja
- URI
- us
- USD
- wartość
- wersja
- wizja
- W
- sieć
- usługi internetowe
- Web-based
- Co
- Co to jest
- KIM
- szeroko
- w ciągu
- bez
- Praca
- pracujący
- by
- pisanie
- X
- lat
- youtube