Repository navigation
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
For observations beyond a censoring limit,
CensoredGaussianLogLikelihooduses the threshold probability in its score but the raw observation in its noise derivative. Raw and clipped representations therefore have the same likelihood surface and differentevaluateS1gradients.Use the lower/upper threshold residual in the two noise derivative terms. Keep likelihood values and model-parameter derivatives unchanged. This preserves the accepted input behavior discussed in the original review.
Add 12 numerical cases covering one/two/three outputs, both censoring sides, raw/clipped equivalence, and finite differences. Nine fail on unchanged main; all pass after on Python3.10/NumPy1.26 and Python3.12/NumPy2.5.
I also checked 48 continued native gradient-descent fits on the supplied recorded hare/lynx series and constructed censoring variants. All 18 incorrect trajectories agree with the independent scalar reference after the change; all 30 previously correct controls remain identical. Every raw/clipped pair now follows exactly the same trajectory.
Validation: full unit suite passes (766 tests, three optional skips), Flake8 passes, and the clean HTML documentation build succeeds without warnings.
CHANGELOG.mdis updated.This is independent of #1747, which corrects the model-parameter axis. Related to #667.