Então, antes de criar o Word Vínculos que cria significado de representações de palavras e reduz a dimensionalidade, como podemos criar um bom vocabulário, que capta algumas de essência em nossa língua. Existem diferentes idiomas ao redor do mundo e diferentes estruturas para cada idioma. Línguas aglutinativas como o aglutinado Turco (adicionar em cima) de cada palavra para criar um outro significado a partir da mesma palavra inicial. Similar, em inglês, a parte sufixo de smart – est é est onde pode ser usado em muitas palavras.
Por exemplo, em nosso vocabulário podemos não ter a palavra mais alta, mas pode ter a palavra alta quando ela indica como alto – est a incorporação de token terá uma representação de est para que ele terá uma informação para a palavra mais alto.
na criança também ocorre uma estrutura semelhante. Uma criança não precisa ouvir cada palavra e sua forma plural para entender. Depois de ouvir muitas formas plurais de objeto como carros, abelhas e outros objetos, o cérebro da criança estrutura-o de uma forma em que quando uma criança sabe o que é um chapéu não precisa ouvir a palavra chapéus para usá-lo. Os modelos de linguagem devem também indicar o mecanismo estrutural do nosso vocabulário.
BPE tem duas vantagens que ele sabe como lidar com palavras desconhecidas e pode-se inferir o significado de palavras desconhecidas
Como funciona
precisamos de um arquivo que é um bom representante do idioma que você está tentando indexar.
- ligue para o .txt file split each word in the string and add </w> to end of each word. Crie um dicionário de frequência de palavras.
2. Criar uma função que obtém o vocabulário e em cada palavra no vocabulário dividir cada palavra em caracteres e criar um dicionário de frequência da maioria dos caracteres emparelhados.
3. Durante o nosso processo de treino, vamos continuar a actualizar o nosso vocabulário. A função ‘merge_ vocábulo’ irá obter o antigo Dicionário de vocabulário e actualizá-lo com o par de caracteres mais frequente.
4. Os tokens Get serão usados mais tarde para tokenizar as cadeias de entrada
criando o vocabulário
assim, após alimentar o nosso vocabulário inicial e a frequência das palavras. Vamos criar um loop que irá criar tokenization fora do vocabulário. Cada iteração irá encontrar o personagem que ocorre em conjunto e adicioná-los ao vocabulário.
No Exemplo vamos dizer que nosso vocabulário é
- Vamos adicionar o nosso final de palavra token
- A inicial os tokens serão
- Vamos para o vocabulário e verificar bigrams e contar a frequência de bigrams neste caso o ‘r’ e ‘</w>’ nós atualizamos o token dicionário
- adicione o novo personagem para o nosso vocabulário ‘r</w>’
Você decidir quantas iterações este deve ter lugar. Pode ser 10.000 ou 100.000. Você decide qual deve ser o seu vocabulário tamanho.
codificação e descodificação
para codificar a sentença dada primeiro precisamos converter o nosso dicionário token de palavra mais longa para palavra mais Curta. Adicionamos dividir cada palavra na frase e adicionamos </w> ao fim da palavra. Nós iteramos através de cada token e se a substring da palavra inclui o token nós colocamos esse token como processo de tokenization. A decodificação é dado o nosso tokens podemos mesclar a palavra não tem </w> e adicionar ” se a palavra </w> no final.