[PYTHON] Mathématiques pour ML

Linear Models Soit y hat la valeur prédite, le vecteur w (= w1, w2 ..., wp) le coefficient (coef) et w0 la section (intercept).

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

Ordinary Least Squares Trouvez le coefficient suivant qui minimise la somme des carrés des résidus. La norme L2 signifie une distance euclidienne ordinaire.

\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 En tant que fonction de perte, le terme de régularisation du carré de la norme L2 est ajouté. La valeur absolue du coefficient est supprimée, ce qui empêche le surapprentissage.

\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 En tant que fonction de perte, le terme de régularisation de la norme L1 (distance de Manhattan) est ajouté. Il peut être possible de réduire la dimension de la quantité d'entité en définissant une partie du coefficient sur 0.

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

Multi-task Lasso

Elastic-Net Ajoutez un terme de régularisation pour la somme des normes L1 et L2. Il en résulte une régression Ridge lorsque ρ = 0 et une régression Lasso lorsque ρ = 1.

\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) Il y a une condition d'arrêt.

\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 Classification en disant Régression. Un modèle de régression statistique de variables qui suivent la distribution de Bernoulli. Utilisez Logit comme fonction de concaténation.


K-plus proche voisins / méthode de voisinage k

application

Prédisez les loisirs des utilisateurs tels que les films, la musique, les résultats de recherche et les achats. Il existe un filtrage collaboratif qui effectue des prédictions basées sur des préférences utilisateur similaires, et un filtrage basé sur le contenu qui fait des prédictions basées sur ce que les utilisateurs ont aimé dans le passé.

Q-Learning / Q apprentissage

Un algorithme d'apprentissage pour la valeur d'action d'état Q (s, a), où s est l'état, a est l'action et r est la récompense. Dans l'équation suivante, α signifie le taux d'apprentissage et γ le taux d'actualisation. Q (st, at) est mis à jour l'un après l'autre selon α comme suit. La valeur Q maximale de l'état de destination de mise à jour st + 1 est adoptée en fonction de γ.

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))

Méthode de Monte Carlo

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

Recommended Posts

Mathématiques pour ML
Traduction TensorFlow MNIST pour les débutants en ML
Tutoriel TensorFlow MNIST pour les débutants en ML
Tutoriel TensorFlow -MNIST pour les débutants en ML
Notes supplémentaires pour TensorFlow MNIST pour les débutants en ML
Réalisation du didacticiel TensorFlow MNIST pour débutants en ML