background image

Inteligencja obliczeniowa

Sztuczne sieci 

neuronowe

background image

Pojedyncza komórka neuronowa – budowa [Rafał Czapaj].

Sieć neuronowa jest systemem przetwarzającym informacje w sposób 
równoległy.

System ten składa się z dużej liczby neuronów, formujących (na wzór 
mózgu) struktury rozpoznające obrazy.
 
Każdy z neuronów ma wiele wejść (synaps) i jedno wyjście (akson). 

background image

Ze względu na specyficzne cechy i niepodważalne zalety obszar 

zastosowań sieci neuronowych jest rozległy i obejmuje mi.:

- Rozpoznawanie wzorców (znaków, liter, kształtów, sygnałów 
mowy, sygnałów sonarowych)
- Klasyfikowanie obiektów 
- Prognozowanie i ocena ryzyka ekonomicznego 
- Prognozowanie zmian cen rynkowych (giełdy, waluty) 
- Ocena zdolności kredytowej podmiotów 
- Prognozowanie zapotrzebowania na energię elektryczną 
- Diagnostyka medyczna 
- Dobór pracowników 
- Prognozowanie sprzedaży 
- Aproksymowanie wartości funkcji

 

background image

Sztuczny neuron nieliniowy

Jego schemat został opracowany przez McCullocha i Pittsa w 
1943 roku i oparty został na budowie komórki nerwowej.

Jego działanie jest następujące: 
Do  wejść  doprowadzane  są  sygnały  dochodzące  z  neuronów  warstwy 
poprzedniej.  Każdy  sygnał  mnożony  jest  przez  odpowiadającą  mu  wartość 
liczbową zwaną wagą. Wpływa ona na percepcję danego sygnału wejściowego i 
jego  udział  w  tworzeniu  sygnału  wyjściowego  przez  neuron.  Waga  może  być 
pobudzająca  -  dodatnia  lub  opóźniająca  –  ujemna;  jeżeli  nie  ma  połączenia 
między  neuronami  to  waga  jest  równa  zero.  Zsumowane  iloczyny  sygnałów  i 
wag stanowią argument funkcji aktywacji neuronu.
W  przypadku  gdy  funkcja  aktywacji  nie  występuje  mamy  do  czynienia  z 
neuronem liniowym.

background image

Wartość funkcji aktywacji jest sygnałem wyjściowym neuronu i 
propagowana jest do neuronów warstwy następnej. 

Wymagane cechy funkcji aktywacji to: 

ciągłe przejście pomiędzy swoją wartością maksymalną a 
minimalną (np. 0 - 1)

 łatwa do obliczenia i ciągła pochodna 

 możliwość wprowadzenia do argumentu parametru do ustalania 
kształtu krzywej 
Najczęściej stosowaną jest funkcja sigmoidalna zwana też krzywą 
logistyczną ( przyjmuje ona wartości pomiędzy 0 a 1 ).

background image

Przykład 1:

background image

Sieć wielowarstwowa

background image

Uczenie metodą wstecznej propagacji błędów

background image

Principles of training multi-layer neural network using 
backpropagation

The project describes teaching process of multi-layer neural network 
employing backpropagation algorithm. To illustrate this process the 
three layer neural network with two inputs and one output, which is 
shown in the picture below, is used: 

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

Each neuron is composed of two units. First unit adds products of 
weights coefficients and input signals. The second unit realise 
nonlinear function, called neuron activation function. Signal e is adder 
output signal, and y = f(e) is output signal of nonlinear element. Signal 
y is also output signal of neuron. 

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

To teach the neural network we 
need training data set. The training 
data set consists of input signals (x

1

 

and x

2

 ) assigned with 

corresponding target (desired 
output) z. The network training is 
an iterative process. In each 
iteration weights coefficients of 
nodes are modified using new data 
from training data set. Modification 
is calculated using algorithm 
described below: Each teaching 
step starts with forcing both input 
signals from training set. After this 
stage we can determine output 
signals values for each neuron in 
each network layer. Pictures below 
illustrate how signal is propagating 
through the network, Symbols w

(xm)n

 

represent weights of connections 
between network input x

m

 and 

neuron n in input layer. Symbols y

n

 

represents output signal of neuron 
n

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

Propagation of signals through the hidden layer. Symbols w

mn

 represent 

weights of connections between output of neuron m and input of neuron n 
in the next layer. 

Propagation of signals through the output 
layer. 

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

In the next algorithm step the output signal of the network y is compared 
with the desired output value (the target), which is found in training data 
set. The difference is called error signal d of output layer neuron. 

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

It is impossible to compute error signal for internal neurons directly, 
because output values of these neurons are unknown. For many years the 
effective method for training multiplayer networks has been unknown. Only 
in the middle eighties the backpropagation algorithm has been worked out. 
The idea is to propagate error signal d (computed in single teaching step) 
back to all neurons, which output signals were input for discussed neuron. 

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

The weights' 
coefficients w

mn

 used to 

propagate errors back 
are equal to this used 
during computing 
output value. Only the 
direction of data flow is 
changed (signals are 
propagated from 
output to inputs one 
after the other). This 
technique is used for all 
network layers. If 
propagated errors 
came from few neurons 
they are added. The 
illustration is below: 

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

When the error signal for 
each neuron is computed, 
the weights coefficients of 
each neuron input node 
may be modified. In 
formulas below df(e)/de 
represents derivative of 
neuron activation function 
(which weights are 
modified). 

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

Coefficient η affects network teaching speed. There are a few 
techniques to select this parameter. 

