Validação cruzada - Amazon Machine Learning

Não estamos mais atualizando o serviço Amazon Machine Learning nem aceitando novos usuários para ele. Essa documentação está disponível para usuários existentes, mas não estamos mais atualizando-a. Para obter mais informações, consulte O que é o Amazon Machine Learning.

Validação cruzada

Validação cruzada é uma técnica para avaliar modelos de ML por meio de treinamento de vários modelos de ML em subconjuntos de dados de entrada disponíveis e avaliação deles no subconjunto complementar dos dados. Use a validação cruzada para detectar sobreajuste, ou seja, a não generalização de um padrão.

No Amazon ML, você pode usar o método de validação cruzada k-fold para executar a validação cruzada. Na validação cruzada k-fold, você divide os dados de entrada em subconjuntos de dados k (também chamados de folds). Você treina um modelo de ML em todos, menos em um (k-1) dos conjuntos de dados e, em seguida, avalia o modelo no conjunto de dados que não foi usado para treinamento. Esse processo é repetido k vezes, com um subconjunto diferente reservado para avaliação (e excluído do treinamento) a cada vez.

O diagrama a seguir mostra um exemplo de subconjuntos de treinamento e subconjuntos de avaliação complementar gerados para cada um dos quatro modelos que são criados e treinados durante uma validação cruzada 4-fold. O modelo um usa os primeiros 25% dos dados para avaliação e os 75% restantes para treinamento. O modelo dois usa o segundo subconjunto de 25 por cento (25 a 50 por cento) para avaliação, e os três subconjuntos restantes de dados para treinamento e assim por diante.

Cada modelo é treinado e avaliado usando fontes de dados complementares. Os dados na fonte de dados de avaliação incluem e são limitados a todos os dados que não aparecem na fonte de dados de treinamento. Você cria fontes de dados para cada um desses subconjuntos com o parâmetro DataRearrangement nas APIs createDatasourceFromS3, createDatasourceFromRedShift e createDatasourceFromRDS. No parâmetro DataRearrangement, para especificar qual subconjunto de dados deve ser incluído em uma fonte de dados, especifique onde começa e termina cada segmento. Para criar as fontes de dados complementares necessárias para uma validação cruzada 4k-fold, especifique o parâmetro DataRearrangement conforme mostrado no exemplo a seguir:

Modelo um:

Fonte de dados para avaliação:

{"splitting":{"percentBegin":0, "percentEnd":25}}

Fonte de dados para treinamento:

{"splitting":{"percentBegin":0, "percentEnd":25, "complement":"true"}}

Modelo dois:

Fonte de dados para avaliação:

{"splitting":{"percentBegin":25, "percentEnd":50}}

Fonte de dados para treinamento:

{"splitting":{"percentBegin":25, "percentEnd":50, "complement":"true"}}

Modelo três:

Fonte de dados para avaliação:

{"splitting":{"percentBegin":50, "percentEnd":75}}

Fonte de dados para treinamento:

{"splitting":{"percentBegin":50, "percentEnd":75, "complement":"true"}}

Modelo quatro:

Fonte de dados para avaliação:

{"splitting":{"percentBegin":75, "percentEnd":100}}

Fonte de dados para treinamento:

{"splitting":{"percentBegin":75, "percentEnd":100, "complement":"true"}}

Executar uma validação cruzada 4-fold gera quatro modelos, quatro fontes de dados para treinar os modelos, quatro fontes de dados para avaliar os modelos e quatro avaliações, uma para cada modelo. O Amazon ML gera uma métrica de desempenho de modelo para cada avaliação. Por exemplo, em uma validação cruzada 4-fold para um problema de classificação binária, cada uma das avaliações informa uma métrica de área sob a curva (AUC). Você pode obter a medição do desempenho geral por meio da computação da média das quatro métricas AUC. Para obter informações sobre a métrica AUC, consulte Medição da precisão do modelo de ML.

Para obter o código de exemplo que mostra como criar uma validação cruzada e a média das pontuações do modelo, consulte o Código de exemplo do Amazon ML.

Ajustar os modelos

Após ter feito a validação cruzada dos modelos, você pode ajustar as configurações para o próximo modelo se ele não funcionar conforme os padrões. Para obter mais informações sobre sobreajuste, consulte Ajuste do modelo: subajuste x sobreajuste. Para obter mais informações sobre regularização, consulte Regularização. Para obter mais informações sobre alteração das configurações de regularização, consulte Criar um modelo de ML com opções personalizadas.