[Tune] Fix best trial in ProgressReporter with nan #31276
Merged
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.
Signed-off-by: Antoni Baum [email protected]
Why are these changes needed?
If a trial reports a metric value of
np.nan
or similar (which is not vanilla PythonNone
), any comparison made between that value and any other value will return false, thus leading to thenan
value being considered the best value for the purpose of determining best trial inTuneReporterBase
if it was reported first.To guard against that issue, we use
pd.isnull
check which is more general than theis None
check used previously.Related issue number
Checks
git commit -s
) in this PR.scripts/format.sh
to lint the changes in this PR.