IFM_201503 całość - page 65

Inżynier i Fizyk Medyczny 3/2015 vol. 4
171
kardiologia
/
cardiology
artykuł naukowy
/
scientific paper
Kolejny etap to proces nauczania sieci, który trwał w przybli-
żeniu pięćdziesiąt minut (Rys. 2).
W ostatnim etapie przeprowadzono test, czy sieć nauczyła się
prawidłowo. Wtymceluwczytanowszystkie sygnały, które nie bra-
ły udziału w procesie uczenia. Wynik sprawdzano analogicznie jak
podczas nauczania za pomocą komendy
sim(net,P(:,…))
(tabela 2).
W tym przypadku sieć również nie rozpoznała w 100%wszyst-
kich sygnałów EKG. Na 10 sygnałów 8 sygnałów zostało rozpo-
znanych prawidłowo.
Sieć wielowarstwowa III ze wsteczną propagacją błędów
(z dwoma funkcjami aktywacji tangensoidalnymi i jedną funkcją
liniową symetryczną z nasyceniem oraz liczbą iteracji 15)
Pierwsze dwa etapy – tworzenie głównego interfejsu oraz po-
bocznych interfejsów programu przebiega identycznie jak w po-
przednich dwóch sieciach.
W etapie trzecim także wybrano sieć wielowarstwową ze
wsteczną propagacją błędów. Została ona utworzona za pomo-
cą komendy
network
. Sieć miała jedno wejście oraz 3 warstwy,
z których każda zawierała neurony (kolejno: 35, 18 i 1). Każdą
Rys. 2
. Proces uczenia sieci
Tabela 2
. Wyniki testu
Sygnał prawidłowy
Wynik testu
1
0,9990
2
0,6947
3
0,9999
4
0,9999
5
-0,0626
Sygnał nieprawidłowy
Wynik testu
1
0,4179
2
0,3115
3
0,1274
4
0,0942
5
0,9968
sieć może tworzyć dowolna liczba warstw. Następnie określo-
no wartości funkcji przejścia warstw. W tym przypadku funkcje
aktywacji dla pierwszej i drugiej warstwy to
tansig
(funkcja tan-
gensoidalna), a dla trzeciej
satlins
(funkcja liniowa symetrycz-
na z nasyceniem). Podobnie jak w poprzednich dwóch sieciach
funkcja inicjalizacji sieci określona została komendą
initnw
. Po
wprowadzeniu tych parametrów określono metodę uczenia,
jaką była propagacja wstecznej Levenberg-Marquardta. Proces
ten określono za pomocą komendy
trainlm
. Podobnie jak po-
przednio zadano odpowiednie parametry uczenia:
net.trainParam.lr
– współczynnik uczenia sieci,
net.trainParam.goal
– akceptowalny błąd,
net.trainParam.epochs
– liczba iteracji w czasie uczenia,
net.trainParam.show
– liczba kroków algorytmu uczenia, po
którym wyświetlany jest komunikat.
Parametry uczenia są identyczne jak przy tworzeniu drugiej sieci.
Uczeniu poddano 39 sygnałów: 19 nieprawidłowych i 20 pra-
widłowych. Pozostałe 10 sygnałówprzeznaczono do testowania.
Proces nauczania sieci w przybliżeniu trwał pięćdziesiąt minut
(Rys. 3).
Rys. 3
. Proces uczenia sieci
Tabela 3
. Wyniki testu
Sygnał prawidłowy
Wynik testu
1
0,3122
2
0,9820
3
-0,0745
4
-0,0745
5
-0,2801
Sygnał nieprawidłowy
Wynik testu
1
0,7246
2
0,0525
3
0,0340
4
0,1517
5
1
1...,55,56,57,58,59,60,61,62,63,64 66,67,68
Powered by FlippingBook