Rumah  >  Artikel  >  Peranti teknologi  >  Penyelarasan Tikhonov

Penyelarasan Tikhonov

王林
王林ke hadapan
2024-01-23 09:33:161190semak imbas

Penyelarasan Tikhonov

Penyaturan Tikhonov, juga dikenali sebagai regresi rabung atau regularisasi L2, ialah kaedah regularisasi yang digunakan untuk regresi linear. Ia mengawal kerumitan dan keupayaan generalisasi model dengan menambahkan istilah penalti norma L2 kepada fungsi objektif model. Istilah penalti ini menghukum berat model dengan jumlah kuasa dua untuk mengelakkan berat berlebihan dan dengan itu mengurangkan masalah overfitting. Kaedah ini memperkenalkan istilah regularisasi ke dalam fungsi kehilangan dan melaraskan pekali regularisasi untuk mengimbangi keupayaan pemasangan dan keupayaan generalisasi model. Regularisasi Tikhonov mempunyai pelbagai aplikasi dalam aplikasi praktikal dan boleh meningkatkan prestasi dan kestabilan model dengan berkesan.

Sebelum regularisasi, fungsi objektif regresi linear boleh dinyatakan sebagai:

J(w)=frac{1}{2m}sum_{i=1}^{m}(h_w(x^{ (i)})-y^{(i)})^2

Dalam fungsi objektif ini, kita dapat melihat bahawa w ialah vektor berat model, h_w(x^{(i)}) ialah vektor berat model untuk Hasil ramalan sampel ke-i x^{(i)}, y^{(i)} ialah label sebenar, dan m ialah bilangan sampel. Untuk mengoptimumkan fungsi objektif ini, kaedah seperti penurunan kecerunan sering digunakan. Kaedah ini mengira kecerunan fungsi objektif dan mengemas kini vektor berat w, dengan itu secara beransur-ansur mengurangkan nilai fungsi objektif, menjadikan keputusan ramalan model lebih dekat dengan label sebenar. Dengan cara ini, kita boleh meningkatkan prestasi model dengan mengoptimumkan fungsi objektif.

Dan dalam regularisasi Tikhonov, fungsi objektif menjadi:

J(w)=frac{1}{2m}sum_{i=1}^{m}(h_w(x^ {(i)} )-y^{(i)})^2+frac{lambda}{2}||w||_2^2

di mana, lambda ialah parameter penyelarasan, yang digunakan untuk mengawal intensiti tempoh penalti. ||w||_2^2 mewakili norma L2 bagi vektor berat, iaitu jumlah kuasa dua semua pemberat. Istilah penalti ini mengehadkan nilai pemberat supaya ia tidak boleh terlalu besar, dengan itu menghalang model daripada dipasang berlebihan.

Dalam aplikasi praktikal, nilai lambda parameter regularisasi biasanya perlu ditentukan melalui pengesahan silang dan kaedah lain. Jika lambda terlalu kecil, kesan regularisasi akan menjadi lemah dan model masih terdedah kepada overfitting; jika lambda terlalu besar, tempoh penalti akan mengatasi fungsi objektif asal, mengakibatkan model tidak sesuai.

Pengaturan Tikhonov mempunyai beberapa ciri dan aplikasi lain. Contohnya, ia boleh mengendalikan korelasi antara ciri dengan lebih baik kerana ia membenarkan pemberat ciri yang berkaitan untuk membatalkan satu sama lain; ia juga boleh digunakan untuk mengendalikan data berdimensi tinggi kerana ia boleh mengurangkan bilangan ciri dengan menghukum ciri yang tidak penting.

Berikut ialah contoh regresi linear menggunakan regularisasi Tikhonov.

Andaikan terdapat set data yang mengandungi 2 ciri dan label. Kami menggunakan perpustakaan Scikit-learn Python untuk melakukan ini:

from sklearn.linear_model import Ridge
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.datasets import make_regression

# 生成数据集
X, y = make_regression(n_samples=100, n_features=2, noise=0.5, random_state=42)

# 数据归一化
scaler = StandardScaler()
X = scaler.fit_transform(X)

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 构建模型
ridge = Ridge(alpha=1.0)  # alpha为正则化参数

# 模型训练
ridge.fit(X_train, y_train)

# 模型评估
print("Train score:", ridge.score(X_train, y_train))
print("Test score:", ridge.score(X_test, y_test))

Dalam contoh ini, kami menggunakan fungsi make_regression perpustakaan Scikit-learn untuk menjana set data dengan 2 ciri dan label. Kami mula-mula menormalkan data dan kemudian menggunakan fungsi train_test_split untuk membahagikan set data kepada set latihan dan set ujian. Seterusnya, kami menggunakan fungsi Ridge untuk membina model regresi linear teratur Tikhonov, di mana parameter alfa ialah parameter regularisasi. Akhir sekali, kami menggunakan fungsi muat untuk melatih model, dan menggunakan fungsi skor untuk mengira markah R2 pada set latihan dan set ujian masing-masing.

Perlu diingatkan bahawa nilai alpha parameter regularization perlu ditentukan melalui pengesahan silang dan kaedah lain. Dalam contoh ini, kami menggunakan nilai lalai alpha=1.0. Jika alfa terlalu kecil, model mungkin tidak menunjukkan prestasi yang memuaskan jika alfa terlalu besar, model mungkin kurang dipasang.

Atas ialah kandungan terperinci Penyelarasan Tikhonov. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:163.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam