Wykres sieci splotowych: lista aplikacji, które musisz znać

Opublikowany: 2020-11-24

Sieć splotowa to rodzaj sieci neuronowej. Sieci neuronowe to szczególny rodzaj modelu uczenia głębokiego. Zazwyczaj uczenie maszynowe lub głębokie uczenie obejmuje rygorystyczne i kosztowne algorytmy ze względu na swoje skomplikowane zadanie. Podobnie modele uczenia głębokiego na wykresach są jeszcze bardziej skomplikowane. Grafowe sieci splotowe są używane przede wszystkim w celu klasyfikacji obrazów. Dowiedz się więcej o splotowej sieci neuronowej.

W ciągu ostatniej dekady zastosowanie nauki o danych ogromnie wzrosło. W tym bogatym w dane świecie podejście oparte na modelu uczenia się przyniosło świetne wyniki i dokładne prognozy. Wykresy są przydatne w wielu systemach informatycznych.

Od interakcji białek biologicznych po łączność internetową i WorldWideWeb, wykresy przedstawiają wszystkie te systemy. Ponadto implementacja sieci neuronowych poprzez strukturę graficzną pozwala komputerowi zrozumieć właściwości obrazu. Model ten jest jednym z najbardziej zaawansowanych zastosowań wykresu w świecie rzeczywistym. Omówmy szczegółowo te algorytmy:

Spis treści

Jak zbudowane są sieci neuronowe

Sieci neuronowe to jedna z najbardziej zaawansowanych technik nauki o danych i głębokiego uczenia. Sieci neuronowe są przydatne w wielu zastosowaniach, od prognoz giełdowych po klasyfikację obrazów, rozpoznawanie mowy lub znaków, a nawet analizę sekwencji.

Pierwsza koncepcja sieci neuronowej powstała z perspektywy biologicznej. Naukowcy przeprowadzili eksperymenty, w których nerwy wzrokowe są połączone z ośrodkami słuchu w mózgu. W końcu organizm nauczył się także widzieć przez ośrodek słuchowy w mózgu. Jeszcze dalsze eksperymenty dowiodły, że każdy ośrodek mózgu może wykonać każdą akcję.

Podejścia zaczęły naśladować ludzki mózg informujący algorytmy komputerowe. Podobnie, informatycy również uważali, że powinien istnieć jeden algorytm, który jest w stanie rozwiązać wszystkie problemy z komputerowym uczeniem się mózgu. Tak narodziła się sieć neuronowa.

Sieć neuronowa składa się z wielu warstw neuronów. Każdy neuron jest zazwyczaj węzłem grafu. Każdy neuron każdej warstwy jest połączony ze wszystkimi neuronami następnej warstwy przez ważoną krawędź — wagi krawędzi działają jako współczynnik obliczania wartości warstwy.

Dzięki wstecznej propagacji współczynniki zmieniają się, aby dopasować model do przykładowych przykładów uczących. Ostatecznie wyjście daje pojedynczy neuron z ostatniej warstwy. Na poniższym obrazku wyjaśniono strukturę sieci neuronowej.

Źródło obrazu

Przeczytaj: Używanie splotowych sieci neuronowych do klasyfikacji obrazów

Wykres sieci splotowych

Sieci splotowe to trójwymiarowe sieci neuronowe. Najbardziej praktyczne zastosowania splotowych sieci neuronowych obejmują klasyfikację i rozpoznawanie obrazów, przetwarzanie języka naturalnego i rozpoznawanie mowy. Modele te są zwykle bardziej złożone niż zwykłe dwuwymiarowe modele sieci neuronowych.

W tej architekturze składane są warstwy różnych neuronów. Parametr wymiarów jest zmienny na różnych warstwach, aby model rozpoznał parametry. Na przykład obrazy są dwuwymiarowe, aw międzyczasie kolor każdego punktu również odgrywa kluczową rolę. Stąd pojawiają się trzy różne parametry. W radzeniu sobie z takimi zawiłościami istotną rolę odgrywają Conv Nets.

Te liczne macierze 3D o różnych wymiarach działają na wielu poziomach sieci neuronowej. Ostatecznie wymiar „z” pasuje do wyjściowego parametru sieci. Przekazywanie informacji z jednego poziomu na drugi może odbywać się za pomocą różnych algorytmów.

Na przykład FC (Fully Connected), Pooling i ReLU to niektóre kluczowe algorytmy w tym zakresie.

Ogólnie rzecz biorąc, wartości węzłów sieci neuronowej są oznaczone, gdzie „l” oznacza numer warstwy. Tak więc 0 to macierz wejściowa.

a 0 =X

Z drugiej strony ostatni węzeł warstwy definiuje dane wyjściowe. Powiedzmy, że są warstwy „L”. Dlatego a L oznacza wyjście sieci neuronowej.

a L =Y

Źródło obrazu

Powyższy obraz przedstawia splotową sieć neuronową w implementacji klasyfikacji obrazów. Parametry są ustawione dla psa, kota, nietoperza i ptaka.

Wartość węzła określonej warstwy wewnętrznej jest obliczana na podstawie wartości poprzednich warstw.

a l+1 =f( a l ,θ)

Oto macierz sąsiedztwa, a f jest funkcją definiującą. Za pomocą tego wyrażenia można zapisać każdą warstwę sieci splotowej grafu. W ten sposób zazwyczaj działa graficzna splotowa sieć neuronowa.

