NSI Numérique et Sciences Informatiques, science, régression linéaire, labellisation, réseau de neurones, analyse des performances
Le document comprend des exercices sur la régression. Il inclut la lecture et la labellisation d'un jeu de données, la construction et l'entraînement d'un modèle, l'analyse des performances d'un modèle et la comparaison des performances.
[...] Analyse des performances du modèle Affichez les performances obtenus sur les données d'entrainenent et de validation à chaque épisode (en changeant la valeur de epochs = 20 puis epochs = 30) : Entrée from matplotlib import pyplot as plt loss = history.history['loss'] val_loss = history.history['val_loss'] epochs = range(1, len(loss) + plt.plot(epochs, loss, label='Training loss') plt.plot(epochs, val_loss, label='Validation loss') plt.title('Training and validation loss') plt.xlabel('Epochs') plt.ylabel('Loss') plt.legend() plt.show() Commentez les courbes affichées. La courbe montre que au-delà 20 épisodes, c'est une perte de temps car les niveaux de performances sont les memes, c'est-à-dire que nous avons moins de perte. Dans ce code, l'attribut history.history['loss'] est utilisé pour accéder aux valeurs de perte d'entraînement enregistrées pendant l'entraînement. [...]
[...] Expl quez chacune des l gnes de code c -dessous : Entrée #C'est une étape de prétraitement courante en apprentissage #automatique pour s'assurer que toutes les caractéristiques des données sont à la même échelle. from sklearn.preprocessing import StandardScaler scaler=StandardScaler() #ajuste aux données d'entraînement #Cette étape est nécessaire pour calculer les statistiques utilisées #pour mettre les données à l'échelle, telles que la moyenne et l'écart-type scaler.fit(X_train) X_train_scaled = scaler.transform(X_train) #Ces statistiques sont alors utilisées pour mettre à l'échelle les #ensembles d'entraînement et de test, X_train et X_test, en utilisant #la méthode transform. [...]
[...] TD - Réseau de neurones profonds pour la régression INSTRU Entrée import tensorflow as tf from tensorflow import keras import numpy as np import matplotlib.pyplot as plt I. Réseau de neurones profonds pour la régress on Entrée from from from from from from from from keras.models import Sequential keras.layers import Dense keras.wrappers.scikit_learn import KerasRegressor pandas import read_csv sklearn.model_selection import cross_val_score sklearn.model_selection import KFold sklearn.pipeline import Pipeline sklearn.model_selection import train_test_split II. Lecture et labellisation du jeu de données Téléchargez les données et réorgan sez les comme su t : Entrée df = read_csv("housing_data_for_regression.csv", delim_whitespace=True, header=None) Analysez le contenu de df. [...]
[...] Il cont ent les attr buts qu nous serv ra pour préd re les pr x des appartements. On déc de de donner des noms aux attr buts comme su t : Entrée feature_names = 'INDUS', 'CHAS', 'PTRATIO', 'LSTAT', 'MEDV'] df.columns = feature_names Vér f ez en aff chant : Entrée print(df.head()) CRIM ZN INDUS PTRATIO B CHAS LSTAT NOX MEDV Renommez ‘MEDV' par ‘PRICE' : RM AGE DIS RAD TAX \ Entrée df = df.rename(columns={'MEDV': 'PRICE'}) print(df.describe()) CRIM ZN INDUS CHAS NOX RM \ count mean std min max AGE DIS RAD TAX PTRATIO B \ count mean std min max count mean std min max LSTAT PRICE D ssoc ez les attr buts à sauveagder dasn X des labels à sauvegarder dans y : Entrée X = df.drop('PRICE', axis = y = df['PRICE'] III. [...]
[...] Les commentaires sont les memes qu'à la question précédente sauf que cette fois avec les précision. Testez les performances du modèle entrainé : Entrée predictions = model.predict(X_test_scaled[:5]) print("Predicted values are: predictions) print("Real values are: y_test[:5]) 1/1 - 0s 147ms/step Predicted values are: [[18.42054 ] [20.326553] [20.719149] [21.295843] [13.445385]] Real values are: Name: PRICE, dtype: float64 Aff chez l'erreur quadrat que moyenne(mse) et l'erreur moyenne au sens de la valeur absolue (mae) : Entrée mse_neural, mae_neural = model.evaluate(X_test_scaled, y_test) print('Mean squared error from neural net: mse_neural) print('Mean absolute error from neural net: mae_neural) 4/4 - 0s 3ms/step - loss: 14.4986 - mae: 2.7981 Mean squared error from neural net: 14.49863052368164 Mean absolute error from neural net: 2.7981090545654297 V. [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture