Deep Learning to szybko rozwijająca się metoda uczenia maszynowego (samouczenia się maszyn), która wykorzystuje sieci neuronowe do naśladowania procesów zachodzących w ludzkim mózgu. Po zintegrowaniu z systemem GIS może zapewnić lepszą obsługę danych i dokładniejszą ich analizę.
Z algorytmami uczenia maszynowego wiążą się zazwyczaj trzy główne wyzwania: analiza dużych ilości danych, niewystarczające zasoby obliczeniowe oraz skuteczność i dokładność algorytmów. Dzięki integracji aplikacji ArcGIS Notebook Server i algorytmom Deep Learning można lepiej radzić sobie z tymi wyzwaniami.
Deep Learning w aplikacji ArcGIS Notebook Server
Dostępne modele Deep Learning dla danych zobrazowań w aplikacji ArcGIS Notebook Server dzielą się na cztery główne kategorie:
- Klasyfikacja obiektów — służy do określania klasy obiektów. Na przykład może być użyta do określenia, czy budynek został uszkodzony po katastrofie naturalnej.
- Wykrywanie obiektów — proces lokalizacji polegający na znalezieniu obiektów na obrazie w obrębie ramki ograniczającej. Na przykład wykrywania obiektów można użyć do wykrywania basenów na obrazie.
- Klasyfikacja pikseli — służy do przypisywania klas pikselom obrazu. Na przykład klasyfikacja pikseli może być wykorzystana do klasyfikacji pokrycia terenu.
- Klasyfikacja wystąpień — łączy wykrywanie obiektów i klasyfikację pikseli. Klasyfikacja wystąpień może być użyta do wykrycia obiektu i jego dalszej klasyfikacji. Na przykład w wykrywaniu uszkodzeń można zastosować klasyfikację pikseli, aby nie tylko zidentyfikować uszkodzenie, ale także sklasyfikować jego poziom.
Notatka:
Aplikacja ArcGIS Notebook Server obsługuje również modele koncentrujące się na zestawach danych tabelarycznych, chmur punktów i innych zestawach danych strukturalnych.
Modele wstępnie wytrenowane a trenowanie modeli
Istnieją dwie metody modeli Deep Learning, których można używać w ArcGIS:
- Modele wstępnie wytrenowane — służą do wstępnego wnioskowania z danych bez konieczności posiadania dużych pul danych treningowych lub długiego czasu trenowania modelu. Użycie wstępnie wytrenowanego modelu jest szybsze, ale wiąże się z pogorszeniem dokładności. Modele te można poddać ponownemu treningowi, aby zwiększyć ich dokładność.
- Przykład: klasyfikacja pokrycia terenu przy użyciu rzadkich danych treningowych z wykorzystaniem klasyfikatora UNet jako wstępnie wytrenowanego modelu
unet = UnetClassifier(data, backbone='resnet34', ignore_classes=[0]) unet.show_results() unet.per_class_metrics()
- Przykład: klasyfikacja pokrycia terenu przy użyciu rzadkich danych treningowych z wykorzystaniem klasyfikatora UNet jako wstępnie wytrenowanego modelu
- Trenowanie modeli Deep Learning — trenując model Deep Learning na dużym zestawie danych z wystarczającymi zasobami i czasem trenowania, można stworzyć bardziej dokładny model.
- Przykład: klasyfikacja pokrycia terenu przy użyciu rzadkich danych treningowych z wykorzystaniem klasyfikatora UNet i ponownego trenowania modelu
unet = UnetClassifier(data, backbone='resnet34', ignore_classes=[0]) unet.lr_find() unet.fit(10, lr) #10 iterations of model fitting unet.show_results() unet.per_class_metrics()
- Przykład: klasyfikacja pokrycia terenu przy użyciu rzadkich danych treningowych z wykorzystaniem klasyfikatora UNet i ponownego trenowania modelu
Uruchamianie modeli Deep Learning w aplikacji ArcGIS Notebooks
Aby użyć modelu Deep Learning w aplikacji ArcGIS Notebooks, wykonaj następujące czynności:
Notatka:
Deep Learning wymaga dużych mocy obliczeniowych, dlatego do przetwarzania dużych zestawów danych zaleca się użycie wydajnego procesora graficznego.
- Wybierz model Deep Learning z grupy 04_gis_analysts_data_scientists w archiwum danych do pobrania.
- Pobierz plik .ipynb modelu, którego będziesz używać.
- Kliknij stronę Zasoby w swoim portalu.
- Kliknij opcję Nowy element i prześlij plik .ipynb pobranego modelu.
- Otwórz notatnik utworzony przez plik modelu .ipynb.
- Dodaj dane, które chcesz przeanalizować.
- Uruchom następujące sekcje notatnika:
- Przygotowanie danych wejściowych
- Wizualizowanie danych treningowych
- Wczytanie architektury modelu
- Przeprowadzenie treningu modelu
Notatka:
Tę sekcję można pominąć, jeśli chcesz używać tylko wstępnie wytrenowanego modelu.
- Zapisanie modelu
- Wnioskowanie