Skocz do zawartości




Zdjęcie

Jak fizycznie wyglądają i działają sieci neuronowe? Co łączy je z komputerem i oprogramowaniem?

Algorytm sieć neuronowa Sieć neuronowa Algorytm Symulacja

  • Zaloguj się, aby dodać odpowiedź
1 odpowiedź w tym temacie

#1

Kwarki_i_Kwanty.
  • Postów: 117
  • Tematów: 26
  • Płeć:Mężczyzna
  • Artykułów: 2
Reputacja zadowalająca
Reputacja

Napisano

Sieci neuronowe są skupiskami sztucznych neuronów, które mówiąc krótko bezustannie się przebudowują, ilekroć podejmią słuszną decyzję; wzmacniają w ten sposób wybrane ścieżki i zmieniają strukturę sieci. W co zatem ,,fizycznie" opakowane są sieci neuronowe, skoro ponoć nie potrzebują programowania, w tym sensie, że jedynie algorytmy komputerowe wprowadzają dane do sieci neuronowych stymulując je do nauki i rekonfiguracji? Czy są one wbudowane w jakiś dysk twardy i mają to swoje fizyczne, stałe miejsce ,,bytowania"i rozwijania się (rozumuję, że również systemu operacyjnego, np. Windowsa, czy czegoś innego sieci nie potrzebują), lub scalone są z jakimś procesorem, którego moc obliczeniową wykorzystują do uczenia się? Rozumiem aspekty (niefizyczne) działania sieci neuronowych, lecz poszukuję konkretnego wytłumaczenia ich fizycznej budowy: jak powiązane są z komputerem, dyskiem twardym i programami komputerowymi wprowadzającymi do sieci neuronowych dane wejściowe.
  • 0

#2

szczyglis.
  • Postów: 1174
  • Tematów: 23
  • Płeć:Mężczyzna
Reputacja znakomita
Reputacja

Napisano

Sieć neuronowa to nie jest żaden "byt", żeby go jakoś podłączać. To model matematyczny, który możesz sobie trzymać nawet na kartce papieru, jeśli przepiszesz sobie wagi dla poszczególnych neuronów. Tu nie ma żadnej magii, to jest zwykła matematyka. Budujesz sobie po prostu model złożony z kilku warstw: warstwa wejściowa, warstwy obliczeniowe i na koniec wyjściowa, między warstwami masz połączenia "każdy z każdym" pomiędzy neuronami, każdy neuron ma swoją wagę liczbową, która stanowi o jego "przepuszczalności" (im mniejsza waga, tym mniejszą wartość neuron przepuści dalej, bo jego działanie to mnożenie wyniku z neuronu poprzedniego razy waga). Potem sumuje się wyniki z warstwy i leci z tym do warstwy kolejnej, i tak dalej, aż do ostatniej - wyjściowej. Po drodze masz jeszcze funkcje aktywacyjne (matematyczne) imitujące różne warianty aktywacji, czyli np. że neuron aktywowany jest powyżej danej wartości etc... Tak samo uczenie to nie jest żadna magia - polega na ustalaniu wag dla neuronów, również matematycznie, na zasadzie propagacji wstecznej opartej w wielkim skrócie na czymś w rodzaju liczeniu pochodnych. Ustawione prawidłowo wagi to gotowa sieć, a wagi jak wspomniałem możesz sobie rozpisać nawet na kartce :) Potem ładujesz inne dane wejściowe na wejście i wartość liczbowa leci po sieci poprzez obliczone "neurony", czyli mnożąc się przez ich wagi, aż do wyjścia - otrzymujesz wynik. To tak w mocno wielkim skrócie. A podłączenie? Dowolne, w pierwszym lepszym języku programowania, pisząc zwykłą, najprostszą appkę korzystającą z takiego modelu, czyli pobierającą dane wejściowe i implementującą daną sieć.

 

PS. Info że tak powiem z pierwszej ręki, bo budowałem i trenowałem w życiu niejedną sieć neuronową, zwykłe, konwolucyjne, rekurencyjne i jeszcze inne kombinacje. Fajna zabawa z tym jest, czasami można się zdziwić rezultatami, ale nie ma tu żadnej magii, jest zwykła matematyka.

 

PPS. Siemanko po krótkiej przerwie ;)


  • 3






Inne tematy z jednym lub większą liczbą słów kluczowych: Algorytm sieć neuronowa, Sieć neuronowa, Algorytm, Symulacja

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości oraz 0 użytkowników anonimowych

stat4u