Data Scientist
For aspiring data scientists who want to turn raw data into decisions. You will be able to analyze data, build and evaluate ML models, communicate insights, and ship models to production.
{"nodes":[{"id":"title","type":"title","position":{"x":0,"y":0},"data":{"label":"Data Scientist"},"width":1688,"height":61,"style":{"width":1688,"height":61},"measured":{"width":1688,"height":61},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":0,"y":0}},{"id":"summary","type":"paragraph","position":{"x":404,"y":77},"data":{"label":"For aspiring data scientists who want to turn raw data into decisions. You will be able to analyze data, build and evaluate ML models, communicate insights, and ship models to production."},"width":880,"height":56,"style":{"width":880,"height":56},"measured":{"width":880,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":404,"y":77}},{"id":"meta","type":"paragraph","position":{"x":524,"y":147},"data":{"label":"10 STAGES · 45 TOPICS · 176 SUBTOPICS","style":{"fontSize":13,"fontFamily":"jetbrains","fontWeight":500,"color":"var(--color-fg-subtle)"}},"width":640,"height":21,"style":{"width":640,"height":21},"measured":{"width":640,"height":21},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":524,"y":147}},{"id":"stage-1","type":"section","position":{"x":0,"y":224},"data":{"label":"Mathematics & Statistics","description":"Build the math and statistical intuition that every model, metric, and experiment relies on.","number":1},"width":824,"height":1197,"style":{"width":824,"height":1197},"measured":{"width":824,"height":1197},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":0,"y":224}},{"id":"topic-1-1","type":"topic","position":{"x":28,"y":345},"data":{"label":"Linear Algebra","number":"1.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":345}},{"id":"sub-1-1-1","type":"subtopic","position":{"x":28,"y":413},"data":{"label":"Vectors, Matrices & Tensors"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":413}},{"id":"sub-1-1-2","type":"subtopic","position":{"x":288,"y":413},"data":{"label":"Matrix Operations","description":"Multiplication · Transformations · Determinants · Inverses"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":413}},{"id":"sub-1-1-3","type":"subtopic","position":{"x":548,"y":413},"data":{"label":"Eigenvalues & Eigenvectors"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":413}},{"id":"sub-1-1-4","type":"subtopic","position":{"x":28,"y":510},"data":{"label":"Matrix Decompositions","description":"SVD · PCA"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":510}},{"id":"topic-1-2","type":"topic","position":{"x":28,"y":605},"data":{"label":"Calculus & Optimization","number":"1.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":605}},{"id":"sub-1-2-1","type":"subtopic","position":{"x":28,"y":673},"data":{"label":"Limits & Continuity"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":673}},{"id":"sub-1-2-2","type":"subtopic","position":{"x":288,"y":673},"data":{"label":"Derivatives & Gradients","description":"Partial Derivatives · Jacobian · Chain Rule"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":673}},{"id":"sub-1-2-3","type":"subtopic","position":{"x":548,"y":673},"data":{"label":"Integrals"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":673}},{"id":"sub-1-2-4","type":"subtopic","position":{"x":28,"y":770},"data":{"label":"Optimization","description":"Maxima & Minima · Gradient Descent · Hessian"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":770}},{"id":"topic-1-3","type":"topic","position":{"x":28,"y":883},"data":{"label":"Probability","number":"1.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":883}},{"id":"sub-1-3-1","type":"subtopic","position":{"x":28,"y":951},"data":{"label":"Probability Fundamentals","description":"Random Variables · Conditional Probability · Independence"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":951}},{"id":"sub-1-3-2","type":"subtopic","position":{"x":288,"y":951},"data":{"label":"Probability Distributions","description":"Normal · Binomial · Poisson · Exponential"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":951}},{"id":"sub-1-3-3","type":"subtopic","position":{"x":548,"y":951},"data":{"label":"Bayes' Theorem & Bayesian Inference"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":951}},{"id":"sub-1-3-4","type":"subtopic","position":{"x":28,"y":1048},"data":{"label":"Parameter Estimation","description":"MLE · MAP"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1048}},{"id":"sub-1-3-5","type":"subtopic","position":{"x":288,"y":1048},"data":{"label":"Markov Chains & Monte Carlo Simulation"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":1048}},{"id":"topic-1-4","type":"topic","position":{"x":28,"y":1143},"data":{"label":"Statistics & Experimentation","number":"1.4"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1143}},{"id":"sub-1-4-1","type":"subtopic","position":{"x":28,"y":1211},"data":{"label":"Descriptive Statistics","description":"Mean · Median · Variance · Percentiles"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1211}},{"id":"sub-1-4-2","type":"subtopic","position":{"x":288,"y":1211},"data":{"label":"Hypothesis Testing","description":"p-values · t-tests · Chi-square · ANOVA"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":1211}},{"id":"sub-1-4-3","type":"subtopic","position":{"x":548,"y":1211},"data":{"label":"Confidence Intervals"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":1211}},{"id":"sub-1-4-4","type":"subtopic","position":{"x":28,"y":1308},"data":{"label":"A/B Testing","description":"Sample Size · Statistical Power · Multiple Testing"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1308}},{"id":"sub-1-4-5","type":"subtopic","position":{"x":288,"y":1308},"data":{"label":"Causal Inference","description":"Propensity Score Matching · Difference-in-Differences"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":1308}},{"id":"stage-2","type":"section","position":{"x":864,"y":224},"data":{"label":"Programming & Data Tools","description":"Write clean Python and SQL to load, transform, and query data reliably.","number":2},"width":824,"height":1197,"style":{"width":824,"height":1197},"measured":{"width":824,"height":1197},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":864,"y":224}},{"id":"topic-2-1","type":"topic","position":{"x":892,"y":345},"data":{"label":"Python Fundamentals","number":"2.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":345}},{"id":"sub-2-1-1","type":"subtopic","position":{"x":892,"y":413},"data":{"label":"Core Syntax","description":"Variables · Data Types · Control Flow"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":413}},{"id":"sub-2-1-2","type":"subtopic","position":{"x":1152,"y":413},"data":{"label":"Data Structures","description":"Lists · Dictionaries · Sets · Tuples"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":413}},{"id":"sub-2-1-3","type":"subtopic","position":{"x":1412,"y":413},"data":{"label":"Functions, Iterators & Generators"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":413}},{"id":"sub-2-1-4","type":"subtopic","position":{"x":892,"y":510},"data":{"label":"Object-Oriented Programming (OOP)"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":510}},{"id":"sub-2-1-5","type":"subtopic","position":{"x":1152,"y":510},"data":{"label":"Error Handling & Exceptions"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":510}},{"id":"sub-2-1-6","type":"subtopic","position":{"x":1412,"y":510},"data":{"label":"Type Hints & Validation (Pydantic)"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":510}},{"id":"topic-2-2","type":"topic","position":{"x":892,"y":603},"data":{"label":"Numerical & Tabular Data","number":"2.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":603}},{"id":"sub-2-2-1","type":"subtopic","position":{"x":892,"y":671},"data":{"label":"Jupyter Notebooks"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":671}},{"id":"sub-2-2-2","type":"subtopic","position":{"x":1152,"y":671},"data":{"label":"NumPy","description":"Arrays · Broadcasting · Vectorization"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":671}},{"id":"sub-2-2-3","type":"subtopic","position":{"x":1412,"y":671},"data":{"label":"Pandas","description":"DataFrames · Series · Merging · Grouping"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":671}},{"id":"sub-2-2-4","type":"subtopic","position":{"x":892,"y":768},"data":{"label":"Polars","description":"Expressions · Lazy Queries"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":768}},{"id":"topic-2-3","type":"topic","position":{"x":892,"y":863},"data":{"label":"SQL & Databases","number":"2.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":863}},{"id":"sub-2-3-1","type":"subtopic","position":{"x":892,"y":931},"data":{"label":"SQL Fundamentals","description":"Filtering · Joins · Aggregations"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":931}},{"id":"sub-2-3-2","type":"subtopic","position":{"x":1152,"y":931},"data":{"label":"Advanced SQL","description":"Window Functions · CTEs · Subqueries"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":931}},{"id":"sub-2-3-3","type":"subtopic","position":{"x":1412,"y":931},"data":{"label":"Cloud Data Warehouses","description":"Snowflake · BigQuery · Redshift · Databricks"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":931}},{"id":"sub-2-3-4","type":"subtopic","position":{"x":892,"y":1028},"data":{"label":"NoSQL Databases","description":"MongoDB · Cassandra"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1028}},{"id":"sub-2-3-5","type":"subtopic","position":{"x":1152,"y":1028},"data":{"label":"Data Transformation (dbt)"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":1028}},{"id":"topic-2-4","type":"topic","position":{"x":892,"y":1123},"data":{"label":"Software Engineering Practices","number":"2.4"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1123}},{"id":"sub-2-4-1","type":"subtopic","position":{"x":892,"y":1191},"data":{"label":"Command Line Basics"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1191}},{"id":"sub-2-4-2","type":"subtopic","position":{"x":1152,"y":1191},"data":{"label":"Version Control","description":"Git · GitHub"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":1191}},{"id":"sub-2-4-3","type":"subtopic","position":{"x":1412,"y":1191},"data":{"label":"Environments & Packaging","description":"venv · conda · uv · Poetry"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":1191}},{"id":"sub-2-4-4","type":"subtopic","position":{"x":892,"y":1270},"data":{"label":"Code Quality","description":"PEP 8 · Ruff · pre-commit"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1270}},{"id":"sub-2-4-5","type":"subtopic","position":{"x":1152,"y":1270},"data":{"label":"Unit Testing (pytest)"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":1270}},{"id":"stage-3","type":"section","position":{"x":0,"y":1461},"data":{"label":"Data Wrangling & Exploration","description":"Collect, clean, and explore data to uncover patterns and craft useful features.","number":3},"width":824,"height":1225,"style":{"width":824,"height":1225},"measured":{"width":824,"height":1225},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":0,"y":1461}},{"id":"topic-3-1","type":"topic","position":{"x":28,"y":1582},"data":{"label":"Data Collection","number":"3.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1582}},{"id":"sub-3-1-1","type":"subtopic","position":{"x":28,"y":1650},"data":{"label":"File Formats","description":"CSV · JSON · Parquet"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1650}},{"id":"sub-3-1-2","type":"subtopic","position":{"x":288,"y":1650},"data":{"label":"APIs","description":"REST · GraphQL · JSON"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":1650}},{"id":"sub-3-1-3","type":"subtopic","position":{"x":548,"y":1650},"data":{"label":"Web Scraping","description":"BeautifulSoup · Scrapy · Playwright · Selenium"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":1650}},{"id":"sub-3-1-4","type":"subtopic","position":{"x":28,"y":1747},"data":{"label":"Database Connectivity","description":"SQLAlchemy · psycopg"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1747}},{"id":"topic-3-2","type":"topic","position":{"x":28,"y":1842},"data":{"label":"Data Cleaning","number":"3.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1842}},{"id":"sub-3-2-1","type":"subtopic","position":{"x":28,"y":1910},"data":{"label":"Missing Values","description":"Dropping · Imputation"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1910}},{"id":"sub-3-2-2","type":"subtopic","position":{"x":288,"y":1910},"data":{"label":"Outliers","description":"Z-score · IQR · Isolation Forest"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":1910}},{"id":"sub-3-2-3","type":"subtopic","position":{"x":548,"y":1910},"data":{"label":"Type Conversions & Date Parsing"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":1910}},{"id":"sub-3-2-4","type":"subtopic","position":{"x":28,"y":1989},"data":{"label":"Text Cleaning","description":"Regex · String Methods"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":1989}},{"id":"sub-3-2-5","type":"subtopic","position":{"x":288,"y":1989},"data":{"label":"Data Validation","description":"Pandera · Great Expectations"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":1989}},{"id":"topic-3-3","type":"topic","position":{"x":28,"y":2084},"data":{"label":"Exploratory Data Analysis (EDA)","number":"3.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":2084}},{"id":"sub-3-3-1","type":"subtopic","position":{"x":28,"y":2152},"data":{"label":"Univariate Analysis"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":2152}},{"id":"sub-3-3-2","type":"subtopic","position":{"x":288,"y":2152},"data":{"label":"Bivariate & Multivariate Analysis"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":2152}},{"id":"sub-3-3-3","type":"subtopic","position":{"x":548,"y":2152},"data":{"label":"Correlation & Covariance"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":2152}},{"id":"topic-3-4","type":"topic","position":{"x":28,"y":2245},"data":{"label":"Feature Engineering","number":"3.4"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":2245}},{"id":"sub-3-4-1","type":"subtopic","position":{"x":28,"y":2313},"data":{"label":"Encoding Categoricals","description":"One-Hot · Ordinal · Target Encoding"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":2313}},{"id":"sub-3-4-2","type":"subtopic","position":{"x":288,"y":2313},"data":{"label":"Scaling & Transformations","description":"Standardization · Normalization · Log Transform"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":2313}},{"id":"sub-3-4-3","type":"subtopic","position":{"x":548,"y":2313},"data":{"label":"Feature Extraction","description":"Dates · Text · Aggregates"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":2313}},{"id":"sub-3-4-4","type":"subtopic","position":{"x":28,"y":2410},"data":{"label":"Feature Selection","description":"Filter · Wrapper · Embedded Methods"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":2410}},{"id":"topic-3-5","type":"topic","position":{"x":28,"y":2523},"data":{"label":"Big Data Processing","number":"3.5"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":2523}},{"id":"sub-3-5-1","type":"subtopic","position":{"x":28,"y":2591},"data":{"label":"Apache Spark & PySpark","description":"DataFrames · Spark SQL · MLlib"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":2591}},{"id":"sub-3-5-2","type":"subtopic","position":{"x":288,"y":2591},"data":{"label":"Distributed Python","description":"Dask · Ray"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":2591}},{"id":"sub-3-5-3","type":"subtopic","position":{"x":548,"y":2591},"data":{"label":"Local Analytics Engines (DuckDB)"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":2591}},{"id":"stage-4","type":"section","position":{"x":864,"y":1461},"data":{"label":"Data Visualization","description":"Turn analysis into clear static charts, interactive visuals, and dashboards.","number":4},"width":824,"height":1225,"style":{"width":824,"height":1225},"measured":{"width":824,"height":1225},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":864,"y":1461}},{"id":"topic-4-1","type":"topic","position":{"x":892,"y":1582},"data":{"label":"Visualization Principles","number":"4.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1582}},{"id":"sub-4-1-1","type":"subtopic","position":{"x":892,"y":1650},"data":{"label":"Choosing the Right Chart"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1650}},{"id":"sub-4-1-2","type":"subtopic","position":{"x":1152,"y":1650},"data":{"label":"Visual Encoding & Color"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":1650}},{"id":"sub-4-1-3","type":"subtopic","position":{"x":1412,"y":1650},"data":{"label":"Avoiding Misleading Charts"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":1650}},{"id":"topic-4-2","type":"topic","position":{"x":892,"y":1724},"data":{"label":"Static Visualization","number":"4.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1724}},{"id":"sub-4-2-1","type":"subtopic","position":{"x":892,"y":1792},"data":{"label":"Matplotlib","description":"Figures · Axes · Subplots"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1792}},{"id":"sub-4-2-2","type":"subtopic","position":{"x":1152,"y":1792},"data":{"label":"Seaborn","description":"Distributions · Relationships · Categorical Plots"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":1792}},{"id":"topic-4-3","type":"topic","position":{"x":892,"y":1905},"data":{"label":"Interactive Visualization","number":"4.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1905}},{"id":"sub-4-3-1","type":"subtopic","position":{"x":892,"y":1973},"data":{"label":"Plotly","description":"Plotly Express · Graph Objects"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":1973}},{"id":"sub-4-3-2","type":"subtopic","position":{"x":1152,"y":1973},"data":{"label":"Bokeh"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":1973}},{"id":"topic-4-4","type":"topic","position":{"x":892,"y":2068},"data":{"label":"Specialized Visualization","number":"4.4"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":2068}},{"id":"sub-4-4-1","type":"subtopic","position":{"x":892,"y":2136},"data":{"label":"Geospatial Maps","description":"GeoPandas · Folium"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":2136}},{"id":"sub-4-4-2","type":"subtopic","position":{"x":1152,"y":2136},"data":{"label":"Network Graphs (NetworkX)"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":2136}},{"id":"topic-4-5","type":"topic","position":{"x":892,"y":2231},"data":{"label":"Dashboards & Reporting","number":"4.5"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":2231}},{"id":"sub-4-5-1","type":"subtopic","position":{"x":892,"y":2299},"data":{"label":"Python Dashboards","description":"Streamlit · Dash"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":2299}},{"id":"sub-4-5-2","type":"subtopic","position":{"x":1152,"y":2299},"data":{"label":"BI Tools","description":"Tableau · Power BI · Looker Studio"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":2299}},{"id":"sub-4-5-3","type":"subtopic","position":{"x":1412,"y":2299},"data":{"label":"Reproducible Reports","description":"Jupyter · Quarto"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":2299}},{"id":"stage-5","type":"section","position":{"x":0,"y":2725},"data":{"label":"Core Machine Learning","description":"Train, evaluate, tune, and explain classical ML models with scikit-learn.","number":5},"width":824,"height":1500,"style":{"width":824,"height":1500},"measured":{"width":824,"height":1500},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":0,"y":2725}},{"id":"topic-5-1","type":"topic","position":{"x":28,"y":2846},"data":{"label":"ML Foundations","number":"5.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":2846}},{"id":"sub-5-1-1","type":"subtopic","position":{"x":28,"y":2914},"data":{"label":"Learning Paradigms","description":"Supervised · Unsupervised · Reinforcement"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":2914}},{"id":"sub-5-1-2","type":"subtopic","position":{"x":288,"y":2914},"data":{"label":"Train, Validation & Test Splits"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":2914}},{"id":"sub-5-1-3","type":"subtopic","position":{"x":548,"y":2914},"data":{"label":"Bias-Variance Tradeoff"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":2914}},{"id":"sub-5-1-4","type":"subtopic","position":{"x":28,"y":3011},"data":{"label":"Data Leakage"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3011}},{"id":"sub-5-1-5","type":"subtopic","position":{"x":288,"y":3011},"data":{"label":"scikit-learn Workflow","description":"Estimators · Pipelines · ColumnTransformer"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":3011}},{"id":"topic-5-2","type":"topic","position":{"x":28,"y":3124},"data":{"label":"Regression","number":"5.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3124}},{"id":"sub-5-2-1","type":"subtopic","position":{"x":28,"y":3192},"data":{"label":"Linear Regression","description":"Simple · Multiple"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3192}},{"id":"sub-5-2-2","type":"subtopic","position":{"x":288,"y":3192},"data":{"label":"Polynomial Regression"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":3192}},{"id":"sub-5-2-3","type":"subtopic","position":{"x":548,"y":3192},"data":{"label":"Regularization","description":"Ridge · Lasso · Elastic Net"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":3192}},{"id":"topic-5-3","type":"topic","position":{"x":28,"y":3287},"data":{"label":"Classification","number":"5.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3287}},{"id":"sub-5-3-1","type":"subtopic","position":{"x":28,"y":3355},"data":{"label":"Logistic Regression"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3355}},{"id":"sub-5-3-2","type":"subtopic","position":{"x":288,"y":3355},"data":{"label":"K-Nearest Neighbors (KNN)"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":3355}},{"id":"sub-5-3-3","type":"subtopic","position":{"x":548,"y":3355},"data":{"label":"Support Vector Machines (SVM)"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":3355}},{"id":"sub-5-3-4","type":"subtopic","position":{"x":28,"y":3432},"data":{"label":"Naive Bayes"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3432}},{"id":"sub-5-3-5","type":"subtopic","position":{"x":288,"y":3432},"data":{"label":"Decision Trees"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":3432}},{"id":"topic-5-4","type":"topic","position":{"x":28,"y":3506},"data":{"label":"Ensemble Methods","number":"5.4"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3506}},{"id":"sub-5-4-1","type":"subtopic","position":{"x":28,"y":3574},"data":{"label":"Bagging & Random Forest"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3574}},{"id":"sub-5-4-2","type":"subtopic","position":{"x":288,"y":3574},"data":{"label":"Gradient Boosting","description":"XGBoost · LightGBM · CatBoost"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":3574}},{"id":"sub-5-4-3","type":"subtopic","position":{"x":548,"y":3574},"data":{"label":"Stacking & Voting"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":3574}},{"id":"topic-5-5","type":"topic","position":{"x":28,"y":3669},"data":{"label":"Unsupervised Learning","number":"5.5"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3669}},{"id":"sub-5-5-1","type":"subtopic","position":{"x":28,"y":3737},"data":{"label":"Clustering","description":"K-Means · Hierarchical · DBSCAN · Gaussian Mixtures"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3737}},{"id":"sub-5-5-2","type":"subtopic","position":{"x":288,"y":3737},"data":{"label":"Dimensionality Reduction","description":"PCA · t-SNE · UMAP"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":3737}},{"id":"sub-5-5-3","type":"subtopic","position":{"x":548,"y":3737},"data":{"label":"Association Rules","description":"Apriori · FP-Growth"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":3737}},{"id":"sub-5-5-4","type":"subtopic","position":{"x":28,"y":3834},"data":{"label":"Anomaly Detection","description":"Isolation Forest · One-Class SVM · LOF"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3834}},{"id":"topic-5-6","type":"topic","position":{"x":28,"y":3947},"data":{"label":"Model Evaluation & Tuning","number":"5.6"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":3947}},{"id":"sub-5-6-1","type":"subtopic","position":{"x":28,"y":4015},"data":{"label":"Cross-Validation","description":"K-Fold · Stratified · Time-Series Split"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4015}},{"id":"sub-5-6-2","type":"subtopic","position":{"x":288,"y":4015},"data":{"label":"Classification Metrics","description":"Precision · Recall · F1 · ROC-AUC · PR-AUC"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":4015}},{"id":"sub-5-6-3","type":"subtopic","position":{"x":548,"y":4015},"data":{"label":"Regression Metrics","description":"MSE · RMSE · MAE · MAPE · R-squared"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":4015}},{"id":"sub-5-6-4","type":"subtopic","position":{"x":28,"y":4112},"data":{"label":"Hyperparameter Tuning","description":"Grid Search · Random Search · Optuna"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4112}},{"id":"sub-5-6-5","type":"subtopic","position":{"x":288,"y":4112},"data":{"label":"Imbalanced Data","description":"SMOTE · Class Weights · Threshold Tuning"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":4112}},{"id":"sub-5-6-6","type":"subtopic","position":{"x":548,"y":4112},"data":{"label":"Explainability","description":"SHAP · LIME · Permutation Importance · Partial Dependence"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":4112}},{"id":"stage-6","type":"section","position":{"x":864,"y":2725},"data":{"label":"Applied Machine Learning","description":"Apply ML to forecasting, recommendations, text, and sequential decision problems.","number":6},"width":824,"height":1500,"style":{"width":824,"height":1500},"measured":{"width":824,"height":1500},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":864,"y":2725}},{"id":"topic-6-1","type":"topic","position":{"x":892,"y":2846},"data":{"label":"Time Series Forecasting","number":"6.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":2846}},{"id":"sub-6-1-1","type":"subtopic","position":{"x":892,"y":2914},"data":{"label":"Stationarity & Autocorrelation","description":"ACF · PACF"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":2914}},{"id":"sub-6-1-2","type":"subtopic","position":{"x":1152,"y":2914},"data":{"label":"Classical Models","description":"ARIMA · SARIMA · Exponential Smoothing"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":2914}},{"id":"sub-6-1-3","type":"subtopic","position":{"x":1412,"y":2914},"data":{"label":"Forecasting Libraries","description":"Prophet · StatsForecast · sktime · Darts"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":2914}},{"id":"sub-6-1-4","type":"subtopic","position":{"x":892,"y":3013},"data":{"label":"ML Forecasting","description":"Lag Features · Gradient Boosting"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3013}},{"id":"sub-6-1-5","type":"subtopic","position":{"x":1152,"y":3013},"data":{"label":"Backtesting & Forecast Evaluation"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":3013}},{"id":"topic-6-2","type":"topic","position":{"x":892,"y":3108},"data":{"label":"Recommendation Systems","number":"6.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3108}},{"id":"sub-6-2-1","type":"subtopic","position":{"x":892,"y":3176},"data":{"label":"Content-Based Filtering"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3176}},{"id":"sub-6-2-2","type":"subtopic","position":{"x":1152,"y":3176},"data":{"label":"Collaborative Filtering"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":3176}},{"id":"sub-6-2-3","type":"subtopic","position":{"x":1412,"y":3176},"data":{"label":"Matrix Factorization"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":3176}},{"id":"sub-6-2-4","type":"subtopic","position":{"x":892,"y":3234},"data":{"label":"Ranking Metrics","description":"Precision@K · NDCG · MAP"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3234}},{"id":"topic-6-3","type":"topic","position":{"x":892,"y":3329},"data":{"label":"NLP Fundamentals","number":"6.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3329}},{"id":"sub-6-3-1","type":"subtopic","position":{"x":892,"y":3397},"data":{"label":"Text Preprocessing","description":"Tokenization · Stemming · Lemmatization"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3397}},{"id":"sub-6-3-2","type":"subtopic","position":{"x":1152,"y":3397},"data":{"label":"Bag of Words & TF-IDF"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":3397}},{"id":"sub-6-3-3","type":"subtopic","position":{"x":1412,"y":3397},"data":{"label":"Word Embeddings","description":"Word2Vec · GloVe"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":3397}},{"id":"sub-6-3-4","type":"subtopic","position":{"x":892,"y":3494},"data":{"label":"Sentiment Analysis"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3494}},{"id":"sub-6-3-5","type":"subtopic","position":{"x":1152,"y":3494},"data":{"label":"Topic Modeling","description":"LDA · BERTopic"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":3494}},{"id":"topic-6-4","type":"topic","position":{"x":892,"y":3589},"data":{"label":"Reinforcement Learning Basics","number":"6.4"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3589}},{"id":"sub-6-4-1","type":"subtopic","position":{"x":892,"y":3657},"data":{"label":"Multi-Armed Bandits","description":"Epsilon-Greedy · Thompson Sampling"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3657}},{"id":"sub-6-4-2","type":"subtopic","position":{"x":1152,"y":3657},"data":{"label":"Markov Decision Processes (MDP)"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":3657}},{"id":"sub-6-4-3","type":"subtopic","position":{"x":1412,"y":3657},"data":{"label":"Q-Learning & Value Iteration"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":3657}},{"id":"sub-6-4-4","type":"subtopic","position":{"x":892,"y":3754},"data":{"label":"Policy Gradients"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":3754}},{"id":"stage-7","type":"section","position":{"x":0,"y":4265},"data":{"label":"Deep Learning & Generative AI","description":"Build neural networks with PyTorch and use modern LLMs, RAG, and agents in data work.","number":7},"width":824,"height":1307,"style":{"width":824,"height":1307},"measured":{"width":824,"height":1307},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":0,"y":4265}},{"id":"topic-7-1","type":"topic","position":{"x":28,"y":4386},"data":{"label":"Neural Network Foundations","number":"7.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4386}},{"id":"sub-7-1-1","type":"subtopic","position":{"x":28,"y":4454},"data":{"label":"Perceptrons & Activation Functions"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4454}},{"id":"sub-7-1-2","type":"subtopic","position":{"x":288,"y":4454},"data":{"label":"Forward & Backpropagation"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":4454}},{"id":"sub-7-1-3","type":"subtopic","position":{"x":548,"y":4454},"data":{"label":"Loss Functions & Optimizers","description":"SGD · Adam · AdamW · RMSprop"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":4454}},{"id":"sub-7-1-4","type":"subtopic","position":{"x":28,"y":4553},"data":{"label":"Regularization","description":"Dropout · Batch Normalization · Weight Decay · Early Stopping"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4553}},{"id":"topic-7-2","type":"topic","position":{"x":28,"y":4666},"data":{"label":"Deep Learning Frameworks","number":"7.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4666}},{"id":"sub-7-2-1","type":"subtopic","position":{"x":28,"y":4734},"data":{"label":"PyTorch Fundamentals","description":"Tensors · Autograd · nn.Module · DataLoader"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4734}},{"id":"sub-7-2-2","type":"subtopic","position":{"x":288,"y":4734},"data":{"label":"Keras & TensorFlow"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":4734}},{"id":"sub-7-2-3","type":"subtopic","position":{"x":548,"y":4734},"data":{"label":"JAX (Optional)"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":4734}},{"id":"topic-7-3","type":"topic","position":{"x":28,"y":4847},"data":{"label":"Specialized Architectures","number":"7.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4847}},{"id":"sub-7-3-1","type":"subtopic","position":{"x":28,"y":4915},"data":{"label":"Convolutional Neural Networks (CNNs)"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4915}},{"id":"sub-7-3-2","type":"subtopic","position":{"x":288,"y":4915},"data":{"label":"Transfer Learning","description":"ResNet · EfficientNet · ViT"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":4915}},{"id":"sub-7-3-3","type":"subtopic","position":{"x":548,"y":4915},"data":{"label":"Detection & Segmentation","description":"YOLO · Faster R-CNN · U-Net"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":4915}},{"id":"sub-7-3-4","type":"subtopic","position":{"x":28,"y":4994},"data":{"label":"Sequence Models","description":"RNN · LSTM · GRU"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":4994}},{"id":"sub-7-3-5","type":"subtopic","position":{"x":288,"y":4994},"data":{"label":"Graph Neural Networks (GNNs)"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":4994}},{"id":"sub-7-3-6","type":"subtopic","position":{"x":548,"y":4994},"data":{"label":"Deep Reinforcement Learning","description":"DQN · PPO"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":4994}},{"id":"sub-7-3-7","type":"subtopic","position":{"x":28,"y":5093},"data":{"label":"Diffusion Models"},"width":248,"height":46,"style":{"width":248,"height":46},"measured":{"width":248,"height":46},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":5093}},{"id":"topic-7-4","type":"topic","position":{"x":28,"y":5167},"data":{"label":"Generative AI & LLMs","number":"7.4"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":5167}},{"id":"sub-7-4-1","type":"subtopic","position":{"x":28,"y":5235},"data":{"label":"Transformers","description":"Attention · Self-Attention · Multi-Head Attention"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":5235}},{"id":"sub-7-4-2","type":"subtopic","position":{"x":288,"y":5235},"data":{"label":"Hugging Face Ecosystem","description":"Transformers · Datasets · Hub"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":5235}},{"id":"sub-7-4-3","type":"subtopic","position":{"x":548,"y":5235},"data":{"label":"Large Language Models","description":"GPT · Claude · Gemini · Llama · Mistral"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":5235}},{"id":"sub-7-4-4","type":"subtopic","position":{"x":28,"y":5332},"data":{"label":"Prompt Engineering","description":"Few-Shot · Chain-of-Thought · Structured Output"},"width":248,"height":106,"style":{"width":248,"height":106},"measured":{"width":248,"height":106},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":5332}},{"id":"sub-7-4-5","type":"subtopic","position":{"x":288,"y":5332},"data":{"label":"Retrieval-Augmented Generation","description":"Chunking · Embeddings · Reranking"},"width":248,"height":106,"style":{"width":248,"height":106},"measured":{"width":248,"height":106},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":5332}},{"id":"sub-7-4-6","type":"subtopic","position":{"x":548,"y":5332},"data":{"label":"Vector Databases","description":"Chroma · Qdrant · Milvus · pgvector · Pinecone"},"width":248,"height":106,"style":{"width":248,"height":106},"measured":{"width":248,"height":106},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":5332}},{"id":"sub-7-4-7","type":"subtopic","position":{"x":28,"y":5450},"data":{"label":"Fine-Tuning","description":"PEFT · LoRA · QLoRA"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":5450}},{"id":"sub-7-4-8","type":"subtopic","position":{"x":288,"y":5450},"data":{"label":"AI Agents & Tool Use","description":"LangGraph · CrewAI · OpenAI Agents SDK · MCP"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":5450}},{"id":"stage-8","type":"section","position":{"x":864,"y":4265},"data":{"label":"MLOps & Deployment","description":"Package, serve, monitor, and automate models so they deliver value in production.","number":8},"width":824,"height":1307,"style":{"width":824,"height":1307},"measured":{"width":824,"height":1307},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":864,"y":4265}},{"id":"topic-8-1","type":"topic","position":{"x":892,"y":4386},"data":{"label":"Model Packaging","number":"8.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":4386}},{"id":"sub-8-1-1","type":"subtopic","position":{"x":892,"y":4454},"data":{"label":"Serialization","description":"Pickle · Joblib · Safetensors"},"width":248,"height":106,"style":{"width":248,"height":106},"measured":{"width":248,"height":106},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":4454}},{"id":"sub-8-1-2","type":"subtopic","position":{"x":1152,"y":4454},"data":{"label":"Portable Formats & Runtimes","description":"ONNX · ONNX Runtime · TensorRT"},"width":248,"height":106,"style":{"width":248,"height":106},"measured":{"width":248,"height":106},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":4454}},{"id":"sub-8-1-3","type":"subtopic","position":{"x":1412,"y":4454},"data":{"label":"Model Optimization","description":"Quantization · Pruning · Distillation"},"width":248,"height":106,"style":{"width":248,"height":106},"measured":{"width":248,"height":106},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":4454}},{"id":"topic-8-2","type":"topic","position":{"x":892,"y":4588},"data":{"label":"Experiment Tracking & Registry","number":"8.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":4588}},{"id":"sub-8-2-1","type":"subtopic","position":{"x":892,"y":4656},"data":{"label":"Experiment Tracking","description":"MLflow · Weights & Biases"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":4656}},{"id":"sub-8-2-2","type":"subtopic","position":{"x":1152,"y":4656},"data":{"label":"Data & Model Versioning","description":"DVC · lakeFS"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":4656}},{"id":"sub-8-2-3","type":"subtopic","position":{"x":1412,"y":4656},"data":{"label":"Model Registry (MLflow Model Registry)"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":4656}},{"id":"topic-8-3","type":"topic","position":{"x":892,"y":4751},"data":{"label":"APIs & Model Serving","number":"8.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":4751}},{"id":"sub-8-3-1","type":"subtopic","position":{"x":892,"y":4819},"data":{"label":"REST APIs","description":"FastAPI · Flask"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":4819}},{"id":"sub-8-3-2","type":"subtopic","position":{"x":1152,"y":4819},"data":{"label":"Serving Frameworks","description":"BentoML · Ray Serve · Triton Inference Server · vLLM"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":4819}},{"id":"sub-8-3-3","type":"subtopic","position":{"x":1412,"y":4819},"data":{"label":"Batch vs Real-Time Inference"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":4819}},{"id":"topic-8-4","type":"topic","position":{"x":892,"y":4932},"data":{"label":"Containers & Cloud","number":"8.4"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":4932}},{"id":"sub-8-4-1","type":"subtopic","position":{"x":892,"y":5000},"data":{"label":"Docker","description":"Dockerfile · Images · Containers · Compose"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":5000}},{"id":"sub-8-4-2","type":"subtopic","position":{"x":1152,"y":5000},"data":{"label":"Kubernetes Basics"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":5000}},{"id":"sub-8-4-3","type":"subtopic","position":{"x":1412,"y":5000},"data":{"label":"Cloud ML Platforms","description":"SageMaker · Vertex AI · Azure ML"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":5000}},{"id":"sub-8-4-4","type":"subtopic","position":{"x":892,"y":5097},"data":{"label":"Serverless Deployment","description":"AWS Lambda · Cloud Run · Azure Functions"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":5097}},{"id":"topic-8-5","type":"topic","position":{"x":892,"y":5210},"data":{"label":"Pipelines & CI/CD","number":"8.5"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":5210}},{"id":"sub-8-5-1","type":"subtopic","position":{"x":892,"y":5278},"data":{"label":"CI/CD","description":"GitHub Actions · GitLab CI"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":5278}},{"id":"sub-8-5-2","type":"subtopic","position":{"x":1152,"y":5278},"data":{"label":"Workflow Orchestration","description":"Airflow · Prefect · Dagster · Mage"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":5278}},{"id":"sub-8-5-3","type":"subtopic","position":{"x":1412,"y":5278},"data":{"label":"Feature Stores","description":"Feast · Hopsworks"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":5278}},{"id":"topic-8-6","type":"topic","position":{"x":892,"y":5391},"data":{"label":"Monitoring & LLMOps","number":"8.6"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":5391}},{"id":"sub-8-6-1","type":"subtopic","position":{"x":892,"y":5459},"data":{"label":"Data & Model Drift","description":"Evidently · NannyML"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":5459}},{"id":"sub-8-6-2","type":"subtopic","position":{"x":1152,"y":5459},"data":{"label":"Model Observability","description":"Arize · Prometheus · Grafana"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":5459}},{"id":"sub-8-6-3","type":"subtopic","position":{"x":1412,"y":5459},"data":{"label":"LLMOps","description":"LangSmith · Langfuse · MLflow Tracing"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":5459}},{"id":"stage-9","type":"section","position":{"x":0,"y":5611},"data":{"label":"Business, Communication & Ethics","description":"Frame the right problems, communicate results clearly, and apply data responsibly.","number":9},"width":824,"height":802,"style":{"width":824,"height":802},"measured":{"width":824,"height":802},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":0,"y":5611}},{"id":"topic-9-1","type":"topic","position":{"x":28,"y":5732},"data":{"label":"Business Acumen","number":"9.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":5732}},{"id":"sub-9-1-1","type":"subtopic","position":{"x":28,"y":5800},"data":{"label":"Framing Problems as Data Problems"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":5800}},{"id":"sub-9-1-2","type":"subtopic","position":{"x":288,"y":5800},"data":{"label":"Success Metrics","description":"KPIs · OKRs · North Star Metrics"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":5800}},{"id":"sub-9-1-3","type":"subtopic","position":{"x":548,"y":5800},"data":{"label":"ROI of ML Projects"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":5800}},{"id":"topic-9-2","type":"topic","position":{"x":28,"y":5895},"data":{"label":"Communication","number":"9.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":5895}},{"id":"sub-9-2-1","type":"subtopic","position":{"x":28,"y":5963},"data":{"label":"Storytelling with Data"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":5963}},{"id":"sub-9-2-2","type":"subtopic","position":{"x":288,"y":5963},"data":{"label":"Presenting to Non-Technical Audiences"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":5963}},{"id":"sub-9-2-3","type":"subtopic","position":{"x":548,"y":5963},"data":{"label":"Technical Writing & Reports"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":5963}},{"id":"topic-9-3","type":"topic","position":{"x":28,"y":6056},"data":{"label":"Ethics & Responsible AI","number":"9.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":6056}},{"id":"sub-9-3-1","type":"subtopic","position":{"x":28,"y":6124},"data":{"label":"Data Privacy","description":"GDPR · CCPA · HIPAA"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":6124}},{"id":"sub-9-3-2","type":"subtopic","position":{"x":288,"y":6124},"data":{"label":"Algorithmic Bias & Fairness","description":"Fairness Metrics · Fairlearn"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":6124}},{"id":"sub-9-3-3","type":"subtopic","position":{"x":548,"y":6124},"data":{"label":"AI Governance","description":"EU AI Act · Model Cards · Datasheets"},"width":248,"height":87,"style":{"width":248,"height":87},"measured":{"width":248,"height":87},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":548,"y":6124}},{"id":"topic-9-4","type":"topic","position":{"x":28,"y":6239},"data":{"label":"Project Management","number":"9.4"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":6239}},{"id":"sub-9-4-1","type":"subtopic","position":{"x":28,"y":6307},"data":{"label":"CRISP-DM Lifecycle"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":28,"y":6307}},{"id":"sub-9-4-2","type":"subtopic","position":{"x":288,"y":6307},"data":{"label":"Agile Methods","description":"Scrum · Kanban"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":288,"y":6307}},{"id":"stage-10","type":"section","position":{"x":864,"y":5611},"data":{"label":"Capstone & Career","description":"Prove your skills with portfolio projects and prepare for data science interviews.","number":10},"width":824,"height":802,"style":{"width":824,"height":802},"measured":{"width":824,"height":802},"zIndex":-999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":864,"y":5611}},{"id":"topic-10-1","type":"topic","position":{"x":892,"y":5732},"data":{"label":"Portfolio Projects","number":"10.1"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":5732}},{"id":"sub-10-1-1","type":"subtopic","position":{"x":892,"y":5800},"data":{"label":"End-to-End ML Project","description":"Data · Model · API · Dashboard"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":5800}},{"id":"sub-10-1-2","type":"subtopic","position":{"x":1152,"y":5800},"data":{"label":"Business Case Studies","description":"Churn · Fraud · Forecasting · Pricing"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":5800}},{"id":"sub-10-1-3","type":"subtopic","position":{"x":1412,"y":5800},"data":{"label":"Kaggle Competitions"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":5800}},{"id":"sub-10-1-4","type":"subtopic","position":{"x":892,"y":5897},"data":{"label":"Publishing Work","description":"GitHub · Blog Posts · Hugging Face Spaces"},"width":248,"height":85,"style":{"width":248,"height":85},"measured":{"width":248,"height":85},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":5897}},{"id":"topic-10-2","type":"topic","position":{"x":892,"y":6010},"data":{"label":"Job Preparation","number":"10.2"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":6010}},{"id":"sub-10-2-1","type":"subtopic","position":{"x":892,"y":6078},"data":{"label":"Resume & Portfolio Review"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":6078}},{"id":"sub-10-2-2","type":"subtopic","position":{"x":1152,"y":6078},"data":{"label":"SQL & Python Coding Interviews"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":6078}},{"id":"sub-10-2-3","type":"subtopic","position":{"x":1412,"y":6078},"data":{"label":"Statistics & ML Interviews"},"width":248,"height":65,"style":{"width":248,"height":65},"measured":{"width":248,"height":65},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1412,"y":6078}},{"id":"sub-10-2-4","type":"subtopic","position":{"x":892,"y":6155},"data":{"label":"Product Case Interviews","description":"Metrics · A/B Tests"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":6155}},{"id":"sub-10-2-5","type":"subtopic","position":{"x":1152,"y":6155},"data":{"label":"Take-Home Assignments"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":6155}},{"id":"topic-10-3","type":"topic","position":{"x":892,"y":6250},"data":{"label":"Continuous Learning","number":"10.3"},"width":768,"height":56,"style":{"width":768,"height":56},"measured":{"width":768,"height":56},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":6250}},{"id":"sub-10-3-1","type":"subtopic","position":{"x":892,"y":6318},"data":{"label":"Reading Research Papers","description":"arXiv · Hugging Face Papers"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":892,"y":6318}},{"id":"sub-10-3-2","type":"subtopic","position":{"x":1152,"y":6318},"data":{"label":"Communities","description":"Kaggle · Meetups · Conferences"},"width":248,"height":67,"style":{"width":248,"height":67},"measured":{"width":248,"height":67},"zIndex":999,"selected":false,"selectable":true,"focusable":true,"dragging":false,"resizing":false,"positionAbsolute":{"x":1152,"y":6318}}],"edges":[]}
01 Mathematics & Statistics Build the math and statistical intuition that every model, metric, and experiment relies on.
02 Programming & Data Tools Write clean Python and SQL to load, transform, and query data reliably.
03 Data Wrangling & Exploration Collect, clean, and explore data to uncover patterns and craft useful features.
04 Data Visualization Turn analysis into clear static charts, interactive visuals, and dashboards.
05 Core Machine Learning Train, evaluate, tune, and explain classical ML models with scikit-learn.
06 Applied Machine Learning Apply ML to forecasting, recommendations, text, and sequential decision problems.
07 Deep Learning & Generative AI Build neural networks with PyTorch and use modern LLMs, RAG, and agents in data work.
08 MLOps & Deployment Package, serve, monitor, and automate models so they deliver value in production.
09 Business, Communication & Ethics Frame the right problems, communicate results clearly, and apply data responsibly.
10 Capstone & Career Prove your skills with portfolio projects and prepare for data science interviews.
Data Scientist
For aspiring data scientists who want to turn raw data into decisions. You will be able to analyze data, build and evaluate ML models, communicate insights, and ship models to production.
10 STAGES · 45 TOPICS · 176 SUBTOPICS
1.1 Linear Algebra
Vectors, Matrices & Tensors
Matrix Operations Multiplication · Transformations · Determinants · Inverses
Eigenvalues & Eigenvectors
Matrix Decompositions SVD · PCA
1.2 Calculus & Optimization
Limits & Continuity
Derivatives & Gradients Partial Derivatives · Jacobian · Chain Rule
Integrals
Optimization Maxima & Minima · Gradient Descent · Hessian
1.3 Probability
Probability Fundamentals Random Variables · Conditional Probability · Independence
Probability Distributions Normal · Binomial · Poisson · Exponential
Bayes' Theorem & Bayesian Inference
Parameter Estimation MLE · MAP
Markov Chains & Monte Carlo Simulation
1.4 Statistics & Experimentation
Descriptive Statistics Mean · Median · Variance · Percentiles
Hypothesis Testing p-values · t-tests · Chi-square · ANOVA
Confidence Intervals
A/B Testing Sample Size · Statistical Power · Multiple Testing
Causal Inference Propensity Score Matching · Difference-in-Differences
2.1 Python Fundamentals
Core Syntax Variables · Data Types · Control Flow
Data Structures Lists · Dictionaries · Sets · Tuples
Functions, Iterators & Generators
Object-Oriented Programming (OOP)
Error Handling & Exceptions
Type Hints & Validation (Pydantic)
2.2 Numerical & Tabular Data
Jupyter Notebooks
NumPy Arrays · Broadcasting · Vectorization
Pandas DataFrames · Series · Merging · Grouping
Polars Expressions · Lazy Queries
2.3 SQL & Databases
SQL Fundamentals Filtering · Joins · Aggregations
Advanced SQL Window Functions · CTEs · Subqueries
Cloud Data Warehouses Snowflake · BigQuery · Redshift · Databricks
NoSQL Databases MongoDB · Cassandra
Data Transformation (dbt)
2.4 Software Engineering Practices
Command Line Basics
Version Control Git · GitHub
Environments & Packaging venv · conda · uv · Poetry
Code Quality PEP 8 · Ruff · pre-commit
Unit Testing (pytest)
3.1 Data Collection
File Formats CSV · JSON · Parquet
APIs REST · GraphQL · JSON
Web Scraping BeautifulSoup · Scrapy · Playwright · Selenium
Database Connectivity SQLAlchemy · psycopg
3.2 Data Cleaning
Missing Values Dropping · Imputation
Outliers Z-score · IQR · Isolation Forest
Type Conversions & Date Parsing
Text Cleaning Regex · String Methods
Data Validation Pandera · Great Expectations
3.3 Exploratory Data Analysis (EDA)
Univariate Analysis
Bivariate & Multivariate Analysis
Correlation & Covariance
3.4 Feature Engineering
Encoding Categoricals One-Hot · Ordinal · Target Encoding
Scaling & Transformations Standardization · Normalization · Log Transform
Feature Extraction Dates · Text · Aggregates
Feature Selection Filter · Wrapper · Embedded Methods
3.5 Big Data Processing
Apache Spark & PySpark DataFrames · Spark SQL · MLlib
Distributed Python Dask · Ray
Local Analytics Engines (DuckDB)
4.1 Visualization Principles
Choosing the Right Chart
Visual Encoding & Color
Avoiding Misleading Charts
4.2 Static Visualization
Matplotlib Figures · Axes · Subplots
Seaborn Distributions · Relationships · Categorical Plots
4.3 Interactive Visualization
Plotly Plotly Express · Graph Objects
Bokeh
4.4 Specialized Visualization
Geospatial Maps GeoPandas · Folium
Network Graphs (NetworkX)
4.5 Dashboards & Reporting
Python Dashboards Streamlit · Dash
BI Tools Tableau · Power BI · Looker Studio
Reproducible Reports Jupyter · Quarto
5.1 ML Foundations
Learning Paradigms Supervised · Unsupervised · Reinforcement
Train, Validation & Test Splits
Bias-Variance Tradeoff
Data Leakage
scikit-learn Workflow Estimators · Pipelines · ColumnTransformer
5.2 Regression
Linear Regression Simple · Multiple
Polynomial Regression
Regularization Ridge · Lasso · Elastic Net
5.3 Classification
Logistic Regression
K-Nearest Neighbors (KNN)
Support Vector Machines (SVM)
Naive Bayes
Decision Trees
5.4 Ensemble Methods
Bagging & Random Forest
Gradient Boosting XGBoost · LightGBM · CatBoost
Stacking & Voting
5.5 Unsupervised Learning
Clustering K-Means · Hierarchical · DBSCAN · Gaussian Mixtures
Dimensionality Reduction PCA · t-SNE · UMAP
Association Rules Apriori · FP-Growth
Anomaly Detection Isolation Forest · One-Class SVM · LOF
5.6 Model Evaluation & Tuning
Cross-Validation K-Fold · Stratified · Time-Series Split
Classification Metrics Precision · Recall · F1 · ROC-AUC · PR-AUC
Regression Metrics MSE · RMSE · MAE · MAPE · R-squared
Hyperparameter Tuning Grid Search · Random Search · Optuna
Imbalanced Data SMOTE · Class Weights · Threshold Tuning
Explainability SHAP · LIME · Permutation Importance · Partial Dependence
6.1 Time Series Forecasting
Stationarity & Autocorrelation ACF · PACF
Classical Models ARIMA · SARIMA · Exponential Smoothing
Forecasting Libraries Prophet · StatsForecast · sktime · Darts
ML Forecasting Lag Features · Gradient Boosting
Backtesting & Forecast Evaluation
6.2 Recommendation Systems
Content-Based Filtering
Collaborative Filtering
Matrix Factorization
Ranking Metrics Precision@K · NDCG · MAP
6.3 NLP Fundamentals
Text Preprocessing Tokenization · Stemming · Lemmatization
Bag of Words & TF-IDF
Word Embeddings Word2Vec · GloVe
Sentiment Analysis
Topic Modeling LDA · BERTopic
6.4 Reinforcement Learning Basics
Multi-Armed Bandits Epsilon-Greedy · Thompson Sampling
Markov Decision Processes (MDP)
Q-Learning & Value Iteration
Policy Gradients
7.1 Neural Network Foundations
Perceptrons & Activation Functions
Forward & Backpropagation
Loss Functions & Optimizers SGD · Adam · AdamW · RMSprop
Regularization Dropout · Batch Normalization · Weight Decay · Early Stopping
7.2 Deep Learning Frameworks
PyTorch Fundamentals Tensors · Autograd · nn.Module · DataLoader
Keras & TensorFlow
JAX (Optional)
7.3 Specialized Architectures
Convolutional Neural Networks (CNNs)
Transfer Learning ResNet · EfficientNet · ViT
Detection & Segmentation YOLO · Faster R-CNN · U-Net
Sequence Models RNN · LSTM · GRU
Graph Neural Networks (GNNs)
Deep Reinforcement Learning DQN · PPO
Diffusion Models
7.4 Generative AI & LLMs
Transformers Attention · Self-Attention · Multi-Head Attention
Hugging Face Ecosystem Transformers · Datasets · Hub
Large Language Models GPT · Claude · Gemini · Llama · Mistral
Prompt Engineering Few-Shot · Chain-of-Thought · Structured Output
Retrieval-Augmented Generation Chunking · Embeddings · Reranking
Vector Databases Chroma · Qdrant · Milvus · pgvector · Pinecone
Fine-Tuning PEFT · LoRA · QLoRA
AI Agents & Tool Use LangGraph · CrewAI · OpenAI Agents SDK · MCP
8.1 Model Packaging
Serialization Pickle · Joblib · Safetensors
Portable Formats & Runtimes ONNX · ONNX Runtime · TensorRT
Model Optimization Quantization · Pruning · Distillation
8.2 Experiment Tracking & Registry
Experiment Tracking MLflow · Weights & Biases
Data & Model Versioning DVC · lakeFS
Model Registry (MLflow Model Registry)
8.3 APIs & Model Serving
REST APIs FastAPI · Flask
Serving Frameworks BentoML · Ray Serve · Triton Inference Server · vLLM
Batch vs Real-Time Inference
8.4 Containers & Cloud
Docker Dockerfile · Images · Containers · Compose
Kubernetes Basics
Cloud ML Platforms SageMaker · Vertex AI · Azure ML
Serverless Deployment AWS Lambda · Cloud Run · Azure Functions
8.5 Pipelines & CI/CD
CI/CD GitHub Actions · GitLab CI
Workflow Orchestration Airflow · Prefect · Dagster · Mage
Feature Stores Feast · Hopsworks
8.6 Monitoring & LLMOps
Data & Model Drift Evidently · NannyML
Model Observability Arize · Prometheus · Grafana
LLMOps LangSmith · Langfuse · MLflow Tracing
9.1 Business Acumen
Framing Problems as Data Problems
Success Metrics KPIs · OKRs · North Star Metrics
ROI of ML Projects
9.2 Communication
Storytelling with Data
Presenting to Non-Technical Audiences
Technical Writing & Reports
9.3 Ethics & Responsible AI
Data Privacy GDPR · CCPA · HIPAA
Algorithmic Bias & Fairness Fairness Metrics · Fairlearn
AI Governance EU AI Act · Model Cards · Datasheets
9.4 Project Management
CRISP-DM Lifecycle
Agile Methods Scrum · Kanban
10.1 Portfolio Projects
End-to-End ML Project Data · Model · API · Dashboard
Business Case Studies Churn · Fraud · Forecasting · Pricing
Kaggle Competitions
Publishing Work GitHub · Blog Posts · Hugging Face Spaces
10.2 Job Preparation
Resume & Portfolio Review
SQL & Python Coding Interviews
Statistics & ML Interviews
Product Case Interviews Metrics · A/B Tests
Take-Home Assignments
10.3 Continuous Learning
Reading Research Papers arXiv · Hugging Face Papers
Communities Kaggle · Meetups · Conferences