Regressão Logística de Duas Classes
Importante
O suporte para o Machine Learning Studio (clássico) terminará em 31 de agosto de 2024. É recomendável fazer a transição para o Azure Machine Learning até essa data.
A partir de 1º de dezembro de 2021, você não poderá criar recursos do Machine Learning Studio (clássico). Até 31 de agosto de 2024, você pode continuar usando os recursos existentes do Machine Learning Studio (clássico).
- Confira informações sobre como mover projetos de machine learning do ML Studio (clássico) para o Azure Machine Learning.
- Saiba mais sobre o Azure Machine Learning.
A documentação do ML Studio (clássico) está sendo desativada e pode não ser atualizada no futuro.
Cria um modelo de regressão logística de duas classes
Categoria: Machine Learning/Inicializar modelo/classificação
Observação
Aplica-se a: Machine Learning Studio (clássico) somente
Módulos semelhantes do tipo "arrastar e soltar" estão disponíveis no designer do Azure Machine Learning.
Visão geral do módulo
Este artigo descreve como usar o módulo Regressão Logística de Duas Classes no Machine Learning Studio (clássico) para criar um modelo de regressão logística que pode ser usado para prever dois (e apenas dois) resultados.
A regressão logística é uma técnica estatística conhecida que é usada para modelar os vários tipos de resultados. Esse algoritmo é um método de aprendizado supervisionado. Portanto, você deve fornecer um conjunto de um conjunto de dados que já contém os resultados para treinar o modelo.
Mais sobre regressão logística
A regressão logística é um método conhecido em estatística que é usado para prever a probabilidade de um resultado e é popular especialmente por tarefas de classificação. O algoritmo prevê a probabilidade de ocorrência de um evento ajustando dados para uma função logística. Para obter detalhes dessa implementação, consulte a seção Notas Técnicas.
Neste módulo, o algoritmo de classificação é otimizado para dicotômicas ou variáveis binárias. Se você precisar classificar vários resultados, use o módulo Regressão Logística Multiclasse.
Como configurar a regressão Two-Class logística
Para treinar esse modelo, você deve fornecer um conjunto de um dados que contenha uma coluna de rótulo ou de classe. Como esse módulo destina-se a problemas de duas classes, a coluna de rótulo ou de classe deve conter exatamente dois valores.
Por exemplo, a coluna de rótulo pode ser [voto] com os valores possíveis de "Sim" ou "Não". Ou, pode ser [Risco de Crédito], com os valores possíveis de "Alto" ou "Baixo".
Adicione o módulo Regressão Logística de Duas Classes ao seu experimento no Studio (clássico).
Especifique de que modo você quer que o modelo seja treinado ao definir a opção Criar modo de treinador.
Parâmetro Único: se você sabe como deseja configurar o modelo, é possível fornecer um conjunto específico de valores como argumentos.
Intervalo de Parâmetros: se você não tiver certeza dos melhores parâmetros, poderá encontrar os parâmetros ideais especificando vários valores e usando o módulo Ajustar Hiperparmetros do Modelo para encontrar a configuração ideal. O treinador itera em várias combinações das configurações e determina a combinação de valores que produz o melhor modelo.
Para a tolerância de otimização, especifique um valor de limite a ser usado ao otimizar o modelo. Se a melhoria entre as iterações cair abaixo do limite especificado, o algoritmo será considerado convergido em uma solução e o treinamento será interrompido.
Para opeso de regularização L1 e peso de regularização L2, digite um valor a ser usado para os parâmetros de regularização L1 e L2. Um valor diferente de zero é recomendado para ambos.
A Regularização é um método para evitar o sobreajuste prejudicando modelos com valores extremos. A regularização funciona adicionando a penalidade associada com valores de coeficiente para o erro da hipótese. Assim, um modelo preciso com valores coeficientes extremos poderia ser mais penalizado, mas um modelo menos preciso com valores mais conservadores poderia ser menos penalizado.
As regularizações L1 e L2 têm efeitos e usos diferentes.
L1 pode ser aplicado aos modelos esparsos, que é útil ao trabalhar com dados de grande dimensão.
Por outro lado, a regularização L2 é preferível para dados que não são esparsos.
Este algoritmo dá suporte a uma combinação linear de valores de regularização L1 e L2: ou seja, se
x = L1
ey = L2
, entãoax + by = c
define o intervalo linear dos termos de regularização.Observação
Você gostaria de saber mais sobre a regularização de L1 e L2? O artigo a seguir fornece uma discussão de como a regularização L1 e L2 é diferente e como elas afetam o ajuste de modelo, com exemplos de código para a regressão logística e modelos de rede neural: a regularização L1 e L2 para Machine Learning
Combinações lineares diferentes dos termos de L1 e L2 foram elaborados para modelos de regressão logística: por exemplo, regularização de rede elástica. Sugerimos que você referencie essas combinações para definir uma combinação linear efetiva no seu modelo.
Para o tamanho da memória para L-BFGS, especifique a quantidade de memória a ser usada para a otimização de L-BFGS.
L-BFGS significa “Broyden-Fletcher-Goldfarb-Shanno de memória limitada”. É um algoritmo de otimização que é conhecido por estimativa de parâmetro. Esse parâmetro indica o número de posições anteriores e gradientes a armazenar o cálculo da próxima etapa.
Esse parâmetro de otimização limita a quantidade de memória usada para calcular a próxima etapa e direção. Quando você especifica menos memória, o treinamento é mais rápido, mas menos preciso.
Para semente de número aleatório, digite um valor inteiro. Definir um valor de semente é importante se você quiser que os resultados sejam reproduzíveis em várias executações do mesmo experimento.
Selecione a opção Permitir níveis categóricos desconhecidos para criar um nível "desconhecido" adicional em cada coluna categórica. Se você fizer isso, todos os valores (níveis) no conjuntos de dados de teste que não estão disponíveis no conjuntos de dados de treinamento serão mapeados para esse nível "desconhecido".
Adicione um conjuntos de dados marcado ao experimento e conecte um dos módulos de treinamento.
Se você configurar Criar modo treinador como Parâmetro único, use o módulo Treinar modelo.
Se você configurar Criar modo treinador como Intervalo de parâmetros, use o módulo Ajustar hiperparâmetros do modelo.
Observação
Se você passar um intervalo de parâmetros para Treinar Modelo, ele usará apenas o primeiro valor na lista de intervalos de parâmetros.
Se você passar um único conjunto de valores de parâmetro para o módulo Ajustar Hiperparérmetros de Modelo, quando ele espera um intervalo de configurações para cada parâmetro, ele ignora os valores e usa os valores padrão para o aluno.
Se você selecionar a opção Intervalo de Parâmetros e inserir um único valor para qualquer parâmetro, esse único valor especificado será usado durante a varredura, mesmo se outros parâmetros mudarem em um intervalo de valores.
Execute o experimento.
Resultados
Após a conclusão do treinamento:
Para ver um resumo dos parâmetros do modelo, junto com os pesos dos recursos aprendidos com o treinamento, clique com o botão direito do mouse na saída de Treinar Modelo ou Ajustar Hiperparmetros do Modelo e selecione Visualizar.
Para fazer previsões sobre novos dados, use o modelo treinado e novos dados como entrada para o módulo Modelo de Pontuação.
Para executar a validação cruzada em um conjunto de dados rotulado, conecte os dados e o modelo não treinado ao Modelo de Validação Cruzada.
Exemplos
Para exemplos de como esse algoritmo de aprendizado é usado, consulte o Galeria de IA do Azure:
Detecção de intrusão de rede: usa regressão logística binária para determinar se um caso representa uma intrusão.
Validação cruzada para classificador binário: demonstra o uso da regressão logística em um fluxo de trabalho experimental típico, incluindo a avaliação do modelo.
Observações técnicas
Esta seção contém detalhes de implementação, dicas e respostas para perguntas frequentes.
Dicas de uso
A regressão logística requer variáveis numéricas. Portanto, quando você usa colunas categóricas como variável, Machine Learning converte os valores em uma matriz de indicador internamente.
Para datas e horas, uma representação numérica é usada. (Para obter mais informações sobre valores de data e hora, consulte Estrutura dateTime (.NET Framework) – Comentários.) Se você quiser lidar com datas e horas de forma diferente, sugerimos que você crie uma coluna derivada.
Detalhes de implementação
A regressão logística pressupou uma distribuição logística dos dados, em que a probabilidade de um exemplo pertencer à classe 1 é a fórmula:
p(x;β0,…, βD-1)
Em que:
x
é um vetor dimensional D que contém os valores de todos os recursos da instância.p
é a função de distribuição de 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}
maximizando a probabilidade de log dos parâmetros considerando as entradas. A maximização é executada usando um método popular para estimativa de parâmetro, chamado BFGS de Memória Limitada.
Pesquisa
Para obter mais informações sobre a implementação desse algoritmo, consulte Treinamento escalonável de modelos Log-Linear L-1, por Andrew e Gao.
Parâmetros do módulo
Nome | Intervalo | Type | Padrão | Descrição |
---|---|---|---|---|
Tolerância de otimização | >=double.Epsilon | Float | 0.0000001 | Especifique um valor de tolerância para o otimizador L-BFGS |
Peso de regularização L1 | >=0,0 | Float | 1,0 | Especifica o peso de regularização L1 |
Peso da regularização L2 | >=0,0 | Float | 1,0 | Especificar o peso da regularização L2 |
Tamanho da memória para L-BFGS | >=1 | Integer | 20 | Especifique a quantidade de memória (em MB) a ser usada para o otimizador L-BFGS |
Propagação de número aleatório | Qualquer | Integer | Digite um valor para propagar o gerador de número aleatório usado pelo modelo. Deixe em branco para o padrão. | |
Permitir níveis categóricos desconhecidos | Qualquer | Booliano | verdadeiro | Indique se um nível adicional deve ser criado para cada coluna categórica. Quaisquer níveis no conjunto de dados teste que não estão disponíveis no conjunto de dados de treinamento são mapeados para este nível adicional. |
Saída
Nome | Tipo | Descrição |
---|---|---|
Modelo não treinado | Interface ILearner | Um modelo de classificação não treinado |