SlideShare a Scribd company logo
1 of 35
Download to read offline
Sieci neuronowe w GRASS




       Paweł Netzel
Sieci neuronowe

Skąd pomysł?
Sprawność układu nerwowego
   – Generalizacja wiedzy
   – Wnioskowanie
   – Pamięć skojarzeniowa
„Inteligencja”
Przetwarzanie równoległe




                             2
Neuron biologiczny




                     3
Sieć neuronów biologicznych




                              4
Model neuronu

     x1                       połączenia
              w1              synaptyczne

     x2       w2
     x3       w3
                                                    y
          .
                              f(wtx)
          .
          .
              wn

     xn
                                       węzeł
                                       przetwarzający 
                                       neuronu
               wagi mnożące




                                                         5
Model matematyczny

Ujmując to matematycznie:
                                               n
                                      t
                              y= f w x= f  ∑ wi x i 
                                               i=1
gdzie
y                              - odpowiedź neuronu
w=[ w1 , w2 , , w n ] t       - wektor wag
                          t
x=[ x 1 , x 2 ,  , x n ]      - wektor wejściowy




                                                           6
Funkcja przejścia

Sama suma ważona wielkości wejściowych to za
mało
Funkcja przejścia (aktywacji)
Czynnik nieliniowy
Pierwsze podejście to funkcja skoku.
Funkcja sigmoidalna
Funkcja liniowa




                                           7
Funkcja przejścia cd.

Stosowane funkcje:
(a) skoku
                      f  x =1, gdy x0
(b) liniowa
                      f  x = x
(c) logistyczna                    1
                      f  x =       −ax
                                 1e
(d) tangens hiperboliczny
                     f  x =tanh ax 

                                           8
Funkcja przejścia cd.




                        9
Sztuczna sieć neuronowa




                          10
Sieci jednokierunkowe

Sieć jednokierunkowa to sieć w której sygnał może
przemieszczać się jedynie od wejść do wyjść.
Wyróżnione:
   – warstwa wejściowa
   – warstwa(y) ukryta
   – warstwa wyjściowa
Połączenia między warstwami tylko w jedną stronę
Możliwość łączenia „ponad” warstwami




                                                   11
Sprzężenia zwrotne

Sieci w których dopuszcza się łączenie sygnałów
wyjściowych z wejściami warstwy bieżącej lub
poprzedniej.




                                             12
Możliwe zastosowania

Liczne zastosowania
   –   Interpolacja
   –   Rozpoznawanie obrazów
   –   Klasyfikacja obiektów
   –   Generalizacja
   –   Prognozowanie (ekstrapolacja)
Model „czarnej skrzynki”
Najczęściej implementowane są sieci jednokierun-
kowe, warstwowe, uczone algorytmem wstecznej
propagacji błędu
   – backpropagation network

                                              13
Algorytm uczenia

Stan sieci i jej odpowiedź określona jest poprzez
macierz wag
Uczenie sieci = dobór wag
Dla sieci jednokierunkowych warstwowych algorytm
wstecznej propagacji błędu (wraz z różnymi
wariantami)
Prezentacja    wzorca    +     prezentacja wyniku,
obliczenie błędu, zmodyfikowanie wag na podstawie
błędu
Opis matematyczny (..........)

                                                14
Uczenie sieci jednokierunkowej

Wybór zbioru uczącego (ważne!)
Wybór architektury sieci (liczba warstw, liczba
neuronów w warstwie, liczba połączeń i sposób
łaczenia)
Dobór parametrów uczenia
Prezentacja zbioru uczącego (epoka)
Modyfikacja wag
Powtarzanie procesu uczenia aż do osiągnięcia
warunków zakończenia


                                             15
Problemy

Zły dobór zbioru uczącego
Zła reprezentacja danych
Za mało neuronów
Za dużo neuronów
Wpadanie w minima lokalne
Wpadanie w cykle
Niestabilność numeryczna




                            16
Implementacje sieci

