Contoh regresi berwajaran tempatan dalam Python
Regresi Berwajaran Tempatan ialah kaedah regresi bukan parametrik Berbanding dengan kaedah regresi tradisional, ia tidak menggunakan parameter tetap untuk regresi data. Sifat penyesuaian ini menjadikan regresi wajaran tempatan digunakan secara meluas dalam bidang seperti analisis regresi dan ramalan siri masa.
Dalam Python, analisis regresi berwajaran tempatan boleh dilakukan menggunakan algoritma pelicinan plot serakan berwajaran tempatan (LOWESS) dalam pakej scikit-learn. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Python untuk melaksanakan algoritma LOWESS dan menggunakan contoh untuk analisis demonstrasi.
Berikut ialah langkah untuk melaksanakan regresi berwajaran tempatan menggunakan Python:
Untuk melaksanakan regresi berwajaran setempat dalam Python, gunakan import Perpustakaan seperti numpy, panda, matplotlib.pyplot dan sklearn.neighbors.
Gunakan perpustakaan panda untuk membaca data dan menyediakan data untuk X dan y. Antaranya, X ialah pembolehubah bebas dan y ialah pembolehubah bersandar.
Piawaikan data X dan y. Ini boleh menghapuskan perbezaan ukuran antara data, memusatkan data berhampiran sifar sebelum pemodelan dan mengurangkan kesan magnitud.
Gunakan kelas LocallyWeightedRegression dalam perpustakaan sklearn.neighbors agar sesuai dengan model. Apabila menggunakan kaedah ini, dua hiperparameter perlu ditentukan: lebar jalur dan fungsi berat. Dalam kebanyakan kes, nilai lebar jalur yang lebih kecil memberikan model yang lebih tepat, tetapi juga lebih mahal dari segi pengiraan.
Gunakan kaedah ramalan objek locally_weighted_regression untuk meramalkan pembolehubah bersandar sepadan dengan pembolehubah bebas yang baru dimasukkan.
Seterusnya, mari lihat contoh regresi wajaran tempatan.
Contoh 1: Ramalan harga rumah berdasarkan data populasi
Kami menggunakan set data harga rumah Boston dalam pangkalan data UCI untuk pemasangan dan ramalan model. Set data mengandungi 506 sampel dan 13 pembolehubah tidak bersandar, termasuk kadar jenayah bandar per kapita (CRIM), bahagian perumahan milik sendiri sebelum 1940 selepas pembinaan (ZN), kepekatan nitrik oksida (NOX), bilangan bilik per kapita (RM) )tunggu.
import numpy sebagai np
import panda sebagai pd
import matplotlib.pyplot sebagai plt
daripada sklearn.preprocessing import StandardScaler
dari sklearn.neighbors import KNeighborsRegressor
Baca set data harga perumahan Boston
data = pd.read_csv('https : //archive.ics.uci.edu/ml/machine-learning-databases/housing/housing.data', header = Tiada, sep = 's+')
Nyatakan X dan y
X = data.iloc[:, :13].values
y = data.iloc[:, 13].values
Normalkan (-1, 1))
Pisah set data kepada set latihan dan set ujian
daripada sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X , y, test_size=0.2, random_state=0)
🎜hasil visualisasi >
Bandingkan keputusan yang diramalkan dengan nilai sebenar dalam set ujian pada graf yang sama
plt.show()
Menurut grafik visual, kita dapat melihat bahawa keputusan ramalan model adalah sangat hampir dengan nilai sebenar dalam set ujian. Ini menunjukkan bahawa model regresi wajaran tempatan boleh meramalkan harga perumahan dengan tepat.
Atas ialah kandungan terperinci Contoh regresi berwajaran tempatan dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!