Polyfit Numpy

Polyfit Numpy
A regressão linear é o primeiro passo para aprender a ciência de dados. Portanto, mesmo se você é novo nesse campo, você precisa entender esses conceitos porque esses algoritmos são usados ​​principalmente por pesquisadores de ciências de dados. Esses algoritmos também são fáceis de entender para iniciar a jornada de aprendizado de máquina.

Neste tutorial, vamos ver o modelo de regressão Numpy (PolyFit).

A função Numpy.Polyfit () encontra a melhor linha de ajuste, minimizando a soma do erro ao quadrado. Este método aceita três parâmetros:

  1. X - dados de entrada
  2. Dados de saída y
  3. Valor do grau polinomial (número inteiro)

Então, vamos iniciar o processo passo a passo para usar o método polyfit.

Passo 1: Importe toda a biblioteca e pacotes necessários para executar este programa.

Linha 91: importamos a biblioteca Numpy e Matplotlib. O Polyfit está automaticamente sob o Numpy, então não há necessidade de importar. O matplotlib é usado para plotar os dados e MatPlotlib inline é usado para desenhar o gráfico dentro do próprio notebook Jupyter.

importar numpy como np
importar matplotlib.pyplot como plt
%Matplotlib em linha

Passo 2: Agora, nosso próximo passo é criar o conjunto de dados (x e y).

Linha 83: geramos aleatoriamente os dados x e y.

x = [28, 8, 11, 37, 15, 25, 51, 11, 32, 34, 43, 2, 40, 16, 40, 25, 40, 17, 21, 57]
y = [8, 8, 9, 72, 22, 51, 85, 4, 75, 48, 72, 1, 62, 37, 75, 42, 75, 47, 57, 95]

Etapa 3: Vamos apenas plotar o recurso (x) e o destino (y) no gráfico, como mostrado abaixo:

plt.dispersão (x, y)

Passo 4: Nesta etapa, vamos ajustar a linha nos dados x e y.

Esta etapa é muito fácil porque vamos usar o conceito do método polyfit. O método polyfit vem diretamente com o Numpy, como mostrado acima. Este método aceita três parâmetros:

  1. X - dados de entrada
  2. Dados de saída y
  3. Valor do grau polinomial (número inteiro)

Neste programa, estamos usando o valor do grau polinomial 1, que diz que é um polinômio de primeiro grau. Mas também podemos usá-lo para o polinômio de segundo e terceiro grau.

1 modelo = NP.Polyfit (x, y, 1)

Quando pressionamos o Enter, o Polyfit calcula o modelo de regressão linear e armazenamos o modelo variável do lado direito.

Lógica por trás da linha de ajuste

Então, podemos ver que apenas atingindo a tecla Enter e obtivemos o modelo de regressão linear. Então agora estamos pensando que, o que realmente funciona por trás desse método e como eles se encaixam na linha.

O método que funciona por trás do método polyfit é chamado Método Menos Quadrado Ordinário. Algumas pessoas chamaram isso com o nome curto Ols. É comumente usado pelos usuários para ajustar a linha. A razão por trás é que é muito fácil de usar e também dá precisão acima de 90%.

Vamos ver como o OLS se sai:

Primeiro, precisamos saber sobre erro. O erro calcula através da diferença entre os dados X e Y.

Por exemplo, Ajustamos uma linha no modelo de regressão que se parece abaixo:

Os pontos azuis são os pontos de dados e a linha vermelha que encaixamos nos pontos de dados usando o método polyfit.

Vamos assumir x = 24 e y = 58

Quando nos encaixamos na linha, a linha calcula o valor de y = 44.3. A diferença entre o valor real e calculado é o erro para o ponto de dados específico.

Portanto, o método OLS (Minamento Ordico) calcula o ajuste usando as etapas abaixo:

1. Calcula o erro entre o modelo ajustado e os pontos de dados.

2. Então nós colocamos cada um dos erros de pontos de dados.

3. Soma todo o erro de pontos de dados quadrados.

4. Finalmente, identifique a linha em que essa soma do erro ao quadrado é mínima.

Então, o Polyfit usa os métodos acima para ajustar a linha.

Etapa 5: Modelo

Fizemos nossa parte de codificação de aprendizado de máquina. Agora, podemos verificar os valores de x e y que são armazenados nas variáveis ​​do modelo. Para verificar o valor X e Y, temos que imprimir o modelo como mostrado abaixo:

Finalmente, recebemos uma equação de esboço:

y = 1.75505212 * x - 1.27719099

Ao usar esta equação linear, podemos obter o valor de y.

A equação linear acima também pode ser resolvida usando o método ploy1d () como abaixo:

previsto = np.Poly1D (modelo)
x_value = 20
prever (x_value)

Temos o resultado 33.82385131766588.

Também obtivemos o mesmo resultado do cálculo manual:

y = 1.75505212 * 20 - 1.27719099

y = 33.82385131766588

Então, ambos os resultados acima mostram que nosso modelo se encaixa corretamente.

Etapa 6: Precisão do modelo

Também podemos verificar a precisão do modelo, ou ele fornece resultados corretos ou não. A precisão do modelo pode ser calculada a partir do R-Squared (R2). O valor do R-quadrado (R2) está entre 0 e 1. O resultado próximo a 1 mostrará que a precisão do modelo é alta. Então, vamos verificar a precisão do modelo acima. Vamos importar outra biblioteca, Sklearn, como mostrado abaixo:

de Sklearn.Métricas Importar R2_score
r2_score (y, prever (x))

O resultado mostra que é próximo de 1, então sua precisão é alta.

Etapa 7: Plotando o modelo

A plotagem é o método para ver a linha do modelo ajustada nos pontos de dados visualmente. Dá uma imagem clara do modelo.

x_axis = range (0, 60)
y_axis = previsto (x_axis)
plt.dispersão (x, y)
plt.plot (x_axis, y_axis, c = 'g')

Uma explicação rápida para o método da plotagem acima é dada abaixo:

Linha 1: É o alcance que queremos exibir no enredo. Em nosso código, estamos usando o valor do intervalo de 0 a 60.

Linha 2: Todos os valores de intervalo de 0 a 60 serão calculados.

Linha 3: Passamos esses conjuntos de dados X e Y originais no método de dispersão.

Linha 4: Finalmente plotamos nosso gráfico, e a linha verde é a linha de ajuste, como mostrado no gráfico acima.

Conclusão

Neste artigo, aprendemos o modelo de regressão linear, que é o início da jornada do aprendizado de máquina. Há vários modelos de regressão que são explicados em outro artigo. Aqui, temos um conjunto de dados limpo, porque isso era um manequim, mas em projetos da vida real, você pode obter um conjunto de dados sujo e deve fazer engenharia de recursos para limpar o conjunto de dados para usar no modelo. Se você não entende completamente este tutorial, mesmo isso ajuda você a aprender outro modelo de regressão facilmente.

O modelo de regressão de linha é o algoritmo mais comum usado pela ciência de dados. Você deve ter idéias sobre o modelo de regressão se quiser ter sua carreira neste campo. Então, mantenha contato e logo estaremos de volta com um novo artigo de ciência de dados.

O código deste artigo está disponível no link do GitHub:
https: // github.com/shekharpandey89/linear-regressão em python-using-numpy-polyfit