NLP-BoardGameAI / PROJECT_CHECKLIST.md
yashb18's picture
Upload folder using huggingface_hub
b3515de verified
|
Raw History Blame Contribute Delete
2.7 kB

Module 2 Project Requirements Checklist

Modeling Approaches

  • Naive baseline (random retrieval)
  • Classical ML model (TF-IDF + cosine similarity)
  • Deep learning model (sentence-transformers dense embeddings + FAISS)
  • All three documented with locations in repo

Experimentation

  • Focused experiment conducted (k-sensitivity analysis, k=1-10)
  • Experiment is well-motivated and clearly described
  • Results properly interpreted (in notebooks/analysis.md)

Interactive Application

  • Publicly accessible via the internet (DEPLOYED)
  • Runs model inference only (no training)
  • Good UX — beyond basic Streamlit (assignment says "a basic Streamlit app is not going to cut it")
  • Streamlit app exists (main.py) with game selector, retriever selector, example questions, eval metrics

Written Report

  • Formal report (NeurIPS/ICML paper, white paper, or technical report)
    • Problem Statement
    • Data Sources
    • Related Work
    • Evaluation Strategy & Metrics (with justification)
    • Modeling Approach
    • Data Processing Pipeline (with rationale)
    • Hyperparameter Tuning Strategy
    • Models Evaluated (all 3 with rationale)
    • Results (quantitative comparison, visualizations, confusion matrices)
    • Error Analysis (5 specific mispredictions with root causes and mitigations)
    • Experiment Write-Up (plan, results, interpretation, recommendations)
    • Conclusions
    • Future Work
    • Commercial Viability Statement
    • Ethics Statement

In-Class Pitch (5 min)

  • Presentation prepared
    • Problem & Motivation
    • Approach Overview
    • Live Demo
    • Results, Insights, Key Findings

Code & Deployment

  • GitHub repository with full codebase
  • Link to live deployed web application
  • App runs inference on trained model
  • Git best practices (branches used, PRs made)

Repository Structure

  • README.md
  • requirements.txt
  • main.py (UI entry point)
  • scripts/ directory with pipeline modules
  • models/ directory
  • data/ directory (raw, processed, outputs)
  • notebooks/ directory
  • .gitignore

Code Quality

  • Jupyter notebooks only in notebooks/ (none used — all Python scripts)
  • Code modularized into classes and functions
  • No loose executable code outside functions/__main__
  • Descriptive variable names, docstrings, comments
  • External code / AI attribution at top of files (if applicable)

Novelty / Contribution

  • Novel approach explained (multi-game RAG with 3-retriever comparison)
  • Related work referenced (in project description)