Original Proposal¶
Ausschreibung
Schwerpunkt: Implementieren, Machine Learning, Web-Apps, Literaturrecherche, Vergleich
Anforderungen: gute Kenntnisse in Webentwicklung, Grundkenntnisse in Maschinellem Lernen / Künstliche Intelligenz
Einleitung¶
Mit der steigenden Bedeutung von Machine Learning und Künstlicher Intelligenz im Alltag wächst auch die Nachfrage nach ML-basierten Anwendungen. Früher war es erforderlich, die Anfragen der ML-Anwendungen über APIs an einen Server zu senden, um den ML-Teil dort auszuführen.
Dank Frameworks wie TensorFlow.js und ONNX Runtime Web ist es nun möglich, ML-Modelle direkt im Browser auszuführen und sogar zu trainieren. Zusätzlich ermöglicht das Framework MediaPipe von Google die Echtzeitverarbeitung und Analyse von Bild-, Audio- und Videodaten.
Die vorliegende Abschlussarbeit untersucht und vergleicht die verschiedenen Möglichkeiten der Ausführung von ML-Modellen im Browser.
Ziel der Abschlussarbeit¶
Das Ziel dieser Abschlussarbeit besteht darin, die verschiedenen Möglichkeiten zur Ausführung von ML-Modellen im Browser zu untersuchen und zu vergleichen.
Forschungsfragen¶
- Welche Frameworks sind gängig für die Erstellung von ML-Modellen? (z.B. PyTorch, OpenVino, Caffe)
- Welche Datensätze haben sich in diesem Bereich etabliert? (z.B. COCO, ImageNet, MNIST)
- Welche vortrainierten Modelle werden häufig verwendet? (z.B. MobileNet, SAM, BERT, YOLO)
Vergleichskriterien¶
- Kompatibilität: Unterstützung von anderen Modellen und Frameworks.
- Funktionalität: Welche Funktionen bieten die Frameworks an, z.B. GPU-Beschleunigung, parallele Ausführung usw.?
- Leistung: Vergleich der Geschwindigkeit, Speichernutzung und Skalierbarkeit der Frameworks, möglicherweise in verschiedenen Browsern.
- Verbreitung: Wie weit verbreitet ist ein Framework und wie groß ist die Community?
- (Optional) Integration: Wie einfach lässt sich ein Framework in vorhandene Anwendungen integrieren?
Implementierung¶
Um die Ergebnisse zu überprüfen und zu validieren, sollte eine Anwendung mit allen vorgeschlagenen Web-Frameworks (Tensorflow.js und onnx.js) implementiert werden.
Optional kann die Anwendung in eine React Webanwendung integriert werden.
Quellen¶
- HuggingFace — ML Models Hub (https://huggingface.co/)
- Google MediaPipe (https://research.google/pubs/pub48292/)
- MediaPipe Beispiel (https://arxiv.org/pdf/2006.10214.pdf)
- TensorFlow.js (https://arxiv.org/pdf/1901.05350.pdf)
- ONNX Runtime Web Demo (https://microsoft.github.io/onnxruntime-web-demo)
- Keras.js Demo (https://transcranial.github.io/keras-js)
- SAM — Segment Anything (https://github.com/facebookresearch/segment-anything)
Original Proposal¶
Ausschreibung
Schwerpunkt: Implementieren, Machine Learning, Web-Apps, Literaturrecherche, Vergleich
Anforderungen: gute Kenntnisse in Webentwicklung, Grundkenntnisse in Maschinellem Lernen / Künstliche Intelligenz
Einleitung¶
Mit der steigenden Bedeutung von Machine Learning und Künstlicher Intelligenz im Alltag wächst auch die Nachfrage nach ML-basierten Anwendungen. Früher war es erforderlich, die Anfragen der ML-Anwendungen über APIs an einen Server zu senden, um den ML-Teil dort auszuführen.
Dank Frameworks wie TensorFlow.js und ONNX Runtime Web ist es nun möglich, ML-Modelle direkt im Browser auszuführen und sogar zu trainieren. Zusätzlich ermöglicht das Framework MediaPipe von Google die Echtzeitverarbeitung und Analyse von Bild-, Audio- und Videodaten.
Die vorliegende Abschlussarbeit untersucht und vergleicht die verschiedenen Möglichkeiten der Ausführung von ML-Modellen im Browser.
Forschungsfragen¶
-
Frameworks
Welche Frameworks sind gängig für die Erstellung von ML-Modellen?
PyTorch, OpenVino, Caffe
-
Datensätze
Welche Datensätze haben sich in diesem Bereich etabliert?
COCO, ImageNet, MNIST
-
Vortrainierte Modelle
Welche vortrainierten Modelle werden häufig verwendet?
MobileNet, SAM, BERT, YOLO
Vergleichskriterien¶
| Kriterium | Frage |
|---|---|
| Kompatibilität | Unterstützung von anderen Modellen und Frameworks |
| Funktionalität | GPU-Beschleunigung, parallele Ausführung, etc. |
| Leistung | Geschwindigkeit, Speichernutzung, Skalierbarkeit in verschiedenen Browsern |
| Verbreitung | Wie groß ist die Community? |
| Integration | Wie einfach lässt sich ein Framework integrieren? (optional) |
Implementierung¶
Praktischer Teil
Um die Ergebnisse zu überprüfen und zu validieren, sollte eine Anwendung mit allen vorgeschlagenen Web-Frameworks implementiert werden:
- TensorFlow.js — Google's JavaScript ML library
- ONNX Runtime Web — Microsoft's cross-platform inference engine
Optional kann die Anwendung in eine bestehende React-Webanwendung integriert werden.
Quellen¶
Comparison of Machine Learning Frameworks for In-browser Model Execution¶
Announcement
Focus: Implementation, Machine Learning, Web Apps, Literature Review, Comparison
Requirements: good web development skills, basic knowledge in Machine Learning / Artificial Intelligence
Introduction¶
With the growing importance of Machine Learning and Artificial Intelligence in everyday life, the demand for ML-based applications is also increasing. Previously, ML application requests had to be sent to a server via APIs to execute the ML part there.
Thanks to frameworks like TensorFlow.js and ONNX Runtime Web, it is now possible to run and even train ML models directly in the browser. Additionally, Google's MediaPipe framework enables real-time processing and analysis of image, audio, and video data.
This thesis examines and compares the various possibilities for executing ML models in the browser.
Research Questions¶
-
Frameworks
Which frameworks are commonly used for creating ML models?
PyTorch, OpenVino, Caffe
-
Datasets
Which datasets have become established in this field?
COCO, ImageNet, MNIST
-
Pretrained Models
Which pretrained models are frequently used?
MobileNet, SAM, BERT, YOLO
Comparison Criteria¶
| Criterion | Question |
|---|---|
| Compatibility | Support for other models and frameworks |
| Functionality | GPU acceleration, parallel execution, etc. |
| Performance | Speed, memory usage, scalability across browsers |
| Adoption | How large is the community? |
| Integration | How easy is it to integrate? (optional) |
Implementation¶
Practical Part
To verify and validate the results, an application should be implemented with all proposed web frameworks:
- TensorFlow.js — Google's JavaScript ML library
- ONNX Runtime Web — Microsoft's cross-platform inference engine
Optionally, the application can be integrated into an existing React web application.
Sources¶
Vergleich von Web-Frameworks zur Ausführung von ML-Modellen im Browser¶
Schwerpunkt: Implementieren, Machine Learning, Web-Apps, Literaturrecherche, Vergleich. Anforderungen: gute Kenntnisse in Webentwicklung, Grundkenntnisse in ML/KI.
Forschungsfragen¶
- Welche Frameworks sind gängig für die Erstellung von ML-Modellen? (PyTorch, OpenVino, Caffe)
- Welche Datensätze haben sich in diesem Bereich etabliert? (COCO, ImageNet, MNIST)
- Welche vortrainierten Modelle werden häufig verwendet? (MobileNet, SAM, BERT, YOLO)
Vergleichskriterien¶
- Kompatibilität — Unterstützung von anderen Modellen und Frameworks
- Funktionalität — GPU-Beschleunigung, parallele Ausführung
- Leistung — Geschwindigkeit, Speichernutzung, Skalierbarkeit in verschiedenen Browsern
- Verbreitung — Community-Größe, Maintenance
- Integration — Ease of use, API-Design (optional)
Implementierung¶
Eine Browser-Anwendung mit TensorFlow.js und ONNX Runtime Web zur Validierung der Ergebnisse. Optional in eine React-Anwendung integrierbar.
Quellen¶
Comparison of Machine Learning Frameworks for In-browser Model Execution¶
Focus: Implementation, Machine Learning, Web Apps, Literature Review, Comparison. Requirements: good web development skills, basic ML/AI knowledge.
Research Questions¶
- Which frameworks are commonly used for creating ML models? (PyTorch, OpenVino, Caffe)
- Which datasets have become established? (COCO, ImageNet, MNIST)
- Which pretrained models are frequently used? (MobileNet, SAM, BERT, YOLO)
Comparison Criteria¶
- Compatibility — Support for other models and frameworks
- Functionality — GPU acceleration, parallel execution
- Performance — Speed, memory usage, scalability across browsers
- Adoption — Community size, maintenance
- Integration — Ease of use, API design (optional)
Implementation¶
A browser application using TensorFlow.js and ONNX Runtime Web to validate results. Optionally integrated into a React application.