data_mining:svm

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
data_mining:svm [2014/08/16 15:25] – [Kernel] phreazerdata_mining:svm [2014/08/17 21:11] (current) – [Parameterwahl] phreazer
Line 51: Line 51:
 f_2 = \text{similarity}(x,l^{(2)}) = \exp(-\frac{||x-l^{(2)}||^2}{2 \sigma^2}) \\  f_2 = \text{similarity}(x,l^{(2)}) = \exp(-\frac{||x-l^{(2)}||^2}{2 \sigma^2}) \\ 
 $$ $$
 +
 +Ähnlichkeitsfunktionen = Kernel $k(x,l^{(i)})$
 +
 +Hier Gaussian Kernel.
 +
  
 Wenn $x \approx l^{(1)}$: $f_1 \approx 1$ Wenn $x \approx l^{(1)}$: $f_1 \approx 1$
Line 56: Line 61:
 Wenn $x$ weit entfernt von $l^{(1)}$: $f_1 \approx 0$ Wenn $x$ weit entfernt von $l^{(1)}$: $f_1 \approx 0$
  
-Ähnlichkeitsfunktionen = Kernel $k(x,l^{(i)})$ 
  
-Hier Gaussian Kernel.+Anpassen von $\sigma$ 
 + 
 +===== Landmarks ===== 
 + 
 +Sage $y=1$ vorher wenn $\theta_0 + \theta_1 f_1 + \theta_2 f_2 + \theta_3 f_3 \geq 0$ 
 + 
 +Wie $l^{(1)}, l^{(2)}, l^{(3)}, ...$ wählen? 
 + 
 +$l^{(1)} = x^{(1)}$ usw. 
 + 
 +==== Feature Vector f ==== 
 + 
 +$f_1 = \text{similarity}(x,l^{(1)})$ usw. 
 + 
 +Für $x^{(i)}$ muss entsprechend berechnet werden: 
 + 
 +$$ 
 +f_1^{(i)} = \text{sim}(x^{(i)}, l^{(1)}) \\ 
 +f_2^{(i)} = \text{sim}(x^{(i)}, l^{(2)}) \\ 
 +\dots \\ 
 +f_m^{(i)} = \text{sim}(x^{(i)}, l^{(m)}) 
 +$$ 
 + 
 +Sage y=1 vorher, wenn $\theta^T f \geq 0$ 
 + 
 +Wie bekommt man $\theta$? 
 + 
 +Durch Minimierung der Kostenfunktion, jetzt mit $\theta^T f^{(i)}$ anstelle von $\theta^T f^{(i)}$. 
 + 
 +==== Parameterwahl ==== 
 + 
 +$C = \frac{1}{\lambda}$ 
 + 
 +  * Großes C: Niedriger Bias, hohe Varianz => Overfitting 
 +  * Niedriges C: Hoher Bias, niedrige Varianz => Underfitting 
 + 
 +$\sigma^2$ 
 + 
 +  * Groß: Features variieren sanfter => Hoher Bias, niedrige Varianz 
 +  * Niedrig: Features varrieren abrupter => Niedriger Bias, hohe Varianz 
 + 
 +===== Kernelwahl ===== 
 + 
 +  * Kein Kernel (linear Kernel): n groß, m klein 
 +  * Gaussian Kernel: n klein, m groß 
 +    * Implementierung der Ähnlichkeitsfunktion (bzw. Features $f_i$) 
 +    * Feature Scaling vor Verwendung des Gaussian Kernel $||v||^2 = v_1^2 + v_2^2 + \dots + v_n^2$ 
 +    * Polynomial Kernels: Eher selten benutzt 
 +    * Weitere 
 + 
 +Manche Ähnlichkeitsfunktionen erzeugen keine gültigen Kernel. Diese müssen Mercer's Theorem erfüllen (aufgrund Optimierungen und Konvergenz). 
 + 
 +===== Algowahl =====
  
 +  * Wenn n groß gegenüber m: Log Reg oder SVM ohne Kernel
 +  * Wenn n klein (1-1000) und m mittelgroß (10-10000): SVM mit Gaussian Kernel
 +  * Wenn n klein (1-1000) und m groß (50000+): Mehr Features + Log Reg oder SVM ohne Kernel
  
  • data_mining/svm.1408195505.txt.gz
  • Last modified: 2014/08/16 15:25
  • by phreazer