Wiele implementacji ANN
W dużych programach obliczeniowych
Dedykowane
GPL
SNNS- Stuttgart Neural Network Simulator
Biblioteki (np. FANN Fast Artificial Neural Network
Library)
Matlab/Octave
S/R


                                                 17
Sieci ANN a GRASS
Możliwość wykorzystania zewnętrznych pakietów do
obliczeń neuronowych
R
   – AMORE
            • http://r.meteo.uni.wroc.pl/web/packages/AMORE
   – monmlp
            • http://r.meteo.uni.wroc.pl/web/packages/monmlp
   – Neuralnet
            • http://r.meteo.uni.wroc.pl/web/packages/neuralnet
   – Nnet
            • http://r.meteo.uni.wroc.pl/web/packages/nnet
Octave
   – nnet -> Neural Network Toolbox (MATLAB)
Rozwiązania dedykowane
                                                                  18
R, Octave
Kilka rozwiązań
Istnieje interfejs do transferu danych
Przykład
     – AMORE
             • http://r.meteo.uni.wroc.pl/web/packages/AMORE
net.start <- newff(n.neurons=c(2,4,2,2),learning.rate.global=1e-2,
   momentum.global=0.5, error.criterium="LMS", Stao=NA,
   hidden.layer="tansig", output.layer="purelin", method="ADAPTgdwm")

Problemy
     – Konieczność tworzenia kompletnych struktur danych w
         pamięci komputera
     – Konwersja danych pomiędzy strukturami pakietów R
     – Importowanie danych do GRASS

                                                                        19
Rozwiązanie dedykowane

Interpolacja wymaga dostępu do dużych struktur
danych
System GIS jest zorientowany na przetwarzanie i
szybki dostęp do dużych struktur danych
Biblioteki zoptymalizowane pod kątem wydajności
Szeroka funkcjonalność
Możliwość połączenia odwołań do bibliotek GRASS i
ANN za pomocą Pythona
Biblioteka FANN


                                               20
FANN

FANN Fast Artificial Neural Network Library
   – Biblioteka w C dla sieci wielowarstwowych
   – Algorytm wstecznej propagacji błędu (wraz z
       odmianami)
   – Szybsza ok 150 razy od innych bibliotek (ponoć)
   – Możliwość głębokiej ingerencji w ustawienia
       parametrów
   – Dobrze udokumentowana
   – Wieloplatformowa
   – Wiele funkcji aktywacji
Licencja LGPL

                                                       21
Python

Interfejs dla FANN w Pythonie
Możliwość tworzenia skryptów dla GRASS w
Pythonie
Dostęp do API GRASS
Możliwość przetwarzania danych na poziomie
elementów rastra
Szybkość




                                        22
Pakiet nn.*

Kontynuacja rozwiązania z GRASS 5.0
Główny cel – interpolacja danych przestrzennych
Zestaw poleceń pozwalających na obsługę sieci
neuronowych:
   –   nn.create – tworzenie sieci
   –   nn.info – informacja o sieci
   –   nn.data.rast – pobranie danych uczących
   –   nn.learn – uczenie sieci
   –   nn.run.rast – uruchomienie sieci




                                                 23
nn.create
Polecenie tworzy sieć o zadanej architekturze
     nn.create [-l] in=value hidd=value[,value,...] out=value
       net=filename [conn_rate=value] [learn_rate=value]
       [--verbose] [--quiet]
Opcje:
     -l Ustawia liniową funkcję aktywacji dla neuronów
        wyjściowych
Parametry:
   – in Liczba neuronów wejściowych (def. 1)
   – hidd Liczby neuronów w warstwach ukrytych (def.
       jedna warstwa z 2 neuronami)
   – out Liczba neuronów wyjsciowych (def. 1)
   – net Nazwa pliku z siecią xxxx.net
   – conn_rate Połączenia (0.0 - brak, 1.0 – pełne) (def. 1)
   – learn_rate Szybkość uczenia (def. 0.7)                  24
nn.info

