[PYTHON] Mathematik für ML

Linear Models Sei y der vorhergesagte Wert, der Vektor w (= w1, w2 ..., wp) der Koeffizient (coef) und w0 der Abschnitt (intercept).

\hat{y}(w, x) = w_0 + w_1 x_1 + ... + w_p x_p

Ordinary Least Squares Suchen Sie den folgenden Koeffizienten, der die Summe der quadratischen Residuen minimiert. Die L2-Norm bedeutet einen gewöhnlichen euklidischen Abstand.

\min_{w} || X w - y||_2^2

sklearn

class sklearn.linear_model.LinearRegression(*, fit_intercept=True, normalize=False, copy_X=True, n_jobs=None)

Implementation

Ridge Regression Als Verlustfunktion wird der Regularisierungsterm des Quadrats der L2-Norm hinzugefügt. Der Absolutwert des Koeffizienten wird unterdrückt, wodurch ein Überlernen verhindert wird.

\min_{w} || X w - y||_2^2 + \alpha ||w||_2^2

sklearn

class sklearn.linear_model.Ridge(alpha=1.0, *, fit_intercept=True, normalize=False, copy_X=True, max_iter=None, tol=0.001, solver='auto', random_state=None)

Lasso Regression Als Verlustfunktion wird der Regularisierungsterm der L1-Norm (Manhattan-Entfernung) hinzugefügt. Es kann möglich sein, die Abmessung der Merkmalsmenge zu reduzieren, indem ein Teil des Koeffizienten auf 0 gesetzt wird.

\min_{w} { \frac{1}{2n_{\text{samples}}} ||X w - y||_2 ^ 2 + \alpha ||w||_1}

Multi-task Lasso

Elastic-Net Fügen Sie einen Regularisierungsterm für die Summe der L1- und L2-Normen hinzu. Es führt zu einer Ridge-Regression, wenn ρ = 0 ist, und zu einer Lasso-Regression, wenn ρ = 1 ist.

\min_{w} { \frac{1}{2n_{\text{samples}}} ||X w - y||_2 ^ 2 + \alpha \rho ||w||_1 +
\frac{\alpha(1-\rho)}{2} ||w||_2 ^ 2}

Multi-task Elastic-Net

Least Angle Regression (LARS)

Orthogonal Matching Pursuit (OMP) Es liegt eine Stoppbedingung vor.

\underset{w}{\operatorname{arg\,min\,}}  ||y - Xw||_2^2 \text{ subject to } ||w||_0 \leq n_{\text{nonzero\_coefs}}

Bayesian Regression

p(y|X,w,\alpha) = \mathcal{N}(y|X w,\alpha)

Logistic Regression Klassifizierung, während Regression gesagt wird. Ein statistisches Regressionsmodell von Variablen, die der Bernoulli-Verteilung folgen. Verwenden Sie Logit als Verkettungsfunktion.


K-nächste Nachbarn / k Nachbarschaftsmethode

Anwendung

Prognostizieren Sie Benutzerhobbys wie Filme, Musik, Suchergebnisse und Einkäufe. Es gibt Collaborative Filtering, das Vorhersagen basierend auf ähnlichen Benutzereinstellungen erstellt, und Content-based Filtering, das Vorhersagen basierend auf den Vorlieben der Benutzer in der Vergangenheit erstellt.

Q-Learning / Q-Learning

Ein Lernalgorithmus für den Zustandsaktionswert Q (s, a), wobei s der Zustand ist, a die Aktion ist und r die Belohnung ist. In der folgenden Gleichung bedeutet α die Lernrate und γ den Abzinsungssatz. Q (st, at) wird nacheinander gemäß α wie folgt aktualisiert. Der maximale Q-Wert des Aktualisierungszielzustands st + 1 wird gemäß γ übernommen.

Q(s_t, a_t) \leftarrow (1-\alpha)Q(s_t, a_t) + \alpha(r_{t+1} + \gamma \max_{a_{t+1}}Q(s_{t+1}, a_{t+1}))\\

Q(s_t, a_t) \leftarrow Q(s_t, a_t) + \alpha(r_{t+1} + \gamma \max_{a_{t+1}}Q(s_{t+1}, a_{t+1}) - Q(s_t, a_t))

Sarsa

Q(s_t, a_t) \leftarrow Q(s_t, a_t) + \alpha(r_{t+1} + \gamma Q(s_{t+1}, a_{t+1}) - Q(s_t, a_t))

Monte-Carlo-Methode

Returns(s, a) \leftarrow append(Returns(s, a), r)\\
Q(s, a) \leftarrow average(Returns(s, a))

Recommended Posts

Mathematik für ML
TensorFlow MNIST Für ML Anfänger Übersetzung
TensorFlow Tutorial MNIST Für ML-Anfänger
TensorFlow Tutorial -MNIST Für ML-Anfänger
Ergänzende Hinweise zu TensorFlow MNIST für ML-Anfänger
Durchführen des TensorFlow MNIST für ML-Anfänger-Tutorials