Open to AI / ML Engineer roles · Available May 2026

I build AI systems
that ship —
and I measure
everything.

Elias Arellano Campos — AI Engineer specializing in deep learning and GenAI. From 23-channel EEG seizure detection to RAG agents and production fraud models, I design end-to-end systems and prove them with hard numbers.

Based in
Houston, TX
Education
B.S. CS — Magna Cum Laude
Focus
Deep Learning · GenAI
Work auth
U.S. OPT · No sponsorship
Scroll
PyTorch TensorFlow scikit-learn SBERT Claude API RAG Prompt Engineering OpenCV MediaPipe SHAP XGBoost Flask Streamlit pandas NumPy Python SQL Git
0.0000
ROC-AUC on EEG seizure detection
23-channel pediatric EEG · CHB-MIT
0.0%
F1 on the fraud class
108K-sample holdout · 0.999 ROC-AUC
+0.0%
Retrieval precision over baseline
SBERT semantic search · −83% docs
0K+
Reviews processed end-to-end
Custom NLP preprocessing · Flask API
01 Selected work

Five systems, built end-to-end
and held to the numbers.

Architecture, training, evaluation, deployment — straight from GitHub, every result reproducible. Skim the diagrams; the detail's in the repos.

PROJECT 01 — FLAGSHIP
Deep Learning · Healthcare

EEG Seizure Detection

Four architectures benchmarked for seizure-onset detection on 23-channel pediatric EEG — measuring exactly what temporal modeling adds.

PyTorchMNECHB-MITCNN · GRU · LSTM · TCNSaliency maps
View repository
Dataset · CHB-MIT scalp EEG (PhysioNet)
23
Pediatric patients
~1,000h
Recorded EEG
198
Labeled seizures
23ch
256 Hz · EDF
Raw signal · 23-channel scalp EEG during a seizure event
23-channel bipolar-montage scalp EEG showing rhythmic, high-amplitude ictal discharge across channels FP1–F7 through CZ–PZ over roughly a ten-second window ictal discharge
CHB-MIT scalp EEG — bipolar montage, 23 channels @ 256 Hz · the rhythmic high-amplitude region is the seizure the models learn to flag · Shoeb 2009, PhysioNet
Inference pipeline
InputEEG · 23ch / 256Hz
Segment10s windows
SpatialCNN encoder
TemporalGRU
DecisionSeizure / Clear
The hard part · class imbalance
64,240 normal windows
149 seizure windowsjust 0.23% positive
64,389 totalhandled w/ weighted loss
Architecture benchmark · F1 score
CNN + GRU0.854
CNN + LSTM0.802
TCN0.722
CNN baseline0.608

Multi-patient test split (patients 1·2·3·5). CNN+GRU won — F1 0.854, AUC 0.9924, recall 0.814. Both temporal models beat the CNN baseline, confirming sequential modeling adds real value.

PROJECT 02
Machine Learning · Fintech

Fraud Detection System

Random Forest tuned for high recall with near-zero false alarms — every decision SHAP-explainable.

scikit-learnRandom ForestSHAPpandas
View repository
Confusion matrix · fraud class
Predicted fraud
Predicted legit
Actual fraud
0True positive · caught
37False neg · missed
Actual legit
84False pos · false alarm
True neg · cleared

Holdout test set. 2,016 fraud caught vs only 84 false alarms; FN inferred from 98.2% recall. TN = the large majority of legitimate transactions, correctly cleared.

Separability · ROC-AUC
0.999
ROC-AUC
Near-perfect separation between fraud and legitimate transactions across all thresholds.
Precision vs recall · fraud class
Recall98.2%
Precision96.0%

Tuned to catch nearly all fraud (recall) while keeping false alarms low (precision) — the right tradeoff for a fraud screen.

97.1%
F1 · fraud
98.2%
Recall
96.0%
Precision
99.55%
Accuracy
PROJECT 03
NLP · Information Retrieval

Amazon Opinion
Search Engine

Swapped Boolean keyword search for SBERT semantic retrieval over 210K+ reviews — higher precision, far less noise.

SBERTNLPFlaskInverted index
View repository
Retrieval pipeline
Query"audio quality: poor"
CleanPreprocess
EmbedSBERT
MatchCosine top-k
OutputRanked reviews
Avg precision ↑ (higher better)
SBERT0.578
Lang. model0.550
Boolean0.391
Docs retrieved ↓ (lower better)
Boolean1,278
Lang. model582
SBERT216

Five real-world opinion queries · +47.7% precision (0.39 → 0.58) while cutting retrieved docs 83%. Deployed as a Flask API.

Evaluation queries · aspect → opinion
audio quality poor wifi signal strong mouse button click problem gps map useful image quality sharp
PROJECT 04
Computer Vision · Real-time

F1 Driver
Recognition

Real-time perception: webcam → face ID → API logging → live dashboard, recognition and overlay in under 100ms.

OpenCVKNNStreamlitFlaskSQLite
View repository
Live F1 driver recognition: green bounding box around the detected face, name label, and a real-time stats dossier overlay
Live capture — face detected → driver identified → stats dossier rendered, <100ms
Pipeline architecture
CaptureWebcam
DetectHaar cascade
ClassifyKNN face ID
LogFlask → SQLite
VisualizeStreamlit
<100ms
Detect → overlay
10
Drivers
0–100
Fantasy score
Driver roster · trained classes
VerstappenHamiltonLeclerc PiastriNorrisAntonelli AlonsoSainzAlbonRussell
Fantasy scoring engine · weighted factors
WinsPodiumsPoints / race Win → podium conv.Pole → win conv. Fastest lapsDNF rate penalty
PROJECT 05
GenAI · Retrieval-Augmented

Tennis Coach
RAG Agent

A beginner-friendly tennis assistant that answers from uploaded coaching PDFs — TF-IDF retrieval feeding Gemini for cited, grounded answers.

Gemini APIStreamlitpdf.jsTF-IDFRAG
View repository
AI Tennis RAG agent UI: sidebar with API key, uploaded tennis PDFs and a knowledge base of 3 docs and 117 chunks; the chat answers beginner questions with source-cited passages and refuses an out-of-scope question about Max Verstappen
AI Tennis — the deployed agent grounds answers in uploaded docs (source-cited, e.g. “6 source chunks retrieved”) and correctly refuses off-topic questions like “Who is Max Verstappen?”
Retrieval-augmented generation flow
SourcePDF / text
SplitOverlapping chunks
IndexTF-IDF
RetrieveCosine top-k
GenerateGemini
AnswerCited + grounded

Overlapping chunks prevent context fragmentation; answers carry source attribution back to the retrieved passages. The same pattern powers the live agent below.

PDF + text ingestion Overlapping chunks TF-IDF + cosine Similarity scoring Source-attributed answers
02 Proof, not promises

Don't read about my GenAI work.
Talk to it.

This terminal is a retrieval-grounded agent that answers questions about my background using my real résumé and project data — built with the same RAG pattern as Project 05. Ask it anything.

elias-agent — grounded on résumé + GitHub
online
EA
elias-agent
Hi — I'm Elias's portfolio agent. I can answer questions about his projects, results, skills, and availability, grounded in his real data. Try a question below, or type your own.
Live demo, grounded only on Elias's résumé & GitHub. Limited to 4 messages per visitor to keep this self-funded demo's API costs in check — 4 left.
03 Capabilities

A full-stack ML toolkit,
from architecture to API.

ML & Deep Learning
PyTorchTensorFlowscikit-learnXGBoostCNNLSTMGRUTCNImbalanced dataThreshold tuning
GenAI & NLP
Claude / LLM APIsRAGPrompt engineeringSBERTSemantic searchTF-IDFNLP preprocessing
Vision & Explainability
OpenCVMediaPipeKNN face rec.SHAPSaliency mapsError analysis
Deploy & Tooling
FlaskStreamlitShinyPythonRSQLC++JavaGitLinuxSQLite
04 About & contact

I'm an AI Engineer who treats evaluation as a first-class part of building — not an afterthought.

I completed my B.S. in Computer Science at the University of Houston in May 2026 (Magna Cum Laude, Dean's List) with a concentration in Data Science & Machine Learning and a minor in Mathematics.

My work spans deep learning for healthcare, production fraud detection, semantic search, real-time computer vision, and retrieval-augmented GenAI. What ties it together: I ship complete systems and back every claim with reproducible metrics, explainability, and honest error analysis.

I'm fluent in English and a native Spanish speaker, based in Houston, and available May 2026 on U.S. OPT — TN-visa eligible, with no H-1B sponsorship required.

Let's build something measurable.

Open to AI / ML Engineer roles and serious collaborations. The fastest way to reach me:

Emailelias.arellano.campos@gmail.com LinkedInin/eliasarellanocampos GitHubgithub.com/E-techgod RésuméDownload PDF