Floresta de Decisão Multiclasse

Cria um modelo de classificação multiclasse usando o algoritmo de floresta de decisão

Categoria: Machine Learning/inicializar modelo/classificação

Observação

Aplica-se a: Machine Learning Studio (clássico)

Esse conteúdo pertence apenas ao estúdio (clássico). Módulos de arrastar e soltar semelhantes foram adicionados ao designer de Azure Machine Learning. Saiba mais neste artigo comparando as duas versões.

Visão geral do módulo

Este artigo descreve como usar o módulo floresta de decisão multiclasse no Azure Machine Learning Studio (clássico) para criar um modelo de aprendizado de máquina com base no algoritmo de floresta de decisão . Uma floresta de decisão é um modelo Ensemble que cria rapidamente uma série de árvores de decisão e, ao mesmo tempo, aprende com dados marcados.

Mais sobre as florestas de decisão

O algoritmo de floresta de decisão é um método de aprendizado Ensemble para classificação. O algoritmo funciona criando várias árvores de decisão e, em seguida, votando a classe de saída mais popular. A votação é uma forma de agregação, na qual cada árvore em uma floresta de decisão de classificação gera um histograma de frequência não normalizado de rótulos. O processo de agregação soma esses histogramas e normaliza o resultado para obter as "probabilidades" para cada rótulo. As árvores que têm alta confiança de previsão têm um peso maior na decisão final do Ensemble.

As árvores de decisão em geral são modelos não paramétricos, o que significa que dão suporte a dados com distribuições variadas. Em cada árvore, uma sequência de testes simples é executada para cada classe, aumentando os níveis de uma estrutura de árvore até que um nó folha (decisão) seja atingido.

Árvores de decisão têm muitas vantagens:

  • Podem representar limites de decisão não lineares.
  • São eficientes no uso de memória e computação durante o treinamento e a previsão.
  • Elas executam a seleção de recursos integrados e classificação.
  • Elas são flexíveis na presença de recursos com ruídos.

O classificador de floresta de decisão em Azure Machine Learning Studio (clássico) consiste em um Ensemble de árvores de decisão. Em termos gerais, os modelos de ensemble fornecem melhor cobertura e precisão que árvores de decisão únicas. Para obter mais informações, consulte árvores de decisão.

Como configurar a floresta de decisão multiclasse

Dica

Se você não tiver certeza dos melhores parâmetros, recomendamos o uso do módulo ajustar hiperparâmetros de modelo para treinar e testar vários modelos e encontrar os parâmetros ideais.

  1. Adicione o módulo floresta de decisão multiclasse ao seu experimento no estúdio (clássico). Você pode encontrar esse módulo em Machine Learning, inicializar modelo e classificação.

  2. Clique duas vezes no módulo para abrir o painel Propriedades .

  3. Para o método de reamostragem, escolha o método usado para criar as árvores individuais. Você pode escolher entre bagging ou replicação.

    • Bagging: bagging também é chamado de agregação de Bootstrap. Nesse método, cada árvore é expandida em um novo exemplo, criada pela amostragem aleatória do conjunto de datas original com substituição, até que você tenha um conjunto de um DataSet com o tamanho original. As saídas dos modelos são combinadas por votação, que é uma forma de agregação. Para obter mais informações, consulte a entrada da Wikipédia para agregação de bootstrap.

    • Replicate: na replicação, cada árvore é treinada exatamente com os mesmos dados de entrada. A determinação de qual predicado de divisão é usado para cada nó de árvore permanece aleatório, criando árvores diversas.

    Consulte a seção como configurar um modelo de floresta de decisão multiclasse para obter diretrizes.

  4. Especifique como você deseja que o modelo seja treinado, definindo a opção criar modo de instrutor .

    • Parâmetro único: Selecione esta opção se você souber como deseja configurar o modelo e fornecer um conjunto de valores como argumentos.

    • Intervalo de parâmetros: Use essa opção se você não tiver certeza dos melhores parâmetros e quiser usar uma limpeza de parâmetro.

  5. Número de árvores de decisão: digite o número máximo de árvores de decisão que podem ser criadas no Ensemble. Ao criar mais árvores de decisão, você pode potencialmente obter uma cobertura melhor, mas o tempo de treinamento pode aumentar.

    Esse valor também controla o número de árvores exibidas nos resultados, ao visualizar o modelo treinado. Para ver ou imprimir uma única árvore, você pode definir o valor como 1; no entanto, isso significa que apenas uma árvore pode ser produzida (a árvore com o conjunto inicial de parâmetros) e nenhuma iteração adicional é executada.

  6. Profundidade máxima das árvores de decisão: digite um número para limitar a profundidade máxima de qualquer árvore de decisão. Aumentar a profundidade da árvore pode aumentar a precisão, mas você corre o risco de algum tempo de treinamento com overfitting e maior.

  7. Número de divisões aleatórias por nó: digite o número de divisões a serem usadas ao compilar cada nó da árvore. Uma divisão significa que os recursos em cada nível da árvore (nó) são divididos aleatoriamente.

  8. Número mínimo de amostras por nó folha: indique o número mínimo de casos necessários para criar qualquer nó de terminal (folha) em uma árvore. Aumentando esse valor, você aumenta o limite para a criação de novas regras.

    Por exemplo, com o valor padrão de 1, um único caso pode causar uma nova regra a ser criada. Se você aumentar o valor para 5, os dados de treinamento precisam conter pelo menos 5 casos que atendem as mesmas condições.

  9. Permitir valores desconhecidos para recursos categóricos: Selecione esta opção para criar um grupo de valores desconhecidos nos conjuntos de treinamento ou validação. O modelo pode ser menos preciso para valores conhecidos, mas pode fornecer previsões melhores para valores novos (desconhecidos).

    Se você desmarcar essa opção, o modelo poderá aceitar somente os valores que estão presentes nos dados de treinamento.

  10. Conecte um conjunto rotulado e um dos módulos de treinamento:

    • Se você definir criar modo de instrutor como um único parâmetro, use o módulo treinar modelo .

    • Se você definir a opção criar modo de instrutor como intervalo de parâmetros, use o módulo ajustar hiperparâmetros de modelo . Com essa opção, o treinador pode iterar várias combinações das configurações e determinar os valores de parâmetro que produzem o melhor modelo.

    Observação

    Se você passar um intervalo de parâmetros para treinar o modelo, ele usará apenas o primeiro valor na lista intervalo de parâmetros.

    Se você passar um único conjunto de valores de parâmetro para o módulo ajustar hiperparâmetros de modelo , quando ele esperar um intervalo de configurações para cada parâmetro, ele ignorará os valores e usará os valores padrão para o aprendiz.

    Se você selecionar a opção intervalo de parâmetros e inserir um único valor para qualquer parâmetro, esse valor único especificado será usado em toda a varredura, mesmo que outros parâmetros sejam alterados em um intervalo de valores.

  11. Execute o experimento.

