Réseaux de neurones

Machine Learning pour la finance en Python

Nathan George

Data Science Professor

Loi de Moore pour les GPU

Machine Learning pour la finance en Python

Le potentiel des réseaux de neurones

Les réseaux neuronaux offrent :

  • non-linéarité
  • interactions entre variables
  • personnalisation
Machine Learning pour la finance en Python

schéma d'un réseau neuronal de base

Machine Learning pour la finance en Python

schéma avec math de base

Machine Learning pour la finance en Python

math des réseaux neuronaux

Machine Learning pour la finance en Python

activation : schéma de réseau

Machine Learning pour la finance en Python

fonction d'activation

Machine Learning pour la finance en Python

fonction de perte

Machine Learning pour la finance en Python

propagation avant

Machine Learning pour la finance en Python

rétropropagation

Machine Learning pour la finance en Python

logos keras et tensorflow

Machine Learning pour la finance en Python

Implémenter un réseau avec keras

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
Machine Learning pour la finance en Python

Implémenter un réseau avec keras

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense


model = Sequential()
model.add(Dense(50, input_dim=scaled_train_features.shape[1], activation='relu')) model.add(Dense(10, activation='relu')) model.add(Dense(1, activation='linear'))
Machine Learning pour la finance en Python

Ajuster le modèle

model.compile(optimizer='adam', loss='mse')
history = model.fit(scaled_train_features, 
                    train_targets, 
                    epochs=50)
Machine Learning pour la finance en Python
plt.plot(history.history['loss'])
plt.title('loss:' + str(round(history.history['loss'][-1], 6)))
plt.xlabel('epoch')
plt.ylabel('loss')
plt.show()

courbe de perte

Machine Learning pour la finance en Python

Évaluer la performance

from sklearn.metrics import r2_score

# calculate R^2 score
train_preds = model.predict(scaled_train_features)
print(r2_score(train_targets, train_preds))
0.4771387560719418
Machine Learning pour la finance en Python

Tracer la performance

# plot predictions vs actual
plt.scatter(train_preds, train_targets)
plt.xlabel('predictions')
plt.ylabel('actual')
plt.show()

prédictions vs valeurs réelles

Machine Learning pour la finance en Python

Créez un réseau de neurones !

Machine Learning pour la finance en Python

Preparing Video For Download...