K-fold Cross-Validation na aprendizagem automática

K-fold Cross-Validation
Avaliação de modelos
Capacidade de generalização
K-fold Cross-Validation na aprendizagem automática cover image

A validação cruzada K-fold é uma técnica utilizada para avaliar o desempenho de um modelo. É particularmente útil para estimar a capacidade de generalização de um modelo a dados novos e não vistos. O processo envolve a divisão do conjunto de dados em 'k' subconjuntos ou dobras de tamanho aproximadamente igual. Eis uma descrição dos passos:

1. Divisão do conjunto de dados:

O conjunto de dados é dividido em 'k' subconjuntos ou dobras de igual dimensão. Por exemplo, se tiver 1.000 amostras e escolher 'k' como 5, cada dobra conterá 200 amostras.

2. Formação e avaliação iterativas:

O modelo é treinado 'k' vezes. Em cada iteração, é utilizada uma dobra diferente como conjunto de validação e as restantes dobras são utilizadas para o treino. Por exemplo:

  • Iteração 1: Dobra 1 como validação, Dobras 2 a k para treino

  • Iteração 2: Dobra 2 como validação, Dobras 1 e 3 para k para treino

  • Iteração 3: Dobra 3 como validação, Dobras 1 e 2, e 4 a k para treino

  • ... e assim sucessivamente até que todas as dobras tenham sido utilizadas como conjunto de validação.

3. Avaliação do desempenho:

Após cada iteração, o desempenho do modelo é avaliado utilizando uma métrica escolhida (por exemplo, exatidão, precisão, recuperação, etc.) no conjunto de validação. As métricas de desempenho de cada iteração são calculadas como média ou combinadas para obter uma estimativa global do desempenho do modelo.

4. Agregação de métricas:

As métricas de desempenho (e.g. pontuações de exactidão) de cada iteração são calculadas como média ou combinadas para fornecer uma avaliação global do desempenho do modelo. Esta métrica agregada representa o desempenho esperado do modelo em dados não vistos.

Vantagens da validação cruzada K-fold em relação a uma simples divisão entre treino e teste

  • Melhor utilização dos dados: A validação cruzada K-fold permite uma melhor utilização dos dados disponíveis, uma vez que cada amostra é utilizada tanto para a formação como para a validação.

  • Redução da variância na estimativa de desempenho: Fornece uma estimativa mais fiável do desempenho do modelo, reduzindo a variância associada a uma única divisão de treino/teste.

  • Generalização: Ajuda a compreender o desempenho do modelo em diferentes subconjuntos de dados, avaliando assim a sua capacidade de generalização.

Seleção do valor de 'k'

  • Valores 'k' mais elevados: A utilização de um valor 'k' mais elevado (e.g. 10 ou mais) resulta em conjuntos de validação mais pequenos, o que pode levar a uma menor distorção na estimativa do desempenho, mas a um custo computacional mais elevado.

  • Valores 'k' mais baixos: A utilização de um valor 'k' mais baixo (e.g. 3 ou 5) reduz os custos de computação mas pode levar a uma maior distorção na estimativa do desempenho devido a conjuntos de validação mais pequenos.

Em cenários práticos

  • Para grandes conjuntos de dados, valores mais elevados de 'k' podem ser computacionalmente dispendiosos.

  • Quando o conjunto de dados é pequeno, um 'k' mais elevado pode não fornecer dados suficientes em cada dobra para uma formação robusta do modelo.

  • Em geral, valores como 5 ou 10 são normalmente utilizados, uma vez que estabelecem um equilíbrio entre a eficiência computacional e uma estimativa fiável do desempenho.


Career Services background pattern

Serviços de carreira

Contact Section background image

Vamos manter-nos em contacto

Code Labs Academy © 2024 Todos os direitos reservados.