Marcin Wudarczyk
Dariusz Kieszkowski
Sieci neuronowe w analizach
finansowych
Prognozowanie bankructw
Plan prezentacji
Wstęp
Kondycja finansowa
Prognozowanie bankructwa
Metody statystyczne
Sieci neuronowe
Ciekawe modele sieci neuronowych
Nasze wyniki
Co to jest kondycja finansowa?
Kondycja finansowa: stan finansowy
w określonym przedziale czasowym
Zdolność do zachowania wypłacalności
(spłaty zadłużenia)
Zdolność do przynoszenia zysków
Zdolność do powiększania majątku
Zła kondycja finansowa po pewnym
czasie skutkuje bankructwem
przedsiębiorstwa
Kondycja finansowa
Co robimy?
badamy kondycję (prawdopodobieństwo
upadłości) firm
Po co?
ryzyko kredytowe w bankowości
inwestycje na giełdzie
wczesne ostrzeganie zarządu firmy
przejęcia i połączenia firm
Metody oceny kondycji
finansowej
jakościowe
– sposób opisowy
ilościowe
– wartości liczbowe
deterministyczne – proste wskaźniki
stochastyczne
statystyczne – analiza trendu
dyskryminacyjne – wielowymiarowa analiza
statystyczna
sieci neuronowe, algorytmy genetyczne
Metody oceny kondycji
finansowej
logiczno-dedukcyjne
analiza opisowa
deterministyczne (proste wskaźniki)
empiryczno-indukcyjne
stochastyczne
statystyczne
dyskryminacyjne
sieci neuronowe, algorytmy genetyczne
Metody ilościowe
Analiza dyskryminacyjna
Funkcję dyskryminacyjną można określić wzorem:
gdzie:
Z – wartość funkcji dyskryminacyjnej
W
i
– wagi i-tej zmiennej (np. wskaźników finansowych)
X
i
– zmienne objaśniające modelu
n
n
X
W
X
W
X
W
Z
...
2
2
1
1
Analiza
dyskryminacyjna
Y
X
Model Altmana
Model Altmana (1968)
Z = 6,56 * X1+ 3,26 * X2 + 6,72 * X3 + 1,05
* X4
X1 = majątek obrotowy / aktywa ogółem
X2 = zysk netto / aktywa ogółem
X3 = EBIT / aktywa ogółem
X4 = kapitał własny / zobowiązania ogółem
wartości progowe: 1,10 i 2,60
Model Altmana
Skuteczność modelu
B. Caouette, E.I. Altman, P. Narayanan, Managing Credit Risk. John Wiley & Sons, 1998,
s.22.
Model Altmana
Skuteczność modelu na innych próbach
Skuteczność wątpliwa: Rzeczpospolita nr 110 z 13 maja 1996, s.19.
.
Międzynarodowe porównawcze badania na belgijskich przedsiębiorstwach
pokazały, że skuteczność modelu Altmana ze skorygowanymi wartościami
progów kształtowała się na poziomie 50%. Najskuteczniejszy był model
belgijski. Lepsze były również modele europejskie od amerykańskich.
[H.Ooghe, H.Claus, N.Sierens, J. Camerlynck, „International Comparison of Failure Prediction Models
From Different Countries: An Empirical Analysis”, s.13-15.]
Modele polskie
Model Gajdki i Stosa
skuteczność 82,5% - 93%
40 firm, dane z lat 1994-95
Model Hołdy
skuteczność 92,5%
80 firm, lata 1993-96
i wiele innych...
Analiza dyskryminacyjna
Zalety
prostota
wysoka skuteczność na homogenicznych
danych
Wady
nieprzenośna
nieskuteczna dla niehomogenicznych
danych
Metody ilościowe
Sieci neuronowe
Wykorzystywane ze względu na
nieliniowość zależności i charakter
multiplikatywny niektórych związków
między wskaźnikami a możliwością
bankructwa
Wielowarstwowe SN
Samoorganizujące mapy Kohonena
Sieci neuronowe
Y
X
Sieci neuronowe
Y
X
Czego już dokonano?
Sharda, Odom (1990)
wskaźniki Altmana
128 amerykańskich firm
Sieci
neuronowe
Analiza
dyskryminacyj
na
Skuteczność I
(bankruci)
77,8%-
81,5%
59,3-70,4%
Skuteczność II
(niebankruci)
78,6%-
85,7%
78.6%-
85.7%
Czego już dokonano?
Sharda, Wilson (1992)
wskaźniki Altmana
algorytm wstecznej propagacji błędu
129 firm
Sieci
neuronowe
Analiza
dyskryminacyj
na
Skuteczność
96%
91%
Czego już dokonano?
Inni
Sieci
neuronowe
Analiza
dyskryminacyj
na
Inne
Coats i Fand
(1993)
95%
87,9%
Fernandez i
Olmeda (1995)
82,4%
61,8%-
79,4%
(LR,
CART, C4.5, MARS)
Serrano i Cinca
91-96%
(SOM)
90%
Kiviluoto
(1998)
81-86%
(SOM)
81-86%
Nasze modele
Sieć wielowarstwowa
Sieć SOM Kohonena
Sieć neuronowo-rozmyta
Sieć RBF
Ciekawe modele
Fuzzy NN
RBF
Fuzzy Neural Networks
Logika rozmyta
wzrost
niski
średni
wysoki
160
170
180
wzrost
niski
średni
wysoki
160
170
180
Fuzzy Neural Networks
Schemat układu rozmytego
Fuzyfikator
Defuzyfikator
Człon wykonawczy
Reguły wnioskowania
U
x
V
y
zbiór rozmyty
zbiór rozmyty
U
A
V
B
Fuzzy Neural Networks
Schemat sieci neuronowo rozmytej
)
1
(
1
)
1
(
2
)
2
(
1
)
2
(
2
1
W
2
W
1
1
f
f
1
1
f
f
)
(x
f
1
x
2
x
Fuzzy Neural Networks
Funkcja przynależności jest funkcją Gaussa:
A zatem funkcja aproksymująca f(x) wyrażona przez średnie
wartości centrów ma postać:
2
)
(
)
(
)
(
exp
l
i
l
i
i
l
i
c
x
M
l
l
i
l
i
i
N
i
M
l
l
i
l
i
i
N
i
l
c
x
c
x
W
x
f
1
2
)
(
)
(
1
1
2
)
(
)
(
1
exp
exp
)
(
Fuzzy Neural Networks
Porównanie
Konwencjonaln
e
Fuzzy NN
jednoznaczność
przydziału wzorca do klasy
(np.: wysoka cena)
tylko dane liczbowe
decyduje samodzielnie
klasyfikacja wynikowa
jest ostra
niejednoznaczność
przydziału wzorca do klasy
(np.: 0,4/wysoka cena +
0,6/bardzo wysoka cena)
dane symboliczne i
liczbowe
dostarcza reguł
decyzyjnych (wiedzy) –
można zautomatyzować
klasyfikację
klasyfikacja wynikowa
jest rozmyta – pozwala na
dalsze podklasyfikacje
Sieć RBF
Sieć RBF
Sieć RBF c.d.
Nauczanie
Warstwa ukryta
Warstwa wyjściowa
Zastosowania
aproksymacja
klasyfikacja
predykcja
Zalety: szybkość, aproksymacja
lokalna
Nasze badania - okiem
informatyka…
Ocaml
szybkość tworzenia kodu
styl pisania a’la SQL
Python
brak kompilacji
luźne zasady – ułatwienie ale i
niebezpieczeństwo
wątki pod Windows
wolny, ale: Psyco
Nasze badania - okiem
informatyka…
Ocaml + Python = PyCaml
brak większych problemów z integracją
języków
trudności z debugowaniem
WxWidgets
niekiedy trudne do zrozumienia
szybkie
duże możliwości
niektóre kontrolki brzydkie i
niedopracowane
Nasze badania - okiem
informatyka
WxWidgets + Python = WxPython
bezproblemowa integracja
znacznie ułatwione korzystanie z
biblioteki
nie potrzeba długo się uczyć
Aplikacja
Badania
Dane
Spółki notowane na polskiej giełdzie
20 spółek „bankrutów”, 40 spółek o
dobrej kondycji
Źródło:
Braki i niejednolitość danych
Mała próbka danych
Uczenie
Niestabilność procesu uczenia
Brak sensu stosowania optymalizacji
genetycznej doboru wejść sieci
Błąd zależy bardziej od losowego
doboru danych niż zastosowanych
parametrów uczenia
Zaburzenia w procesie uczenia ze
zbiorem walidacyjnym
SOM vs RBF
Ze względu na podobną zasadę
działania w tym zastosowaniu i przy
tych danych nie można wskazać
która jest lepsza
Warstwa wyjściowa RBF przy
algorytmie uczenia BP potrafi
odjechać
SOM nie potrafi odróżnić spółek
bankrutów i o dobrej kondycji
MLP
Przy współczynnikach uczenia rzędu 0,1-0,2
(momentum 0,2) sieć mocno oscyluje a błąd na
próbce uczącej potrafi się mocno zwiększyć
Żadne zmiany momentu nie poprawiają
zbieżności
Moment=0,2 wsp. uczenia = 0.2
min=1.1179 max=1.5640
Wyniki
Wszystkie sieci osiągają błąd
klasyfikacji rzędu 20%-30%.
Dla porównania, model Altmana dla
tych danych ma błąd rzędu 40% -
25%
Polskie modele dyskryminacyjne nie
działają w ogóle
Pytania
Dziękujemy