Struktura sieci neuronowej to biblioteka oprogramowania lub zestaw narzędzi udostępniający funkcje i abstrakcje do projektowania, budowania i uczenia sieci neuronowych. Frameworki te oferują interfejsy API (interfejsy programowania aplikacji) i narzędzia upraszczające wdrażanie architektur sieci neuronowych, obsługę zadań takich jak definiowanie warstw, łączenie neuronów, określanie algorytmów optymalizacji oraz zarządzanie szkoleniem i oceną modeli. Popularne struktury sieci neuronowych obejmują TensorFlow, PyTorch, Keras i Caffe, z których każda oferuje unikalne funkcje i możliwości dostosowane do różnych zadań i aplikacji głębokiego uczenia się.
Struktura głębokiego uczenia się (DL) obejmuje szerszy zestaw narzędzi i bibliotek zaprojektowanych specjalnie do opracowywania i wdrażania modeli głębokiego uczenia się. Podczas gdy struktury sieci neuronowych koncentrują się na budowaniu i szkoleniu sieci neuronowych, struktury DL obejmują obsługę różnych architektur głębokiego uczenia się wykraczających poza sieci neuronowe, takich jak splotowe sieci neuronowe (CNN), rekurencyjne sieci neuronowe (RNN) i modele głębokiego uczenia się przez wzmacnianie. Struktury te często integrują się ze specjalistycznymi akceleratorami sprzętowymi, takimi jak procesory graficzne i TPU, aby zwiększyć wydajność obliczeniową na potrzeby zadań szkoleniowych i wnioskowania.
Struktury dedykowane splotowym sieciom neuronowym (CNN) to wyspecjalizowane narzędzia w ramach szerszego krajobrazu struktur głębokiego uczenia się. Chociaż struktury DL zapewniają wszechstronną obsługę różnych architektur głębokiego uczenia się, struktury dostosowane dla CNN w szczególności optymalizują funkcjonalność i wydajność w przypadku zadań obejmujących rozpoznawanie obrazów, wykrywanie obiektów i inne zastosowania związane z wizją komputerową. Przykłady frameworków CNN obejmują TensorFlow z Keras API, PyTorch, MXNet i Caffe, z których każdy oferuje określone funkcje i optymalizacje dostosowane do zadań związanych z CNN.
Struktura uczenia maszynowego (ML) obejmuje zestaw narzędzi i bibliotek zaprojektowanych w celu wspierania opracowywania, szkolenia i wdrażania modeli uczenia maszynowego. W przeciwieństwie do platform głębokiego uczenia się, które koncentrują się na sieciach neuronowych i pokrewnych architekturach, struktury ML zapewniają szerszą obsługę tradycyjnych algorytmów uczenia maszynowego, takich jak regresja liniowa, drzewa decyzyjne, maszyny wektorów nośnych i techniki grupowania. Popularne platformy uczenia maszynowego obejmują scikit-learn, MATLAB, R i Weka, obsługujące szeroki zakres zadań nadzorowanych i bez nadzoru oraz uczenia się przez wzmacnianie.
Struktury używane do głębokiego uczenia się zazwyczaj odnoszą się do kompleksowych narzędzi i bibliotek specjalnie zoptymalizowanych pod kątem budowania i szkolenia sieci neuronowych i innych architektur głębokiego uczenia się. Struktury te, takie jak TensorFlow, PyTorch i Keras, oferują szerokie wsparcie w projektowaniu złożonych modeli sieci neuronowych, obsłudze zbiorów danych na dużą skalę, optymalizowaniu wydajności modeli za pomocą akceleratorów sprzętowych i wdrażaniu wytrenowanych modeli w środowiskach produkcyjnych. Struktury głębokiego uczenia się wykorzystują postępy w wydajności obliczeniowej, optymalizacji algorytmów i możliwości interpretacji modeli, aby umożliwić postęp w takich dziedzinach, jak widzenie komputerowe, przetwarzanie języka naturalnego i uczenie się przez wzmacnianie.