Wypisuje dostępne sieci neuronowe lub opisuje
wybraną sić
     nn.info [-l] [net=filename] [--verbose] [--quiet]
Opcje:
     -l Wypisuje wszystkie definicje sieci neuronowych
        zawarte w bieżącej kartotece
Parametry:
     net nazwa wybranej sieci (zostanie wypisana
       informacja o tej sieci)




                                                         25
nn.data.rast
Przygotowuje dane uczące na podstawie lokalizacji
oraz warstw rastrowych
   – nn.data.rast in=string[,string,...] out=string[,string,...]
       [vector=string] [points=filename] [east_north=string]
       output=filename
Parametry:
     in Lista warstw rastrowych z których zostaną pobrane
       dane wejściowe
     out Lista warstw rastrowych z których zostaną pobrane
       dane wyjściowe
     vector Warstwa wektorowa zawierająca punkty
       wskazujące lokalizacje danych uczących
     points Plik tekstowy zawierający współrzędne punktów
     east_north Lista współrzędnych punktów
     output Nazwa pliku do którego zostanie zapisany zbiór
       danych uczących                                     26
nn.learn

Uczenie sieci neuronowej
     nn.learn net=filename data=filename [max_iter=value]
       [iter_report=value] [error=value] [output=string]
Parametry:
     net Nazwa sieci (pliku z siecią)
     data Nazwa pliku ze zbiorem uczącym
     max_iter Maksymalna liczba epok
     iter_report Liczba epok po której wypisywany jest
        raport z uczenia
     error Dopuszczalny błąd
     output Nazwa pliku do którego zostanie zapisana
        nauczona sieć

                                                         27
nn.run.rast

Uruchomienie nauczonej            sieci    ze    wskazanymi
danymi wejściowymi
     nn.run.rast in=string[,string,...] [net=filename]
       output=string[,string,...] [--verbose] [--quiet]
Parametry:
     in Warstwy rastrowe z danymi wejściowymi
     net Nazwa sieci
     output Warstwy rastrowe wygenerowane przez sieć




                                                          28
Przykład wykorzystania
Kolejne polecenia:
Utworzenie definicji sieci (3 neurony wejściowe,
  dwie warstwy ukryte zaierające 3 oraz 4 neurony,
  jeden neuron wyjsciowy) i zapisanie jej pod nazwą
  test
     nn.create in=3 hidd=3,4 out=1 net=test
Pobranie danych uczących (wielkości wejściowe z
  warstw dtm,slope,asp; wielkości wyjsciowe z
  warstwy green; warstwy będą próbkowane w
  punktach smpl; plik wynikowy ma nazwę
  learndata)
     nn.data.rast in=dtm,slope,asp out=green vector=smpl
       output=learndata
                                                           29
Przykład wykorzystania cd.

Uczenie sieci (uczona bedzie sieć test na podstawie
zbioru learndata przez 10000 epok, sieć wynikowa
zostanie zapisana pod nazwą test.learn)
     nn.learn net=test data=learndata max_iter=1000000
       ouput=test.learn
Uruchomienie sieci (dane wejściowe pobrane
  zostaną z warstw dtm,slope,asp; wyniki zapisane
  do warstwy green.nn; do obliczeń zostanie
  wykorzystana sieć test.learn)
     nn.run.rast in=dtm,slope,asp out=green.nn
       net=text.learn



                                                         30
Przykład wykorzystania cd.

Interpolacja wysokości:
Dane wejściowe: x, y
Dane wyjściowe: z
Uwaga: dane powinny być skalowane
Punkty uczące losowo rozproszone
Po wygenerowaniu wyników trzeba powrócić z
danych przeskalowanych do wielkości rzeczywistych
Liczebność zbioru uczącego: 986
Dopuszczalny błąd: 0.001
Liczba epok uczenia: 114298

                                                31
Dane wejściowe




                 32
Zbiór uczący




               33
Dane wejściowe




                 34
Dziękuję!




            35

More Related Content

Similar to Moduł sztucznych sieci neuronowych dla GRASS 7

3 sieci neuronowe
3 sieci neuronowe3 sieci neuronowe
3 sieci neuronowe
marwron
 
Aproksymacja funkcji wielu zmiennych
Aproksymacja funkcji wielu zmiennychAproksymacja funkcji wielu zmiennych
Aproksymacja funkcji wielu zmiennych
VA00
 

Similar to Moduł sztucznych sieci neuronowych dla GRASS 7 (12)

3 sieci neuronowe
3 sieci neuronowe3 sieci neuronowe
3 sieci neuronowe
 
Zapoznanie z sieciami neurnowymi
Zapoznanie z sieciami neurnowymiZapoznanie z sieciami neurnowymi
Zapoznanie z sieciami neurnowymi
 
DTrace
DTraceDTrace
DTrace
 
Aproksymacja funkcji wielu zmiennych
Aproksymacja funkcji wielu zmiennychAproksymacja funkcji wielu zmiennych
Aproksymacja funkcji wielu zmiennych
 
System GRASS
System GRASSSystem GRASS
System GRASS
 
WP - Notatki
WP - NotatkiWP - Notatki
WP - Notatki
 
Confitura 2018 - Sekretne życie jobów Sparkowych
Confitura 2018 - Sekretne życie jobów SparkowychConfitura 2018 - Sekretne życie jobów Sparkowych
Confitura 2018 - Sekretne życie jobów Sparkowych
 
Wyklad habilitacyjny: obliczenia poznawcze
Wyklad habilitacyjny: obliczenia poznawczeWyklad habilitacyjny: obliczenia poznawcze
Wyklad habilitacyjny: obliczenia poznawcze
 
CPU GHOST BUSTING. Semihalf Barcamp Special.
CPU GHOST BUSTING. Semihalf Barcamp Special. CPU GHOST BUSTING. Semihalf Barcamp Special.
CPU GHOST BUSTING. Semihalf Barcamp Special.
 
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
 
Metody Deep Learning - Wykład 6
Metody Deep Learning - Wykład 6Metody Deep Learning - Wykład 6
Metody Deep Learning - Wykład 6
 
PLNOG19 - Jakub Słociński - Wieloprocesorowa platforma x86 a wydajny routing ...
PLNOG19 - Jakub Słociński - Wieloprocesorowa platforma x86 a wydajny routing ...PLNOG19 - Jakub Słociński - Wieloprocesorowa platforma x86 a wydajny routing ...
PLNOG19 - Jakub Słociński - Wieloprocesorowa platforma x86 a wydajny routing ...
 

More from WGUG

More from WGUG (15)

GRASS a R
GRASS a RGRASS a R
GRASS a R
 
Spolecznosc polonizacja grass
Spolecznosc polonizacja grassSpolecznosc polonizacja grass
Spolecznosc polonizacja grass
 
Interfejsy graficzne w systemie GRASS
Interfejsy graficzne w systemie GRASSInterfejsy graficzne w systemie GRASS
Interfejsy graficzne w systemie GRASS
 
Skrypty grass
Skrypty grassSkrypty grass
Skrypty grass
 
Wprowadzenie do systemu GIS - GRASS
Wprowadzenie do systemu GIS - GRASSWprowadzenie do systemu GIS - GRASS
Wprowadzenie do systemu GIS - GRASS
 
Sieciowe serwery danych
Sieciowe serwery danychSieciowe serwery danych
Sieciowe serwery danych
 
Modelowanie opadu
Modelowanie opaduModelowanie opadu
Modelowanie opadu
 
GRASS w modelowaniu hydrologicznym
GRASS w modelowaniu hydrologicznymGRASS w modelowaniu hydrologicznym
GRASS w modelowaniu hydrologicznym
 
Analizy Przestrzenne z wykorzystaniem GRASS vol.15
Analizy Przestrzenne z wykorzystaniem GRASS vol.15Analizy Przestrzenne z wykorzystaniem GRASS vol.15
Analizy Przestrzenne z wykorzystaniem GRASS vol.15
 
