Page cover

Toolsetsammlung

Diese Toolsetsammlung zielt darauf ab, einen Überblick über verfügbare Ressourcen in verschiedenen, für Machine Learning relevante Bereiche, zu bieten. Sie umfasst verschiedenste Tools, wobei bspw. die Themen Data Exploration, ML Interpretierbarkeit, ML für Embedded Geräte oder MLOps angesprochen werden. Die aufgeführten Tools werden mit einer kurzen Beschreibung deren Funktionen, typischen Anwendungsgebieten sowie Links zu deren Dokumentationen präsentiert. Unter anderem ist das Ziel der Toolsetsammlung, die ML-Engineering-Pipeline zu vereinfachen und zu beschleunigen.

Datenlabeling und -vorbereitung

Datenlabeling und -vorbereitung sind entscheidende Schritte im Machine Learning-Prozess, insbesondere beim überwachten Lernen. Datenlabeling bezieht sich auf das Annotieren von Rohdaten, z. B. durch das Hinzufügen von Labeln zu Bildern, Texten oder Audiodaten, die später als Trainingsdaten für ML-Modelle dienen. Datenvorbereitung umfasst Schritte wie Bereinigung, Transformation und Normalisierung der Daten, um sie für das Modelltraining optimal nutzbar zu machen. Diese Phase stellt sicher, dass die Modelle präzise und effizient lernen können.

Label Studio Label Studio ist ein Open-Source-Tool zur Datenannotation. Es unterstützt Text-, Bild-, Audio- und Videoannotation für ML-Modelle. Die flexible Plattform ermöglicht vielfältige Labeling-Aufgaben. Dokumentation unter Label Studio Dokumentation.

Roboflow Roboflow ist eine Plattform zur Datenaufbereitung für Computer Vision. Es bietet Annotation, Vorverarbeitung und Datenmanagement, um Modelle für Bildklassifizierung und Objekterkennung zu trainieren. Mehr Informationen unter Roboflow Webseite.

Datenexploration

Data Exploration ist ein Prozess in der Datenanalyse, bei dem Daten untersucht werden, um Muster und Trends zu erkennen. Es beinhaltet statistische Analysen und visuelle Darstellungen, um ein tieferes Verständnis der Datenstruktur zu gewinnen und Hypothesen für weiterführende Analysen zu entwickeln.

DataPrep DataPrep ermöglicht die schnelle und einfache Vorbereitung von Daten für die Analyse. Mit Funktionen wie automatisierter Reinigung, Integration und Visualisierung von Daten, ist es besonders nützlich für Data Scientists und Analysten. Die Dokumentation ist unter DataPrep Dokumentation zu finden.

ydata-profiling Dieses Tool generiert Profilberichte aus Datensätzen. Es ist hilfreich, um einen Überblick über die Datenqualität und -struktur zu bekommen. Typische Anwendungen sind in der Datenanalyse und beim Data-Mining. Die Dokumentation ist verfügbar unter ydata-profiling Dokumentation.

ML Interpretierbarkeit

ML Interpretierbarkeit bedeutet, die Entscheidungsfindung von Machine Learning-Modellen nachvollziehbar und erklärbar zu machen. Sie ist wichtig für das Vertrauen in ML-Systeme und die Sicherstellung ihrer Fairness und Unvoreingenommenheit.

Shap Shapley Additive exPlanations (SHAP) ist ein Tool zur Interpretation von Machine Learning-Modellen. Es hilft zu verstehen, wie die Eingabevariablen eines Modells dessen Ausgaben beeinflussen. Nützlich in Szenarien, wo Transparenz und Verständlichkeit von ML-Modellen wichtig sind. Die Dokumentation findet sich unter Shap Dokumentation.

LIME LIME (Local Interpretable Model-agnostic Explanations) ist ein Tool zur Erklärung von Machine Learning Modellvorhersagen. Es arbeitet modellagnostisch, was bedeutet, dass es mit verschiedenen Arten von ML-Modellen funktioniert. LIME ist besonders nützlich, um die Beiträge einzelner Eingabemerkmale zu einer Vorhersage transparent zu machen. Die Dokumentation und weitere Details zu LIME finden sich unter LIME Dokumentation.

Gradcam Gradcam ermöglicht die visuelle Erklärung von Entscheidungen in konvolutionellen neuronalen Netzwerken. Es ist besonders hilfreich in der Bildanalyse, um zu verstehen, welche Teile eines Bildes zur Entscheidungsfindung beitragen. Die Dokumentation ist verfügbar unter Gradcam Dokumentation.

PatchCore PatchCore ist ein Tool zur Anomalieerkennung in Bildern. Es wird häufig in der Qualitätskontrolle und Überwachung eingesetzt. Weitere Informationen finden Sie unter PatchCore Dokumentation.

Anomalieerkennung

Anomalieerkennung ist der Prozess, ungewöhnliche und abweichende Muster in Daten zu identifizieren, die auf Probleme oder interessante Einsichten hinweisen könnten. Sie kann in verschiedenen Bereichen wie Bildern oder Zeitserien eingesetzt werden.

Anomalib Anomalib ist eine Bibliothek zur Anomalieerkennung, die auf dem OpenVINO Toolkit basiert. Es bietet verschiedene Algorithmen zur Erkennung von Anomalien in Bildern, was besonders nützlich in der Qualitätskontrolle und Überwachung ist. Die Bibliothek unterstützt sowohl supervised als auch unsupervised Lernmethoden. Die Dokumentation und weitere Details sind unter anomalib Dokumentation zu finden.

PYOD PyOD ist eine umfassende und skalierbare Python-Bibliothek für die Erkennung von Anomalien in multivariaten Daten. Es umfasst eine Vielzahl von Detektionsalgorithmen, darunter statistische, proximity-based, und neural network-basierte Methoden. Typische Anwendungen sind Betrugserkennung, Event Detection in Netzwerken und Ökosystemüberwachung. Weitere Informationen und Dokumentation finden sich unter pyod Dokumentation.

Pysad Pysad ist eine Python-Bibliothek speziell für Stream-Anomalieerkennung. Es ist darauf ausgerichtet, Anomalien in Echtzeit in Datenströmen zu identifizieren, was es ideal für Anwendungen wie Echtzeit-Überwachungssysteme oder zur Erkennung von ungewöhnlichen Mustern in Finanzdaten macht. Die Bibliothek bietet eine flexible Architektur und verschiedene Algorithmen für die Anomalieerkennung. Detaillierte Informationen und Dokumentation sind unter pysad Dokumentation erhältlich.

ML für eingebettete Geräte

Dies umfasst die Ausführung von Machine Learning-Algorithmen auf eingebetteten Systemen wie Mikrocontrollern und IoT-Geräten mit begrenzten Ressourcen.

TensorFlow Lite Model Maker Dieses Tool erleichtert das Anpassen und Optimieren von TensorFlow-Modellen für mobile und eingebettete Geräte. Es wird häufig in IoT-Anwendungen und mobilen Apps verwendet. Die Dokumentation ist unter TensorFlow Lite Model Maker Dokumentation zu finden.

Autoflow Autoflow dient zur Automatisierung des Workflows bei der Entwicklung von ML-Modellen für eingebettete Geräte. Es findet Anwendung in Bereichen wie IoT und Edge Computing. Die Dokumentation finden Sie unter Autoflow Dokumentation.

emlearn Dies ist eine Bibliothek, die Machine Learning in eingebettete Systeme bringt, indem sie das Einbetten von trainierten Modellen in C-Code ermöglicht. Sie ist ideal für den Einsatz auf Mikrocontrollern und anderen ressourcenbeschränkten Geräten, da keine externe Abhängigkeit während der Laufzeit benötigt wird. Emlearn unterstützt verschiedene Klassifikations- und Regressionsmodelle, einschließlich Entscheidungsbäume und neuronale Netze. Für weitere Informationen besuchen Sie die Emlearn Dokumentation.

AIfES AIfES ist eine auf C basierende Machine Learning Bibliothek für eingebettete Systeme, die das Trainieren und Ausführen von ML-Modellen direkt auf Mikrocontrollern ermöglicht. Es unterstützt neuronale Netze und ist auf verschiedene Plattformen portierbar. Mehr Informationen und die Dokumentation finden Sie auf der GitHub-Seite von AIfES.

Edge impuls Dieses Tool bietet eine End-to-End-Plattform für die Entwicklung von Machine Learning-Modellen für Edge-Geräte. Es ist besonders nützlich für Entwickler von IoT-Lösungen. Weitere Informationen finden sich unter Edge Impulse Produktseite.

Automatic Structured Pruning Dieses Tool ermöglicht das Beschneiden und Optimieren von neuronalen Netzwerken für effizientere Bereitstellung auf eingebetteten Geräten. Die Dokumentation ist verfügbar unter Automatic Structured Pruning Dokumentation.

Larq Larq ist eine Bibliothek zur Erstellung und Optimierung binärer neuronaler Netze (BNNs). Diese Netzwerke sind effizienter und eignen sich gut für ressourcenbeschränkte Geräte. Weitere Informationen unter Larq Dokumentation.

Hyperparameteroptimierung

Hyperparameteroptimierung beinhaltet die Auswahl der besten Parameter eines Modells. Dabei kann es sich um Anzahl/Art der Schichten, Anzahl Neuronen/Filter oder die Lernrate handeln, die vor dem Trainingsprozess festgelegt werden.

Hyperopt Hyperopt ist ein Tool zur Optimierung der Hyperparameter von Machine Learning-Modellen. Es wird breit in ML-Projekten eingesetzt, um die Leistung von Modellen zu maximieren. Die Dokumentation finden Sie unter Hyperopt Dokumentation.

Optuna Optuna ist ein Framework für Hyperparameteroptimierung, das eine einfache API und visuelle Tools für die Analyse bietet. Es ist für diverse Machine Learning Frameworks geeignet. Die Dokumentation ist verfügbar unter Optuna Dokumentation.

ML workflow

Der Machine Learning Workflow umfasst die Schritte von der Problemdefinition und Datensammlung über Datenaufbereitung, Auswahl und Training eines Modells, bis hin zu dessen Evaluation, Implementierung und kontinuierlicher Wartung.

