Árvore de Decisões Elevada de Duas Classes
Importante
O suporte para o Estúdio de ML (clássico) terminará a 31 de agosto de 2024. Recomendamos a transição para o Azure Machine Learning até essa data.
A partir de 1 de dezembro de 2021, não poderá criar novos recursos do Estúdio de ML (clássico). Até 31 de agosto de 2024, pode continuar a utilizar os recursos existentes do Estúdio de ML (clássico).
- Consulte informações sobre projetos de machine learning em movimento de ML Studio (clássico) para Azure Machine Learning.
- Saiba mais sobre Azure Machine Learning.
A documentação do Estúdio de ML (clássico) está a ser descontinuada e poderá não ser atualizada no futuro.
Cria um classificador binário usando um algoritmo de árvore de decisão reforçado
Categoria: Machine Learning / Modelo de Inicialização / Classificação
Nota
Aplica-se a: Machine Learning Studio (clássico) apenas
Módulos semelhantes de arrasto e queda estão disponíveis em Azure Machine Learning designer.
Visão geral do módulo
Este artigo descreve como usar o módulo De duas classes Boosted Decision Tree em Machine Learning Studio (clássico), para criar um modelo de machine learning que se baseia no algoritmo de árvores de decisão reforçada.
Uma árvore de decisão reforçada é um método de aprendizagem conjunto em que a segunda árvore corrige para os erros da primeira árvore, a terceira árvore corrige para os erros da primeira e segunda árvores, e assim por diante. As previsões são baseadas em todo o conjunto de árvores juntas que faz a previsão. Para mais detalhes técnicos, consulte a secção de Investigação deste artigo.
Geralmente, quando devidamente configuradas, as árvores de decisão reforçadas são os métodos mais fáceis de obter o melhor desempenho em uma grande variedade de tarefas de aprendizagem automática. No entanto, são também um dos alunos mais intensivos de memória, e a implementação atual guarda tudo na memória. Portanto, um modelo de árvore de decisão impulsionado pode não ser capaz de processar os conjuntos de dados muito grandes que alguns alunos lineares podem lidar.
Como configurar Two-Class Árvore de Decisão Reforçada
Este módulo cria um modelo de classificação destreinado. Como a classificação é um método de aprendizagem supervisionado, para treinar o modelo, é necessário um conjunto de dados marcado que inclua uma coluna de etiqueta com um valor para todas as linhas.
Pode treinar este tipo de modelo utilizando os módulos Train Model ou Tune Model Hyperparameters .
Em Machine Learning Studio (clássico), adicione o módulo Boosted Decision Tree à sua experiência.
Especifique como pretende que o modelo seja treinado, definindo a opção modo de formação Criar .
Parâmetro único: Se souber como pretende configurar o modelo, pode fornecer um conjunto específico de valores como argumentos.
Intervalo de parâmetros: Se não tiver a certeza dos melhores parâmetros, pode encontrar os parâmetros ideais utilizando o módulo Tune Model Hyperparameters . Você fornece alguma gama de valores, e o treinador itera sobre várias combinações das configurações para determinar a combinação de valores que produz o melhor resultado.
Para o número máximo de folhas por árvore, indique o número máximo de nós terminais (folhas) que podem ser criados em qualquer árvore.
Ao aumentar este valor, você potencialmente aumenta o tamanho da árvore e obtém uma melhor precisão, correndo o risco de sobremontagem e tempo de treino mais longo.
Para o número mínimo de amostras por nó folha, indique o número de casos necessários 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 predefinido 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.
Para Aprendizagem taxa, digite um número entre 0 e 1 que define o tamanho do passo durante a aprendizagem.
A taxa de aprendizagem determina a rapidez ou a lentidão com que o aluno converge na solução ideal. Se o tamanho do passo for demasiado grande, poderá ultrapassar a solução ideal. Se o tamanho do degrau for muito pequeno, o treino demora mais tempo a convergir para a melhor solução.
Para o número de árvores construídas, indicar o número total de árvores de decisão para criar no conjunto. Ao criar mais árvores de decisão, você pode potencialmente obter uma melhor cobertura, mas o tempo de treino vai aumentar.
Este valor também controla o número de árvores exibidas ao visualizar o modelo treinado. se quiser ver ou imprimir uma única árvore, desa um valor para 1. No entanto, quando o fazes, apenas uma árvore é produzida (a árvore com o conjunto inicial de parâmetros) e não são realizadas mais iterações.
Para sementes de número aleatório, digite opcionalmente um número inteiro não negativo para usar como valor de sementes aleatórias. Especificar uma semente garante a reprodutibilidade em todas as corridas que têm os mesmos dados e parâmetros.
A semente aleatória é definida por defeito a 0, o que significa que o valor inicial da semente é obtido a partir do relógio do sistema. Execuções sucessivas usando uma semente aleatória podem ter resultados diferentes.
Selecione Permita a opção de níveis categóricos desconhecidos para criar um grupo para valores desconhecidos nos conjuntos de treino e validação.
Se desmarcar esta opção, o modelo só pode aceitar os valores contidos nos dados de treino.
Se permitir valores desconhecidos, o modelo pode ser menos preciso para valores conhecidos, mas provavelmente pode fornecer melhores previsões para novos valores (desconhecidos).
Treine o modelo.
Se definir Criar o modo de treinador para o único parâmetro, conecte um conjunto de dados marcado e o módulo Modelo de Comboio .
Se definir Criar modo de treinador à gama de parâmetros, ligue um conjunto de dados marcado e treine o modelo utilizando hiperparmetros do Modelo de Sintonização.
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 através de uma gama de valores.
Resultados
Após o treino estar completo:
Para ver a árvore que foi criada em cada iteração, clique com o botão direito módulo Modelo de Trem e selecione modelo treinado para visualizar. Se utilizar hiperparmetros Tune Model, clique em linha com o módulo e selecione o melhor modelo treinado para visualizar o melhor modelo.
Clique em cada árvore para perfurar as divisões e ver as regras de cada nó.
Para utilizar o modelo para pontuar, conecte-o ao Modelo de Pontuação, para prever valores para novos exemplos de entrada.
Exemplos
Por exemplo, como as árvores de decisão reforçadas são usadas na aprendizagem automática, consulte a Galeria Azure AI:
Marketing direto: Utiliza o algoritmo de decisão de duas classes para prever a appetency do cliente.
Previsão do atraso do voo: Esta amostra utiliza o algoritmo de decisão reforçado de duas classes para determinar se um voo é suscetível de ser atrasado.
Risco de cartão de crédito: Esta amostra utiliza o algoritmo de decisão reforçado de duas classes para prever o risco.
Notas técnicas
Esta secção contém detalhes de implementação e perguntas frequentes.
Dicas de utilização
Para treinar um modelo de árvore de decisão reforçada, você deve fornecer várias instâncias de dados. Um erro é gerado durante o processo de treino se o conjunto de dados contiver poucas linhas.
Se os seus dados pesarem valores em falta, deve adicionar indicadores para as funcionalidades.
Em geral, as árvores de decisão reforçadas produzem melhores resultados quando as características estão um pouco relacionadas. Se as características têm um grande grau de entropia (isto é, não estão relacionadas), partilham pouca ou nenhuma informação mútua, e encomendar-lhes numa árvore não produz muito significado preditivo. Se não for esse o caso, pode tentar um modelo de florestas aleatórias.
O boosting também funciona bem quando se tem muitos mais exemplos do que funcionalidades, porque o modelo é propenso a sobremontagem.
Não normalize o conjunto de dados. Como o tratamento das características é uma simples, não-paramétrica, menos ou maior do que a comparação, a normalização ou qualquer forma de função de transformação não-monótona pode ter pouco efeito.
As características são discretas e binadas antes do treino, pelo que apenas um conjunto relativamente pequeno de candidatos limiares são considerados, mesmo para características contínuas.
Detalhes de implementação
Para obter informações detalhadas sobre o algoritmo da árvore de decisão reforçada, consulte a Aproximação da Função Gananciosa: Uma Máquina de Impulsionar o Gradient.
O algoritmo de árvore de decisão reforçada em Machine Learning utiliza o seguinte método de reforço:
Comece com um conjunto vazio de alunos fracos.
Para cada exemplo de treino, obtenha a saída atual do conjunto. Esta é a soma das saídas de todos os alunos fracos no conjunto.
Calcular o gradiente da função de perda para cada exemplo.
Isto depende se a tarefa é um problema de classificação binária ou um problema de regressão.
Num modelo de classificação binária, a perda de log é usada, tal como na regressão logística.
Num modelo de regressão , a perda ao quadrado é utilizada, e o gradiente é a saída atual, menos o alvo).
Utilize os exemplos para encaixar num aluno fraco, utilizando o gradiente definido como função-alvo.
Adicione o aprendiz fraco ao conjunto com uma força indicada pela taxa de aprendizagem, e se desejar, vá ao passo 2.
Nesta implementação, os alunos fracos são as árvores de regressão menos quadradas, com base nos gradientes calculados no passo 3. As árvores estão sujeitas às seguintes restrições:
São treinados até um número máximo de folhas.
Cada folha tem um número mínimo de exemplos para proteger contra a sobremontagem.
Cada nó de decisão é uma característica única que é comparada com algum limiar. Se essa característica for inferior ou igual ao limiar, vai por um caminho, e se for maior do que o limiar, vai pelo outro caminho.
Cada nó de folha é um valor constante.
O algoritmo de construção de árvores seleciona gananciosamente a característica e o limiar para o qual uma divisão minimiza a perda quadrada no que diz respeito ao gradiente calculado no passo 3. A seleção da divisão está sujeita a um número mínimo de exemplos de treino por folha.
O algoritmo divide-se repetidamente até atingir o número máximo de folhas, ou até que não haja uma divisão válida.
Parâmetros do módulo
Nome | Intervalo | Tipo | Predefinição | Description |
---|---|---|---|---|
Número máximo de folhas por árvore | >=1 | Número inteiro | 20 | Especificar o número máximo de folhas permitidas por árvore |
Número mínimo de amostras por nó de folha | >=1 | Número inteiro | 10 | Especificar o número mínimo de casos necessários para formar uma folha |
Taxa de aprendizagem | [Duplo. Epsilon;1.0] | Float | 0,2 | Especificar a taxa de aprendizagem inicial |
Número de árvores construídas | >=1 | Número inteiro | 100 | Especificar o número máximo de árvores que podem ser criadas durante o treino |
Semente de número aleatório | Qualquer | Número inteiro | Digite um valor para semear o gerador de números aleatórios que é utilizado pelo modelo. Deixe-o em branco para o padrão. | |
Permitir níveis categóricos desconhecidos | Qualquer | Booleano | Verdadeiro | Se verdadeiro, é criado um nível adicional para cada coluna categórica. Quaisquer níveis no conjunto de dados de teste que não estejam disponíveis no conjunto de dados de formação são mapeados para este nível adicional. |
Saída
Nome | Tipo | Description |
---|---|---|
Modelo destreinado | Interface ILearner | Um modelo de classificação binária destreinada |
Ver também
Classificação
Regressão da Árvore de Decisões Elevada
Lista de Módulos A-Z