Zastosowania grafowych sieci splotowych

  • Grafowe sieci splotowe generują predykcje dotyczące systemów fizycznych, takich jak grafy, ich interaktywne podejście i zastosowania. GCN dostarcza również dokładnych informacji o właściwościach obiektów świata rzeczywistego i systemów fizycznych (dynamika kolizji, trajektorie obiektów).
  • Sieci GCN służą do rozwiązywania problemów z różnicowaniem obrazów. Model, który stosuje, jest znany jako „Uczenie się z zerowym strzałem”. Głównym motywem tego modelu jest identyfikacja nieznanego oznaczonego obrazu i pogrupowanie go w znane. Zbierają również informacje semantyczne tych etykiet i kategoryzują je.
  • GCN mogą przyjmować jako dane wejściowe pewną długość molekularnych odcisków palców i generować przewidywane struktury molekularne. MolGAN jest jednym z rodzajów sieci konwolucyjnej Graph, która pomaga tworzyć nowe struktury molekularne z różnymi cechami. W ten sposób pozwala naukowcom codziennie wymyślać nowoczesne struktury molekularne.
  • GCN ma zastosowanie do rozwiązywania różnych problemów związanych z operacjami badawczymi i aplikacjami optymalizacji kombinatorycznej. Graph Convolutional Networks odgrywa kluczową rolę w rozwiązywaniu problemów sprzedawców, kwadratowych problemów przypisania i wielu innych. Za pomocą grafu wejściowego może przewyższyć tradycyjne złożone algorytmy.

Klub Karate Zachary

Innym ważnym zastosowaniem Graph Convolutional Networks jest rozwiązywanie problemów z przewidywaniem społeczności, takich jak Karate Club of Zachary. Problem ten wynika ze sporu pomiędzy administratorem a instruktorem klubu.

Musimy się dowiedzieć, po której stronie wybierze się każdy członek klubu karate. Ten problem zostaje rozwiązany przy użyciu częściowo nadzorowanych technik uczenia się. Używając tylko dwóch oznaczonych węzłów, Tobias Jepsen był w stanie rozwiązać problem i osiągnąć niemal idealną dokładność w zakresie przewidywania tych dwóch społeczności.

Przyjrzyjmy się teraz poniższym obrazom, a będziesz mógł uzyskać wgląd w problem klubu Karate i jego prawidłowe obliczenia przy użyciu Graph Convolutional Networks.

Źródło obrazu

Przeczytaj także: Pomysły na projekty sieci neuronowych

Zawijanie

Czytając ten artykuł, będziesz w stanie zrozumieć, czym są Graph Convolutional Networks, jak zbudowane są sieci neuronowe, krótkie pojęcie GCN i jak to działa, a także różne kluczowe aspekty i zastosowania GCN, w tym problem Zachary Karate Club.

Jeśli chcesz dowiedzieć się więcej o GCN oraz jego funkcjach i zaletach, zarejestruj się w upGrad Education Pvt. Ltd. oraz kurs podyplomowy i dyplomowy IIITB z zakresu uczenia maszynowego i sztucznej inteligencji . Ten kurs na temat uczenia maszynowego i sztucznej inteligencji jest przeznaczony dla studentów i pracujących profesjonalistów.

Kurs zapewnia zbiór studiów przypadków i zadań, sesje mentoringu branżowego, status absolwentów IIIT Bangalore, pomoc w znalezieniu pracy w najlepszych firmach, a co najważniejsze, bogate doświadczenie edukacyjne.

Jakie są ograniczenia korzystania z sieci neuronowych?

Najważniejszą wadą wykorzystania sieci neuronowych do rozwiązania problemu jest to, że wynik nie jest właściwie wyjaśniony, co może być trudne dla wielu użytkowników. W porównaniu z innymi technikami uczenia maszynowego sieci neuronowe wymagają dużo więcej danych do prawidłowego funkcjonowania. Kosztują więcej obliczeń niż jakikolwiek inny tradycyjny algorytm uczenia maszynowego. Od podstaw trenowanie bardzo głębokich sieci neuronowych może zająć wiele tygodni.

Który model CNN jest uważany za najbardziej optymalny do klasyfikacji obrazów?

Do klasyfikacji obrazów preferowane jest użycie VGG-16, co oznacza Very Deep Convolutional Networks for Large-Scale Image Recognition. Poza ImageNet, VGG, które zostało zbudowane jako głębokie CNN, przewyższa poziomy bazowe w szerokim zakresie zadań i zbiorów danych. Unikalną cechą modelu jest to, że zamiast skupiać się na dodawaniu ogromnej liczby hiperparametrów, większy nacisk położono na uwzględnianie wyższych warstw splotu w trakcie jego opracowywania. Zawiera łącznie 16 warstw, 5 bloków i maksymalną warstwę puli dla każdego bloku, co czyni go ogromną siecią.

Dlaczego tworzenie CNN na wykresach jest trudne?

Wykonywanie CNN na wykresach jest trudne ze względu na ich dowolny rozmiar. Co więcej, graf nie ma lokalizacji przestrzennej ze względu na jego skomplikowaną topologię, co jest kolejnym powodem, dla którego CNN nie są wykorzystywane w grafach. Na wykresie sieci GCN są używane do uczenia częściowo nadzorowanego. Podstawową zasadą sieci GCN jest przyjmowanie średniej ważonej wszystkich atrybutów węzłów wszystkich sąsiadów (w tym samego siebie), przy czym węzły niższego stopnia otrzymują wyższe wagi. Wygenerowane wektory cech są następnie wprowadzane do sieci neuronowej w celu uczenia.