Rețele neuronale

Machine Learning pentru finanțe în Python

Nathan George

Data Science Professor

Legea lui Moore pentru GPU

Machine Learning pentru finanțe în Python

Potențialul rețelelor neuronale

Rețelele neuronale au:

  • neliniaritate
  • interacțiuni între variabile
  • personalizabilitate
Machine Learning pentru finanțe în Python

diagrama de bază a rețelei neuronale

Machine Learning pentru finanțe în Python

diagrama rețelei cu matematică de bază

Machine Learning pentru finanțe în Python

matematica rețelei neuronale

Machine Learning pentru finanțe în Python

diagrama activărilor rețelei neuronale

Machine Learning pentru finanțe în Python

funcție de activare

Machine Learning pentru finanțe în Python

funcție de pierdere

Machine Learning pentru finanțe în Python

pasul înainte

Machine Learning pentru finanțe în Python

pasul înapoi

Machine Learning pentru finanțe în Python

logo-urile Keras și TensorFlow

Machine Learning pentru finanțe în Python

Implementarea unei rețele neuronale cu Keras

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
Machine Learning pentru finanțe în Python

Implementarea unei rețele neuronale cu 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 pentru finanțe în Python

Antrenarea modelului

model.compile(optimizer='adam', loss='mse')
history = model.fit(scaled_train_features, 
                    train_targets, 
                    epochs=50)
Machine Learning pentru finanțe în Python
plt.plot(history.history['loss'])
plt.title('loss:' + str(round(history.history['loss'][-1], 6)))
plt.xlabel('epoch')
plt.ylabel('loss')
plt.show()

grafic al pierderii

Machine Learning pentru finanțe în Python

Evaluarea performanței

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 pentru finanțe în Python

Vizualizarea performanței

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

predicții vs. valori reale

Machine Learning pentru finanțe în Python

Construiți o rețea neuronală!

Machine Learning pentru finanțe în Python

Preparing Video For Download...