Modelowanie przestrzennego zroznicowania wysokosci pokrywy snieznej w sudetac...
Modelowanie przestrzennego zroznicowania wysokosci pokrywy snieznej w sudetac...Modelowanie przestrzennego zroznicowania wysokosci pokrywy snieznej w sudetac...
Modelowanie przestrzennego zroznicowania wysokosci pokrywy snieznej w sudetac...
 
Pracownia GIS w oparciu o oprogramowanie darmowe
Pracownia GIS w oparciu o oprogramowanie darmowePracownia GIS w oparciu o oprogramowanie darmowe
Pracownia GIS w oparciu o oprogramowanie darmowe
 
wprowadzenie do grass
wprowadzenie do grasswprowadzenie do grass
wprowadzenie do grass
 
Modelowanie promieniowania słonecznego
Modelowanie promieniowania słonecznegoModelowanie promieniowania słonecznego
Modelowanie promieniowania słonecznego
 
Przygotowywanie prezentacji kartograficznej w GRASS
Przygotowywanie prezentacji kartograficznej w GRASSPrzygotowywanie prezentacji kartograficznej w GRASS
Przygotowywanie prezentacji kartograficznej w GRASS
 
Szorstkosc miasto-grass
Szorstkosc miasto-grassSzorstkosc miasto-grass
Szorstkosc miasto-grass
 

