Floresta de Decisão de Várias Classes

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

Categoria: Machine Learning / Initialize Model / Classification

Nota

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

Este conteúdo diz respeito apenas ao Studio (clássico). Módulos semelhantes de arrasto e queda foram adicionados ao designer de Aprendizagem automática Azure. Saiba mais neste artigo comparando as duas versões.

Visão geral do módulo

Este artigo descreve como usar o módulo Multiclass Decision Forest no Azure Machine Learning Studio (clássico), para criar um modelo de aprendizagem automática baseado no algoritmo da floresta de decisão. Uma floresta de decisão é um modelo conjunto que constrói rapidamente uma série de árvores de decisão, enquanto aprende com dados marcados.

Mais sobre as florestas de decisão

O algoritmo da floresta de decisão é um método de aprendizagem conjunto para a classificação. O algoritmo funciona construindo várias árvores de decisão e, em seguida, votando na classe de saída mais popular. O voto é uma forma de agregação, na qual cada árvore numa decisão de classificação florestal produz um histograma de frequência não normalizado de rótulos. O processo de agregação resume estes histogramas e normaliza o resultado para obter as "probabilidades" de cada rótulo. As árvores que têm alta confiança de previsão têm um maior peso na decisão final do conjunto.

As árvores de decisão em geral são modelos não paramétricos, o que significa que suportam dados com distribuição variada. 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 alcançado.

As árvores de decisão têm muitas vantagens:

  • Podem representar limites de decisão não lineares.
  • São eficientes no cálculo e no uso da memória durante o treino e previsão.
  • Realizam seleção e classificação integradas de recursos.
  • São resistentes na presença de características ruidosas.

O classificador da floresta de decisão no Azure Machine Learning Studio (clássico) consiste num conjunto de árvores de decisão. Geralmente, os modelos conjuntos proporcionam uma melhor cobertura e precisão do que as árvores de decisão únicas. Para mais informações, consulte as árvores de decisão.

Como configurar a Floresta de Decisão Multiclasse

Dica

Se não tiver a certeza dos melhores parâmetros, recomendamos que utilize o módulo Tune Model Hyperparameters para treinar e testar vários modelos e encontrar os parâmetros ideais.

  1. Adicione o módulo Multiclass Decision Forest à sua experiência em Studio (clássico). Pode encontrar este módulo em Machine Learning, Initialize Modele Classification.

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

  3. Para o método de resampling, escolha o método utilizado para criar as árvores individuais. Pode escolher entre embalar ou replicar.

    • Embalamento: O embalamento também é chamado de agregador de botas. Neste método, cada árvore é cultivada numa nova amostra, criada por amostragem aleatória do conjunto de dados original com substituição até ter um conjunto de dados do tamanho do original. As saídas dos modelos são combinadas com o voto, que é uma forma de agregação. Para mais informações, consulte a entrada na Wikipédia para a agregação de Bootstrap.

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

    Consulte a secção Como Configurar um Modelo Florestal de Decisão Multiclasse para obter orientação.

  4. Especifique como pretende que o modelo seja treinado, definindo a opção modo de formação Create.

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

    • Intervalo de parâmetros: Utilize esta opção se não tiver a certeza dos melhores parâmetros e pretender utilizar uma varredura de parâmetros.

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

    Este valor também controla o número de árvores apresentadas nos resultados, ao visualizar o modelo treinado. Para ver ou imprimir uma única árvore, pode definir o valor para 1; no entanto, isto significa que apenas uma árvore pode ser produzida (a árvore com o conjunto inicial de parâmetros), e não são realizadas mais iterações.

  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, correndo o risco de alguma adaptação excessiva e maior tempo de treino.

  7. Número de divisões aleatórias por nó: Digite o número de divisões a utilizar ao construir cada nó da árvore. Uma divisão significa que as características em cada nível da árvore (nó) são divididas aleatoriamente.

  8. Número mínimo de amostras por nó folha: Indique o número mínimo de caixas necessárias para criar qualquer nó terminal (folha) numa árvore. Ao aumentar este valor, aumenta-se o limiar para a criação de novas regras.

    Por exemplo, com o valor padrão de 1, mesmo um único caso pode fazer com que uma nova regra seja criada. Se aumentar o valor para 5, os dados da formação terão de conter pelo menos 5 casos que satisfaçam as mesmas condições.

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

    Se desmarcar esta opção, o modelo só pode aceitar os valores presentes nos dados de formação.

  10. Ligue um datset rotulado e um dos módulos de treino:

    • Se definir Criar modo de treinador para single parâmetro, utilize o módulo Modelo de Comboio.

    • Se definir Criar a opção de modo de treinador para a gama de parâmetros, utilize o módulo de hiperparametros do modelo de melodia. Com esta opção, o treinador pode iterar sobre várias combinações das definições e determinar os valores de parâmetro que produzem o melhor modelo.

    Nota

    Se passar uma gama de parâmetros para o Modelo de Comboio,utiliza apenas o primeiro valor na lista de parâmetros.

    Se passar um único conjunto de valores de parâmetros para o módulo Tune Model Hyperparameters, quando espera uma gama de definições para cada parâmetro, ignora os valores e utiliza os valores predefinidos para o aluno.

    Se selecionar a opção De Alcance de Parâmetros e introduzir um único valor para qualquer parâmetro, esse valor único especificado é utilizado ao longo da varredura, mesmo que outros parâmetros se alterem numa gama de valores.

  11. Execute a experimentação.

