Kısa cevap: Primal ve Dual arasında fark yok - sadece çözüme varmanın yolu hakkında. Çekirdek sırt regresyonu esas olarak normal sırt regresyonu ile aynıdır, ancak doğrusal olmayan gitmek için çekirdek hile kullanır.
Doğrusal Regresyon
Her şeyden önce, olağan bir En Küçük Kareler Doğrusal Regresyon, kare hatalarının toplamı minimum olacak şekilde veri noktalarına düz bir çizgi sığdırmaya çalışır.
Bu en iyi uyum hattı parametrize ağırlıkw ve her bir veri noktası için ( x i , y i )(xi,yi) istediğimiz w T x i ≈ y iwTxi≈yi . Let e i = y ı - a , T x iei=yi−wTxi öngörülen ve gerçek değerler arasındaki mesafe - hata olabilir. Bu nedenle hedefimiz, kare hatalarının toplamını en aza indirmektir ∑ e 2 i = ‖ e ‖ 2 = ‖ X w - y ‖ 2∑e2i=∥e∥2=∥Xw−y∥2burada X = [ - x 1- - x 2- ⋮ - x n- ]X=⎡⎣⎢⎢⎢⎢—x1——x2—⋮—xn—⎤⎦⎥⎥⎥⎥- her biri, bir veri matrisixıxibir satır ve olmaky=(y1,...,Y, n) y=(y1, ... ,yn)her bir vektöryiyiVar.
Bu nedenle amaç, bir dakika ağırlık ‖ X ağırlık - y ‖ 2minw∥Xw−y∥2 ve çözüm w = ( X , T x ) - 1 x T yw=(XTX)−1XTy ( "normal Denklem" olarak da bilinir).
Yeni görünmeyen veri noktası için xx onun hedef değer tahmin y olarak y = W , T x .y^y^=wTx
Sırt Regresyonu
Doğrusal regresyon modellerinde birçok ilişkili değişken olduğunda, ww katsayıları zayıf bir şekilde belirlenebilir ve çok fazla varyansa sahip olabilir. Bu sorunun çözümlerinden biri, ağırlıkları ww sınırlamak ve böylece bazı bütçe C'yiC aşmamaktır . Bu kullanarak eşdeğerdir L 2L2 aynı zamanda "ağırlık çürüme" olarak bilinen -regularization: bazen doğru sonuçları eksik pahasına varyansını azalacak (yani bazı önyargı tanıtarak).
Amaç şimdi min w ‖ X w - y ‖ 2 + λ olur‖ Ağırlık ‖ 2minw∥Xw−y∥2+λ∥w∥2 ile, λλ düzenlilestirme parametredir. Matematikten geçerek aşağıdaki çözümü elde ederiz: w = ( X T X + λI ) - 1 X T yw=(XTX+λI)−1XTy . Her zamanki doğrusal regresyona çok benzer, ancak burada X T X'in her bir diyagonal elemanına λλ ekliyoruz.XTX
Not biz ki yeniden yazma ağırlıkw olarak ağırlık = X , T( X X T + λI ) - 1 yw=XT(XXT+λI)−1y (ayrıntılar içinburayabakın). Yeni görünmeyen veri noktası için xx onun hedef değer tahmin y olarak y = x T w = X , T x Ty^( X X T + λI ) - 1 yıly^=xTw=xTXT(XXT+λI)−1y . Let α = ( X- X- T + λI)−1yα=(XXT+λI)−1y. Then ˆy=xTXTα=n∑i=1αi⋅xTxiy^=xTXTα=∑i=1nαi⋅xTxi.
Ridge Regression Dual Form
We can have a different look at our objective - and define the following quadratic program problem:
mine,wn∑i=1e2imine,w∑i=1ne2i s.t. ei=yi−wTxiei=yi−wTxi for i=1..ni=1..n and ‖w‖2⩽C∥w∥2⩽C.
It's the same objective, but expressed somewhat differently, and here the constraint on the size of ww is explicit. To solve it, we define the Lagrangian Lp(w,e;C)Lp(w,e;C) - this is the primal form that contains primal variables ww and ee. Then we optimize it w.r.t. ee and ww. To get the dual formulation, we put found ee and ww back to Lp(w,e;C)Lp(w,e;C).
So, Lp(w,e;C)=‖e‖2+βT(y−Xw−e)−λ(‖w‖2−C)Lp(w,e;C)=∥e∥2+βT(y−Xw−e)−λ(∥w∥2−C). By taking derivatives w.r.t. ww and ee, we obtain e=12βe=12β and w=12λXTβw=12λXTβ. By letting α=12λβα=12λβ, and putting ee and ww back to Lp(w,e;C)Lp(w,e;C), we get dual Lagrangian Ld(α,λ;C)=−λ2‖α‖2+2λαTy−λ‖XTα‖−λCLd(α,λ;C)=−λ2∥α∥2+2λαTy−λ∥XTα∥−λC. If we take a derivative w.r.t. αα, we get α=(XXT−λI)−1yα=(XXT−λI)−1y - the same answer as for usual Kernel Ridge regression. There's no need to take a derivative w.r.t λλ - it depends on CC, which is a regularization parameter - and it makes λλ regularization parameter as well.
Next, put αα to the primal form solution for ww, and get w=12λXTβ=XTαw=12λXTβ=XTα. Thus, the dual form gives the same solution as usual Ridge Regression, and it's just a different way to come to the same solution.
Kernel Ridge Regression
Kernels are used to calculate inner product of two vectors in some feature space without even visiting it. We can view a kernel kk as k(x1,x2)=ϕ(x1)Tϕ(x2)k(x1,x2)=ϕ(x1)Tϕ(x2), although we don't know what ϕ(⋅)ϕ(⋅) is - we only know it exists. There are many kernels, e.g. RBF, Polynonial, etc.
We can use kernels to make our Ridge Regression non-linear. Suppose we have a kernel k(x1,x2)=ϕ(x1)Tϕ(x2)k(x1,x2)=ϕ(x1)Tϕ(x2). Let Φ(X)Φ(X) be a matrix where each row is ϕ(xi)ϕ(xi), i.e. Φ(X)=[—ϕ(x1)——ϕ(x2)—⋮—ϕ(xn)—]Φ(X)=⎡⎣⎢⎢⎢⎢⎢—ϕ(x1)——ϕ(x2)—⋮—ϕ(xn)—⎤⎦⎥⎥⎥⎥⎥
Now we can just take the solution for Ridge Regression and replace every XX with Φ(X)Φ(X): w=Φ(X)T(Φ(X)Φ(X)T+λI)−1y. For a new unseen data point x we predict its target value ˆy as ˆy=ϕ(x)TΦ(X)T(Φ(X)Φ(X)T+λI)−1y.
First, we can replace Φ(X)Φ(X)T by a matrix K, calculated as (K)ij=k(xi,xj). Then, ϕ(x)TΦ(X)T is n∑i=1ϕ(x)Tϕ(xi)=n∑i=1k(x,xj). So here we managed to express every dot product of the problem in terms of kernels.
Finally, by letting α=(K+λI)−1y (as previously), we obtain ˆy=n∑i=1αik(x,xj)
References