Deep learning Technology tensorflow pytorch python Algorithms Generative adversarial networks Reinforcement learing q-learning