Les moindres carrés du moindre

Les moindres carrés du moindre
Aujourd'hui, nous allons en savoir plus sur les moindres carrés des équations linéaires et comment implémenter la méthode du moindre carré pour le meilleur ajustement pour la ligne de régression dans les ensembles de données fournies. Mais avant cela, obtenons la connaissance de base de Numpy. Numpy est l'un des meilleurs packages mathématiques de Python qui fournit des services pour des tableaux et matrices multidimensionnels ainsi qu'un large éventail d'opérations numériques complexes qui peuvent être effectuées sur ces matrices / tableaux.

L'une des méthodes de Python LSTSQ () est utilisée pour trouver la ligne de régression de l'équation linéaire connue AX = B qui correspond le mieux à cette équation. Cela signifie que vous devez déterminer la ligne qui montre correctement la relation entre les points x et y si vos données indiquent qu'il y en a une. La ligne entre les deux points est connue comme une ligne de régression lorsqu'elle est utilisée pour trouver le moins carré à travers cette équation, AX = B.

Syntaxe:

Commençons à apprendre le style de mise en œuvre du linalg.Fonction LSTSQ (). Tout d'abord, nous écrivons le nom de la bibliothèque que nous utilisons dans Python qui est «Numpy». Ensuite, nous concaténons la fonction Linalg () et concaténons la fonction LSTSQ (). La fonction linalg () signifie l'algèbre linéaire. Il est toujours utilisé avec la fonction LSTSQ () car il s'agit d'une expression algébrique linéaire. Après cela, nous passons les arguments dans les supports de fonction.

Paramètres:

Comprenons les paramètres du linalg.Fonction lSTSQ ():

Point1: C'est la matrice du coefficient.

Point2: Cette matrice ou cette table contient des variables dépendantes.

rcond: Le type de données est flottant. Le rapport rcond sert de coupure pour les valeurs singulières plus petites de Point_1. Si une valeur singulière est inférieure à ce que le RCOND temps le plus grand élément singulier de Point_1, il est considéré comme zéro lors de la détermination du rang.

Valeur de retour:

En retour, nous obtenons le moins carré de la variable connue x dans l'équation AX = B.

Exemple 1:

Commençons à implémenter notre premier exemple d'une méthode du moins carrée de la bibliothèque Python, Numpy. Tout d'abord, nous avons besoin d'un compilateur Python afin que nous puissions coder dedans. Ouvrez le compilateur. Vous devez également installer la bibliothèque Numpy parce que nous utilisons l'une des fonctions de Numpy qui est la fonction lSTSQ (). Ensuite, vous devez y importer le package Numpy. Tout d'abord, écrivez le mot-clé «import» qui indique au compilateur que nous allons importer le package. Ensuite, nous devons écrire le nom du package que nous utilisons dans la fonction qui est «Numpy». Et puis, nous écrivons également le nom alternatif du «NP» Numpy parce que de nombreux programmeurs utilisent cette approche. C'est une bonne approche de programmation, et cela fait gagner du temps.

Après avoir importé le package, nous commençons à écrire la ligne de code réelle que nous voulons faire. Nous imprimons d'abord les messages afin que l'utilisateur puisse facilement comprendre ce que nous faisons dans l'exemple en utilisant l'instruction print (). Nous créons le tableau unidimensionnel «A» en utilisant la fonction Array (), puis l'imprimez en appelant l'instruction print (). Ensuite, nous créons un autre tableau unidimensionnel «B» en utilisant la fonction Array () et l'imprimez en utilisant la fonction print ().

Importer Numpy comme NP
Print ("Implémentation de la méthode des moindres carrés dans Numpy:")
A = np.Array ([1,2,1,1,1,2,2,1,1))
print ("\ nthe array a est:", a)
B = np.Array ([4,3,5,4,2,3,6,3,2])
Imprimer ("\ nLe tableau b est:", b)
X = np.linalg.LSTSQ (NP.Vstack ([A, NP.ceux (Len (A))]).T, b, rcond = aucun) [0]
imprimer ("\ n le moins carré est:", x)

Après la création des deux points A et B, nous implémentons la fonction LSTSQ (). Mais d'abord, nous utilisons la fonction vStack () pour empiler les éléments de «A», en termes de séquence. Ensuite, nous prenons la transposition du tableau «A». Ensuite, nous passons la fonction vStack () comme le premier argument de la fonction LSTSQ (). Le deuxième argument est le tableau «B» et le troisième argument est «rcond» dans lequel nous définissons la valeur de rcond comme «aucun». Ensuite, nous stockons toute la fonction dans un autre tableau nommé «X» qui montre qu'il s'agit de l'équation linéaire variable connue, AX = B. Après cela, nous affichons les résultats afin que nous utilisons l'instruction print () pour cela et passons le tableau «x» dedans.

Exemple 2:

Maintenant, commençons à mettre en œuvre un autre exemple des moindres carrés numpy. Nous importons toujours la bibliothèque d'abord que nous utilisons dans le programme qui est Numpy. Tout d'abord, nous écrivons le mot-clé «Importer» pour obtenir le package dans le programme. Nous écrivons également le nom du package qui est «Numpy» puis son alias, «NP». Ensuite, nous appelons la méthode print () afin que nous puissions afficher le message retable des moindres carrés pour une meilleure compréhension de l'utilisateur.

Ensuite, nous créons le nom du tableau «x_axis» et stockons le tableau dedans à l'aide de la fonction arange (). Ensuite, nous l'imprimons en utilisant la méthode print (). Ensuite, nous créons un autre nom de tableau «y_axis» et stockons le tableau qu'il y a créé dans l'illustration suivante.

Après avoir créé les deux tableaux, nous implémentons la méthode Ones () sur le tableau X_axis et la stockons dans un autre tableau nommé "Array_A". Et puis, nous imprimons également ce tableau. Nous créons un autre tableau nommé "Arg_reg_line" et implémentons un linalg.Fonction LSTSQ (). Ensuite, nous passons les paramètres à cette fonction afin que nous puissions obtenir les moindres carrés entre deux tableaux ou points. Le premier paramètre est que nous prenons la transposition de Array_A. Le deuxième paramètre est le deuxième point qui est le y_axis. Ensuite, nous avons «rcond» qui contient la valeur «Aucun». Nous affichons ensuite le tableau à l'aide de la méthode print ().

Importer Numpy comme NP
Print ("Implémentation de Linalg.LSTSQ () Fonction: ")
x_axis = np.Arange (0, 10)
print ("\ nLa valeur de l'axe x sont:", x_axis)
y_axis = [10.3, 10.5, 11, 11.5, 13.2, 13.9, 14, 15.5, 16.6, 17]
print ("\ nLa valeur de l'axe y sont:", y_axis)
array_a = np.Array ([x_axis, np.ceux (10)])
print ("\ nthe array est: \ n", array_a)
arg_reg_line = np.linalg.LSTSQ (Array_A.T, y_axis, rcond = aucun) [0]
print ("\ nthe paramètres de la ligne de regrssion est:", arg_reg_line)
reg_line = arg_reg_line [0] * x_axis + arg_reg_line [1]
Importer Matplotlib.pypllot comme plt
PLT.tracé (x_axis, reg_line, 'r-')
PLT.tracé (x_axis, y_axis, 'o')
PLT.titre ("ligne de régression linéaire")
PLT.xlabel ("axe x")
PLT.ylabel ("axe y-")
PLT.montrer()

Voici la puissance de l'exemple de prédiouly:

Nous importons un autre package de Numpy qui est le package «Matplotlib» qui est utilisé pour tracer le graphique. Ensuite, nous tracons les valeurs x_axis et y_axis_values. Ensuite, nous définissons le titre et les étiquettes du graphique. Enfin, nous affichons le graphique à l'aide de la méthode show ().

Voici le graphique souhaité de l'exemple donné:

Conclusion

Dans cet article, nous avons appris ce qui est le moindre carré et comment nous obtenons le Linalg.LSTSQ () de la variable inconnue x en utilisant l'équation linéaire AX = B. Nous avons utilisé plusieurs fonctions de Numpy pour trouver les moindres carrés et mis en œuvre quelques exemples avec des explications détaillées pour une meilleure compréhension de l'utilisateur.