Partage de technologie

Deep LearningDeepLearning Notes d'étude sur la régression linéaire multiple

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Caractéristiques multidimensionnelles

Variables et termes

Attribut de colonne xjNombre d'attributs n x ⃗ vecteur{x}X (je)vecteur de ligneune certaine valeur x ⃗ ji vec{x}_j^iX jjeHaut et bas
moyenne μstandardisationÉcart type σsigma (σ)

formule

w ⃗ vec{w}m = [w1 m2 m3 …]
x ⃗ vecteur{x}X = [x1 X2 X3 …]

fw ⃗ , b ( x ⃗ ) = w ⃗ ∗ x ⃗ + b = w 1 x 1 + w 2 x 2 + … + wnxn + b f_{vec{w},b} (vec{x}) = vec{w} * vec{x} + b = w_1x_1 + w_2x_2 + … + w _nx_n + bFm ,b(X )=m X +b=m1X1+m2X2++mnXn+b

la régression linéaire multiple

import numpy
f = np.dot(w, x) + b
  • 1
  • 2

Remarque : C'est très rapide lorsque n est grand (traitement parallèle)

méthode d'équation normale

  1. Plus de 1000 est inefficace
  2. Elle ne peut être généralisée à d’autres algorithmes comme la régression logistique, les réseaux de neurones ou autres.
  3. pas d'itération

wn = wn − α 1 m ∑ i = 1 mfw ⃗ , b ( x ⃗ ( i ) − y ( i ) ) xn ( i ) w_n = w_n - αdfrac{1}{m} sumlimits_{i=1}^mf_{vec{w},b}(vec{x}^{(i)}-y^{(i)})x_n^{(i)}mn=mnαm1je=1mFm ,b(X (je)et(je))Xn(je)

b = b − α 1 m ∑ i = 1 m ( fw ⃗ , b ( x ⃗ ( i ) − y ( i ) ) b = b - α{dfrac{1}{m}}sommelimites_{i=1}^m(f_{vec{w},b}(vec{x}^{(i)}-y^{(i)})b=bαm1je=1m(Fm ,b(X (je)et(je))

Les poids correspondant aux variables indépendantes dans une plage plus large ont tendance à être plus petits, et les poids correspondant aux variables indépendantes dans une plage plus petite ont tendance à être plus grands.

Normalisation moyenne

Divisez par la valeur maximale de la plage pour trouver le poids par rapport à [0, 1] de la variable indépendante

Abscisse: x 1 = x 1 − μ 1 2000 − 300 x_1 = dfrac{x_1-μ_1}{2000-300}X1=2000300X1μ1 Axe Y : x 2 = x 2 − μ 2 5 − 0 x_2 = dfrac{x_2 - μ_2}{5-0}X2=50X2μ2

− 0,18 ≤ x 1 ≤ 0,82 -0,18le x_1le0,820.18X10.82 − 0,46 ≤ x 2 ≤ 0,54 -0,46le x_2le0,540.46X20.54

Normalisation du score Z

300 ≤ x 1 ≤ 2000 300le x_1le2000300X12000 0 ≤ x 2 ≤ 5 0le x_2le50X25

x 1 = x 1 − μ 1 σ 1 x1 = dfrac{x_1-μ_1}{σ_1}X1=σ1X1μ1 − 0,67 ≤ x 1 ≤ 3,1 -0,67le x_1le3,10.67X13.1

Essayez de maintenir les valeurs de toutes les caractéristiques dans une plage similaire grâce à la mise à l'échelle, de sorte que l'impact de leurs modifications sur les valeurs prédites soit proche de (-3,3)

Si la fonction de coût J devient grande, cela signifie que la taille du pas (taux d'apprentissage) est inappropriée ou que le code est erroné.

Insérer la description de l'image ici

Remarque : le nombre d'itérations varie d'une machine à l'autre

En plus de dessiner des courbes pour déterminer le point d'itération, des tests de convergence automatiques peuvent également être utilisés.
Soit ε égal 1 0 − 3 10^{-3} 103, si la diminution de J est inférieure à ce petit nombre, on considère qu'elle a convergé.

Définir un taux d'apprentissage approprié

  1. Lors du test, vous pouvez définir une très petite valeur pour voir si J diminue.
  2. Le taux d'apprentissage pendant l'itération ne doit être ni trop élevé ni trop faible.
  3. A chaque fois *3 lors des tests, choisissez un taux d'apprentissage aussi grand que possible, ou légèrement inférieur à une valeur raisonnable

Ingénierie des fonctionnalités

Créer une ingénierie de fonctionnalités par transformation ou combinaison pour offrir plus d'options

fw ⃗ , b ( x ⃗ ) = w 1 x 1 + w 2 x 2 + w 3 x 3 + b f_{vec{w},b}(vec{x}) = w_1x_1+w_2x_2+w_3x_3+bFm ,b(X )=m1X1+m2X2+m3X3+b

Remarque : La régression polynomiale peut être utilisée pour un ajustement linéaire et non linéaire.