Neuronale Netze

Maschinelles Lernen für Finanzen in Python

Nathan George

Data Science Professor

GPU moore's law

Maschinelles Lernen für Finanzen in Python

Neuronale Netze haben Potenzial

Neuronale Netze bieten:

  • Nichtlinearität
  • Merkmalsinteraktionen
  • Anpassbarkeit
Maschinelles Lernen für Finanzen in Python

basic neural net diagram

Maschinelles Lernen für Finanzen in Python

net diagram with basic math

Maschinelles Lernen für Finanzen in Python

neural net math

Maschinelles Lernen für Finanzen in Python

activation neural net diagram

Maschinelles Lernen für Finanzen in Python

activation function

Maschinelles Lernen für Finanzen in Python

loss function

Maschinelles Lernen für Finanzen in Python

forward pass

Maschinelles Lernen für Finanzen in Python

backwards pass

Maschinelles Lernen für Finanzen in Python

keras and tensorflow logos

Maschinelles Lernen für Finanzen in Python

Ein neuronales Netz mit Keras umsetzen

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
Maschinelles Lernen für Finanzen in Python

Ein neuronales Netz mit Keras umsetzen

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'))
Maschinelles Lernen für Finanzen in Python

Modell trainieren

model.compile(optimizer='adam', loss='mse')
history = model.fit(scaled_train_features, 
                    train_targets, 
                    epochs=50)
Maschinelles Lernen für Finanzen in Python
plt.plot(history.history['loss'])
plt.title('loss:' + str(round(history.history['loss'][-1], 6)))
plt.xlabel('epoch')
plt.ylabel('loss')
plt.show()

loss plot

Maschinelles Lernen für Finanzen in Python

Leistung prüfen

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
Maschinelles Lernen für Finanzen in Python

Leistung plotten

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

preds vs actual

Maschinelles Lernen für Finanzen in Python

Bau ein neuronales Netz!

Maschinelles Lernen für Finanzen in Python

Preparing Video For Download...