Um jogo de palavras precisa de mais do que uma lista de strings válidas. Ele precisa dizer o que cada uma significa, e o significado é a coisa mais difícil de armazenar.
O WordChess é jogado em um tabuleiro de 25×25 com um 148,941dicionário inglês de palavras6, com entradas que têm em média 8,6 letras, algumas chegando a 25. Essa é a parte fácil. Uma lista de palavras válidas é apenas um conjunto de strings que o jogo aceitará. A parte interessante é dizer a um jogador o que a string no tabuleiro significa, e fazer isso em vinte e dois idiomas ao mesmo tempo.
Os lexicógrafos traçam uma linha nítida entre um lema e suas formas flexionadas. O lema é a entrada principal que se consulta, run, house, be. Ao seu redor orbita um paradigma de formas de superfície: runs, ran, running. Cada uma carrega o mesmo sentido central, vestida para um papel gramatical diferente.3 Um dicionário gasta sua prosa no lema e deixa as sombras indicarem o caminho de volta.
Quantas sombras uma palavra projeta depende da língua. O inglês é analítico: ele se apoia na ordem das palavras e em pequenas palavras auxiliares, de modo que um verbo raramente tem mais que um punhado de formas. O finlandês é aglutinativo, ele constrói o sentido colando sufixos em um radical. Um único substantivo finlandês flexiona-se em cerca de quinze casos, no singular e no plural, antes de finais possessivos e clíticos que se acumulam; a contagem prática de formas distintas atinge os milhares.4 O húngaro empacota uma frase inteira em inglês, na minha casaem uma única palavra, házamban.5
As definições vêm do Wiktionary, o dicionário gratuito que qualquer pessoa pode editar. Ele é enorme e multilíngue: o projeto abrange mais de cem edições de línguas ativas e dezenas de milhões de entradas, escritas colaborativamente por voluntários, em vez de por um conselho editorial remunerado.1 Para um jogo que funciona em 22 idiomas, nenhum outro léxico gratuito se aproxima em termos de cobertura.
Mas a cobertura no papel não é a cobertura que se pode ler em voz alta. O Wiktionary armazena formas flexionadas de uma maneira que poupa os editores humanos de escrever a mesma glosa dez mil vezes. Em vez de explicitar uma definição, uma entrada não-lexema carrega um modelo de forma, um pequeno ponteiro que diz, em essência, "esta é uma forma gramatical particular daquele lexema."2 A entrada para smoulders não é prosa; é um modelo que é renderizado como "terceira pessoa do singular do presente simples de smoulder."1
Essas referências não são um erro de arredondamento. No Wikcionário em inglês, de aproximadamente 1,27 milhão de definições, cerca de 478.000, bem mais de um terço, são definições de "forma de" em vez de sentidos escritos por extenso.1 Os dados estão lá. Estão apenas dobrados.
Portanto, o desafio que importava nunca foi "a palavra está faltando". Foi que o significado da palavra estava dentro de um modelo que um analisador ingênuo descartaria. As definições do WordChess foram construídas lendo os dumps brutos do Wikcionário e expandindo os modelos de flexão língua por língua, ensinando ao analisador o que cada referência significa e reescrevendo-a em um glossário simples.6
Cada língua esconde suas formas atrás de mecanismos diferentes. O espanhol esconde as formas verbais atrás de {{forma verbo}}, resolvido como "forma verbal de X". O alemão usa {{Grundformverweis Dekl/Konj}} para formas declinadas e conjugadas. O finlandês recorre a {{taivutusmuoto}}. O russo frequentemente não armazena nenhum modelo de forma, a palavra flexionada é um redirecionamento (собаки → собака) que deve ser seguido para recuperar um glossário de "forma de".6 Trate cada convenção, e a cobertura aumenta.
| Idioma | Antes | Depois | Ganho |
|---|---|---|---|
| Alemão | 45% | 92% | +47 |
| Holandês | 58% | 90% | +32 |
| Finlandês | 54% | 74% | +20 |
| Russo | 20% | 70% | +50 |
| Grego | 15% | 57% | +42 |
Medido a partir das notas de design e construção deste projeto. As porcentagens representam a proporção de entradas do dicionário que possuem uma definição utilizável ou um glossário de "forma de" resolvido.
Os dados nunca estiveram ausentes. Estavam dobrados em um ponteiro, e dar à máquina a palavra significava aprender a desdobrá-lo.
Vale a pena ser honesto sobre o que o jogo agora contém. Quando o WordChess mostra que собаки é uma forma de собака, "cão", ele não compreendeu nada. Mapeou uma string para outra string, um glossário, seguindo os mesmos ponteiros que um editor humano deixou para trás. Isso é lemmatization, o cavalo de batalha do processamento de linguagem natural: reduzir uma forma superficial à sua base para que uma máquina tenha menos coisas distintas para rastrear.7
Esse é um tipo real e útil de conhecimento. Permite que o jogo responda "o que é esta palavra?" em Atenas ou Amsterdã sem um lexicógrafo na equipe. Mas é conhecimento-como-consulta, não conhecimento-como-significado. O glossário é uma promessa de que uma pessoa, ao lê-lo, reconhecerá a palavra. A máquina mantém a promessa; o leitor fornece o sentido.
Algumas línguas atingem um teto que nenhum analisador pode levantar, porque os dados simplesmente não existem para se desdobrar. As entradas em húngaro frequentemente trazem apenas uma etimologia e uma tabela de traduções, sem nenhum texto de definição, de modo que até um leitor perfeito sai de mãos vazias. Os casos mais difíceis se agrupam onde a linguística é mais difícil: línguas aglutinantes, como o finlandês e o húngaro, que geram paradigmas enormes, e os alfabetos cirílico e grego, onde a cobertura da comunidade é mais fina desde o início. O grego subiu de 15% para 57%; o fato de parar bem abaixo dos 92% do alemão é um fato sobre a fonte, não sobre o código. 6