Resultados

Após o treino estar completo:

  • Para ver a árvore que foi criada em cada iteração, clique com a direita na saída do módulo Train Model ou do módulo Tune Model Hyperparameters e selecione Visualize.
  • Para ver as regras de cada nó, clique em cada árvore para perfurar as divisões.

Exemplos

Por exemplo, como as florestas de decisão são utilizadas na aprendizagem automática, consulte a Galeria Azure AI:

Notas técnicas

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

Detalhes de implementação

Cada árvore numa decisão de classificação a floresta produz um histograma de frequência não normalizado de rótulos. A agregação é resumir estes histogramas e normalizar para obter as "probabilidades" de cada rótulo. Desta forma, as árvores que têm alta confiança de previsão têm um maior peso na decisão final do conjunto.

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

Como Configurar um Modelo Florestal de Decisão Multiclasse

Pode alterar a forma como o módulo está configurado para acomodar cenários como poucos dados ou tempo limitado para treinar.

Tempo de treino limitado

Se o conjunto de treino contiver um grande número de casos, mas o tempo disponível para treinar o modelo é limitado, tente utilizar estas opções:

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

Conjunto de formação limitado

Se o conjunto de treino contiver um número limitado de casos, tente utilizar estas opções:

  • Criar uma floresta de decisão que utilize um grande número de árvores de decisão (por exemplo, mais de 20).
  • Utilize a opção de ensaboamento para resampling.
  • 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 Tipo Predefinição Descrição
Método de resampling Qualquer ResamplingMethod Embalamento Escolha um método de resampling: Ensacador ou replicar
Número de árvores de decisão >=1 Número inteiro 8 Especificar o número de decisão que as árvores devem criar no conjunto
Profundidade máxima das árvores de decisão >=1 Número inteiro 32 Especificar a profundidade máxima de qualquer árvore de decisão que possa ser criada
Número de divisões aleatórias por nó >=1 Número inteiro 128 Especificar o número de divisões geradas por nó, a partir do qual é selecionada a divisão ideal
Número mínimo de amostras por nó folha >=1 Número inteiro 1 Especificar o número mínimo de amostras de treino necessárias para gerar um nó folha
Permitir valores desconhecidos para características categóricas Qualquer Booleano Verdadeiro Indicar se valores desconhecidos das características categóricas existentes podem ser mapeados para uma nova funcionalidade adicional

Saídas

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

Ver também

Classificação
Floresta de Decisão de duas classes
Decisão Regressão Florestal
Lista de Módulos A-Z