Skip to content

Mark DebiasConvex non-negative modes as experimental and disable inference outputs#35

Draft
fedemolina wants to merge 1 commit into
TianyiPeng:mainfrom
fedemolina:feature/debiasconvex-nonnegative-guardrails
Draft

Mark DebiasConvex non-negative modes as experimental and disable inference outputs#35
fedemolina wants to merge 1 commit into
TianyiPeng:mainfrom
fedemolina:feature/debiasconvex-nonnegative-guardrails

Conversation

@fedemolina

Copy link
Copy Markdown
Contributor

Summary

  • Mark DebiasConvex(method_non_neg="svd") as an experimental point-estimation heuristic.
  • Return std=None, inference_valid=False, non_negative_method="svd", and diagnostic fields whenever the non-negative heuristic is requested.
  • Reject unsupported method_non_neg values, including nnmf, with a clear top-level error because that path changes the model family and is not currently compatible with DebiasConvex debiasing/inference.
  • Keep raw DebiasConvex mode backward compatible with standard errors and inference_valid=True.
  • Add focused tests, a slim local documentation page, and an executable tutorial notebook.

Notes

This PR does not claim inference-valid non-negative DebiasConvex estimation. It adds guardrails so the experimental non-negative point-estimation path is explicit, diagnosable, and does not report standard errors as valid.

Related context: #12

Validation

  • env PYTHONPATH=src poetry run pytest tests/test_debiasconvex_nonnegative_guardrails.py -q
  • env PYTHONPATH=src poetry run pytest src/causaltensor/tests/test_synthetic_class.py::TestSyntheticClass::test_dcpr src/causaltensor/tests/test_synthetic_class.py::TestSyntheticClass::test_dcpr_multiple src/causaltensor/tests/test_real_class.py::TestRealClass::test_dcpr -q
  • env PYTHONPATH=src poetry run pytest tests/test_debiasconvex_nonnegative_guardrails.py src/causaltensor/tests -q
  • poetry run python -m py_compile src/causaltensor/cauest/DebiasConvex.py tests/test_debiasconvex_nonnegative_guardrails.py
  • Executed tutorials/debiasconvex_nonnegative_guardrails.ipynb from repo root and from tutorials/ cwd.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant