Enhance training script and evaluation logic to support all-future model target mode and improve error handling for distribution modes
This commit is contained in:
17
README.md
17
README.md
@@ -73,6 +73,8 @@ HealthDataset = NextStepHealthDataset
|
||||
collate_fn = next_step_collate_fn
|
||||
```
|
||||
|
||||
all-future 训练入口会显式使用 `AllFutureHealthDataset` 和 `all_future_collate_fn`。
|
||||
|
||||
dataset 会输出:
|
||||
|
||||
```python
|
||||
@@ -227,18 +229,21 @@ all-future / query-conditioned 监督:
|
||||
- 使用 `NextStepHealthDataset`
|
||||
- `--target_mode delphi2m` 默认搭配 `Delphi2MLoss` + `token` readout
|
||||
- `--target_mode uts` 默认搭配 `UniqueTimeSetExponentialLoss` + `same_time_group_end` readout
|
||||
- 当前 next-token 训练只支持 `--dist_mode exponential`
|
||||
- `--model_target_mode all_future`
|
||||
- 使用 `AllFutureHealthDataset`
|
||||
- 不使用 readout,直接对 query hidden 计算风险
|
||||
- `--dist_mode exponential/weibull/mixed` 分别搭配 `ExponentialLoss`、`WeibullLoss`、`MixedLoss`
|
||||
|
||||
模型结构组合由 `model_target_mode × time_mode × dist_mode` 决定:
|
||||
当前 `train.py` 支持所有已有训练目标定义的组合:
|
||||
|
||||
| 维度 | 可选项 |
|
||||
| --- | --- |
|
||||
| `model_target_mode` | `next_token`, `all_future` |
|
||||
| `time_mode` | `relative`, `absolute` |
|
||||
| `dist_mode` | `exponential`, `weibull`, `mixed` |
|
||||
| 训练模式 | 时间模式 | 分布/监督 | 默认 loss/readout |
|
||||
| --- | --- | --- | --- |
|
||||
| `next_token` | `relative`, `absolute` | `target_mode=delphi2m`, `dist_mode=exponential` | `Delphi2MLoss` + `token` |
|
||||
| `next_token` | `relative`, `absolute` | `target_mode=uts`, `dist_mode=exponential` | `UniqueTimeSetExponentialLoss` + `same_time_group_end` |
|
||||
| `all_future` | `relative`, `absolute` | `dist_mode=exponential` | `ExponentialLoss`,无 readout |
|
||||
| `all_future` | `relative`, `absolute` | `dist_mode=weibull` | `WeibullLoss`,无 readout |
|
||||
| `all_future` | `relative`, `absolute` | `dist_mode=mixed` | `MixedLoss`,无 readout |
|
||||
|
||||
示例:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user