Paar weniger offensichtliche Stolpersteine

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Paar weniger offensichtliche Stolpersteine
Hier paar kleinere Probleme zur Aufgabe 4, die ich hatte.
Vielleicht hilft’s ja wem…

1. [m]ERROR: No matching distribution found for tensorflow==1.13.1 (from -r .\requirements.txt (line 23))[/m]
Diesen Fehler hatte ich unter Windows 10 mit Python 3.7.4 32bit. Es gibt scheinbar keine passende [m]tensorflow[/m]-Installation zu dieser Umgebung.
Fix: Ich verwende nun Python 3.6.8 64bit.

2. [m]stock_data.py[/m] trainiert kein [m]DeepQLearningTrader[/m] Model:
Fix a): Flag [m]load_trained_model[/m] af False setzen beim Aufruf in [m]stock_data.py[/m]

# dql_trader = deep_q_learning_trader.DeepQLearningTrader(ObscureExpert(Company.A), ObscureExpert(Company.B), True, False, 'red')
dql_trader = deep_q_learning_trader.DeepQLearningTrader(ObscureExpert(Company.A), ObscureExpert(Company.B), False, False, 'red')

Ggfs. möchte man dies wieder rückgängig machen, wenn man mit seinem Modell zufrieden ist…

Fix b): [m]deep_q_learning_trader.py[/m] direkt ausführen…

3. Fehlende imports wenn man [m]deep_q_learning_trader.py[/m] direkt ausführt

Fehlermeldungen dabei wie [m]ModuleNotFoundError: No module named ‘stock_exchange’[/m] signalisieren, dass auf Module im Überordner nicht zugegriffen werden kann (bzw. schaut Python nicht im Überordner nach…)

Fix: Hierfür kann man direkt zu Beginn (oben in der Datei einfügen) den Überordner der [m]path[/m]-Variable hinzufügen.

if __name__ == "__main__":
    import os,sys,inspect
    currentdir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
    parentdir = os.path.dirname(currentdir)
    sys.path.insert(0,parentdir) 

Ich würde hier Fix (b) empfehlen, weil genau dafür ist die Main method in deep_q_learning_trader.py gedacht.