(Attention: l'auteur ne se spécialise pas dans ce domaine, il peut donc y avoir un manque d'explication ou des erreurs.) Cet article gâche la discussion sur la mise en œuvre d'une analyse de régression simple dans Keras. Le bloc-notes Jupyter sera publié sur GitHub, vous pourrez donc l'essayer dès que vous aurez l'environnement. Pour une analyse de régression simple, nous nous référons à Udemy [style Kikagaku] intelligence artificielle / apprentissage automatique de-boîte noire cours-édition débutant-. Il est recommandé à ceux qui souhaitent voir des explications détaillées d'y assister. [Style Kikagaku] Intelligence artificielle / apprentissage automatique Cours de boîte noire-Débutant- https://www.udemy.com/course/kikagaku_blackbox_1/learn/lecture/8258758#overview
Cliquez ici pour le cahier Exécutez SimpleRegressionAnalysis_2.ipynb. L'environnement d'exécution, etc. est décrit au début du notebook. https://github.com/moriitkys/SimpleRegressionAnalysis
L'explication de l'analyse de régression simple est résumée comme suit d'une manière facile à comprendre. "Une variable objective est prédite par une variable explicative et la relation entre les deux variables est exprimée sous la forme d'une équation linéaire Y = aX + b. Si a (pente) et b (section Y) sont connus, , Y (poids) peut être prédit à partir de X (hauteur) " https://www.albert2005.co.jp/knowledge/statistics_analysis/multivariate_analysis/single_regression
En outre, cette page explique en détail. Explication approfondie de l'analyse de régression (analyse de régression unique) d'une manière facile à comprendre! https://udemy.benesse.co.jp/ai/regression-analysis.html
Voici un diagramme de ce qu'il faut faire cette fois.
Une analyse de régression simple est effectuée à l'aide d'une bibliothèque de réseaux de neurones appelée Keras. Il est écrit en Python et peut être exécuté sur Tensorflow. Cette fois, c'est une simple analyse de régression Création du modèle: model=Sequential() model.add() (Attention: ne s'active pas) Initialisation du modèle model.init() Commencez à entraîner le modèle model.fit() Devinez le modèle model.prediction() Cela devient un flux comme. Le code est cette partie.
SimpleRegressionAnalysis.ipynb
# Build model
model = Sequential()
model.add(Dense(1, input_shape=(s, ), use_bias=False))
opt = keras.optimizers.Adam(lr=0.04, beta_1=0.9, beta_2=0.999, epsilon=1e-08, decay=0.0003)
model.compile(optimizer=opt,
loss='mean_squared_error',
metrics=['mae'])
# Start training
history = model.fit(x_normalized, y_normalized, epochs=50, batch_size=20, verbose=1)
Il a la forme simple suivante.
Par conséquent, le résultat de model.summary () a également un paramètre.
Si cela devient une analyse de régression multiple, cela ressemblera à ce qui suit.
À la suite de l'apprentissage, la valeur de la perte a changé comme suit, et il semble qu'elle ait été ajustée immédiatement. Le nombre d'époques est sur l'axe horizontal.
Le modèle du résultat de la recherche d'un modèle par calcul, réglage et minimisation de la fonction d'évaluation, et le résultat de la recherche du modèle par Keras sont les suivants.
Les points tracés en vert sont le résultat de la supposition en entrant les 98e à 108e RM de l'ensemble de données sur les prix des logements dans le modèle de l'analyse de régression simple créée cette fois. Puisqu'il s'agit d'un modèle droit, vous pouvez voir qu'il est deviné sur la ligne droite. Au fait, lors de l'utilisation de Keras, les données sont comprises entre 0 et 1, mais attention car vous ne pouvez pas apprendre si vous les entrez normalement (vous ne pouvez pas apprendre avec cette méthode de notebook). Par conséquent, la valeur de a est également très différente de celle calculée par la formule, mais il semble que les deux sont ajustés aux données de la même manière.
Afin de ne pas oublier l'intention initiale, j'ai mis une version réécrite de la lecture de données dans pandas avec une boucle for dans SimpleRegressionAnalysis_3.ipynb. Si vous venez de démarrer l'apprentissage automatique et que vous ne savez pas ce que vous faites ici, juste pour référence.
SimpleRegressionAnalysis_3.ipynb
with open('boston.csv') as f:
reader = csv.reader(f)
for row in reader:
x_orig.append(row[6])
y_orig.append(row[14])
C'est comme ça. Les articles peuvent être mis à jour.
référence https://matplotlib.org/ https://matplotlib.org/3.2.1/api/_as_gen/matplotlib.pyplot.subplot.html https://pandas.pydata.org/pandas-docs/stable/reference/frame.html https://scikit-learn.org/stable/ https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_boston.html#sklearn.datasets.load_boston https://seaborn.pydata.org/ https://keras.rstudio.com/articles/tutorial_basic_regression.html https://www.kaggle.com/xgdbigdata/keras-regression-tutorial https://github.com/KatsuhiroMorishita/machine_leaning_samples https://www.udemy.com/course/kikagaku_blackbox_1/learn/lecture/8258758#overview