Aprendendo Scikit-Learn (e um pouco mais de Python)

Felipe Bormann
2 min readFeb 14, 2016

--

Então galera, nessa jornada para me tornar um Data Scientist eu decidi aprender um pouco mais sobre uma biblioteca de aprendizagem de máquina chamada “Scikit-Learn”, feita para Python, e para quem não conhece esta biblioteca, segue o site principal deles descrevendo as suas principais vantagens: http://scikit-learn.org/stable/ .

Basicamente, é necessário utilizar e conhecer os pacotes Pandas e Matplotlib, assim você irá conseguir botar gráficos utilizando o segundo e manipular um conjunto de dados relativamente grande, primeiro.

Aprendendo Regressão Linear

Primeiro, em uma regressão, o objetivo sempre será prever o resultado de uma variável contínua. Então o foco sempre será esse, vamos pensar no seguinte…vamos pegar um dataset pouco interessante onde eu possua a relação entre “km percorridos”/ “Calorias perdidas”.

E os nossos dados(conjunto) de treinamento(teste) são os apresentados abaixo:

km_percorridos = [[8],[10],[12],[16],[20]]
calorias_queimadas = [[90],[112],[148],[189],[212]]

E o código para fazer este gráfico? Simples assim:

plt.figure()
plt.title(“Quantidade de km percorridos por calorias queimadas”) #título do gráfico
plt.xlabel(“Km percorridos”) #Legenda na horizontal
plt.ylabel(“Calorias Queimadas”) #Legenda do eixo Y
plt.plot(km_percorridos, calorias_queimadas, “k.”) #Os dados nos dois eixos
plt.axis([6, 25, 80, 220]) #A primeira tupla corresponde aos dados no eixo X e a segunda aos dados no eixo Y
plt.grid(True) #Grid = grades, zonas do gráfico
plt.show()

Como é possível perceber temos esta relação bem visível entre os km percorridos e as calorias totais perdidas. Mas agora sim, Scikit-Learn!

E vamos agora definir uma função que irá regrar todos os exemplos e valores entre km percorridos e calorias gastas, iremos utilizar os mesmos dados de treinamento só que agora iremos treinar o nosso estimador.

Primeiro, importamos a classe/package da regressão linear:

from sklearn.linear_model import LinearRegression

Para criar um modelo a partir do estimador acima precisamos de algumas utilizar o método fit() que basicamente calcula os parâmetros de aprendizagem de cada modelo:

modelo.fit(km_percorridos, calorias_queimadas)

E para testar o algoritmo, algo bem simples:

print(“A quantidade de km percorridos que você pode esperar gastar caso percorra 30km será: “+str(modelo.predict([30])[0])
+”Calorias”)

viu como é fácil? Basicamente, todo estimador terá as funções fit() e predict(), sendo que alguns tomam um parâmetro enquanto outros irão somente um (no nosso caso), dado que a função que estima uma Linear Regression é a:

y=α+βx

Então galera, fica aqui um post rápido sobre como começar com o Scikit Learn.

E quem tiver curiosidade sobre Python:

https://www.youtube.com/watch?v=_a_kHsV24Ow

--

--