Resultados

Após a conclusão do treinamento:

  • Para ver a árvore que foi criada em cada iteração, clique com o botão direito do mouse em treinar modelo módulo e selecione modelo treinado para visualizar. Se você usar os hiperparâmetros de modelo de ajuste, clique com o botão direito do mouse no módulo e selecione melhor modelo treinado para visualizar o melhor modelo. Para ver as regras para cada nó, clique em cada árvore para fazer uma busca detalhada nas divisões.

Exemplos

Para obter exemplos de como as florestas de decisão são usadas no aprendizado de máquina, consulte o Galeria de ia do Azure:

Observações técnicas

Esta seção contém detalhes de implementação, dicas e respostas para perguntas frequentes.

Detalhes de implementação

Cada árvore em uma floresta de decisão de classificação gera um histograma de frequência não normalizado de rótulos. A agregação é somar esses histogramas e normalizar para obter as "probabilidades" para cada rótulo. Dessa forma, as árvores que têm alta confiança de previsão têm um peso maior na decisão final do Ensemble.

Para obter mais informações sobre o processo de treinamento com a opção replicar , consulte:

Como configurar um modelo de floresta de decisão multiclasse

Você pode alterar a maneira como o módulo é configurado para acomodar cenários como muito poucos dados ou tempo limitado para treinamento.

Tempo de treinamento limitado

Se o conjunto de treinamento contiver um grande número de instâncias, mas o tempo disponível para treinar o modelo for limitado, tente usar estas opções:

  • Criar uma floresta de decisão usando um número menor de árvores de decisão (por exemplo, de 5 a 10).
  • Use a opção Replicar para reamostragem.
  • Especifique um número menor de divisões aleatórias por nó (por exemplo, menos de 100).

Conjunto de treinamento limitado

Se o conjunto de treinamento contiver um número limitado de instâncias, tente usar estas opções:

  • Crie uma floresta de decisão usando um grande número de árvores de decisão (por exemplo, mais de 20).
  • Use a opção Bagging para reamostragem.
  • Especifique um grande número de divisões aleatórias por nó (por exemplo, mais de 1.000).

Parâmetros do módulo

Nome Intervalo Type Padrão Descrição
Método de reamostragem Qualquer ResamplingMethod Bagging Escolha um método de reamostragem: bagging ou replicate
Número de árvores de decisão >= 1 Inteiro 8 Especifique o número de árvores de decisão para criar o ensemble
Profundidade máxima das árvores de decisão >= 1 Inteiro 32 Especifique a profundidade máxima de qualquer árvore de decisão que possa ser criada
Número de divisões aleatórias por nó >= 1 Inteiro 128 Especifique o número de divisões geradas por nó, a partir das quais a divisão ideal é selecionada
Número mínimo de amostras por nó folha >= 1 Integer 1 Especifique o número mínimo de exemplos de treinamento necessários para gerar um nó folha
Permitir valores desconhecidos para recursos categóricos Qualquer Booliano verdadeiro Indique se valores desconhecidos de recursos categóricos existentes podem ser mapeados para um novo recurso adicional

Saídas

Nome Type Descrição
Modelo não treinado Interface ILearner Um modelo de classificação multiclasse não treinado

Veja também

Classificação
Floresta de decisão de duas classes
Regressão de floresta de decisão
Lista de Módulo A-Z