kurse:efcomputergrafik:kw09

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
kurse:efcomputergrafik:kw09 [2020/02/25 15:06]
Simon Knaus
kurse:efcomputergrafik:kw09 [2020/02/27 09:06]
Simon Knaus
Line 68: Line 68:
 === Einstiegsfragen ===  === Einstiegsfragen === 
   - Welches sind Klassifizierungsaufgaben bei Clearview? Was ist der Feature Space? Was ist $|\mathcal{Y}|$?   - Welches sind Klassifizierungsaufgaben bei Clearview? Was ist der Feature Space? Was ist $|\mathcal{Y}|$?
-  - Welches sind Klassifzierungsaufgaben beim Slaugherbots? Wie viele Elemente hat die Menge $\mathcal Y$ +  - Welches sind Klassifzierungsaufgaben beim Slaugherbots? Wie viele Elemente hat die Menge $\mathcal Y$
  
 === Regression === === Regression ===
Line 76: Line 76:
   - Setze ein Modell $y_i=f(x_i)=\beta x_i+\epsilon_i$ voraus, $y_i$ sind dabei die gefahrenen Kilometer und $x_i$ das Alter in Tagen. Bestimme $\beta$ so, dass $\sum_{i=1}^{n}(y_i-\beta x_i)^2=\text{RSS}(f)$ minimal ist, das heisst, leite eine Formel für $\beta$ her.     - Setze ein Modell $y_i=f(x_i)=\beta x_i+\epsilon_i$ voraus, $y_i$ sind dabei die gefahrenen Kilometer und $x_i$ das Alter in Tagen. Bestimme $\beta$ so, dass $\sum_{i=1}^{n}(y_i-\beta x_i)^2=\text{RSS}(f)$ minimal ist, das heisst, leite eine Formel für $\beta$ her.  
   - Berechne $\beta$ in Python ohne Hilfsmittel, das heisst, lies die Daten ein und bestimme $\beta$.    - Berechne $\beta$ in Python ohne Hilfsmittel, das heisst, lies die Daten ein und bestimme $\beta$. 
-  - Verwende dann [[https://scikit-learn.org/stable/index.html|SciKit]] um ebenfalls $\beta$ zu bestimme+  - Verwende dann [[https://scikit-learn.org/stable/index.html|SciKit]] um ebenfalls $\beta$ zu bestimmen. 
-  - Leite die Formel für $\alpha$ und $\beta$ im Modell $f(y_i)=\alpha+\beta x_i$ her. +    - Installiere zuerst scikit. Frage Ks oder eine/n der erfahrenen Programmierer/innen. 
 +    - Arbeite die Lösung unten Schritt für Schritt durch, falls du noch nicht klar kommst
 +  - Leite die Formel für $\alpha$ und $\beta$ im Modell $f(y_i)=\alpha+\beta x_i$ her: Das Prinzip ist dasselbe: Wir haben neu eine Funktion $f$, welche von $\alpha$ und $\beta$ abhängt, das heisst, um $\alpha$ und $\beta$ zu bestimmen, kann $f$ nach $\alpha$ und nach $\beta$ abgeleitet werden, beide gleich Null gesetzt werden und das Gleichungssystem aufgelöst werden.
   - Berechne $\alpha$ und $\beta$ wiederum <<von Hand>> und dann in SciKit.   - Berechne $\alpha$ und $\beta$ wiederum <<von Hand>> und dann in SciKit.
 +  - Du hast nun ein Modell: $y=f(x)=\alpha+\beta x$. Berechne Forecasts auf {{kurse:efcomputergrafik:cardata_test.zip|diesem Datensatz}}. Speichere deine Forecasts im Wiki [[kurse:efcomputergrafik:forecastcompetition|Forecasts]] 
  
 <hidden Lösung Afg.1 > <hidden Lösung Afg.1 >
Line 161: Line 164:
 Genau wie bei der univariaten Regression, kann das Problem als Polynom in $\alpha$ und $\beta$ aufgefasst werden. Leite wir $f$ nach $\alpha$ und $\beta$ ab und setzen beides gleich $0$ und lösen nach $\alpha$ und $\beta$ auf, erhalten wir: Genau wie bei der univariaten Regression, kann das Problem als Polynom in $\alpha$ und $\beta$ aufgefasst werden. Leite wir $f$ nach $\alpha$ und $\beta$ ab und setzen beides gleich $0$ und lösen nach $\alpha$ und $\beta$ auf, erhalten wir:
 \[ \[
-\beta= \frac{\sum(x_i-\bar{x})(y_i-\bar{y})}{\sum(x_i-\bar{x})^2} \text{ und } \alpha=\bar{y}-\widehat{\beta}_1\bar{x}+\beta= \frac{\sum(x_i-\bar{x})(y_i-\bar{y})}{\sum(x_i-\bar{x})^2} \text{ und } \alpha=\bar{y}-{\beta}\bar{x}
 \] \]
 wobei $\bar{y}=\frac{1}{n}\sum_{i=1}^n y_i$ und $\bar{x}=\frac{1}{n}\sum_{i=1}^n x_i$ ist. wobei $\bar{y}=\frac{1}{n}\sum_{i=1}^n y_i$ und $\bar{x}=\frac{1}{n}\sum_{i=1}^n x_i$ ist.
Line 176: Line 179:
 Wenn also z.B. $p=2$ ist suchen wir also eine Ebene, welche die quadrierten Abstände der Datenpunkte von der Ebene minimiert. Wenn also z.B. $p=2$ ist suchen wir also eine Ebene, welche die quadrierten Abstände der Datenpunkte von der Ebene minimiert.
  
 +
 +==== Tafeln ====
 +{{ :kurse:efcomputergrafik:efcg_1.jpg?200 |}}
 +
 +==== Prüfung / OOP ==== 
 +<code python | prA3.py>
 +
 +class Foo:
 +    def __init__(self,a):
 +        self.n = a
 +    def mehr(self):
 +        self.n+=1
 +    def show(self):
 +        print(self.n)
 +        
 +        
 +a=Foo(3)
 +b=Foo(5)
 +a.mehr()
 +b.show()
 +print(b.n)
 +b.mehr()
 +b.show()
 +print(b.n)
 +a.show()
 +print(a.n)
 +
 +#a.n ist analog zu reg.coef_ oder reg.intercept_
 +</code>
  • kurse/efcomputergrafik/kw09.txt
  • Last modified: 2020/03/03 15:18
  • by Simon Knaus