Skip to content

Instantly share code, notes, and snippets.

@evrenarslan
Created May 17, 2020 15:43
Show Gist options
  • Select an option

  • Save evrenarslan/c12d3f5ae518013f7356f3d23aff2c52 to your computer and use it in GitHub Desktop.

Select an option

Save evrenarslan/c12d3f5ae518013f7356f3d23aff2c52 to your computer and use it in GitHub Desktop.
Makine Öğrenmesi - Polynomial Regression
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Makine Öğrenmesi - Polynomial Regression"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import pylab as pl\n",
"import numpy as np\n",
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Veriyi dataframe içerisine yüklüyorum. Download etmek için (http://open.canada.ca/data/en/dataset/98f1a129-f628-4ce4-b24d-6f16bf24dd64)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>MODELYEAR</th>\n",
" <th>MAKE</th>\n",
" <th>MODEL</th>\n",
" <th>VEHICLECLASS</th>\n",
" <th>ENGINESIZE</th>\n",
" <th>CYLINDERS</th>\n",
" <th>TRANSMISSION</th>\n",
" <th>FUELTYPE</th>\n",
" <th>FUELCONSUMPTION_CITY</th>\n",
" <th>FUELCONSUMPTION_HWY</th>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <th>FUELCONSUMPTION_COMB_MPG</th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX</td>\n",
" <td>COMPACT</td>\n",
" <td>2.0</td>\n",
" <td>4</td>\n",
" <td>AS5</td>\n",
" <td>Z</td>\n",
" <td>9.9</td>\n",
" <td>6.7</td>\n",
" <td>8.5</td>\n",
" <td>33</td>\n",
" <td>196</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX</td>\n",
" <td>COMPACT</td>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>M6</td>\n",
" <td>Z</td>\n",
" <td>11.2</td>\n",
" <td>7.7</td>\n",
" <td>9.6</td>\n",
" <td>29</td>\n",
" <td>221</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX HYBRID</td>\n",
" <td>COMPACT</td>\n",
" <td>1.5</td>\n",
" <td>4</td>\n",
" <td>AV7</td>\n",
" <td>Z</td>\n",
" <td>6.0</td>\n",
" <td>5.8</td>\n",
" <td>5.9</td>\n",
" <td>48</td>\n",
" <td>136</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>MDX 4WD</td>\n",
" <td>SUV - SMALL</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>AS6</td>\n",
" <td>Z</td>\n",
" <td>12.7</td>\n",
" <td>9.1</td>\n",
" <td>11.1</td>\n",
" <td>25</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>RDX AWD</td>\n",
" <td>SUV - SMALL</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>AS6</td>\n",
" <td>Z</td>\n",
" <td>12.1</td>\n",
" <td>8.7</td>\n",
" <td>10.6</td>\n",
" <td>27</td>\n",
" <td>244</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" MODELYEAR MAKE MODEL VEHICLECLASS ENGINESIZE CYLINDERS \\\n",
"0 2014 ACURA ILX COMPACT 2.0 4 \n",
"1 2014 ACURA ILX COMPACT 2.4 4 \n",
"2 2014 ACURA ILX HYBRID COMPACT 1.5 4 \n",
"3 2014 ACURA MDX 4WD SUV - SMALL 3.5 6 \n",
"4 2014 ACURA RDX AWD SUV - SMALL 3.5 6 \n",
"\n",
" TRANSMISSION FUELTYPE FUELCONSUMPTION_CITY FUELCONSUMPTION_HWY \\\n",
"0 AS5 Z 9.9 6.7 \n",
"1 M6 Z 11.2 7.7 \n",
"2 AV7 Z 6.0 5.8 \n",
"3 AS6 Z 12.7 9.1 \n",
"4 AS6 Z 12.1 8.7 \n",
"\n",
" FUELCONSUMPTION_COMB FUELCONSUMPTION_COMB_MPG CO2EMISSIONS \n",
"0 8.5 33 196 \n",
"1 9.6 29 221 \n",
"2 5.9 48 136 \n",
"3 11.1 25 255 \n",
"4 10.6 27 244 "
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = pd.read_csv(\"FuelConsumption.csv\")\n",
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Bu veri grubu içerisinden hangilerini seçeceğime karar vermek için corr metodunu kullanabilirim. Buradaki kolon sayısı çok fazla olmadığı için pek anlamlı olmaz. Aşağıda sonuçları görebilirsiniz."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>FUELCONSUMPTION_COMB_MPG</th>\n",
" <td>0.906394</td>\n",
" </tr>\n",
" <tr>\n",
" <th>FUELCONSUMPTION_CITY</th>\n",
" <td>0.898039</td>\n",
" </tr>\n",
" <tr>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <td>0.892129</td>\n",
" </tr>\n",
" <tr>\n",
" <th>ENGINESIZE</th>\n",
" <td>0.874154</td>\n",
" </tr>\n",
" <tr>\n",
" <th>FUELCONSUMPTION_HWY</th>\n",
" <td>0.861748</td>\n",
" </tr>\n",
" <tr>\n",
" <th>CYLINDERS</th>\n",
" <td>0.849685</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" CO2EMISSIONS\n",
"FUELCONSUMPTION_COMB_MPG 0.906394\n",
"FUELCONSUMPTION_CITY 0.898039\n",
"FUELCONSUMPTION_COMB 0.892129\n",
"ENGINESIZE 0.874154\n",
"FUELCONSUMPTION_HWY 0.861748\n",
"CYLINDERS 0.849685"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.corr()[[\"CO2EMISSIONS\"]].dropna().abs().sort_values(by=[\"CO2EMISSIONS\"], ascending=False)[1:]"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <th>ENGINESIZE</th>\n",
" <th>CYLINDERS</th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>8.5</td>\n",
" <td>2.0</td>\n",
" <td>4</td>\n",
" <td>196</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>9.6</td>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>221</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>5.9</td>\n",
" <td>1.5</td>\n",
" <td>4</td>\n",
" <td>136</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>11.1</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>10.6</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>244</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" FUELCONSUMPTION_COMB ENGINESIZE CYLINDERS CO2EMISSIONS\n",
"0 8.5 2.0 4 196\n",
"1 9.6 2.4 4 221\n",
"2 5.9 1.5 4 136\n",
"3 11.1 3.5 6 255\n",
"4 10.6 3.5 6 244"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Modeli eğitmek için sadece belirlediğim alanları içeren bir dataset yaratacağım\n",
"cdf=df[[\"FUELCONSUMPTION_COMB\",\"ENGINESIZE\",\"CYLINDERS\",\"CO2EMISSIONS\"]]\n",
"cdf.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Motor hacmi ile CO2 Emisyonun ilişkisini gösteren bir grafik çizelim."
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(cdf[\"ENGINESIZE\"],cdf[\"CO2EMISSIONS\"],color=\"blue\")\n",
"plt.xlabel(\"Motor Hacmi\")\n",
"plt.ylabel(\"Co2 Emisyonu\")\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"***Train ve Test için elimizdeki verileri ikiye böleceğiz.***"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"msk=np.random.rand(len(df))<0.8 # %80 oranında rastgale True değer dönen bir dizi yarattıyoruz.\n",
"train=cdf[msk] # cdf dataframe içindeki verilerin %80 train olarak atanmış oldu.\n",
"test=cdf[~msk] # cdf dataframe içerisindeki verilerin %20'sini, train veri setine atananların dışındakileri test olarak ayırdık"
]
},
{
"attachments": {
"PolynomialFunctionsGraph.png": {
"image/png": "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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
"Verinini doğrusal değilde bir eğri şeklinde olduğunu düşündüğümüzde veriyi açıklayan fonksiyonun polynomial fonksiyon olduğunu düşünürüz. Aşağıda görebileceğiniz üzere farklı şekillerdeki eğriler farklı derecelerde fonksiyonların çıktılarıdır. Dağılımımız hangisine benziyorsa aradığımız fonksiyon o dereceden bir fonksiyondur diye düşünebiliriz.\n",
"\n",
"![PolynomialFunctionsGraph.png](attachment:PolynomialFunctionsGraph.png)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Polynomial fonksiyon analizi için Sklear içinde PolynomialFeatures() foksiyonunu kullanırız. Bu fonksiyon bize, fonksiyona parametre olarak verilmiş dereceye eşit yada küçük, independent featureların \"Aşağıdaki örnekte ENGINESIZE\" tüm olası polinom durumlarını içeren bir matris oluşturur. Aşağıdaki kodda 2. derece dediğimiz için <code>0. kuvveti,1. kuvveti ve 2. kuvvetinden</code> oluşan bir matris."
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[ 1. , 2. , 4. ],\n",
" [ 1. , 2.4 , 5.76],\n",
" [ 1. , 1.5 , 2.25],\n",
" ...,\n",
" [ 1. , 3. , 9. ],\n",
" [ 1. , 3.2 , 10.24],\n",
" [ 1. , 3.2 , 10.24]])"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from sklearn.preprocessing import PolynomialFeatures\n",
"from sklearn import linear_model\n",
"\n",
"train_x = np.asanyarray(train[['ENGINESIZE']])\n",
"train_y = np.asanyarray(train[['CO2EMISSIONS']])\n",
"\n",
"test_x = np.asanyarray(test[['ENGINESIZE']])\n",
"test_y = np.asanyarray(test[['CO2EMISSIONS']])\n",
"\n",
"poly=PolynomialFeatures(degree=2)\n",
"train_x_poly=poly.fit_transform(train_x)\n",
"train_x_poly"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Bu yeni oluşan matris değişkeninin her dereceden değerini içerdiği için problemimiz Linear Regression problemi haline geldi. Yapmamız gereken bu matris üzerinden en uygun değerleri veren Theta değerlerini bulmak haline geliyor.\n",
"\n",
"***y_hat=b+Theta1*X1+Theata2*X2***"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Coefficients: [[ 0. 49.99413743 -1.4940489 ]]\n",
"Intercept: [108.35041419]\n"
]
}
],
"source": [
"clf=linear_model.LinearRegression()\n",
"train_y_=clf.fit(train_x_poly,train_y)\n",
"print ('Coefficients: ', clf.coef_)\n",
"print ('Intercept: ',clf.intercept_)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Buradaki Coefficent ve Intercept değerleri fonksiyonumuzu oluşturan sabit değerler. Bu değerleri kullanarak oluşan eğriyi asıl veri ile birlikte grafik üzerinde gösterecek olursak."
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0, 0.5, 'Emission')"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(train.ENGINESIZE, train.CO2EMISSIONS, color='blue')\n",
"XX = np.arange(0.0, 10.0, 0.1)\n",
"yy = clf.intercept_[0]+ clf.coef_[0][1]*XX+ clf.coef_[0][2]*np.power(XX, 2)\n",
"plt.plot(XX, yy, '-r' )\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"***Modelin Değerlendirilmesi***"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Mean absolute error: 23.77\n",
"Residual sum of squares (MSE): 942.47\n",
"R2-score: 0.69\n"
]
}
],
"source": [
"from sklearn.metrics import r2_score\n",
"\n",
"test_x_poly=poly.fit_transform(test_x)\n",
"test_y_=clf.predict(test_x_poly)\n",
"print(\"Mean absolute error: %.2f\" % np.mean(np.absolute(test_y_ - test_y)))\n",
"print(\"Residual sum of squares (MSE): %.2f\" % np.mean((test_y_ - test_y) ** 2))\n",
"print(\"R2-score: %.2f\" % r2_score(test_y_ , test_y) )"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.2"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment