TI/Sztuczne sieci neuronowe: Różnice pomiędzy wersjami

Z Brain-wiki
Linia 10: Linia 10:
  
  
 
+
[[Plik:Ann 6neurons weights.png|270px|right|bezramki]]
[[Plik:Ann 6neurons weights.png|right|bezramki|lewo]]
 
  
 
Spróbujmy teraz prześledzić obliczenia wykonywane przez przykładową sieć:  
 
Spróbujmy teraz prześledzić obliczenia wykonywane przez przykładową sieć:  
Linia 18: Linia 17:
 
#* D = ''f'' (A * w<sub>AD</sub> + B * w<sub>BD</sub> + C * w<sub>CD</sub>)
 
#* D = ''f'' (A * w<sub>AD</sub> + B * w<sub>BD</sub> + C * w<sub>CD</sub>)
 
#* E = ''f'' (A * w<sub>AE</sub> + B * w<sub>BE</sub> + C * w<sub>CE</sub>)
 
#* E = ''f'' (A * w<sub>AE</sub> + B * w<sub>BE</sub> + C * w<sub>CE</sub>)
# '''W następnym kroku''' wyliczamy wartość dla neuronu ostatnie warstwy F:
+
# '''W następnym kroku''' wyliczamy wartość dla neuronu ostatniej warstwy F:
 
#* F = ''f'' (D * w<sub>DF</sub> + E * w<sub>EF</sub>)
 
#* F = ''f'' (D * w<sub>DF</sub> + E * w<sub>EF</sub>)
 +
Wyliczoną w ten sposób wartość F możemy uznać za "odpowiedź" tej sieci na podane na wejściu liczby A, B, i C.
 +
 +
Sztuczna sieć neuronowa sieć jest jednoznacznie określona przez strukturę połączeń oraz konkretne wartości wag w<sub>XY</sub>, zwanych też parametrami sieci lub modelu; w roku 2024 liczby parametrów dużych modeli sięgają setek miliardów.
 +
 +
  
 
[[Plik:MnistExamplesModified.png|ramka|centruj|przykłady z bazy [https://yann.lecun.com/exdb/mnist/ MNIST], źródło: [https://en.wikipedia.org/wiki/MNIST_database Wikipedia]]]
 
[[Plik:MnistExamplesModified.png|ramka|centruj|przykłady z bazy [https://yann.lecun.com/exdb/mnist/ MNIST], źródło: [https://en.wikipedia.org/wiki/MNIST_database Wikipedia]]]

Wersja z 11:35, 24 lip 2024

Przykład: rozpoznawanie cyfr za pomocą prostej sieci neuronowej

Sztuczny neuron czyli prosty sumator

Sztuczne sieci neuronowe konstruowane są jednostek zwanych "sztucznymi neuronami". Możemy o nich myśleć jako o komórkach pamięci komputera. Konkretna wartość zapisana w jednej takiej komórce (D) jest w każdym kroku obliczana według stałego schematu:

  • liczby z komórek (sztycznych neuronów) poprzedniej warstwy ABC są mnożone przed odpowiednie wagi i dodawane do siebie: A * wAD + B * wBD + C * wCD
  • wyliczona powyżej suma ważona jest poddawana działaniu funkcji aktywacji f:

D = f (A * wAD + B * wBD + C * wCD)


Ann 6neurons weights.png

Spróbujmy teraz prześledzić obliczenia wykonywane przez przykładową sieć:

  1. W (sztucznych:) neuronach po lewej (ABC) znajdują się wartości (liczby), które dla uproszczenia oznaczymy tymi samymi literami ABC. Mogą one reprezentować wejście sieci (wtedy będzie to "warstwa wejściowa") lub być wynikiem obliczeń poprzednich warst sieci (wtedy będzie to "warstwa ukryta").
  2. Wartości w neuronach D i E (wartwa ukryta) wyliczamy według podanego powyżej wzoru:
    • D = f (A * wAD + B * wBD + C * wCD)
    • E = f (A * wAE + B * wBE + C * wCE)
  3. W następnym kroku wyliczamy wartość dla neuronu ostatniej warstwy F:
    • F = f (D * wDF + E * wEF)

Wyliczoną w ten sposób wartość F możemy uznać za "odpowiedź" tej sieci na podane na wejściu liczby A, B, i C.

Sztuczna sieć neuronowa sieć jest jednoznacznie określona przez strukturę połączeń oraz konkretne wartości wag wXY, zwanych też parametrami sieci lub modelu; w roku 2024 liczby parametrów dużych modeli sięgają setek miliardów.


przykłady z bazy MNIST, źródło: Wikipedia


Tikz.png