Information Systems Engineering student at the Technion, focused on machine learning and software engineering. This profile collects my coursework — the repositories below are grouped by course.
B.Sc. in Information Systems Engineering — Technion – Israel Institute of Technology, Faculty of Data and Decision Sciences.
- Computer Science: Introduction to Computer Science · Software Engineering · Data Structures and Algorithms · Database Management · Introduction to Data Analysis in Python · C Programming Workshop
- Machine Learning & AI: Machine Learning 1 · Machine Learning 2 (Deep Learning) · Introduction to Artificial Intelligence
- Mathematics & Probability: Differential and Integral Calculus I–II · Linear Algebra · Discrete Mathematics · Probability · Statistics 1
- Operations Research: Deterministic Models in Operations Research · Stochastic Models in Operations Research
Classical AI: state-space search, heuristic search, planning under uncertainty, and logic/SAT.
- ai-two-sum-warmup — algorithmic warm-up with
two_sumon top of a hand-written binary search - ai-search-robot-navigation — grid robot navigation with A* under battery, uneven-terrain and moving-obstacle constraints
- ai-mdp-planning — finite-horizon value iteration over a Markov Decision Process
- ai-sat-sudoku-solver — sum-constrained Sudoku encoded to CNF and solved via SAT
Algorithm analysis and design, graph algorithms, balanced trees, and a programming project.
- ds-algo-asymptotic-notation — Big-O / Omega / Theta proofs from the definitions
- ds-algo-graph-isomorphism — graph isomorphism, complements and connectivity
- ds-algo-graph-bfs — modeling word problems as graphs and solving with BFS
- ds-algo-weighted-shortest-paths — shortest paths in weighted directed graphs (extending Dijkstra)
- ds-algo-lower-bounds — comparison-based impossibility proofs for data-structure operation mixes
- ds-algo-stock-manager-tree — final project: a stock-management service built on a generic two-key balanced search tree, in Java
Foundations of supervised learning: k-NN, linear models, SVM, bias-variance, and learning theory.
- ml1-knn-classifier — from-scratch k-NN with a configurable Minkowski distance
- ml1-perceptron-svm — multiclass perceptron from scratch, plus an SVM analysis on the wine dataset
- ml1-bias-variance-polynomial-fits — bias-variance tradeoff on polynomial hypotheses
- ml1-learning-theory — written proofs on uniform convergence and generalization bounds
Modern deep learning: CNNs, sequence models, generative models, adversarial robustness, and contrastive learning.
- ml2-nn-from-scratch-cats-cnn — neural network implemented from scratch (manual backprop) and a CNN trained on a big-cats image dataset
- ml2-overfitting-rnn-lstm — random-label overfitting experiment on MNIST, plus vanilla RNN and LSTM from primitives
- ml2-adversarial-contrastive — adversarial attacks against a CNN on SVHN, and contrastive self-supervised representation learning
- ml2-dcgan-flowers — DCGAN trained on the 102-category Oxford Flowers dataset
- Programming languages: Python, Java, SQL, R, HTML
- Machine learning & data tools: PyTorch, scikit-learn, NumPy, Pandas, Matplotlib, Tableau
- Software engineering: Django, relational databases, OOP, design patterns, UML, Git
- Concepts: deep learning, CNNs, RNNs/LSTMs, Transformers, GANs, classical AI, data structures and algorithms
- Spoken languages: Arabic (native), Hebrew (fluent), English (fluent)