Skip to content

Make zero-valued calibration targets intentionally nonzero-weighted #104

Description

@MaxGhenis

Zero-valued targets should still receive nonzero calibration loss weight.

Why:

  • A zero target can be meaningful, especially at small geography levels or sparse breakdowns.
  • If a state or local target is zero but the dataset estimates a positive value, the optimizer should see that error instead of silently ignoring the row.
  • This also makes target diagnostics easier to reason about when expanding the target surface.

Current context:

  • The current fiscal refresh loss weighting appears to use max(abs(target), 1.0) before applying sqrt target-value weights, so zero targets are not literally zero-weighted today.
  • We should make that behavior explicit and protected by tests/diagnostics, not incidental.

Acceptance criteria:

  • Zero-valued amount and count targets get a finite positive loss weight.
  • A regression test covers zero-valued targets under the active amount/count 50/50 target-weighting scheme.
  • The target-weight explorer or calibration diagnostics exposes the number of zero-valued targets and their assigned weight range.
  • Document the intended zero-target treatment near the loss-weighting code.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions