第6课:项目报告与总结
演示指南与评分标准
项目演示的时间安排、内容要求、评分细则,以及高质量演示的实用技巧
演示格式
每组15 分钟,严格计时。时间分配如下:
| 环节 | 时长 | 内容 | 评分占比 |
|---|---|---|---|
| 项目背景与技术设计 | 5 分钟 | 问题定义、技术方案、选型理由 | 30% |
| 现场演示 | 5 分钟 | Live Demo 展示模型效果 | 30% |
| 分析与反思 | 3 分钟 | 实验结果、关键发现、踩坑经验 | 25% |
| 问答 | 2 分钟 | 回答教师和同学提问 | 15% |
各环节详细要求
环节一:项目背景与技术设计(5 分钟)
问题定义(1 分钟)
- 你的项目解决什么问题?
- 为什么这个问题值得解决?
- 目标用户是谁?
好的表述:"我们的项目旨在构建一个中文数学推理助手,帮助中学生检查解题步骤。我们发现现有模型在中文数学推理上准确率不高,且缺乏逐步推理过程的展示。"
差的表述:"我们做了一个 GRPO 训练实验。"
技术方案设计(2.5 分钟)
- 整体技术架构图(推荐用流程图)
- 每个阶段使用了什么技术、为什么选择这个技术
- 关键设计决策和权衡
数据准备 → SFT 冷启动 → GRPO 推理强化 → 评估
↓ ↓ ↓ ↓
MetaMathQA QLoRA r=32 num_gen=8 GSM8K test
5K 子集 1 epoch 300 步 准确率选型理由(1.5 分钟)
- 为什么选择这个基座模型?(参数量、显存限制)
- 为什么选择这个数据集?(数据质量、规模)
- 为什么选择这个训练方法?(效果、资源限制)
- 与其他方案的对比考量
环节二:现场演示(5 分钟)
现场 Demo 是高风险环节——网络问题、GPU 不可用、模型加载超时都可能导致失败。请务必准备好备选方案:录制一段 Demo 视频,在无法现场演示时播放。
推荐 Demo 方式:
| 方式 | 优点 | 缺点 | 推荐度 |
|---|---|---|---|
| Gradio Web UI | 交互性强、视觉效果好 | 需要网络/GPU 在线 | 首选 |
| Jupyter Notebook | 展示代码 + 输出 | 不够直观 | 备选 |
| 终端命令行 | 简单直接 | 视觉效果差 | 不推荐 |
| 预录视频 | 不依赖现场环境 | 缺乏互动 | 保底方案 |
Demo 展示要点:
- 展示典型成功案例:选 2-3 个能充分体现模型能力的示例
- 展示对比:用相同输入对比基座模型 vs 训练后模型
- 展示边界情况:诚实展示模型的局限(如某类问题准确率较低)
- 保持节奏:不要等模型生成完毕才说话,在等待时解说
# Gradio Demo 模板
import gradio as gr
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("your-model-path", device_map="auto")
tokenizer = AutoTokenizer.from_pretrained("your-model-path")
def chat(message, history):
messages = [{"role": "user", "content": message}]
text = tokenizer.apply_chat_template(
messages, tokenize=False, add_generation_prompt=True
)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
output = model.generate(**inputs, max_new_tokens=512)
return tokenizer.decode(output[0][inputs["input_ids"].shape[1]:],
skip_special_tokens=True)
demo = gr.ChatInterface(
chat,
title="你的项目名称",
description="简短描述",
examples=["示例输入1", "示例输入2"],
)
demo.launch(share=True)环节三:分析与反思(3 分钟)
实验结果(1 分钟)
- 核心评估指标(用表格或图表呈现)
- 与基线的对比
- 关键数字要清晰醒目
| 模型 | GSM8K | 指令跟随 | 推理时间 |
|---|---|---|---|
| Base | 30% | 2.1/10 | - |
| + SFT | 58% | 7.3/10 | 30 min |
| + SFT + GRPO | 68% | 7.5/10 | 90 min |
关键发现(1 分钟)
- 最有趣/最意外的发现是什么?
- 哪些实验假设被验证了?哪些被推翻了?
- 与课程中学到的理论有何对应或偏差?
踩坑经验与反思(1 分钟)
- 遇到了什么问题?如何解决的?
- 如果重新来过,会做什么不同的选择?
- 对后训练技术的新理解
环节四:问答(2 分钟)
- 准备好可能被问到的问题(如"为什么不用 XXX 方法?""β 参数怎么调的?")
- 不确定的问题诚实回答"我们没有尝试,但推测..."
- 小组成员可以分工回答不同方向的问题
评分细则
总分构成
期末项目占课程总成绩的 40%,其中:
| 评分项 | 占比 | 说明 |
|---|---|---|
| 项目报告 | 20% | 书面报告质量 |
| 课堂演示 | 20% | 现场演示表现 |
项目报告评分标准(20%)
| 维度 | 优秀 (18-20) | 良好 (14-17) | 及格 (10-13) | 不及格 (<10) |
|---|---|---|---|---|
| 技术深度 (8%) | 创新性地组合 2+ 技术,有深入的消融实验 | 正确使用 2 种技术,有基本消融 | 使用 2 种技术但缺乏深入分析 | 仅使用 1 种技术 |
| 实验质量 (6%) | 评估全面(多指标、多基线),结果可复现 | 评估较全面,主要结果可复现 | 基本评估,部分结果缺失 | 评估不完整或不可信 |
| 报告撰写 (6%) | 逻辑清晰、图表专业、分析有洞察 | 结构合理、内容完整 | 基本完整但缺乏深度 | 结构混乱或内容不完整 |
课堂演示评分标准(20%)
| 维度 | 优秀 (18-20) | 良好 (14-17) | 及格 (10-13) | 不及格 (<10) |
|---|---|---|---|---|
| 展示效果 (8%) | Demo 流畅有说服力,对比清晰,展示边界情况 | Demo 基本流畅,有对比 | Demo 勉强运行 | 无 Demo 或 Demo 失败 |
| 表达清晰 (6%) | 逻辑清晰、重点突出、时间控制好 | 表达较清楚,基本控时 | 表达尚可但逻辑不清 | 表述混乱、严重超时 |
| 回答质量 (6%) | 对问题有深入思考,回答准确 | 基本能回答问题 | 回答较浅 | 无法回答基本问题 |
高质量演示的实用技巧
PPT 制作
推荐 PPT 结构(8-10 页):
- 标题页(项目名称、成员、日期)
- 问题定义与动机
- 技术架构图
- 数据与训练细节
- Demo(切换到 Gradio/Notebook)
- 实验结果(表格 + 图表)
- 关键发现
- 踩坑与反思
- 总结
时间管理
- 练习计时:至少排练 2 遍,确保不超时
- 标注时间点:在 PPT 备注中标注每页的目标时间
- 准备应急方案:如果 Demo 失败,直接切到结果页面
常见扣分点
| 问题 | 影响 | 如何避免 |
|---|---|---|
| 严重超时(>18 分钟) | 扣 2-3 分 | 严格练习计时 |
| 无现场 Demo | 扣 3-5 分 | 准备备用视频 |
| 仅展示成功案例 | 扣 1-2 分 | 诚实展示失败案例 |
| 报告/代码不可复现 | 扣 3-5 分 | 提供完整的运行环境说明 |
| 无消融实验 | 扣 2-3 分 | 至少做 1 个消融 |
| 团队分工不明确 | 扣 1-2 分 | 在报告中明确说明分工 |
加分项
| 亮点 | 加分 | 说明 |
|---|---|---|
| 创新性的方法组合 | +1-2 分 | 超出课程范围的技术尝试 |
| 高质量的可视化 | +1 分 | 专业的图表和训练曲线 |
| 深入的失败分析 | +1 分 | 对失败实验的有价值反思 |
| 与前沿论文对比 | +1 分 | 将结果与相关论文对比讨论 |
| 可复用的代码/工具 | +1 分 | 代码整理完善,其他同学可复用 |
项目报告模板
项目报告建议 4-6 页(不含附录),包含以下部分:
摘要(200 字以内):项目目标、方法、主要结果
引言与动机(0.5 页):问题背景、为什么选择这个方向
方法(1-1.5 页):技术方案详细描述,包括模型选择、数据处理、训练配置
实验(1.5-2 页):实验设置、评估指标、结果表格/图表、消融实验
分析与讨论(0.5-1 页):关键发现、局限性、未来改进方向
附录:超参数列表、完整代码链接、运行环境说明