O k fold padrão divide as linhas aleatoriamente em k partes, treinando em k menos uma e validando na parte separada, e depois tira a média. Com série temporal isso é inválido, porque divisões aleatórias deixam o modelo treinar no futuro e prever o passado. Use forward chaining no lugar: treine em tudo até o instante t, valide na janela seguinte, avance, e deixe um intervalo se as features usam janelas móveis.
Por que os entrevistadores perguntam isso
Vazamento pelo tempo é uma das causas mais comuns de um modelo parecer ótimo offline e morrer em produção, então os entrevistadores usam isso para ver se você pensa em como o modelo vai ser usado de verdade. Eles também escutam divisão por grupo quando as linhas não são independentes, por exemplo várias linhas por cliente, e se você ajusta o pré processamento dentro do fold em vez de no dataset inteiro.
Como estruturar sua resposta
- Descreva o k fold simples em uma frase.
- Explique por que divisões aleatórias vazam quando o tempo importa.
- Descreva o forward chaining e o intervalo entre treino e validação.
- Acrescente divisões por grupo para entidades repetidas e pré processamento dentro do fold.
Exemplo de resposta
O k fold normal embaralha as linhas em folds e vai rodando qual você separa. Isso funciona quando as linhas são independentes, e desmorona no momento em que elas não são. Com série temporal eu uso forward chaining: treino nos meses um a seis, valido no sete, depois treino até o sete e valido no oito, e assim por diante. A validação sempre fica depois da janela de treino, que é como o modelo vai ser usado. Eu também deixo um intervalo quando as minhas features usam janelas móveis, porque uma média móvel de trinta dias calculada bem na fronteira contém, silenciosamente, informação do período de validação. A outra armadilha são entidades repetidas. Se um cliente tem quarenta linhas e elas caem no treino e na validação, o modelo consegue memorizar aquele cliente e a métrica infla, então eu agrupo pelo ID do cliente. E eu ajusto scalers e encoders dentro de cada fold, nunca no dataset completo primeiro, porque ajustar em tudo vaza a distribuição de validação para o treino. Só isso já explicou alguns pontos de queda entre o offline e o ao vivo para mim.
Vai encarar essa entrevista em breve? O GhostPilot escuta a sua chamada ao vivo, identifica a pergunta no instante em que ela é feita e coloca uma resposta estruturada na sua tela em tempo real. Teste na sua próxima entrevista simulada ou pegue um Session Pass de $29, sem assinatura, para a hora da verdade.
Veja como funcionaPerguntas de acompanhamento que você pode esperar
- Quantos folds você usa, e por quê?
- O que é validação cruzada aninhada e quando você precisa dela?
- Como você validaria um modelo que prevê um evento raro que acontece poucas vezes por ano?
Mais perguntas para Cientista de Dados
Seu entrevistador vai fazer a própria versão desta. Cole a descrição real da vaga no Question Predictor gratuito e receba as 20 perguntas que essa vaga tem mais chance de fazer, com o que cada uma está de fato sondando.
Prever minhas perguntas