tccc1 commited on
Commit
b853a95
·
verified ·
1 Parent(s): d99c8d6

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +72 -56
README.md CHANGED
@@ -6,9 +6,10 @@ colorTo: purple
6
  sdk: static
7
  pinned: false
8
  ---
9
- # stage2 各任务说明(输入 → 做什么 → 输出)
10
 
11
- ## 任务一:RoBERTa 校准
 
12
 
13
  **输入什么**
14
 
@@ -27,7 +28,51 @@ pinned: false
27
 
28
  ---
29
 
30
- ## 任务二:FP/FN 错误分析
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
 
32
  **输入什么**
33
 
@@ -48,7 +93,7 @@ pinned: false
48
 
49
  ---
50
 
51
- ## 任务三:三分类 Demo
52
 
53
  **输入什么**
54
 
@@ -70,32 +115,11 @@ pinned: false
70
 
71
  ---
72
 
73
- ## 任务四:TF-IDF 校准(复用同一 notebook 流程)
74
 
75
  **输入什么**
76
 
77
- 1. `pred_tfidf_{val,test_id,test_ood}.csv`(三列 `id,label,p_ai`)
78
- 2. 校准流程代码(`calibrate.ipynb`)+ `metrics.py`
79
-
80
- **要做什么**
81
-
82
- 1. `RUN="fit"`:只用 val → 拟合 TF-IDF 自己的 T → 在校准 val 上选自己的 tau_fpr5/tau_f1 → 选自己的 t
83
- 2. `RUN="apply"`:把冻结参数应用到三个 split,绝不重选
84
- 3. AUROC 校准前后必须一致;ECE/Brier 记录变化
85
-
86
- **输出什么**
87
-
88
- - `pred_tfidf_{val,test_id,test_ood}_calibrated.csv`
89
- - `metrics_tfidf_binary.csv`(9 行)、`metrics_tfidf_three_way.csv`(3 行)
90
- - `thresholds.json` 新增 `tfidf` 条目(TF-IDF 自己的 T/tau/t,不共用 RoBERTa 的参数)
91
-
92
- ---
93
-
94
- ## 任务五:跨模型汇总与 id 对齐
95
-
96
- **输入什么**
97
-
98
- 1. 各模型的 `pred_*_calibrated.csv`(RoBERTa 在本目录、TF-IDF 由任务四产出、Qwen 在固定 200 条子集上)
99
  2. 各模型两张 metrics 表
100
  3. thresholds.json(四模型条目齐后)
101
 
@@ -113,61 +137,52 @@ pinned: false
113
 
114
  ---
115
 
116
- ## 任务六:Qwen 零样本/少样本校准
117
 
118
  **输入什么**
119
 
120
- 1. Qwen 在 val/test 上的预测(零样本、少样本**两个版本分开**,各一套 `id,label,p_ai`)
121
- 2. 校准流程代码 + `../metrics.py`
122
- 3. 固定 200 条平衡子集(成员 1 已产出)
123
 
124
  **要做什么**
125
 
126
- 1. 两个版本各自走一遍与任务一相同的 fit → apply 流程,参数不能共用、结果不能混
127
- 2. 零样本/少样本分别记录到 thresholds.json 的 `qwen_zeroshot` / `qwen_fewshot` 条目
128
- 3. 所有指标结论注明"固定 200 条人工平衡子集,小样本限定"
129
 
130
  **输出什么**
131
 
132
- - `pred_qwen_zeroshot/` 和 `pred_qwen_fewshot/` 两个版本的 calibrated 预测与两张 metrics 表
133
- - thresholds.json 新增 `qwen_zeroshot`、`qwen_fewshot` 两个条目
134
-
135
- **已知卡点**:目前成员 1 的子集只从 test_id 抽,**Qwen 没有 val 预测,fit 没原料**——需先确认是否补跑一份 val 预测(可同为固定子集),并同步全组口径。
136
 
137
  ---
138
 
139
- ## 任务七:跨模型错误对照
140
 
141
  **输入什么**
142
 
143
- 1. 任务五产出的按 id 对齐数据(RoBERTa / TF-IDF 在同一批样本上的预测)
144
- 2. 各模型自己的冻结 tau_fpr5(RoBERTa 0.994、TF-IDF 用它 fit 出的值,不得混用)
 
 
145
 
146
  **要做什么**
147
 
148
- 1. 校准口径下各自标出 FP/FN,比较两模型在同一批 id 上的误判异同
149
- 2. 注意区分:成员 1 的预研 csv(raw 口径、经验阈值 0.8/0.2、只 test_id 10 FP + 9 FN)是早期素材,不作为对照口径
 
 
150
 
151
  **输出什么**
152
 
153
- - 错误对比补充表/段落(归属阶段三报告,入 `runs/stage2/` 时同交)
 
 
 
154
 
155
  ---
156
 
157
- ## 任务八:交付目录对齐
158
 
159
- **输入什么**
160
-
161
- 1. `stage2/output/` 顶层的全部 `*.csv`、`*.json`(7 个现有文件 + 三张 fp 表)
162
 
163
- **要做什么**
164
-
165
- 1. 按 §4.3 把顶层产物镜像到 `runs/stage2/`,跳过 `middle/`
166
- 2. 复制放在所有任务之后做;之后任何任务重跑过,再执行一次覆盖复制
167
-
168
- **输出什么**
169
-
170
- - `src/runs/stage2/`:9 个及以上交付文件(四模型条目齐的 thresholds.json、各模型 calibrated 预测与 metrics、三张 fp 表)
171
 
172
  ---
173
 
@@ -179,3 +194,4 @@ pinned: false
179
  4. 各模型参数独立(各自的 T/tau/t),跨模型比较按 id 对齐,Qwen 只在固定子集上比
180
 
181
 
 
 
6
  sdk: static
7
  pinned: false
8
  ---
9
+ # stage2 各任务说明
10
 
11
+
12
+ ## 任务一:RoBERTa 校准(成员 2)
13
 
14
  **输入什么**
15
 
 
28
 
29
  ---
30
 
31
+ ## 任务二:TF-IDF 校准(成员 1,复用同一 notebook 流程)
32
+
33
+ **输入什么**
34
+
35
+ 1. `pred_tfidf_{val,test_id,test_ood}.csv`(三列 `id,label,p_ai`)
36
+ 2. 校准流程代码(`calibrate.ipynb`)+ `metrics.py`
37
+
38
+ **要做什么**
39
+
40
+ 1. `RUN="fit"`:只用 val → 拟合 TF-IDF 自己的 T → 在校准 val 上选自己的 tau_fpr5/tau_f1 → 选自己的 t
41
+ 2. `RUN="apply"`:把冻结参数应用到三个 split,绝不重选
42
+ 3. AUROC 校准前后必须一致;ECE/Brier 记录变化
43
+
44
+ **输出什么**
45
+
46
+ - `pred_tfidf_{val,test_id,test_ood}_calibrated.csv`
47
+ - `metrics_tfidf_binary.csv`(9 行)、`metrics_tfidf_three_way.csv`(3 行)
48
+ - `thresholds.json` 新增 `tfidf` 条目(TF-IDF 自己的 T/tau/t,不共用 RoBERTa 的参数)
49
+
50
+ ---
51
+
52
+ ## 任务三:Qwen 零样本/少样本校准(成员 3,复用同一 notebook 流程)
53
+
54
+ **输入什么**
55
+
56
+ 1. Qwen 在 val/test 上的预测(零样本、少样本**两个版本分开**,各一套 `id,label,p_ai`)
57
+ 2. 校准流程代码 + `../metrics.py`
58
+ 3. 固定 200 条平衡子集(成员 1 已产出)
59
+
60
+ **要做什么**
61
+
62
+ 1. 两个版本各自走一遍与任务一相同的 fit → apply 流程,参数不能共用、结果不能混
63
+ 2. 零样本/少样本分别记录到 thresholds.json 的 `qwen_zeroshot` / `qwen_fewshot` 条目
64
+ 3. 所有指标结论注明"固定 200 条人工平衡子集,小样本限定"
65
+
66
+ **输出什么**
67
+
68
+ - `pred_qwen_zeroshot/` 和 `pred_qwen_fewshot/` 两个版本的 calibrated 预测与两张 metrics 表
69
+ - thresholds.json 新增 `qwen_zeroshot`、`qwen_fewshot` 两个条目
70
+
71
+ **已知卡点**:目前成员 1 的子集只从 test_id 抽,**Qwen 没有 val 预测,fit 没原料**——需先确认是否补跑一份 val 预测(可同为固定子集),并同步全组口径。
72
+
73
+ ---
74
+
75
+ ## 任务四:FP/FN 错误分析(成员 2)
76
 
