TP1 AFD Correction
TP1 AFD Correction
TP1 AFD Correction
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from mpl_toolits.mplot3d import axes3d
pd.set_option(‘display.notebook_repr_html’, False)
pd.set_option(‘display.max_columns’, None)
pd.set_option(‘display.max_rows’, 150)
pd.set_option(‘display.max_seq_items’, None)
#%config InlineBackend.figure_formats = {‘pdf’,}
%matplotlib inline
import seaborn as sns
sns.set_context(‘notebook’)
sns.set_style(‘white’)
2/ Instruction 1: lire de la base tp1_data.txt et délimiter les valeurs d’attributs parune virgule.
X= np.c_[np.ones(data.shape[0]),data[:,0]]
y= np.c_[data[:,1]]
plt.xlim(4,24)
6/ Instruction 5: nommer l’axe des abscisses « Population of City in 10,000s » et l’axe des
ordonnées « Profit in $10,000s ».
plt.xlabel("Population of City in 10.000s")
plt.ylabel("Profit in $10.000s")
#Résultat
32.072733877455676
Et en prenant en considération:
• La même variable m.
• Une variable J_history qui prend l’ensemble des résultats de la fonction coût pour
chaque itération.
.
.
.
m = y.size
J_history = np.zeros(num_iters)
for iter in np.arange(num_iters):
h = X.dot(theta)
theta = theta - alpha*(1/m)*(X.T.dot(h-y))
J_history[iter]=computeCost(X, y, theta)
return (theta, J_history)
5.3/ Représentation de la fonction de Descente du Gradient « gradientDescent »
En se focalisant sur l’ensemble des données tp1_data.txt, représenter graphiquement
Dans l’axe des abscisses, ajouter « Iterations » comme titre et « Cost_J » dans l’axe des
ordonnées.
.
.
.
plt.xlabel('Iterations')
plt.ylabel('CostJ')
xx=np.arange(5,23)
yy= theta[0]+theta[1]*xx
#Rerprésentation avec Gradient Descent
plt.scatter(X[:,1], y, s=30, c='r', marker='x')
plt.plot(xx, yy, label="Linear regression (Gradient Descent)")
plt.xlim(4, 24)
plt.xlabel('Population of City in 10.000s')
plt.ylabel('Profit in $10.000')
plt.legend(loc=4)
… Avec cet ajustement, essayez prédire le bénéfice d’une ville avec une population de
35000 et 70000.
Donc notre « fonction de décision », que nous appelons aussi « hypothèse », sera égale à:
Pour connaître l’estimation exacte pour une population de 35 000 nous utiliserons les
meilleures valeurs des paramètres Ѳ0 et Ѳ1, d’où l’obtention de l’hypothèse suivante: