Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych
-
Upload
rashad-ballard -
Category
Documents
-
view
45 -
download
1
description
Transcript of Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych
![Page 1: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/1.jpg)
Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych
Studium przypadku
mgr inż. Krzysztof MossakowskiWydział Matematyki i Nauk Informacyjnych
Politechniki WarszawskiejWarszawa, 3 grudnia 2003
![Page 2: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/2.jpg)
Zagadnienie Dane są rozdania brydżowe z
obliczoną liczbą lew wziętych przez parę NS (przy założeniu optymalnej gry obu stron)
Stworzyć sieć neuronową, która na podstawie podanych wszystkich rąk poda spodziewaną liczbę lew dla pary NS
![Page 3: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/3.jpg)
Pochodzenie danych GIB (Ginsberg Intelligent
Bridgeplayer) - najsilniejszy program brydżowy [http://www.gibware.com]
GIB Library - zbiór rozdań brydżowych z obliczoną liczbą lew wziętych przez parę NS przy optymalnej grze obu stron [http://www.cirl.uoregon.edu/ginsberg/gibresearch.html]
![Page 4: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/4.jpg)
Dane 717102 rozdania Pojedyncze rozdanie:
karty wszystkich rąkW: AT85432.4.J32.K9 N: Q6.AJ2.Q98764.JT E: KJ.953.T5.AQ8643 S: 97.KQT876.AK.752
liczba lew pary NS dla wszystkich możliwości koloru atutowego i osoby wistującego
01201203039129128128120303
wist Wwist Nwist Ewist S
BEZ
ATU
PIKI
KIERY
KARA
TREFLE
![Page 5: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/5.jpg)
Oczekiwane rezultaty W ilu procentach przypadków
pomyłka nie będzie większa niż 2 lewy?
W ilu procentach przypadków pomyłka nie będzie większa niż 1 lewa?
W ilu procentach przypadków nie będzie pomyłki?
?
![Page 6: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/6.jpg)
Wykorzystane narzędzie JNNS 1.1 - Java Neural Network
Simulator następca SNNS - Stuttgart Neural
Network Simulator
![Page 7: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/7.jpg)
Testowane sieci neuronowe Jednokierunkowe wielowarstwowe Losowa inicjalizacja wag z przedziału
[-1.0, 1.0] Neurony
funkcja aktywacji: sigmoidalna unipolarna (logistyczna)
funkcja wyjściowa: identyczność
![Page 8: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/8.jpg)
Algorytm uczący RProp (Resilient Propagation)
przy zmianie wag uwzględniany jest tylko znak składowej gradientu
współczynnik gradientu jest dobierany w każdym cyklu dla każdej wagi na podstawie zmian wartości gradientu
zgodny znak zmiany gradientu w dwóch kolejnych krokach zwiększa wsp. uczenia, przeciwny - zmniejsza
parametry0 = 0.1 max = 50.0 = 4.0
![Page 9: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/9.jpg)
Reprezentacja danych Liniowe przekształcenie danych do
przedziału [min, max] dla danych: wartość karty [dwójka, as] kolor: [bez atu, trefle] wistujący: [nie, tak] liczba lew: [0, 13]
Testowane przedziały: min: 0 0.1 0.2 max: 1 0.9 0.8
![Page 10: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/10.jpg)
Najczęściej stosowane zbiory danych Uczący - 10 tys. rozdań
numery od 1 do 10000 Walidacyjny - 1 tys. rozdań
numery od 500001 do 501000 charakter wyłącznie informacyjny
Testowy - 1 tys. rozdań numery od 600001 do 601000
![Page 11: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/11.jpg)
Pierwsza sieć neuronowa (26x4)-(7x4)-13-1
Wyniki (37 tys. iteracji): uczący: [92%, 71%, 28%]
walidacyjny: [86%, 59%, 22%]testowy: [87%, 63%, 23%]
...
W(13 par neuronów)
...26 x 4
7 x 4
... ... ...
N E S
... ... ......13
1
![Page 12: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/12.jpg)
Pomysł:Zgrupować karty (26x4)-(13x4)-(7x4)-13-1
Wyniki (20 tys. iteracji): uczący: [95%, 78%, 32%] [+3,+7,+4]
walidacyjny: [93%, 73%, 29%] [+7,+14,+7]testowy: [93%, 76%, 33%][+6,+13,+10]
...
...
26 x 4
7 x 4
... ... ...
... ... ......13
1
13 x 4 ... ... ... ...
![Page 13: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/13.jpg)
Pomysł:Połączyć ręce parami (26x4)-(13x4)-(7x4)-(7x2)-7-1
Wyniki (20 tys. iteracji): uczący: [92%, 71%, 28%] [-3,-7,-4]
walidacyjny: [88%, 64%, 24%] [-5,-9,-5]testowy: [89%, 68%, 27%] [-4,-8,-6]
...26 x 4
7 x 4
... ... ...
...7
1
13 x 4 ... ... ... ...
... ... ......
... ...7 x 2
![Page 14: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/14.jpg)
Pomysł:Powiększyć sieć (26x4)-(13x4)-(13x4)-26-13-1
Wyniki (20 tys. iteracji): uczący: [95%, 77%, 31%] [0,-1,-1]
walidacyjny: [89%, 67%, 26%] [-4,-6,-3]testowy: [90%, 70%, 29%] [-3,-6,-4]
...26 x 4
13 x 4
... ... ...
...13
1
13 x 4 ... ... ... ...
... ... ......
...26
![Page 15: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/15.jpg)
Pomysł:Zmniejszyć sieć (26x4)-(13x4)-(3x4)-5-1
Wyniki (20 tys. iteracji): uczący: [94%, 75%, 29%] [-1,-3,-3]
walidacyjny: [92%, 71%, 28%] [-1,-2,-1]testowy: [91%, 73%, 28%] [-2,-3,-5]
...
...
26 x 4
7 x 4
... ... ...
... ... ......5
1
13 x 4 ... ... ... ...
![Page 16: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/16.jpg)
Zestawienie wyników
Sieć Uczący Walidacyjny Testowy
(26x4)-(7x4)-13-1[37 tys. iteracji]
92%71%28%
86%59%22%
87%63%23%
(26x4)-(13x4)-(7x4)-13-1[20 tys. iteracji]
95%78%32%
93%73%29%
93%76%33%
(26x4)-(13x4)-(7x4)-(7x2)-7-1[20 tys. iteracji]
92%71%28%
88%64%24%
89%68%27%
(26x4)-(13x4)-(13x4)-26-13-1[20 tys. iteracji]
95%77%31%
89%67%26%
90%70%29%
(26x4)-(13x4)-(3x4)-5-1[20 tys. iteracji]
94%75%29%
92%71%28%
91%73%28%
![Page 17: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/17.jpg)
Eksperyment:Mała sieć, dużo iteracji (26x4)-(13x4)-(3x4)-5-1
Dla 150 tys. i 175 tys. iteracji nie ma różnic w wartościach wyjściowych
Liczba iteracji Uczący Walidacyjny Testowy
1 tys. 87%, 63%, 24% 86%, 61%, 22% 86%, 61%, 23%
10 tys. 92%, 72%, 28% 90%, 69%, 26% 90%, 69%, 27%
20 tys. 94%, 75%, 29% 92%, 71%, 28% 91%, 73%, 28%
50 tys. 93%, 75%, 30% 92%, 73%, 29% 94%, 73%, 29%
100 tys. 94%, 76%, 30% 93%, 74%, 29% 93%, 73%, 30%
150 tys. 94%, 76%, 30% 93%, 74%, 29% 93%, 73%, 30%
175 tys. 94%, 76%, 30% 93%, 74%, 29% 93%, 73%, 30%
![Page 18: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/18.jpg)
Eksperyment:Duża sieć, dużo iteracji (26x4)-(13x4)-(13x4)-26-13-1
Od ok. 55 tys. iteracji maleje błąd dla zbioru uczącego, a wzrasta dla zbioru walidacyjnego
Liczba iteracji Uczący Walidacyjny Testowy
1 tys. 87%, 64%, 23% 85%, 60%, 23% 85%, 61%, 21%
5 tys. 92%, 71%, 28% 89%, 66%, 26% 90%, 67%, 25%
20 tys. 95%, 77%, 31% 89%, 67%, 26% 90%, 70%, 29%
50 tys. 97%, 81%, 34% 90%, 68%, 29% 91%, 72%, 28%
80 tys. 97%, 82%, 35% 90%, 68%, 27% 91%, 70%, 29%
![Page 19: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/19.jpg)
Eksperyment:Najlepsza sieć, dużo iteracji (26x4)-(13x4)-(7x4)-13-1
Wykresy błędów dla zbiorów uczącego i walidacyjnego wciąż miały tendencję malejącą
Liczba iteracji Uczący Walidacyjny Testowy
20 tys. 95%, 78%, 32% 93%, 73%, 29% 93%, 76%, 33%
50 tys. 95%, 79%, 32% 93%, 75%, 30% 93%, 74%, 30%
100 tys. 96%, 80%, 33% 94%, 75%, 30% 93%, 75%, 31%
115 tys. 96%, 80%, 34% 94%, 76%, 30% 93%, 76%, 30%
![Page 20: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/20.jpg)
Eksperyment na danych:Przedział wartości danych Sieć (26x4)-(13x4)-(7x4)-13-1
20 tys. iteracji
Przedział Uczący Walidacyjny Testowy
<0, 1> 95%, 79%, 32% 91%, 71%, 28% 93%, 75%, 29%
<0.1, 0.9> 95%, 78%, 32% 93%, 73%, 29% 93%, 76%, 33%
<0.2, 0.8> 93%, 74%, 31% 91%, 71%, 28% 92%, 72%, 29%
![Page 21: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/21.jpg)
Eksperyment na danych:Zamiana rąk w parach Sieć (26x4)-(13x4)-(7x4)-13-1
20 tys. iteracji Podwojenie liczby rozdań -
zduplikowanie rozdań przez zamianę rąk w parach
Rozdania Uczący Walidacyjny Testowy
Pojedyncze(10 tys.)
95%, 79%, 32% 91%, 71%, 28% 93%, 75%, 29%
Podwójne(20 tys.)
95%, 77%, 31% 93%, 73%, 28% 94%, 76%, 31%
![Page 22: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/22.jpg)
Eksperyment na danych:Nie tylko bez atu Sieć (26x4)-(13x4)-(7x4)-13-1 Sieć (26x4;1)-(13x4)-(7x4)-13-1
dodatkowe wejście z wartością atu pięciokrotne zwiększenie liczby danych
20 tys. iteracji
Rozdania Uczący Walidacyjny Testowy
bez atu 95%, 79%, 32% 91%, 71%, 28% 93%, 75%, 29%
wszystkie (5) 97%, 82%, 35% 96%, 79%, 33% 96%, 81%, 35%
![Page 23: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/23.jpg)
Analiza:Liczba punktów na rękach Sieć (26x4)-(13x4)-(7x4)-13-1
115 tys iteracji zbiór uczący: 96%, 80%, 34%
Szacunek:LiczbaLew = 13/40 * punktyNS zbiór uczący: 96%, 70%, 24%
![Page 24: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/24.jpg)
Analiza:Punkty, układy, wisty
DIFF # %Med( StdDev( POINTS ))
Med( StdDev( COLORS ))
Med( StdDev( NT TRICKS ))
-4 23 0% 3,783968 1,801436 0,344414-3 150 2% 4,320747 1,597275 0,355326-2 834 8% 4,390149 1,428514 0,294703-1 2354 24% 4,483401 1,354568 0,3535300 3357 34% 4,537989 1,322999 0,5047591 2303 23% 4,445004 1,388238 0,7973442 754 8% 4,511918 1,490400 1,2468213 178 2% 4,388856 1,640246 2,0408664 40 0% 4,655450 1,766998 3,3102365 6 0% 3,660006 1,660928 2,6943016 1 0% 1,632993 1,959824 6,928203
TOTAL: 10000 Med: 4,183520 1,363043
![Page 25: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/25.jpg)
Analiza:Najgorsze rozdanie Rozdanie (S-H-D-C):
W: AT85432 - 4 - J32 - K9 N: Q6 - AJ2 - Q98764 - JT E: KJ - 953 - T5 - AQ8643 S: 97 - KQT876 - AK - 752
Liczba lew NS przy grze w bez atu: wist N lub S: 12 wist E lub W: 0 odpowiedź sieci: 6
![Page 26: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/26.jpg)
Problemy
Czas
zbiór uczący 40 tys. danych sieć (26,1x4)-(13x4)-(7x4)-13-1 1 tys. iteracji 1 godzina
![Page 27: Zastosowanie sieci neuronowych do oceny liczby lew w rozdaniach brydżowych](https://reader036.fdocument.pub/reader036/viewer/2022062407/56812ba3550346895d8fd2d0/html5/thumbnails/27.jpg)
PomysłyDyskusja
?