Słownik języka polskiego, który pomoże komputerom rozeznać się w znaczeniach słów, przygotowali badacze z Łodzi. Dokument wyznacza odległości między słowami, a przez to – określa relacje między nimi. Dzięki temu programy będą np. sprawniej sugerować poprawki w tekstach.
Na Politechnice Łódzkiej powstał nowy rodzaj słownika, przeznaczony dla badaczy języka oraz naukowców pracujących nad sztuczną inteligencją. Słownik ma szansę wznieść na wyższy poziom możliwość edycji testów – być może dzięki niemu łatwiej będzie pisać teksty na smartfonach, a w edytorach tekstowych wykrywane będą pomyłki, których dotąd programy te nie pokazywały. Słownik jest już udostępniony za darmo.
Inteligentny słownik języka polskiego oparty o wektorowe reprezentacje słów opracowali doktorant Marek Rogalski oraz prof. Piotr Szczepanek z Instytutu Informatyki Politechniki Łódzkiej. Ich rozwiązanie zostało docenione na wystawie wynalazków Geneva Innovations – otrzymało złoty medal z wyróżnieniem.
„Dla komputera każde słowo to tylko losowy zbiór liter, który nic nie znaczy” – zwraca uwagę w rozmowie z PAP Marek Rogalski. Dlatego naukowcy zastanawiali się, jak sprawić, żeby komputerom lepiej się pracowało na tekstach tworzonych w języku naturalnym.
Wcześniej powstawały już słowniki z założenia przyjazne maszynom, w których np. poszczególne hasła były połączone hiperlinkami z synonimami (np. „helikopter” – „śmigłowiec”), antonimami (np. „młody” – „stary”) czy hiponimami („jamnik” jest hiponimem słowa „pies”). Były to jednak ciągle dokumenty przypominające budową słowniki tradycyjne.
Natomiast słownik z Politechniki Łódzkiej skonstruowany jest w zupełnie inny sposób – tam związki między słowami wyznaczać można matematycznie. A przecież operacje na liczbach to coś, w czym komputery czują się jak ryba w wodzie.
STO WYMIARÓW KAŻDEGO SŁOWA
„Zbudowaliśmy sieć neuronową, która czytała polską Wikipedię. Sieć patrzyła na słowa – które dla niej nic nie znaczą – i w poszczególnych zdaniach próbowała odgadnąć kolejne wyrazy. Dzięki temu system sam uczył się, jak poprzednie słowa wpływają na kolejne, rozpoznawał, które się ze sobą łączą i które wyrazy są ze sobą powiązane tematycznie i znaczeniowo” – mówi Marek Rogalski.
Efektem pracy tej sieci jest słownik, w którym każde słowo reprezentowane jest punkt opisany jest setką liczb. Każde słowo w języku staje się więc dla komputera punktem w stuwymiarowej przestrzeni. W ten sposób między różnymi punktami – czyli słowami – można wyliczać odległości. „Cechą słownika jest to, że słowa, która znajdują się blisko siebie, znaczą coś podobnego, np. są synonimami” – opowiada Rogalski.
Jak opowiada naukowiec, różne obszary tej przestrzeni odpowiadają różnym klasom słów. Jest więc przestrzeń związana z rzeczownikami, nazwami własnymi, czy czasownikami. Poza tym różne podobszary tych przestrzeni zawierają coraz węższe kategorie słów – na przykład w okolicy słowa herbata, możemy znaleźć słowa takie jak kawa, cytryna czy mleko.
Doktorant zdradza jeszcze inną ciekawą właściwość słownika. „Jeśli np. wyprowadzimy ze słowa >>Polska>Warszawa>Francja>ParyżPAP – Nauka w Polsce, Ludwika Tomala