Partilhar via


Regressão Linear

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).

A documentação do Estúdio de ML (clássico) está a ser descontinuada e poderá não ser atualizada no futuro.

Cria um modelo linear de regressão

Categoria: Machine Learning / Modelo inicializo / Regressã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 linear de regressão no Machine Learning Studio (clássico), para criar um modelo linear de regressão para ser usado numa experiência. A regressão linear tenta estabelecer uma relação linear entre uma ou mais variáveis independentes e um resultado numérico, ou variável dependente.

Utiliza este módulo para definir um método linear de regressão e, em seguida, treina um modelo utilizando um conjunto de dados rotulado. O modelo treinado pode então ser usado para fazer previsões. Em alternativa, o modelo não treinado pode ser passado para o Modelo De Validação Cruzada para validação cruzada contra um conjunto de dados rotulado.

Mais sobre regressão linear

A regressão linear é um método estatístico comum, que foi adotado na aprendizagem automática e melhorado com muitos novos métodos para encaixar a linha e medir o erro. No sentido mais básico, a regressão refere-se à previsão de um alvo numérico. A regressão linear ainda é uma boa escolha quando se quer um modelo muito simples para uma tarefa preditiva básica. A regressão linear também tende a funcionar bem em conjuntos de dados de alta dimensão e escassos que carecem de complexidade.

Machine Learning Studio (clássico) suporta uma variedade de modelos de regressão, além da regressão linear. No entanto, o termo "regressão" pode ser interpretado vagamente, e alguns tipos de regressão fornecida noutras ferramentas não são suportados em Studio (clássico).

  • O problema clássico da regressão envolve uma única variável independente e uma variável dependente. Isto chama-se regressão simples. Este módulo suporta uma regressão simples.

  • A regressão linear múltipla envolve duas ou mais variáveis independentes que contribuem para uma única variável dependente. Problemas em que várias entradas são usadas para prever um único resultado numérico são também chamados regressão linear multivariada.

    O módulo linear de regressão pode resolver estes problemas, assim como a maioria dos outros módulos de regressão em Studio (clássico).

  • A regressão multi-rótulo é a tarefa de prever múltiplas variáveis dependentes dentro de um único modelo. Por exemplo, na regressão logística multi-rótulo, uma amostra pode ser atribuída a vários rótulos diferentes. (Isto é diferente da tarefa de prever vários níveis dentro de uma única classe variável.)

    Este tipo de regressão não é suportado em Machine Learning. Para prever várias variáveis, crie um aprendiz separado para cada saída que deseja prever.

Há anos que os estatísticos desenvolvem métodos cada vez mais avançados para a regressão. Isto é verdade mesmo para a regressão linear. Este módulo suporta dois métodos para medir o erro e encaixar na linha de regressão: método comum mínimo quadrados e descida de gradiente.

  • A descida de gradiente é um método que minimiza a quantidade de erro em cada passo do processo de treino do modelo. Existem muitas variações na descida do gradiente e a sua otimização para vários problemas de aprendizagem tem sido amplamente estudada. Se escolher esta opção para o método Solution, pode definir uma variedade de parâmetros para controlar o tamanho do passo, a taxa de aprendizagem, etc. Esta opção também suporta a utilização de uma varredura integrada de parâmetros.

  • Os quadrados mínimos comuns são uma das técnicas mais usadas na regressão linear. Por exemplo, o mínimo quadrados é o método que é usado no Toolpak de análise para Microsoft Excel.

    Os quadrados mínimos ordinários referem-se à função de perda, que calcula o erro como a soma do quadrado de distância do valor real para a linha prevista, e se encaixa no modelo minimizando o erro ao quadrado. Este método pressupõe uma forte relação linear entre as entradas e a variável dependente.

Como configurar a Regressão Linear

Este módulo suporta dois métodos para a montagem de um modelo de regressão, com opções muito diferentes:

Criar um modelo de regressão usando quadrados mínimos comuns

  1. Adicione o módulo Modelo linear de regressão à sua experiência em Studio (clássico).

    Pode encontrar este módulo na categoria Machine Learning. Expandir o Modelo Inicialize, expandir a Regressão e, em seguida, arrastar o módulo Modelo linear de Regressão para a sua experiência.

  2. No painel Propriedades , na lista de dropdown do método Solution , selecione Os Quadrados Mínimos Comuns. Esta opção especifica o método de cálculo utilizado para encontrar a linha de regressão.

  3. No peso de regularização L2, digite o valor a utilizar como peso para a regularização L2. Recomendamos que utilize um valor não zero para evitar a sobremontagem.

    Para saber mais sobre como a regularização afeta a adaptação do modelo, consulte este artigo: Regularização L1 e L2 para Machine Learning

  4. Selecione a opção, Inclua o termo de interceção, se quiser visualizar o termo para a interceção.

    Desescole esta opção se não precisar de rever a fórmula de regressão.

  5. Para sementes de número aleatório, pode, opcionalmente, escrever um valor para semear o gerador de números aleatórios utilizado pelo modelo.

    A utilização de um valor de sementes é útil se quiser manter os mesmos resultados em diferentes séries da mesma experiência. Caso contrário, o padrão é utilizar um valor do relógio do sistema.

  6. Desmarcar a opção, Permitir níveis categóricos desconhecidos, se quiser que os valores em falta levantem um erro.

    Se esta opção for selecionada, é criado um nível adicional para cada coluna categórica. Quaisquer níveis no conjunto de dados de teste que não estivessem presentes no conjunto de dados de formação são mapeados para este nível adicional.

  7. Adicione o módulo Modelo de Comboio à sua experiência e conecte um conjunto de dados rotulado.

  8. Execute a experimentação.

Resultados para o modelo comum de menos quadrados

Após o treino estar completo:

  • Para visualizar os parâmetros do modelo, clique com o botão direito na saída do treinador e selecione Visualize.

  • Para fazer previsões, ligue o modelo treinado ao módulo 'Modelo de Pontuação' , juntamente com um conjunto de dados de novos valores.

  • Para efetuar a validação cruzada contra um conjunto de dados rotulado, ligue o modelo não treinado ao Modelo De Validação Cruzada.

Criar um modelo de regressão usando a descida do gradiente on-line

  1. Adicione o módulo Modelo linear de regressão à sua experiência em Studio (clássico).

    Pode encontrar este módulo na categoria Machine Learning. Expandir o Modelo Inicialize, expandir a Regressão e arrastar o módulo modelo linear de regressão para a sua experiência

  2. No painel propriedades , na lista de dropdown do método Solution , escolha a Descida De Gradiente Online como o método de cálculo utilizado para encontrar a linha de regressão.

  3. Para criar o modo de treinador, indique se pretende treinar o modelo com um conjunto de parâmetros predefinidos ou se pretende otimizar o modelo utilizando uma varredura de parâmetros.

    • Parâmetro único: Se souber como pretende configurar a rede linear de regressão, pode fornecer um conjunto específico de valores como argumentos.

    • Intervalo de parâmetros: Se pretender que o algoritmo encontre os melhores parâmetros para si, desemote a opção de modo de treinador para a gama de parâmetros. Em seguida, pode especificar vários valores para o algoritmo experimentar.

  4. Para Aprendizagem taxa, especifique a taxa de aprendizagem inicial para o otimizador de descida de gradiente estocástico.

  5. Para o Número de épocas de treino, escreva um valor que indique quantas vezes o algoritmo deve iterar através de exemplos. Para conjuntos de dados com um pequeno número de exemplos, este número deve ser grande para alcançar a convergência.

  6. Normalizar as funcionalidades: Se já normalizou os dados numéricos utilizados para treinar o modelo, pode desmarcar esta opção. Por predefinição, o módulo normaliza todas as entradas numéricas para um intervalo entre 0 e 1.

    Nota

    Lembre-se de aplicar o mesmo método de normalização aos novos dados utilizados para a pontuação.

  7. No peso de regularização L2, digite o valor a utilizar como peso para a regularização L2. Recomendamos que utilize um valor não zero para evitar a sobremontagem.

    Para saber mais sobre como a regularização afeta a adaptação do modelo, consulte este artigo: Regularização L1 e L2 para Machine Learning

  8. Selecione a opção, hipótese final média, para uma média da hipótese final.

    Nos modelos de regressão, o teste de hipóteses significa usar alguma estatística para avaliar a probabilidade da hipótese nula, que afirma que não existe uma correlação linear entre uma variável dependente e independente. Em muitos problemas de regressão, deve testar uma hipótese que envolva mais do que uma variável.

    Esta opção é ativada por padrão, o que significa que o algoritmo testa uma combinação dos parâmetros onde dois ou mais parâmetros estão envolvidos.

  9. Selecione a opção, Diminua a taxa de aprendizagem, se quiser que a taxa de aprendizagem diminua à medida que as iterações progridem.

  10. Para sementes de número aleatório, pode, opcionalmente, escrever um valor para semear o gerador de números aleatórios utilizado pelo modelo. A utilização de um valor de sementes é útil se quiser manter os mesmos resultados em diferentes séries da mesma experiência.

  11. Desmarcar a opção, Permitir níveis categóricos desconhecidos, se quiser que os valores em falta levantem um erro.

    Quando esta opção é selecionada, é criado um nível adicional para cada coluna categórica. Quaisquer níveis no conjunto de dados de teste que não estejam presentes no conjunto de dados de treino são mapeados para este nível adicional.

  12. Adicione um conjunto de dados rotulado e um dos módulos de treino.

    Se não estiver a utilizar uma varredura de parâmetros, utilize o módulo Modelo de Comboio .

    Para que o algoritmo encontre os melhores parâmetros para si, treine o modelo usando Os Hiperparmetros Tune Model.

    Nota

    Se configurar o modelo com valores específicos utilizando a opção Single Parâmetro e, em seguida, mudar para a opção De alcance de parâmetros , o modelo é treinado usando o valor mínimo na gama para cada parâmetro.

    Inversamente, se configurar definições específicas quando criar o modelo mas selecionar a opção De alcance de parâmetros , o modelo é treinado utilizando os valores predefinidos para o aluno como a gama de valores a varrer.

  13. Execute a experimentação.

Resultados para descida de gradiente on-line

Após o treino estar completo:

  • Para fazer previsões, ligue o modelo treinado ao módulo 'Modelo de Pontuação' , juntamente com novos dados de entrada.
  • Para efetuar a validação cruzada contra um conjunto de dados rotulado, ligue o modelo não treinado ao Modelo De Validação Cruzada.

Exemplos

Por exemplo, modelos de regressão, consulte estas experiências de amostra na Galeria Azure AI:

Notas técnicas

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

Dicas de utilização

Muitas ferramentas suportam a criação de regressão linear, que vai do simples ao complexo. Por exemplo, pode facilmente realizar a regressão linear em Excel, utilizando o Solver Toolpak, ou pode codificar o seu próprio algoritmo de regressão, utilizando R, Python ou C#.

No entanto, como a regressão linear é uma técnica bem estabelecida que é apoiada por muitas ferramentas diferentes, existem muitas interpretações e implementações diferentes. Nem todos os tipos de modelos são suportados igualmente por todas as ferramentas. Há também algumas diferenças na nomenclatura a observar.

  • Os métodos de regressão são frequentemente categorizados pelo número de variáveis de resposta. Por exemplo, regressão linear múltipla significa um modelo que tem múltiplas variáveis para prever.

  • No Matlab, a regressão multivariada refere-se a um modelo que tem múltiplas variáveis de resposta.

  • Em Machine Learning, os modelos de regressão suportam uma única variável de resposta.

  • Na língua R, as características previstas para a regressão linear dependem do pacote que está a utilizar. Por exemplo, o pacote glm vai dar-lhe a capacidade de criar um modelo de regressão logística com múltiplas variáveis independentes. Em geral, Machine Learning Studio (clássico) fornece a mesma funcionalidade que o pacote R glm.

Recomendamos que utilize este módulo, Regressão Linear, para problemas típicos de regressão.

Em contraste, se estiver a utilizar várias variáveis para prever um valor de classe, recomendamos os módulos de Regressão Logística de Duas Classes ou De Regressão Logística Multiclass .

Se pretender utilizar outros pacotes lineares de regressão que estejam disponíveis para o idioma R, recomendamos que utilize o módulo Execut R Script e ligue para os pacotes lm ou glm, que estão incluídos no ambiente de tempo de execução do Machine Learning Studio (clássico).

Parâmetros do módulo

Nome Intervalo Tipo Predefinição Description
Normalizar as características qualquer Booleano true Indicar se as instâncias devem ser normalizadas
Hipótese final média qualquer Booleano true Indicar se a hipótese final deve ser mediada
Taxa de aprendizagem >=duplo. Epsilon Float 0.1 Especificar a taxa de aprendizagem inicial para o otimizador de descida de gradiente estocástico
Número de épocas de formação >=0 Número inteiro 10 Especifique quantas vezes o algoritmo deve iterar através de exemplos. Para conjuntos de dados com um pequeno número de exemplos, este número deve ser grande para alcançar a convergência.
Diminuir a taxa de aprendizagem Qualquer Booleano true Indicar se a taxa de aprendizagem deve diminuir à medida que as iterações progridem
Peso de regularização L2 >=0.0 Float 0.001 Especifique o peso para a regularização L2. Utilize um valor não zero para evitar a sobremontagem.
Semente de número aleatório qualquer Número inteiro Especifique um valor para semear o gerador de números aleatórios utilizado pelo modelo. Deixe em branco por defeito.
Permitir níveis categóricos desconhecidos qualquer Booleano true Indique se deve ser criado um nível adicional para cada coluna categórica. Quaisquer níveis no conjunto de dados de teste não disponíveis no conjunto de dados de treino são mapeados para este nível adicional.
Incluir termo de interceção termo Qualquer Booleano Verdadeiro Indicar se um termo adicional deve ser adicionado para a interceção

Saídas

Nome Tipo Description
Modelo destreinado Interface ILearner Um modelo de regressão sem treino

Ver também

Regressão