All Assignments at a Glance
| Week | Deliverable | Due | File |
|---|---|---|---|
| W1 | Pipeline run (5 rows CSV) + 1-page reflection | Fri Jun 27 | ⬇ Notebook |
| W2 Mon | Day 1 — Scikit-learn ML (when done) | Flexible | ⬇ day1_sklearn |
| W2 Tue | Day 2 — NLP Representations (when done) | Flexible | ⬇ day2_nlp |
| W2 Wed | Day 3 — Embeddings + LLM motivation (when done) | Flexible | ⬇ day3_embeddings |
| W2 | Exercises 5–9 notebook + cluster run evidence + 1-page error analysis | Fri Jul 3 | ⬇ Notebook |
| W2 | Project selection — Slack message to Priscilla | Fri Jul 3 | — |
| W3 Mon | Prompting exercises (zero/few-shot/CoT on a real failure case) | Flexible | ⬇ week3_prompting |
| W3 | Oral project proposal (5 min, in class) | Wed Jul 9 | — |
| W3 Bonus | Agentic mini-lab (reflective wrapper on 15 scenarios, before/after accuracy) | Flexible | ⬇ teach_07_agentic |
| W3 | 1-page written project summary | Fri Jul 11 | — |
| Bonus | Compliance QA Playground — Streamlit app, 3 frameworks × 2 modes | Flexible | — |
| W4 | Mid-point pitch (5 min, in class) | Wed Jul 16 | — |
| W4 | Experiment log with incremental results | Fri Jul 18 | — |
| W5 | Poster draft + 2-page write-up draft + final results CSV | Fri Jul 25 | — |
| W6 | Final poster (print-ready PDF) + final write-up | Thu Jul 30 | — |
| W6 | Poster presentation — REU Closing Ceremony | Thu Jul 31 | — |
Downloads
Week 2 — Core Notebook
Tokenization, precision/recall/F1, batch error analysis, cluster extraction. Exercises 5–9.
⬇ week2_nlp.ipynbWeek 2 — Daily Notebooks
One per day. Live the ML → NLP → LLM story by building it.
⬇ Day 1 · Scikit-learn ML ⬇ Day 2 · NLP Representations ⬇ Day 3 · EmbeddingsWeek 3 Notebook
Zero-shot, few-shot, chain-of-thought on a real failing case. Runs locally via Ollama — no cluster needed.
⬇ week3_prompting.ipynbDaily notebooks have no hard deadline — submit in Slack #deliverables when complete.
Instructor Notebooks — Pre-worked Teaching Scripts
Run top-to-bottom in class. All cells pre-written, all outputs deterministic. Uses real FIFA 2014 and HIPAA GoldCoin data.
01 · Machine Learning
FIFA 2014 → features → LogReg/DT/RF → pivot to HIPAA. The feature extraction wall.
⬇ teach_01_ml.ipynb02 · Deep Learning
XOR shows LR limits. MLP solves it. Backprop loop. Scale table. HIPAA MLP comparison.
⬇ teach_02_dl.ipynb03 · NLP
BoW → TF-IDF → n-grams on real HIPAA text. Semantic gap: "court order" vs "judicial mandate" = 0.08.
⬇ teach_03_nlp.ipynb04 · Transformers
Tokenization. RNN decay simulation. Attention intuition. "order" in medical vs legal context.
⬇ teach_04_transformers.ipynb05 · Encoders
Sentence embeddings close the gap. Adversarial failure. Semantic search. HIPAA classification.
⬇ teach_05_encoders.ipynb06 · LLMs — Real Results
Gemma3-4B actual output. 8 failure deep-dive. Oracle hallucination anatomy. Research directions.
⬇ teach_06_llm.ipynb07 · Agentic Systems
Real Qwen2.5:72B ablation: RAG costs 8pp, reflection recovers it. Row-level regressions/recoveries. Live reflective wrapper.
⬇ teach_07_agentic.ipynbNote: Instructor notebooks use absolute paths to the FIFA and ComplianceGPT data on your machine. Update FIFA_PATH and HIPAA_PATH at the top of each notebook if paths change. Run all-MiniLM-L6-v2 download before class (notebook 05).
Assignment Details
WEEK 1First Pipeline Run + Reflection
Due: Friday June 27, 5pmPart 1 — Pipeline run: Run batch_runner.py on 5 rows from the GoldCoin dataset. Save as results/[yourname]_week1.csv and commit to GitHub.
Part 2 — Reflection (1 page, ~1 paragraph per question):
- What surprised you most about how ComplianceGPT works?
- Did any of your 5 results surprise you? Why?
- What question about AI and compliance are you most curious about?
Submit: Post CSV filename + Google Doc link in Slack #deliverables.
WEEK 2Exercises 5–9 + Cluster Run + Error Analysis
Due: Friday July 3, 5pmPart 1 — Notebook (all code + reflection cells):
- Ex 5 — Token counting: Count tokens for 3 scenarios, compute % of Gemma3's 8,192 context window, reflect on truncation risk
- Ex 6 — Precision / Recall / F1: Implement from scratch (no sklearn), pass all 3 test cases, write interpretation of always-DENIED model result
- Ex 7 — Batch error analysis: Group errors by purpose category using pandas groupby, identify worst-performing category
- Ex 8 — Oracle predicate analysis: Use Counter to find which oracle predicate over-fires in FP rows
- Ex 9 — Cluster extraction run: Write SLURM job script, submit on cluster, download CSV, run Soufflé locally, compute accuracy
Part 2 — Cluster run evidence (post in Slack #deliverables):
- Output of
sacct -u yournetid— screenshot or paste showing ≥1 completed job - Filename of your downloaded extraction CSV (e.g.
extractions_48305.csv) - One sentence: "I ran X scenarios with [model], got Y% accuracy, most common error was [oracle predicate]."
Part 3 — Error analysis (1 page): Pick 2 wrong predictions from your cluster run. For each:
- 1-sentence scenario summary
- Model's verdict vs. correct answer
- Which oracle predicate is wrong and what it should be
- Root cause: hallucination / under-extraction / role confusion / purpose OOV
- One proposed fix
Also due July 3: Project Selection
Slack Priscilla: (1) which project P1–P6, (2) your draft research question in one sentence, (3) one sentence on why. See Student Projects.
WEEK 3Prompting Notebook + Project Proposal
Flexible (notebook) · Wed Jul 9 (oral) · Fri Jul 11 (written)Part 1 — Prompting notebook (no hard deadline, complete before Friday):
- Ex 1 — Zero-shot (worked example): run it, read the real hallucination it produces
- Ex 2 — Few-shot: write 2 examples of your own, shaped like the failing case
- Ex 3 — Chain-of-thought: write your own 4–5 step reasoning instructions
- Ex 4 — Compare: build the 3-strategy comparison table; answer the reflection question
- Ex 5 — Temperature (bonus): temp=0 vs temp=0.9, 3 runs each
- Ex 6 — Your own case: repeat Exercises 1–4 on a wrong prediction from your Week 2 cluster run
Runs entirely on your laptop via local Ollama (gemma3:4b) — no cluster, no API key. Submit in Slack #deliverables when complete.
Part 2 — Oral proposal (5 min) — Wednesday July 9: In-class pitch. Cover:
- The problem (why does this matter?)
- Your specific research question (one sentence)
- Your method (what experiments, data, metric)
- How you'll know if it worked
Part 3 — 1-page written summary — due Friday July 11:
- Research question — 1 sentence, specific and answerable
- Background — 2–3 sentences: gap and motivation
- Method — bullet list of experiments, data, and metric
- Expected result — hypothesis with reasoning
- Milestones — what will you have by Jul 18? By Jul 25?
Graded on specificity. "I will run experiments" is not a milestone.
WEEK 3 · BONUSAgentic Mini-Lab — Reflective Wrapper
Flexible — no hard deadline, good stretch work for Thu/FriCompanion to Agentic Systems slides and teach_07_agentic.ipynb (watch it built live in class first, then adapt it yourself).
- Pick 15 GoldCoin-HHS scenarios — include the wrong prediction you used in the Week 3 prompting exercise.
- Run each through baseline
extract()— one pass, no reflection. - Build your own one-step reflection wrapper: re-prompt the model with its own extracted facts and ask it to double-check the riskiest field(s), the same pattern shown live in the notebook.
- Run all 15 through your wrapper.
Report: accuracy before vs. after, and for every case that flipped (right→wrong or wrong→right) one sentence on why — grounded in the actual scenario text, not a guess.
This is a small-scale rehearsal of the real Qwen2.5:72B ablation shown in class, where the same reflection pattern recovered 19 of 21 scenarios that raw RAG had broken. Directly useful groundwork if your project is Prompt Engineering Study or Error Taxonomy.
⬇ teach_07_agentic.ipynbBONUSCompliance QA Playground — Independent Streamlit Build
Flexible — self-paced while Priscilla is awayFull brief: Compliance QA Playground. Build a Streamlit app answering HIPAA compliance questions three ways — Baseline (raw LLM), RAG (retrieval over the real eCFR text), and Agentic (a chained pipeline of specialized prompts) — in both Single Q&A and Chat modes. Pure LLM/NLP: no formal verifier involved anywhere in this one. Every answer must show a verdict + full citation(s), and you'll build your own 15–20 question test set from the real HHS HIPAA FAQ. HIPAA only for now — see the brief for the multi-regulation parity requirement if you extend it.
Submit: link to your app's repo + a short (½–1 page) written comparison of how the three frameworks answered the same test questions. Post in Slack #deliverables when done.
WEEK 4Mid-Point Pitch + Experiment Log
Wed Jul 16 (pitch) · Fri Jul 18 (log)Mid-point pitch (5 min) — Wednesday July 16: Show actual numbers. Structure:
- Done — what experiments ran?
- Found — the numbers (table or chart)
- Blocked — what's not working?
- Plan — exactly what happens in Weeks 5–6?
Experiment log — due Friday July 18: Running log of every experiment in Weeks 3–4. Per experiment:
- Date · configuration (model, prompt version, data slice)
- Numeric result
- 1-sentence observation
- 1-sentence next step
Minimum 5 experiments logged. At least 1 summary table or chart.
WEEK 5Poster Draft + Write-Up Draft + Final Results
Due: Friday July 25, 5pmPoster draft: All sections filled (not placeholders). Main result visible as table or chart. Feedback returned by Mon Jul 28.
2-page write-up draft: Introduction · Background · Method · Results · Discussion/Conclusion. References required.
Final results CSV: Commit results/[yourname]_final.csv to GitHub. No new experiments after this date.
WEEK 6Final Poster + Write-Up + Closing Ceremony
Inspection Mon Jul 28 · Final Thu Jul 30 · Ceremony Thu Jul 31Poster Inspection — Monday July 28
1:1 with Priscilla (~15 min). We check: readability at 6 feet, main result prominence, title/conclusion match, affiliation lines. Schedule your slot by Fri Jul 25. Incorporate feedback by Tue Jul 29 noon (coordinator needs time to print).
Final poster (print-ready PDF) — Thursday July 30: 48×36 in · min 24pt body · min 56pt title · all required sections · at least 1 figure · SBU affiliation line.
Final write-up — Thursday July 30: Polished 2-page research summary with all feedback incorporated.
Closing Ceremony — Thursday July 31: Stand at your poster and present to faculty and guests. Prepare a 2-minute summary you can give without notes.
Poster Specifications
| Size | 48 × 36 inches (landscape) |
| Body | Minimum 24pt |
| Headers | Minimum 36pt |
| Title | Minimum 56pt |
| Sections | Title · Introduction · Background · Method · Results · Conclusion · References |
| Figures | At least 1 table or chart showing your main result |
| Affiliation | Stony Brook University · ComplianceGPT Lab · AI Innovation & Diffusion REU 2026 |
| Colors | Crimson #990000 · Navy #003366 (optional) |
Tools
- PowerPoint / Google Slides — set size to 48×36. Most accessible. Export PDF.
- Canva — free, clean templates, export high-res PDF.
- LaTeX beamerposter — cleanest output if you know LaTeX.
Design Rules
- The 6-foot test: can you read the title and main result from 6 feet? If not, increase font size.
- Main result = largest visual element, center column.
- Caption every figure. Start with the finding, not "Figure 1 shows..."
- Max 5 sentences per panel. Use bullets.
Publication Opportunities
Who gets co-authorship?
Students whose projects produce a novel finding: (1) the comparison hasn't been published, (2) the dataset is new, or (3) the result is surprising and well-explained. You don't need to solve a major open problem — answer your research question clearly and credibly.
Target Venues
- ACL / EMNLP / NAACL SRW — top NLP conference student workshops, 4-page papers
- AI + Law Workshops (ICAIL, JURIX) — direct fit for this work
- AAAI Undergraduate Consortium — strong result + undergraduate
- arXiv preprint — citable even without conference submission
The Process
- Priscilla tells you before Week 6: "this is publishable"
- Your 2-page write-up expands to 4–8 pages
- You review drafts, revise your sections
- Priscilla handles submission logistics
- Authorship: first author on your portion