•The first method is to start teaching process with large value of 
the parameter. While weights coefficients are being established the 
parameter is being decreased gradually. 

•The second, more complicated, method starts teaching with small 
parameter value. During the teaching process the parameter is 
being increased when the teaching is advanced and then 
decreased again in the final stage. Starting teaching process with 
low parameter value enables to determine weights coefficients 
signs. 

mgr inż. Adam Gołda 
(2005)
Katedra Elektroniki AGH 

background image

Cecha

system ekspertowy

sieć neuronowa

Uczenie na podstawie 

przykładów

Nie

Tak

Samo-adaptacja

Nie

Tak

Tolerowanie błędnych 

danych

Nie

Tak

Zdolność do 

posługiwania się 

kategoriami rozmytymi

Zazwyczaj nie

Tak

Wysiłek poniesiony na 

oprogramowanie

Duży

Niewielki

Wysiłek poniesiony na 

utrzymanie

Duży

Niewielki

Zdolność do 

uzasadnienia 

postępowania

Duża

Niewielka

Zdolność do 

zapamiętywania 

danych

Wysoka

Niska

Obliczenia

Proste, jednolite

Skomplikowane, 

różnorodne

Logika

Zazwyczaj binarna

Rozmyta

Wnioskowanie

Według strategii

Bez strategii

Dziedzina

Specyficzna

Dowolna

 Cechy systemów ekspertowych i sztucznych sieci neuronowych 

[S.H.Huang, H.C.Zhang: Neural-expert hybrid approach for intelligent manufacturing’95]

background image

Zastosowanie metody sieci neuronowych do 
określania podobieństwa postaci konstrukcyjnej 
części maszyn  (elementarnych form).

W  konkretnym  przypadku  zastosowania  metody  sieci  neuronowych  do 
rozpoznawania  bruzd  walców  hutniczych,  macierz  X  ma  wymiar  [100  x 
32]. Liczba wierszy 100 wynika z podziału obszaru rastra na 100 pól (10  
x  10).  Ze  względu  na  symetrię  wszystkich  analizowanych  obiektów, 
wzięto  pod  uwagę  tylko  półprzekroje.  Wszystkie  analizowane  rastrowe 
obrazy  form  obrabiany  przeskalowano  do  wspólnego,  kwadratowego 
rastra. Element  x

ij

 macierzy X zawiera znormalizowany, do wartości [0,1], 

wskaźnik  wypełnienia  i-tego  kwadratu  rastra  dla  j-tego  wykroju.  32 
kolumny w macierzy X odpowiadają liczebności zbioru uczącego.

Przykład 
2.

background image

Macierz  wag  W  posiada  wymiar  [7  x  100].  Liczba  wierszy  7  odpowiada 
liczbie grup wyodrębnionych w zbiorze uczącym. Przed procesem uczenia 
macierz  W  jest  wypełniana  losowo  liczbami  z  zakresu  [0,1].  Macierz 
wynikowa  Y  posiada  więc  wymiar  [7  x  32].  Elementy  y  macierzy  Y  po 
zakończonym procesie uczenia lub rozpoznawania zostają zaokrąglone do 
wartości ze zbioru {0,1}. Element  y

mn

 macierzy Y zawiera 1 w przypadku 

gdy  obiekt  n  ze  zbioru  uczącego  został  przydzielony  do  grupy  m,    0  w 
przeciwnym przypadku.

Na podstawie sygnału błędu  oraz sygnału wejściowego X

j

, możliwe jest takie 

skorygowanie  odpowiedniego  wiersza  macierzy  wag  W

k

  (k  –  numer  klasy),  żeby 

neuron  popełniał  mniejszy  błąd.  Nowy  wektor  wag  W

k

  obliczany  jest  z  wzoru  dla 

sieci liniowych

W

k

’ = W

k

 +   X

j

 

gdzie  jest współczynnikiem liczbowym, decydującym o szybkości uczenia. Drugim 
parametrem, mającym wpływ na szybkość uczenia jest dopuszczalny błąd neuronu 
E

dop

1

10

100

1000

10000

100000

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0

L

ic

zb

se

sj

u

cz

ą

cy

ch

Edop.=0.01
Edop.=0.05
Edop=0.1

Szybkość  uczenia  jako 
funkcja    dla  różnych 
dopuszczalnych
błędów neuronu 

background image

Przykład 
3.

X

d

 = (d, g, w, e, l, v, 

u),

background image
background image
background image

Fig. 6 A manifold hydraulic block

background image
background image

Fig. 8 (a) before 
firing, (b) after firing 
t

7

Fig. 7 Preliminary Petri net model

background image

Fig. 10 The final 
precedence graph

Fig. 9 The best 
chromosome as result 
of the GA

background image

Neuronowy model powiązań pomiędzy układami 
współrzędnych
 i szybkościami  kątowymi manipulatora.

Przykład 4

background image
background image
background image

•The proposed technique does not require any prior knowledge of 
the kinematics

•model of the system being controlled.

•Any modification in the physical set-up of the robot such as the 
addition  of  a  new  tool  would  only  require  training  for  a  new 
trajectory  without  the  need  for  any  major  system  software 
modification,  which  is  a  significant  advantage  of  using  neural 
network approach.

•It  can  be  applied  to  any  general  serial  manipulator  with 
positional  degrees  of  freedom  since  learning  is  only  based  on 
observations  of  input/output  relationships  of  the  system  being 
controlled.

•Reasonable accuracy can be achieved along the desired path.

•The  proposed  approach  can  be  adapted  to  any  general  serial 
manipulator  including  both  redundant  and  non-redundant 
systems.


Document Outline