Tutorial Python

RUMAH Python Pengenalan Python Python Memulai Sintaks Python Komentar Python Variabel Python Tipe Data Python Nomor Python Pengecoran Python String Python Python Boolean Operator Python Daftar Python Tuple Python Set Python Kamus Python Python Jika...Lain Python Sementara Loop Python Untuk Loop Fungsi Python Python Lambda Array Python Kelas/Objek Python Warisan Python Python Iterator Lingkup Python Modul Python Tanggal Python Python Matematika Python JSON Python RegEx Python PIP Python Coba...Kecuali Masukan Pengguna Python Pemformatan String Python

Penanganan Berkas

Penanganan File Python File Baca Python Python Tulis/Buat File Python Hapus File

Modul Python

Tutorial NumPy Panduan Panda Tutorial sip

Python Matplotlib

Pengantar Matplotlib Matplotlib Memulai Matplotlib Pyplot Merencanakan Matplotlib Penanda Matplotlib Garis Matplotlib Label Matplotlib Kotak Matplotlib Subplot Matplotlib Penyebaran Matplotlib Matplotlib Bar Histogram Matplotlib Bagan Pai Matplotlib

Pembelajaran mesin

Mulai Mode Median Rata-rata Standar Deviasi Persentil Distribusi Data Distribusi Data Normal Plot Pencar Regresi linier Regresi Polinomial Regresi Berganda Skala Kereta/Tes Pohon Keputusan

Python MySQL

MySQL Memulai MySQL Buat Basis Data MySQL Buat Tabel Sisipan MySQL MySQL Pilih MySQL Dimana MySQL Dipesan Oleh Hapus MySQL Tabel Drop MySQL Pembaruan MySQL Batas MySQL MySQL Bergabung

Python MongoDB

MongoDB Memulai MongoDB Buat Basis Data MongoDB Buat Koleksi Sisipan MongoDB Temukan MongoDB Permintaan MongoDB Sortir MongoDB Hapus MongoDB Koleksi Jatuhkan MongoDB Pembaruan MongoDB Batas MongoDB

Referensi Python

Ikhtisar Python Fungsi bawaan Python Metode String Python Metode Daftar Python Metode Kamus Python Metode Tuple Python Metode Set Python Metode File Python Kata Kunci Python Pengecualian Python Daftar Istilah Python

Referensi Modul

Modul Acak Modul Permintaan Modul Statistik Modul Matematika Modul cMath

Python Bagaimana caranya?

Hapus Duplikat Daftar Membalikkan String Tambahkan Dua Angka

Contoh Python

Contoh Python Kompilator Python Latihan Python Kuis Python Sertifikat Python

Pembelajaran Mesin - Skala


Fitur Skala

Ketika data Anda memiliki nilai yang berbeda, dan bahkan unit pengukuran yang berbeda, akan sulit untuk membandingkannya. Apa kilogram dibandingkan dengan meter? Atau ketinggian dibandingkan dengan waktu?

Jawaban untuk masalah ini adalah penskalaan. Kita dapat menskalakan data menjadi nilai baru yang lebih mudah untuk dibandingkan.

Lihat tabel di bawah ini, ini adalah kumpulan data yang sama yang kita gunakan di bab regresi berganda , tetapi kali ini kolom volume berisi nilai dalam liter , bukan cm 3 (1,0 bukannya 1000).

File ini dimaksudkan untuk tujuan pengujian saja, Anda dapat mengunduhnya di sini: cars2.csv

Mobil Model Volume Berat CO2
Toyota aygo 1.0 790 99
Mitsubishi Bintang Luar Angkasa 1.2 1160 95
Skoda Citigo 1.0 929 95
Perintah 500 0.9 865 90
Mini cooper 1.5 1140 105
VW Ke atas! 1.0 929 105
Skoda fabia 1.4 1109 90
Mercedes Kelas 1.5 1365 92
Mengarungi Pesta 1.5 1112 98
audi A1 1.6 1150 99
Hyundai 20 1.1 980 99
Suzuki Cepat 1.3 990 101
Mengarungi Pesta 1.0 1112 99
honda Kewarganegaraan 1.6 1252 94
Hyundai I30 1.6 1326 97
opel Astra 1.6 1330 97
BMW 1 1.6 1365 99
Mazda 3 2.2 1280 104
Skoda Cepat 1.6 1119 104
Mengarungi Fokus 2.0 1328 105
Mengarungi mondeo 1.6 1584 94
opel Lencana 2.0 1428 99
Mercedes Kelas-C 2.1 1365 99
Skoda Oktavia 1.6 1415 99
Volvo S60 2.0 1415 99
Mercedes PKB 1.5 1465 102
audi A4 2.0 1490 104
audi A6 2.0 1725 114
Volvo V70 1.6 1523 109
BMW 5 2.0 1705 114
Mercedes Kelas-E 2.1 1605 115
Volvo XC70 2.0 1746 117
Mengarungi B-Maks 1.6 1235 104
BMW 2 1.6 1390 108
opel Zafira 1.6 1405 109
Mercedes SLK 2.5 1395 120

Mungkin sulit untuk membandingkan volume 1.0 dengan berat 790, tetapi jika kita menskalakan keduanya menjadi nilai yang sebanding, kita dapat dengan mudah melihat seberapa banyak satu nilai dibandingkan dengan yang lain.

Ada berbagai metode untuk menskalakan data, dalam tutorial ini kita akan menggunakan metode yang disebut standarisasi.

Metode standarisasi menggunakan rumus ini:

z = (x - u) / s

Dimana znilai baru, xmerupakan nilai asli, umerupakan mean dan smerupakan simpangan baku.

Jika Anda mengambil kolom bobot dari kumpulan data di atas, nilai pertama adalah 790, dan nilai yang diskalakan adalah:

(790 - ) / = -2.1

Jika Anda mengambil kolom volume dari kumpulan data di atas, nilai pertama adalah 1,0, dan nilai yang diskalakan adalah:

(1.0 - ) / = -1.59

Sekarang Anda dapat membandingkan -2.1 dengan -1.59 daripada membandingkan 790 dengan 1.0.

Anda tidak harus melakukan ini secara manual, modul sklearn Python memiliki metode yang disebut StandardScaler() yang mengembalikan objek Scaler dengan metode untuk mengubah kumpulan data.

Contoh

Skala semua nilai di kolom Berat dan Volume:

import pandas
from sklearn import linear_model
from sklearn.preprocessing import StandardScaler
scale = StandardScaler()

df = pandas.read_csv("cars2.csv")

X = df[['Weight', 'Volume']]

scaledX = scale.fit_transform(X)

print(scaledX)

Hasil:

Perhatikan bahwa dua nilai pertama adalah -2.1 dan -1.59, yang sesuai dengan perhitungan kami:

[[-2.10389253 -1.59336644]
 [-0.55407235 -1.07190106]
 [-1.52166278 -1.59336644]
 [-1.78973979 -1.85409913]
 [-0.63784641 -0.28970299]
 [-1.52166278 -1.59336644]
 [-0.76769621 -0.55043568]
 [ 0.3046118  -0.28970299]
 [-0.7551301  -0.28970299]
 [-0.59595938 -0.0289703 ]
 [-1.30803892 -1.33263375]
 [-1.26615189 -0.81116837]
 [-0.7551301  -1.59336644]
 [-0.16871166 -0.0289703 ]
 [ 0.14125238 -0.0289703 ]
 [ 0.15800719 -0.0289703 ]
 [ 0.3046118  -0.0289703 ]
 [-0.05142797  1.53542584]
 [-0.72580918 -0.0289703 ]
 [ 0.14962979  1.01396046]
 [ 1.2219378  -0.0289703 ]
 [ 0.5685001   1.01396046]
 [ 0.3046118   1.27469315]
 [ 0.51404696 -0.0289703 ]
 [ 0.51404696  1.01396046]
 [ 0.72348212 -0.28970299]
 [ 0.8281997   1.01396046]
 [ 1.81254495  1.01396046]
 [ 0.96642691 -0.0289703 ]
 [ 1.72877089  1.01396046]
 [ 1.30990057  1.27469315]
 [ 1.90050772  1.01396046]
 [-0.23991961 -0.0289703 ]
 [ 0.40932938 -0.0289703 ]
 [ 0.47215993 -0.0289703 ]
 [ 0.4302729   2.31762392]]


Prediksi Nilai CO2

Tugas dalam bab Regresi Berganda adalah memprediksi emisi CO2 dari mobil jika Anda hanya mengetahui berat dan volumenya.

Saat kumpulan data diskalakan, Anda harus menggunakan skala saat memprediksi nilai:

Contoh

Prediksi emisi CO2 dari mobil 1,3 liter dengan berat 2.300 kilogram:

import pandas
from sklearn import linear_model
from sklearn.preprocessing import StandardScaler
scale = StandardScaler()

df = pandas.read_csv("cars2.csv")

X = df[['Weight', 'Volume']]
y = df['CO2']

scaledX = scale.fit_transform(X)

regr = linear_model.LinearRegression()
regr.fit(scaledX, y)

scaled = scale.transform([[2300, 1.3]])

predictedCO2 = regr.predict([scaled[0]])
print(predictedCO2)

Hasil:

[107.2087328]