77
  **输入什么**
78
 
 
93
 
94
  ---
95
 
96
+ ## 任务五:三分类 Demo(成员 2)
97
 
98
  **输入什么**
99
 
 
115
 
116
  ---
117
 
118
+ ## 任务六:跨模型汇总与 id 对齐(成员 1)
119
 
120
  **输入什么**
121
 
122
+ 1. 各模型的 `pred_*_calibrated.csv`(RoBERTa 由任务一、TF-IDF 由任务二、Qwen 由任务三产出)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
123
  2. 各模型两张 metrics 表
124
  3. thresholds.json(四模型条目齐后)
125
 
 
137
 
138
  ---
139
 
140
+ ## 任务七:跨模型错误对照(成员 1)
141
 
142
  **输入什么**
143
 
144
+ 1. 任务六产出的按 id 对齐数据(RoBERTa / TF-IDF 在同一批样本上的预测)
145
+ 2. 各模型自己的冻结 tau_fpr5(RoBERTa 0.994、TF-IDF 用它 fit 出的值,不得混用)
 
146
 
147
  **要做什么**
148
 
149
+ 1. 校准口径下各自标出 FP/FN,比较两模型在同一批 id 上的误判异同
150
+ 2. 注意区分:成员 1 的预研 csv(raw 口径、经验阈值 0.8/0.2、只 test_id 10 FP + 9 FN)是早期素材,不作为对照口径
 
151
 
152
  **输出什么**
153
 
154
+ - 错误对比补充表/段落(归属阶段三报告,入 `runs/stage2/` 时同交)
 
 
 
155
 
156
  ---
157
 
158
+ ## 任务八:终版绘图(成员 3)
159
 
160
  **输入什么**
161
 
162
+ 1. 各模型 `pred_*_calibrated.csv`(raw 与 calibrated 两列概率都要用)
163
+ 2. 各模型两张 metrics 表(混淆矩阵直接取 tn/fp/fn/tp,不重算)
164
+ 3. thresholds.json(图上标注所用参数)
165
+ 4. Qwen 固定 200 条子集 id
166
 
167
  **要做什么**
168
 
169
+ 1. 混淆矩阵:2×2 二分类 + 2×3 三分类,数据直接取 metrics 表
170
+ 2. 校准图:按概率分桶画 raw 与 calibrated 对比曲线,每桶标注样本数 n
171
+ 3. 风险—覆盖率曲线:用 three_way 表(或续算)画 coverage 与 decided_acc,标出参考点
172
+ 4. Qwen 所有图基于 200 条人工平衡子集,图注写明小样本限定
173
 
174
  **输出什么**
175
 
176
+ - `figures/confusion_*.png`(2×2 与 2×3)
177
+ - `figures/calibration_*.png`(对角线 + raw/calibrated 对比 + 每 bin n)
178
+ - `figures/risk_coverage.png`(模型对比与参考点)
179
+ - 绘图代码:`stage2/plots.py` 或 notebook
180
 
181
  ---
182
 
183
+ ## 任务九:交付目录对齐
184
 
 
 
 
185
 
 
 
 
 
 
 
 
 
186
 
187
  ---
188
 
 
194
  4. 各模型参数独立(各自的 T/tau/t),跨模型比较按 id 对齐,Qwen 只在固定子集上比
195
 
196
 
197
+