-
Setup & Best Practices
- Starter repo
LUH-AI template für Code Repositories. Enthält einige empfohlene Funktionen wie z.B. linting, formatting, automatisierte Tests und Überprüfen von Docstrings. Dieses sollte für alle Projekte genutzt werden. - The art of debugging
Ausführliche Übersicht über debugging Tools & Methoden - How to debug your ML algorithm
Blogpost über das Debuggen von ML Code - How to debug your RL algorithm
Blogpost über das Debuggen von RL Code
- Starter repo
-
ML Frameworks
- Torch
Unser Standard ML framework. Torch sollte die Grundlage der meisten Projekte bilden und nur in Ausnahmefällen nicht genutzt werden. - Jax
Alternative zu Torch, allerdings nur für Projekte mit hohen Hardwareanforderungen empfohlen. Die Einarbeitung ist aufwendig und sollte vorher abgesprochen werden. - Scikit-Learn
Framework mit vielen Funktionen für klassische ML & Data Science Ansätze - Tensorflow
Alternative zu Torch. Tensorflow sollte nicht für Projekte bei uns genutzt werden. - Keras
Interface für verschiedene ML frameworks. Es sollte eigentlich keinen Grund geben Keras statt Torch zu nutzen.
- Torch
-
AutoML Tools & Benchmarks
Tools
- SMAC
Unser HPO Tool, das als Standard für Black-box Optimierung genutzt werden sollte. - Hypersweeper
Parallelisierung verschiedener HPO Tools. Sollte zusammen mit SMAC für HPO von teueren Projekten benutzt werden. - AutoPyTorch
Pipelinesuche für Torch. - AutoSKlearn
Pipelinesuche für SKlearn. Nützlich für tabulare Daten.
Benchmarks
- SMAC
- Analyse Tools
-
Reinforcement Learning
RL Algorithmen
- Mighty
Flexible Implementationen von RL Algorithmen in Torch - CleanRL
Implementationen verschiedener Algorithmen und Environments. - PureJax
Sehr schnell, aber nicht besonders flexibel/einfach zu ändern - Stoix
Alternative zu PureJax mit einfacherem Interface
Environments
- Classic Control
Sehr einfach, aber gut für Testen & Debuggen - MiniGrid
Testen von Exploration mit großer Bandbreite an Schwierigkeiten. - CARL
Erweiterungen klassischer environments um Generalisierung zu testen. - Mujoco
Robotik Simulationen - Brax
Alternative zu Mujoco, empfohlen allerdings nur für Usecases mit starker Parallelisierung - MiniHack
NetHack varianten, die viel Varianz haben und sehr schwer werden können, allerdings auch komplexe Observations haben. Ideal um Skills zu testen oder für sehr schwere Aufgaben. - Crafter/Craftax
Minecraft-artiges Environment with einfacheren Observations. Kann sehr komplex werden und enthält lange zeitliche Abhängigkeiten. - Robotics Gym
Komplexe Robotikaufgaben an realistischen Modellen. - Atari
Atari Spiele. Relativ schwer, vor allem aber sehr teuer zu evaluieren. Nur für HPO, offline RL oder in der 100K Version empfohlen. - ProcGen
Ähnlich wie Atari mit etwas höherer Komplexität. - Pufferlib
Schnellere Ausführung vieler dieser Environments
- Mighty