2
respostas

Minha função confirma_palavra_correta ( ) está muito lenta, o que será que eu fiz de errado no código?

def probabilidade (palavras_geradas): total_palavras = len(lista_normalizada) frequencia = nltk.FreqDist(lista_normalizada) return frequencia [palavras_geradas] / total_palavras

def confirma_palavra_correta(palavra): palavras_geradas = gerador_palavras(palavra) palavra_correta = max(palavras_geradas, key= probabilidade) return palavra_correta

2 respostas

Bom dia Eder, tudo bem? Espero que sim!

Não há nada de errado com seu código, ele está correto.

A demora é por exigir poder de processamento do computador, se você passar uma palavra muito longa por exemplo, da maneira que foi feita o corretor, ele irá gerar todas as combinações através do gerador_palavras() e depois pegar a palavra com a maior probabilidade usando a função max().

Dependendo da palavra que você for escrever, serão geradas 500.000, 1.000.000 de palavras através do método gerador_palavras e o tempo vai depender do processamento do seu computador.

Bons estudos!

Agradeço a informação.