Ray Ray ist ein Framework für verteiltes Computing, das den Machine Learning Workflow beschleunigt. Es unterstützt parallele und verteilte Trainingsprozesse. Die Dokumentation ist unter Ray Dokumentation zu finden.

Automatisches ML

Automatic Machine Learning (AutoML) automatisiert die Entwicklung von ML-Modellen, indem es Aufgaben wie die Auswahl von Modellen, die Optimierung von Hyperparametern und die Datenvorverarbeitung vereinfacht. Dies macht ML-Modelle für Nicht-Experten zugänglicher und effizienter, insbesondere in Szenarien mit umfangreichen Daten und vielen Modellkonfigurationen.

Autokeras Autokeras ist ein AutoML-Tool, das automatisch das beste Modell und dessen Hyperparameter für eine gegebene Aufgabe findet. Es eignet sich besonders für Entwickler, die schnell effektive Modelle entwickeln wollen. Die Dokumentation finden Sie unter Autokeras Dokumentation.

Open Source Datensätze

Open Source Datasets sind öffentlich zugängliche Datensätze, die unter Lizenzen zur freien Nutzung, Modifikation und Weitergabe stehen. Sie umfassen eine breite Palette von Themen und sind wesentlich für Forschung und Entwicklung, speziell im Bereich des Machine Learnings, da sie Trainingsdaten für Algorithmen bereitstellen und den freien Wissensaustausch und Innovationen fördern.

Huggingface Bietet eine große Sammlung von vorverarbeiteten Datasets für Machine Learning, speziell im Bereich des Natural Language Processing. Die Dokumentation ist unter Huggingface Webseite zu finden.

paperswithcode Integriert wissenschaftliche Paper mit dem zugehörigen Code und Datasets, ideal für Forschung und Entwicklung. Die Dokumentation und weitere Details sind unter paperswithcode Webseite erhältlich.

kaggle Bekannt für seine Machine Learning Wettbewerbe, bietet Kaggle auch eine Vielzahl von Datasets und Community-bezogenen Ressourcen. Die Dokumentation ist verfügbar unter Kaggle Webseite.

UCI Machine Learning Repository Eine umfangreiche Sammlung von Datasets, die häufig in der akademischen Forschung verwendet werden. Weitere Informationen finden sich unter UCI Repository Webseite.

OpenML Eine Online-Plattform für das Teilen und Finden von Datasets, ideal für kollaborative Forschungsprojekte. Die Dokumentation ist verfügbar unter OpenML Webseite.

Data.gov Bietet eine Fülle von öffentlich zugänglichen Daten, insbesondere aus dem Bereich der US-Regierung. Weitere Details und die Dokumentation finden sich unter Data.gov Webseite.

MLOps

MLOps, eine Kombination aus Machine Learning und Operations, wendet Prinzipien der Softwareentwicklung (DevOps) auf den ML-Lebenszyklus an. Es zielt darauf ab, die Erstellung, Bereitstellung und Wartung von ML-Modellen zu systematisieren und zu automatisieren, um Effizienz und Zuverlässigkeit zu erhöhen. Dies umfasst standardisierte Entwicklungsprozesse, kontinuierliche Integration und Bereitstellung sowie Überwachung und Verwaltung von ML-Modellen in der Produktion.

DVC Data Version Control ist ein Tool zur Versionierung und Verwaltung von großen Datensätzen und Machine Learning-Modellen. Es wird häufig in Teams eingesetzt, die ML-Projekte entwickeln. Die Dokumentation ist unter DVC Dokumentation verfügbar.

Dud Dud bietet ähnliche Funktionalitäten wie DVC und konzentriert sich auf die Versionierung und das Tracking von Datenpipelines. Weitere Informationen sind unter Dud Dokumentation zu finden.

Git LFS Git Large File Storage (LFS) ermöglicht es, große Dateien effizient mit Git zu verwalten, was besonders bei großen ML-Modellen und Datensätzen nützlich ist. Die Dokumentation ist verfügbar unter Git LFS Webseite.

mlflow MLflow ist eine Plattform zur Verwaltung des gesamten Machine Learning Lebenszyklus, inklusive Experimentierung, Reproduzierbarkeit und Bereitstellung. Weitere Details und die Dokumentation sind auf der mlflow Webseite zu finden.

MLEM MLEM erleichtert die Bereitstellung und das Management von Machine Learning-Modellen, besonders in der Zusammenarbeit zwischen Data Scientists und Entwicklern. Die Dokumentation ist unter MLEM Dokumentation verfügbar.

kubeflow Kubeflow ist eine Kubernetes-basierte Plattform, die es ermöglicht, Machine Learning Workflows zu orchestrieren und zu skalieren. Weitere Informationen und die Dokumentation sind auf der kubeflow Dokumentation verfügbar.

Spark Apache Spark ist eine Unified Analytics Engine, die groß angelegte Datenverarbeitung und Machine Learning unterstützt. Die Dokumentation ist verfügbar unter Spark Webseite.

Last updated