1
resposta

E quando submeto um texto "diferente" ao .PREDICT ???

Olá pessoal,

Depois de ter montado meus conjuntos de treino, e tendo meu modelo treinado e pronto para uso, fiquei com uma dúvida relacionada à submissão de novos textos ao meu modelo.

Certamente estes novos textos que submeterei, conterão palavras que não haviam sido "mapeadas" no conjunto de palavras utilizadas para o treinamento. Logo, potencialmente, meu modelo não as reconhecerá e, se elas forem relevantes, isto pode prejudicar os resultados da predição.

Preciso me preocupar com isso? Os algoritmos resolvem isto? Pensei em retroalimentar meu modelo e treinar novamente em frequencias X. Dicas???

Muito obrigado,

Amandio

1 resposta

Oii Amandio, tudo certinho por ai?

Desculpa a demora em te dar um retorno.

A sua ideia de retroalimentar o modelo e treinar novamente está correta, até porque com o passar do tempo o modelo perde sua acurácia se não tiver essa inserção de dados novos. Para fazer isso, você pode salvar o modelo como um arquivo .pickle e carregar ele quando quiser treiná-lo novamente. Uma observação sobre isso é que os novos dados de treinamento devem ter uma distribuição semelhante com os dados que você usou antes, para que não mude a natureza dos dados.

Em relação à frequência para um novo treinamento, é algo que você deve decidir conforme a necessidade do problema, sempre levando em conta se obteve uma acurácia que satisfaça sua necessidade, mas é importante lembrar que esses novos treinamentos tem custo computacional e de tempo, dependendo do tamanho da base de dados, pode demorar muito para que seja feito e ficar inviável para ti.

De modo geral, levamos em conta algumas considerações para tomar a decisão de um retreinamento, como mostro na imagem abaixo:

Imagem com fundo branco titulada "Devo treinar novamente o modelo?". Nessa imagem temos um diagrama com quatro retângulos menores no meio, logo abaixo do título e dois retângulos maiores e verticais localizados nas laterais. O retângulo da lateral esquerda está na cor rosa com a escrita "Provavelmente devemos esperar" e o da lateral direita possui a cor verde com a escrita "Vamos treinar novamente o modelo!". Os retângulos centrais e laterais estão ligados por setas com as escritas "Sim" em azul escuro ou "Não" em vermelho. Os retângulos centrais possuem perguntas, que são respondidas pelas setas com Sim ou Não apontando para o próximo retângulo como resposta. O primeiro retângulo central "Você acumulou os dados?" está com a seta Não apontada para o retângulo rosa a esquerda e a seta Sim apontada para o próximo retângulo central, que está abaixo dele. O segundo retângulo central "O modelo foi treinado com um pequeno conjunto de dados?" está com a seta Sim apontando para o retângulo verde a direita e com a seta Não apontando para o próximo retângulo central. O terceiro retângulo central "O modelo é usado em ambiente adverso?" está com a seta Sim apontando para o retângulo verde a direita e com a seta Não apontando para o próximo e último retângulo central. O quarto retângulo central "O modelo é usado em um ambiente dinâmico?" está com a seta Sim apontada para o retângulo verde a direita e com a seta Não apontando para o retângulo rosa a esquerda

Aqui dentro da Alura temos algumas aulas que te darão um arcabouço maior sobre o problema apresentado e como ele é tratado e que deixo como recomendação, são elas:

A importância do pipeline no crossvalidate do curso de Machine Learning: Validação de modelos é apresentado o StanderScaler, que é o equivalente ao “tratamento” dos dados no problema apresentado por você.

Bag of words do curso Linguagem Natural parte 1: Introdução a NLP com análise de sentimento. Nessa aula, o instrutor explica o que é o termo bag of words e como ele funciona, onde resumidamente, ele vai aprender algumas palavras e com isso criar um vetor, esse é o fit. Então se você utilizar o transform ele vai utilizar as palavras que ele conhece para criar um vetor de novos dados.

E como leitura complementar, deixo o artigo Quando devo treinar novamente um modelo de Machine Learning, que trata sobre as considerações que são levadas para um novo treinamento. O artigo está em inglês, mas você pode usar a ferramenta de tradução do Google.

Espero ter ajudado e qualquer dúvida fico a disposição.

Grande abraço!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!