Über Mich
Ich stehe kurz vor dem Abschluss meines B.Sc. in Data Science mit starkem Fokus auf edge AI im MOT Bereich. Mich interessiert vor allem, wie Perception-Modelle in der realen Welt performen, wie etwa auf meinen selbstgebauten Drohnen, und nicht nur auf isolierten Benchmarks. Die folgenden Projekte zeigen, wie ich Custom-Hardware und robuste Software kombiniere, um End-to-End-Systeme für echte operative Herausforderungen zu entwickeln.
BURA Langstrecken Aufklärung
Eine vollständig 3D-gedruckte Drohne für Langstrecken- und mehrstündige Aufklärungsmissionen.
Hierarchisches Multi Object Tracking
Ein post-hoc hierarchisches Framework für YOLO und ähnliche Modelle, das unsichere Detektionen validiert und den Tracking-Recall drastisch verbessert.
Anki Automation
Eine Desktop-Anwendung zur KI-gestützten Erstellung von Anki-Lernkarten. Entwickelt für effizientes Lernen an der Universität. Jetzt als eigenständige Desktop-App mit geführtem Einrichtungsablauf und überarbeiteter Benutzeroberfläche verfügbar.
Explain the Scaled Dot-Product Attention mechanism used in Transformers.
The attention mechanism computes a weighted sum of values based on the compatibility of the query with corresponding keys:
\[ \text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V \]
- Q: Query matrix
- K: Key matrix
- V: Value matrix
- \( d_k \): Dimension of keys (scaling factor to prevent vanishing gradients in softmax)
What is the objective function optimized in a Variational Autoencoder (VAE)?
VAEs maximize the Evidence Lower Bound (ELBO):
\[ \mathcal{L}(\theta, \phi; x) = \mathbb{E}_{q_\phi(z|x)}[\log p_\theta(x|z)] - D_{KL}(q_\phi(z|x) || p(z)) \]
- First term: Reconstruction Loss (how well we decode)
- Second term: KL Divergence (regularization towards prior \( p(z) \))
Implement a Python decorator @time_execution that measures function runtime.
import time
import functools
def time_execution(func):
@functools.wraps(func)
def wrapper(*args, **kwargs):
start = time.perf_counter()
result = func(*args, **kwargs)
end = time.perf_counter()
print(f"{func.__name__} took {end - start:.4f}s")
return result
return wrapper
@time_execution
def heavy_compute():
# ... implementation
passDescribe the update rules for the Adam optimizer.
Adam (Adaptive Moment Estimation) maintains moving averages of gradients and squared gradients:
\[ m_t = \beta_1 m_{t-1} + (1-\beta_1)g_t \]
\[ v_t = \beta_2 v_{t-1} + (1-\beta_2)g_t^2 \]
Bias-corrected estimates:
\[ \hat{m}_t = \frac{m_t}{1-\beta_1^t}, \quad \hat{v}_t = \frac{v_t}{1-\beta_2^t} \]
Parameter update:
\[ \theta_{t+1} = \theta_t - \frac{\eta}{\sqrt{\hat{v}_t} + \epsilon} \hat{m}_t \]
Synthetic Data Generator
Ein modulares C++ Unreal Engine 5.7 Plugin zur automatisierten Erzeugung fotorealistischer Trainingsdaten inklusive Instanzmasken, Tiefe und Metadaten, reproduzierbar in interaktiven und Headless-Batches.
Kontakt
Ich freue mich über neue Projekte, Kooperationen oder Austausch.
Schreiben Sie mir gerne!