Moduł sztucznych sieci neuronowych dla GRASS 7

  • 1. Sieci neuronowe w GRASS Paweł Netzel
  • 2. Sieci neuronowe Skąd pomysł? Sprawność układu nerwowego – Generalizacja wiedzy – Wnioskowanie – Pamięć skojarzeniowa „Inteligencja” Przetwarzanie równoległe 2
  • 5. Model neuronu x1 połączenia w1 synaptyczne x2 w2 x3 w3 y . f(wtx) . . wn xn węzeł przetwarzający  neuronu wagi mnożące 5
  • 6. Model matematyczny Ujmując to matematycznie: n t y= f w x= f  ∑ wi x i  i=1 gdzie y - odpowiedź neuronu w=[ w1 , w2 , , w n ] t - wektor wag t x=[ x 1 , x 2 ,  , x n ] - wektor wejściowy 6
  • 7. Funkcja przejścia Sama suma ważona wielkości wejściowych to za mało Funkcja przejścia (aktywacji) Czynnik nieliniowy Pierwsze podejście to funkcja skoku. Funkcja sigmoidalna Funkcja liniowa 7
  • 8. Funkcja przejścia cd. Stosowane funkcje: (a) skoku f  x =1, gdy x0 (b) liniowa f  x = x (c) logistyczna 1 f  x = −ax 1e (d) tangens hiperboliczny f  x =tanh ax  8
  • 11. Sieci jednokierunkowe Sieć jednokierunkowa to sieć w której sygnał może przemieszczać się jedynie od wejść do wyjść. Wyróżnione: – warstwa wejściowa – warstwa(y) ukryta – warstwa wyjściowa Połączenia między warstwami tylko w jedną stronę Możliwość łączenia „ponad” warstwami 11
  • 12. Sprzężenia zwrotne Sieci w których dopuszcza się łączenie sygnałów wyjściowych z wejściami warstwy bieżącej lub poprzedniej. 12
  • 13. Możliwe zastosowania Liczne zastosowania – Interpolacja – Rozpoznawanie obrazów – Klasyfikacja obiektów – Generalizacja – Prognozowanie (ekstrapolacja) Model „czarnej skrzynki” Najczęściej implementowane są sieci jednokierun- kowe, warstwowe, uczone algorytmem wstecznej propagacji błędu – backpropagation network 13
  • 14. Algorytm uczenia Stan sieci i jej odpowiedź określona jest poprzez macierz wag Uczenie sieci = dobór wag Dla sieci jednokierunkowych warstwowych algorytm wstecznej propagacji błędu (wraz z różnymi wariantami) Prezentacja wzorca + prezentacja wyniku, obliczenie błędu, zmodyfikowanie wag na podstawie błędu Opis matematyczny (..........) 14
  • 15. Uczenie sieci jednokierunkowej Wybór zbioru uczącego (ważne!) Wybór architektury sieci (liczba warstw, liczba neuronów w warstwie, liczba połączeń i sposób łaczenia) Dobór parametrów uczenia Prezentacja zbioru uczącego (epoka) Modyfikacja wag Powtarzanie procesu uczenia aż do osiągnięcia warunków zakończenia 15
  • 16. Problemy Zły dobór zbioru uczącego Zła reprezentacja danych Za mało neuronów Za dużo neuronów Wpadanie w minima lokalne Wpadanie w cykle Niestabilność numeryczna 16
  • 17. Implementacje sieci Wiele implementacji ANN W dużych programach obliczeniowych Dedykowane GPL SNNS- Stuttgart Neural Network Simulator Biblioteki (np. FANN Fast Artificial Neural Network Library) Matlab/Octave S/R 17
  • 18. Sieci ANN a GRASS Możliwość wykorzystania zewnętrznych pakietów do obliczeń neuronowych R – AMORE • http://r.meteo.uni.wroc.pl/web/packages/AMORE – monmlp • http://r.meteo.uni.wroc.pl/web/packages/monmlp – Neuralnet • http://r.meteo.uni.wroc.pl/web/packages/neuralnet – Nnet • http://r.meteo.uni.wroc.pl/web/packages/nnet Octave – nnet -> Neural Network Toolbox (MATLAB) Rozwiązania dedykowane 18
  • 19. R, Octave Kilka rozwiązań Istnieje interfejs do transferu danych Przykład – AMORE • http://r.meteo.uni.wroc.pl/web/packages/AMORE net.start <- newff(n.neurons=c(2,4,2,2),learning.rate.global=1e-2, momentum.global=0.5, error.criterium="LMS", Stao=NA, hidden.layer="tansig", output.layer="purelin", method="ADAPTgdwm") Problemy – Konieczność tworzenia kompletnych struktur danych w pamięci komputera – Konwersja danych pomiędzy strukturami pakietów R – Importowanie danych do GRASS 19
  • 20. Rozwiązanie dedykowane Interpolacja wymaga dostępu do dużych struktur danych System GIS jest zorientowany na przetwarzanie i szybki dostęp do dużych struktur danych Biblioteki zoptymalizowane pod kątem wydajności Szeroka funkcjonalność Możliwość połączenia odwołań do bibliotek GRASS i ANN za pomocą Pythona Biblioteka FANN 20
  • 21. FANN FANN Fast Artificial Neural Network Library – Biblioteka w C dla sieci wielowarstwowych – Algorytm wstecznej propagacji błędu (wraz z odmianami) – Szybsza ok 150 razy od innych bibliotek (ponoć) – Możliwość głębokiej ingerencji w ustawienia parametrów – Dobrze udokumentowana – Wieloplatformowa – Wiele funkcji aktywacji Licencja LGPL 21
  • 22. Python Interfejs dla FANN w Pythonie Możliwość tworzenia skryptów dla GRASS w Pythonie Dostęp do API GRASS Możliwość przetwarzania danych na poziomie elementów rastra Szybkość 22
  • 23. Pakiet nn.* Kontynuacja rozwiązania z GRASS 5.0 Główny cel – interpolacja danych przestrzennych Zestaw poleceń pozwalających na obsługę sieci neuronowych: – nn.create – tworzenie sieci – nn.info – informacja o sieci – nn.data.rast – pobranie danych uczących – nn.learn – uczenie sieci – nn.run.rast – uruchomienie sieci 23
  • 24. nn.create Polecenie tworzy sieć o zadanej architekturze nn.create [-l] in=value hidd=value[,value,...] out=value net=filename [conn_rate=value] [learn_rate=value] [--verbose] [--quiet] Opcje: -l Ustawia liniową funkcję aktywacji dla neuronów wyjściowych Parametry: – in Liczba neuronów wejściowych (def. 1) – hidd Liczby neuronów w warstwach ukrytych (def. jedna warstwa z 2 neuronami) – out Liczba neuronów wyjsciowych (def. 1) – net Nazwa pliku z siecią xxxx.net – conn_rate Połączenia (0.0 - brak, 1.0 – pełne) (def. 1) – learn_rate Szybkość uczenia (def. 0.7) 24
  • 25. nn.info Wypisuje dostępne sieci neuronowe lub opisuje wybraną sić nn.info [-l] [net=filename] [--verbose] [--quiet] Opcje: -l Wypisuje wszystkie definicje sieci neuronowych zawarte w bieżącej kartotece Parametry: net nazwa wybranej sieci (zostanie wypisana informacja o tej sieci) 25
  • 26. nn.data.rast Przygotowuje dane uczące na podstawie lokalizacji oraz warstw rastrowych – nn.data.rast in=string[,string,...] out=string[,string,...] [vector=string] [points=filename] [east_north=string] output=filename Parametry: in Lista warstw rastrowych z których zostaną pobrane dane wejściowe out Lista warstw rastrowych z których zostaną pobrane dane wyjściowe vector Warstwa wektorowa zawierająca punkty wskazujące lokalizacje danych uczących points Plik tekstowy zawierający współrzędne punktów east_north Lista współrzędnych punktów output Nazwa pliku do którego zostanie zapisany zbiór danych uczących 26
  • 27. nn.learn Uczenie sieci neuronowej nn.learn net=filename data=filename [max_iter=value] [iter_report=value] [error=value] [output=string] Parametry: net Nazwa sieci (pliku z siecią) data Nazwa pliku ze zbiorem uczącym max_iter Maksymalna liczba epok iter_report Liczba epok po której wypisywany jest raport z uczenia error Dopuszczalny błąd output Nazwa pliku do którego zostanie zapisana nauczona sieć 27
  • 28. nn.run.rast Uruchomienie nauczonej sieci ze wskazanymi danymi wejściowymi nn.run.rast in=string[,string,...] [net=filename] output=string[,string,...] [--verbose] [--quiet] Parametry: in Warstwy rastrowe z danymi wejściowymi net Nazwa sieci output Warstwy rastrowe wygenerowane przez sieć 28
  • 29. Przykład wykorzystania Kolejne polecenia: Utworzenie definicji sieci (3 neurony wejściowe, dwie warstwy ukryte zaierające 3 oraz 4 neurony, jeden neuron wyjsciowy) i zapisanie jej pod nazwą test nn.create in=3 hidd=3,4 out=1 net=test Pobranie danych uczących (wielkości wejściowe z warstw dtm,slope,asp; wielkości wyjsciowe z warstwy green; warstwy będą próbkowane w punktach smpl; plik wynikowy ma nazwę learndata) nn.data.rast in=dtm,slope,asp out=green vector=smpl output=learndata 29
  • 30. Przykład wykorzystania cd. Uczenie sieci (uczona bedzie sieć test na podstawie zbioru learndata przez 10000 epok, sieć wynikowa zostanie zapisana pod nazwą test.learn) nn.learn net=test data=learndata max_iter=1000000 ouput=test.learn Uruchomienie sieci (dane wejściowe pobrane zostaną z warstw dtm,slope,asp; wyniki zapisane do warstwy green.nn; do obliczeń zostanie wykorzystana sieć test.learn) nn.run.rast in=dtm,slope,asp out=green.nn net=text.learn 30
  • 31. Przykład wykorzystania cd. Interpolacja wysokości: Dane wejściowe: x, y Dane wyjściowe: z Uwaga: dane powinny być skalowane Punkty uczące losowo rozproszone Po wygenerowaniu wyników trzeba powrócić z danych przeskalowanych do wielkości rzeczywistych Liczebność zbioru uczącego: 986 Dopuszczalny błąd: 0.001 Liczba epok uczenia: 114298 31