AlphaGo wygrał kolejną partię z Lee Sedolem
System AlphaGo udowodnił, że wczorajsze zwycięstwo nad Lee Sedolem, jednym z najlepszych zawodników Go na świecie, nie było przypadkiem. System po raz drugi wygrał z człowiekiem. Stan meczu składającego się z pięciu partii to obecnie 2:0 dla sztucznej inteligencji.
Dotychczas najsłynniejszym osiągnięciem sztucznej inteligencji w rozgrywkach przeciwko człowiekowi było zwycięstwo superkomputer DeepBlue z szachowym mistrzem świata Garrym Kasparowem. Wydarzenie to miało miejsce w 1997 roku.
Go, mimo znacznie prostszych zasad, jest grą o wiele bardziej złożoną niż szachy, gdyż liczba możliwych rozgrywek partii jest podobna do liczby atomów we wszechświecie.
Dotychczas sądzono, że komputery jeszcze nie są w stanie pokonać czołowych zawodników świata. Co prawda w październiku ubiegłego roku AlphaGo wygrał 5:0 z mistrzem Europy Fan Hui, jednak 33-letni Lee Sedol to zawodnik innej klasy. Od ponad dekady znajduje się w światowej czołówce. W całej swojej karierze wygrał 71,8% meczów.
Pojedynek pomiędzy AlphaGo a Lee Sedolem rozgrywa się w Four Seasons Hotel w Seulu. Jest obserwowany przez ekspertów zajmujących się rozwojem sztucznej inteligencji oraz przez miliony fanów Go w całej Azji. Mecz jest transmitowany na żywo przez wielki sieci telewizyjne w Korei Południowej, Japonii i Chinach. Kim Seon-Ryong, zawodowy gracz i komentator Go zauważył, że na początku meczu Lee miał poważne kłopoty po tym, jak AlphaGo wykonał całą serię "szokująco niekonwencjonalnych" ruchów. Gdybyśmy przeprowadzili sondaż wśród wszystkich 1300 zawodowych graczy w Go z Chin, Korei Południowej i Japonii, to żaden z nich nie wykonałby takiego ruchu - stwierdził Kim po jednym z ruchów sztucznej inteligencji.
Komentarze (41)
glaude, 10 marca 2016, 13:48
Maszyna korzysta z ogromnej bazy danych milionów partii. ile to zajmuje serwerów???
Człowiek nigdy nie będzie w stanie zgromadzić pod czaszką takiej liczby- za mała pojemność pamięci.
Poza tym, człowiek robi inne rzeczy i może być w nich równie dobry. A maszyna jest jednowymiarowa- tylko gra i koniec. Nasze oprogramowanie jest uniwersalne, oszczędne energetycznie i małe. Cud ekonomii
Ale i tak gratulacje dla projektantów, bo maszyna pewnie nie wie nawet, że wygrała? Jeszcze daleko jej do świadomości
TrzyGrosze, 10 marca 2016, 14:04
I dlatego człowiek musi używać tej prawdziwej inteligencji , a DeepBlue czy AlphaGo tylko grzebią w swojej bazie. Sawanty takie.
Jajcenty, 10 marca 2016, 14:23
Pewnie jeden, choć starczyłoby i pół, w zależności do tego co rozumiesz przez serwer. Niech zapis partii zajmuje 1 KB (19x19x2=722) zatem 1 milion partii to 1GB. Oczywiście wiele zależy od tego co jest trzymane razem partią - jakaś ocena pozycji białe-czarne. Ale chyba nie tędy droga.
Obawiam się że brute force ma szansę w warcabach. Szachy i Go wymagają pomyślunku
I dobrze. Można spokojnie wyciągnąć wtyczkę z kontaktu bez dylematów etycznych.
thikim, 10 marca 2016, 14:46
Zauważ że już od dłuższego czasu maszyny korzystały z baz milionów partii. Czego żaden człowiek robić przecież nie mógł. Więc jak do tej pory ludzie wygrywali?
Gość Astro, 10 marca 2016, 14:57
Nie znam się całkowicie na go, ale dotyczy to chyba informacji o chwilowym ustawieniu kamieni. Jeśli przeciętna partia to 250 ruchów, raczej powinno być 250x19x19 (jednoznaczne, bo zaczynają czarne), czyli jakieś 90 KB. Oczywiście dalej żaden problem.
Jajcenty, 10 marca 2016, 15:30
numerujemy wiersze i kolumny: 0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i; kolor {0,1}
zaczynam 000, kończę ii1, wychodzi mi, że na najdłuższą partię potrzebuję 19x19 takich trójek.
A teraz możemy zacząć oszczędzać: adresy kolumn i wierszy zakodować na 5 bitach, kolor na jednym, lub jeśli wyliczać kolejność ruchu, to bitu na kolor nie potrzebujemy.
Oczywiście taka struktura danych będzie stawiała opór przy wyszukiwaniu więc raczej poszlibyśmy w obfitość metadanych i terabajty.
Gość Astro, 10 marca 2016, 15:40
Skrobię się po łysinie i nie potrafię tego wcisnąć w jeden bit…
Skoro teoretyzujemy, to kamienie również znikają. Nikt oczywiście nie wsadzi kamienia w zajęty przez przeciwnika obszar, ale to teoretycznie możliwe i zgodne z zasadami (chyba, bo się nie znam).
Edycja: bez wnikania w szczegóły zgodzimy się chyba, że 1KB jednak nie wystarczy?
Jajcenty, 10 marca 2016, 15:53
2^5 = 32
Partię koduję jako sekwencję trójek: wierszkolumnakolor = 5bit5bit1bit.
Mi wystarcza 19*19*11 = 3971 bitów co jest mniej niz 1KB
Gość Astro, 10 marca 2016, 16:05
No proszę, jak przycisnąć człowieka, to daje radę.
Na razie jednak mamy (5+5+1)*400 (najdłuższa znana partia), czyli ok. 4,3 KB.
Podpowiem, że bit na kolor zbędny, podobnie jak nadmiarowość 5 bitów*2 na położenie (no w 9 bitach damy radę ). Pewnie też bym nie szedł w tym kierunku, ale kto wie, czy tezy jednak nie utrzymasz.
Jajcenty, 10 marca 2016, 16:17
Najdłuższa możliwa partia Go to 19x19 = 361. Nie musisz pamiętać 361 stanów na jednym przecięciu wystarczy zapamiętać kolor położonego w nim kamienia.
Można też skorzystać z wiedzy że czarne wykonują ruchy o parzystych numerach.
Gość Astro, 10 marca 2016, 16:23
No widzisz, tezę obroniłeś. Starość nie radość i B z b można pomylić. Doceń jednak proszę, że 3971 jest nieco większe niż Twoje pierwotne 722.
Jednak nie:
http://prawdziwefilmy.pl/baduk-czyli-go
Jajcenty, 10 marca 2016, 16:41
722 to liczba stanów jakie trzeba zapamiętać. Nigdzie też nie widzę żebym pomylił B z b.
Gra teoretycznie może trwać w nieskończoność - tu masz rację - jednak aktualny stan planszy zawsze się daje opisać z użyciem 361 trójstanowych komórek.
i to jest dokładnie połowa bajtów o których myślałem na samym początku.
Gość Astro, 10 marca 2016, 16:52
vs
No tak, nigdzie nie powiedziałeś 722 czego.
Dla mnie to tłumaczenie się post factum. Wiesz co, mam dość ostatnich dyskusji na temat TK. Brzmi podobnie.
Aktualny stan planszy to nie partia. Chyba to już uzgodniliśmy po pierwszym dotknięciu szpad.
Wybacz, ale nie jestem magikiem i nie wiem CO miałeś na myśli.
P.S. B z b pomyliłem ja. Jeszcze nie dostrzegłeś?
Chyba nie mam powodów o oskarżanie Cię o starość?
Jajcenty, 10 marca 2016, 17:07
Wybacz, ale u Ciebie, nawet takie pół przyznania się jest niezwykłe, tożem zgłupiał normalnie.
Powody może by się i znalazły, ale tylko spróbuj....
Gość Astro, 10 marca 2016, 17:18
Jakie tam "pół przyznanie się". Mówię wprost: pomyliłem się (podobnie zresztą jak Ty ). Nie mylą się krowy, czy jakoś tak. Wiem, ciężko Ci przełknąć, że zdarza się mi to niezbyt często.
Ne spróbuję, ale nie myślisz chyba o lustrze?
glaude, 10 marca 2016, 19:38
Ni w ząb nie zrozumiałem, o czym rozprawiacie
Może to i dobrze, bo przynajmniej nie mam lęków, czy aby maszyny nie depczą nam już po pietach swoimi możliwościami
thikim, 10 marca 2016, 20:23
Zapisanie tego jest możliwe w taki sposób ale czy byłby to sposób optymalny pod względem szybkości. Raczej nie. A że chcemy w jakimś czasie przeszukać jak najwięcej to głównym kryterium algorytmu będzie szybkość a nie pamięciożerność-1
Jajcenty, 10 marca 2016, 21:54
No to teraz wiesz jak się czuję kiedy piszesz o modalnościach na zakrętach...
Eco_PL, 11 marca 2016, 00:55
Praca systemu systemu AlphaGo opiera się na sieciach neuronowych. Miliony partii nie są przechowywane na serwerach i przeszukiwane pod kątem podobnych zagrywek, ale zostały wykorzystane do uczenia sieci neuronowej, która charakteryzuje się dobrą zdolnością rozpoznawania wzorców oraz generalizacji wiedzy. Cała ta informacja zawarta jest w wartościach wag połączeń w synapsach, które programistycznie zapisywane są jako tablice. AlphaGo po prostu analizując miliony partii nauczył się gry w Go i wie jak się zachować nawet w sytuacjach, które nie wystąpiły w zbiorze danych który służył do nauki, stąd właśnie te "niekonwencjonalne" zagrywki, które wszystkich zaskakują.
pogo, 11 marca 2016, 01:12
Nie znam się na takich rzeczach... niestety...
jednak zakładałbym, że prowadząc miliony gier sam ze sobą dostał pozwolenie na robienie dużej ilości zupełnie losowych ruchów, więc dużo z tego wypróbował
glaude, 11 marca 2016, 05:27
"Cała ta informacja zawarta jest w wartościach wag połączeń w synapsach, które programistycznie zapisywane są jako tablice."
@Eco_PL
A mógłbyś nieco jaśniej o tych tablicach?
Tylko tak jakbyś tłumaczył trzylatkowi, bo nie jestem lotny w szeroko pojętej metodologii programistycznej
O wagach synaptycznych co nieco wiem, więc przynajmniej początek mam objecujący
thikim, 11 marca 2016, 07:43
Eco_PL, rzeczywiście, ale użyto też i tego:
https://pl.wikipedia.org/wiki/Monte-Carlo_Tree_Search
Tu jest co nie co na ten temat.
https://googleblog.blogspot.com/2016/01/alphago-machine-learning-game-go.html
Flaku, 11 marca 2016, 09:56
Mnie zawsze zastanawia jak liczy się udział procentowy w rzeczach, które potrafimy zrobić. Jak się wydziela granice jednej "rzeczy", aby przeprowadzić statystyki.
Jajcenty, 11 marca 2016, 10:40
Podejście probabilistyczne: losujesz 1000 czasowników i sprawdzasz czy automat potrafi Cię w nich zastąpić.