Rumah > Peranti teknologi > AI > teks badan

Contoh regresi Lasso: penerangan terperinci kaedah pemilihan ciri

PHPz
Lepaskan: 2024-01-23 09:27:11
ke hadapan
1314 orang telah melayarinya

Contoh regresi Lasso: penerangan terperinci kaedah pemilihan ciri

Lasso regresi ialah model regresi linear yang digunakan untuk pemilihan ciri. Dengan menambahkan istilah regularisasi L1 pada fungsi kehilangan, pekali beberapa ciri boleh ditetapkan kepada 0, dengan itu mencapai tujuan pemilihan ciri. Dalam perkara berikut, saya akan memperincikan kaedah regresi laso dan memberikan contoh dan kod Python yang sepadan.

Kaedah regresi laso

Fungsi kehilangan regresi laso ialah:

L(beta)=frac{1}{2n}sum_{i=1}^{n} }-sum_{j=1}^{p}x_{ij}beta_{j})^{2}+lambdasum_{j=1}^{p}|beta_{j}|

dalam regresi linear Dalam , konsep penting ialah regularisasi. Antaranya, n mewakili bilangan sampel, p mewakili bilangan ciri, y_{i} mewakili label sampel ke-i, x_{ij} mewakili nilai ciri ke-j bagi sampel ke-i, beta_ {j} mewakili Pekali ciri ke-j, lambda mewakili kekuatan regularisasi. Tujuan penyelarasan adalah untuk mengelakkan pemasangan berlebihan dan mengawal kerumitan model dengan menghukum pekali ciri dalam model. Dalam penyelarasan, semakin besar nilai lambda, semakin kuat model itu menghukum ciri. Ini akan menyebabkan pekali beberapa ciri menjadi 0, sekali gus mengurangkan bilangan ciri dalam model. Melalui penyelarasan, kami boleh memilih untuk mengekalkan ciri yang mempunyai kesan paling besar pada hasil ramalan sambil mengurangkan ciri yang tidak diperlukan. Ini memudahkan model dan meningkatkan keupayaan generalisasinya. Oleh itu, matlamat pengoptimuman regresi laso apabila memilih regularization ialah:

hat{beta}=argmin_{beta}frac{1}{2n}sum_{i=1}^{n}(y_ {i}-sum_ {j=1}^{p}x_{ij}beta_{j})^{2}+lambdasum_{j=1}^{p}|beta_{j}|

lasso Kaedah penyelesaian regresi boleh digunakan kaedah penurunan koordinat atau kaedah regresi sudut minimum. Kaedah penurunan koordinat ialah kaedah pengoptimuman berulang yang hanya mengoptimumkan satu pekali pada satu masa dan mengekalkan pekali lain tidak berubah sehingga penumpuan. Kaedah regresi sudut minimum ialah kaedah penyelesaian langsung yang memperoleh model akhir dengan mengoptimumkan semua pekali secara serentak.

Contoh dan kod Lasso Regression

Di bawah kami menggunakan set data sebenar untuk menunjukkan kesan pemilihan ciri Lasso Regression. Kami menggunakan set data diabetes dalam sklearn, yang mengandungi 10 ciri dan pembolehubah tindak balas untuk 442 pesakit diabetes, dan matlamat kami adalah untuk memilih ciri yang paling penting menggunakan regresi laso.

# 导入数据集和相关库
from sklearn.datasets import load_diabetes
from sklearn.linear_model import Lasso
import numpy as np
import matplotlib.pyplot as plt

# 加载糖尿病数据集
diabetes = load_diabetes()

# 将数据集分成训练集和测试集
X_train = diabetes.data[:300]
y_train = diabetes.target[:300]
X_test = diabetes.data[300:]
y_test = diabetes.target[300:]

# 套索回归模型
lasso = Lasso(alpha=0.1)
lasso.fit(X_train, y_train)

# 打印每个特征的系数
print("lasso.coef_:", lasso.coef_)

# 绘制每个特征的系数
plt.plot(range(diabetes.data.shape[1]), lasso.coef_)
plt.xticks(range(diabetes.data.shape[1]), diabetes.feature_names, rotation=60)
plt.ylabel("Coefficients")
plt.show()
Salin selepas log masuk

Menjalankan kod di atas, kita boleh mendapatkan pekali setiap ciri dan plot pekali yang diplot. Keputusan menunjukkan bahawa regresi laso memampatkan pekali semua ciri kecuali ciri kedua kepada 0, yang menunjukkan bahawa ciri ini menyumbang sedikit kepada model dan boleh dihapuskan. Selain itu, pekali ciri kedua adalah lebih besar daripada pekali ciri lain, menunjukkan bahawa ia adalah ciri yang paling penting.

Lasso regresi ialah kaedah pemilihan ciri yang sangat berkesan yang boleh mengawal kuantiti dan kualiti ciri dengan melaraskan kekuatan regularisasi. Dalam aplikasi praktikal, kami boleh menggunakan pengesahan silang untuk memilih kekuatan penyusunan optimum untuk mencapai prestasi model dan kesan pemilihan ciri yang lebih baik.

Atas ialah kandungan terperinci Contoh regresi Lasso: penerangan terperinci kaedah pemilihan ciri. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:163.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan