Regressão Logística de Várias Classes

Cria um modelo de classificação de regressão logística multiclasse

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 de Regressão Logística Multiclass no Azure Machine Learning Studio (clássico), para criar um modelo de regressão logística que pode ser usado para prever múltiplos valores.

A classificação utilizando a regressão logística é um método de aprendizagem supervisionado, pelo que requer um conjunto de dados rotulado. Treina o modelo fornecendo o modelo e o conjunto de dados rotulados como uma entrada para um módulo como o Train Model ou Tune Model Hyperparameters. O modelo treinado pode então ser usado para prever valores para novos exemplos de entrada.

O Azure Machine Learning Studio (clássico) também fornece um módulo de regressão logística de duas classes, que é adequado para a classificação de variáveis binárias ou dicotomias.

Mais sobre regressão logística multiclasse

A regressão logística é um método bem conhecido nas estatísticas que é usado para prever a probabilidade de um resultado, e é particularmente popular para tarefas de classificação. O algoritmo prevê a probabilidade de ocorrência de um evento, adaptando dados a uma função logística. Para mais informações sobre esta implementação, consulte a secção Notas Técnicas.

Na regressão logística multiclasse, o classificador pode ser usado para prever múltiplos resultados.

Como configurar uma Regressão Logística Multiclass

  1. Adicione o módulo de regressão logística multiclasse à experiência.

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

    • Parâmetro único: Utilize esta opção se souber como pretende configurar o modelo e fornecer um conjunto específico 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.

  3. Tolerância à otimização, especifique o valor limiar para a convergência optimizador. Se a melhoria entre iterações for inferior ao limiar, o algoritmo para e devolve o modelo atual.

  4. Peso de regularização L1, peso de regularização L2: Digite um valor a utilizar para os parâmetros de regularização L1 e L2. Recomenda-se um valor não zero para ambos.

    A regularização é um método para prevenir a sobremontagem, penalizando modelos com valores de coeficiente extremos. A regularização funciona adicionando a penalidade que está associada aos valores do coeficiente ao erro da hipótese. Um modelo preciso com valores de coeficiente extremo seria penalizado mais, mas um modelo menos preciso com valores mais conservadores seria menos penalizado.

    A regularização L1 e L2 tem efeitos e utilizações diferentes. L1 pode ser aplicado em modelos escassos, o que é útil quando se trabalha com dados de alta dimensão. Em contrapartida, a regularização L2 é preferível para dados que não são escassos. Este algoritmo suporta uma combinação linear de valores de regularização L1 e L2: isto é, se x = L1 e , define o período linear dos termos de y = L2 ax + by = c regularização.

    Diferentes combinações lineares de termos L1 e L2 foram concebidas para modelos de regressão logística, tais como regularização líquida elástica.

  5. Tamanho da memória para L-BFGS: Especifique a quantidade de memória a utilizar para a otimização L-BFGS. Este parâmetro indica o número de posições e gradientes passados para armazenar para a computação do passo seguinte.

    L-BFGS significa memória limitada Broyden-Fletcher-Goldfarb-Shanno, e é um algoritmo de otimização que é popular para a estimativa de parâmetros. Este parâmetro de otimização limita a quantidade de memória que é usada para calcular o próximo passo e direção. Quando se especifica menos memória, o treino é mais rápido, mas menos preciso.

  6. Semente de número aleatório: Digite um valor inteiro para usar como semente para o algoritmo se quiser que os resultados sejam repetíveis ao longo de percursos. Caso contrário, um valor do relógio do sistema é usado como semente, que pode produzir resultados ligeiramente diferentes em execuções da mesma experiência.

  7. Permitir níveis categóricos desconhecidos: Selecione esta opção para criar um nível adicional de "desconhecido" em cada coluna categórica. Quaisquer valores (níveis) no conjunto de dados de teste que não estejam presentes no conjunto de dados de formação são mapeados para este nível "desconhecido".

  8. Ligue um conjunto de dados rotulado e um dos módulos do comboio:

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

    • Se definir Criar o modo de treinador para a gama de parâmetros, utilize o módulo de hiperparametros do modelo de melodia. Com esta opção, pode especificar vários valores, e o treinador itera sobre várias combinações das definições para determinar a combinação de valores que produz 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.

  9. Execute a experimentação.

Resultados

Após o treino estar completo:

  • Para ver um resumo dos parâmetros do modelo, juntamente com os pesos de recurso aprendidos com o treino, clique com o botão direito na saída do módulo Train Model ou tune Model Hyperparameters, e selecione Visualize.

Exemplos

Por exemplo, como este algoritmo de aprendizagem é usado, consulte a Galeria Azure AI:

Notas técnicas

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

Quer saber mais sobre a regularização L1 e L2? O seguinte artigo fornece uma discussão sobre como a regularização L1 e L2 são diferentes e como eles afetam a montagem do modelo, com amostras de código para regressão logística e modelos de rede neural.

Para obter mais informações sobre a implementação deste algoritmo, consulte:

Detalhes de implementação

A regressão logística requer variáveis numéricas. Portanto, quando se tenta usar colunas categóricas como variável, o Azure Machine Learning converte os valores num conjunto indicador interno.

Para datas e horários, é utilizada uma representação numérica. Para obter mais informações sobre os valores da hora da data, consulte a Estrutura dateTime .NET Framework. Se quiser lidar com datas e horários de forma diferente, sugerimos que crie uma coluna derivada.

A regressão logística padrão é binomial e assume duas classes de saída. A regressão logística multiclassificado ou multinomial pressupõe três ou mais classes de saída.

A regressão logística binomial pressupõe uma distribuição logística dos dados, onde a probabilidade de um exemplo pertencer à classe 1 é a fórmula:

p(x;β0,…, βD-1)

Em que:

  • x é um vetor d-dimensional contendo os valores de todas as características do caso.

  • p é a função de distribuição logística.

  • β{0},..., β {D-1} são os parâmetros desconhecidos da distribuição logística.

O algoritmo tenta encontrar os valores ideais para β{0},..., β {D-1} maximizar a probabilidade de registo dos parâmetros dadas as entradas. A maximização é realizada utilizando um método popular para a estimativa de parâmetros, chamado BFGS de Memória Limitada.

Parâmetros do módulo

Nome Intervalo Tipo Predefinição Descrição
Tolerância à otimização >=duplo. Epsilon Float 0.0000001 Especificar um valor de tolerância para o otimizador L-BFGS
Peso de regularização L1 >=0.0 Float 1,0 Especifique o peso da regularização L1. Utilize um valor não zero para evitar a sobremontagem.
Peso de regularização L2 >=0.0 Float 1,0 Especifique o peso da regularização L2. Utilize um valor não zero para evitar a sobremontagem.
Tamanho da memória para L-BFGS >=1 Número inteiro 20 Especifique a quantidade de memória (em MB) para utilizar para o otimizador L-BFGS. Quando menos memória é usada, o treino é mais rápido, mas menos preciso.
Semente de número aleatório Qualquer Número inteiro Digite um valor para semear o gerador de números aleatórios utilizado pelo modelo. Deixe em branco para o padrão.
Permitir níveis categóricos desconhecidos Qualquer Booleano Verdadeiro Indicar se deve ser 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ídas

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

Ver também

Classificação
Regressão Logística de duas classes
Lista de Módulos A-Z