-
Notifications
You must be signed in to change notification settings - Fork 311
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor BestModelSelector to operate on ModelSpecs #2557
Conversation
This pull request was exported from Phabricator. Differential Revision: D59249657 |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2557 +/- ##
=======================================
Coverage 95.21% 95.22%
=======================================
Files 487 489 +2
Lines 47582 47604 +22
=======================================
+ Hits 45307 45330 +23
+ Misses 2275 2274 -1 ☔ View full report in Codecov by Sentry. |
Summary: Pull Request resolved: facebook#2557 `BestModelSelector` was previously limited to selecting the best out of a given dictionary of CV diagnostics that were computed in `ModelSpec.cross_validate`. This setup limited extensibility, since any change would require updating `ModelSpec` code to the diagnostics that are computed. This diff refactors `BestModelSelector` to directly operate on the `ModelSpecs`. This new modular design will let each `BestModelSelector` class compute the necessary diagnostics internally, without locking us up to any pre-specified list. Other minor changes: - Removed `CallableEnum` and subclasses and replaced these with a single `ReductionCriterion` enum. - Split off `BestModelSelector` into a separate file to avoid circular imports. Differential Revision: D59249657
This pull request was exported from Phabricator. Differential Revision: D59249657 |
489210a
to
8de9b93
Compare
Summary: Pull Request resolved: facebook#2557 `BestModelSelector` was previously limited to selecting the best out of a given dictionary of CV diagnostics that were computed in `ModelSpec.cross_validate`. This setup limited extensibility, since any change would require updating `ModelSpec` code to the diagnostics that are computed. This diff refactors `BestModelSelector` to directly operate on the `ModelSpecs`. This new modular design will let each `BestModelSelector` class compute the necessary diagnostics internally, without locking us up to any pre-specified list. Other minor changes: - Removed `CallableEnum` and subclasses and replaced these with a single `ReductionCriterion` enum. - Split off `BestModelSelector` into a separate file to avoid circular imports. Differential Revision: D59249657
Summary: Pull Request resolved: facebook#2557 `BestModelSelector` was previously limited to selecting the best out of a given dictionary of CV diagnostics that were computed in `ModelSpec.cross_validate`. This setup limited extensibility, since any change would require updating `ModelSpec` code to the diagnostics that are computed. This diff refactors `BestModelSelector` to directly operate on the `ModelSpecs`. This new modular design will let each `BestModelSelector` class compute the necessary diagnostics internally, without locking us up to any pre-specified list. Other minor changes: - Removed `CallableEnum` and subclasses and replaced these with a single `ReductionCriterion` enum. - Split off `BestModelSelector` into a separate file to avoid circular imports. Differential Revision: D59249657
Summary: Pull Request resolved: facebook#2557 `BestModelSelector` was previously limited to selecting the best out of a given dictionary of CV diagnostics that were computed in `ModelSpec.cross_validate`. This setup limited extensibility, since any change would require updating `ModelSpec` code to the diagnostics that are computed. This diff refactors `BestModelSelector` to directly operate on the `ModelSpecs`. This new modular design will let each `BestModelSelector` class compute the necessary diagnostics internally, without locking us up to any pre-specified list. Other minor changes: - Removed `CallableEnum` and subclasses and replaced these with a single `ReductionCriterion` enum. - Split off `BestModelSelector` into a separate file to avoid circular imports. Differential Revision: D59249657
Summary: Pull Request resolved: facebook#2557 `BestModelSelector` was previously limited to selecting the best out of a given dictionary of CV diagnostics that were computed in `ModelSpec.cross_validate`. This setup limited extensibility, since any change would require updating `ModelSpec` code to the diagnostics that are computed. This diff refactors `BestModelSelector` to directly operate on the `ModelSpecs`. This new modular design will let each `BestModelSelector` class compute the necessary diagnostics internally, without locking us up to any pre-specified list. Other minor changes: - Removed `CallableEnum` and subclasses and replaced these with a single `ReductionCriterion` enum. - Split off `BestModelSelector` into a separate file to avoid circular imports. Differential Revision: D59249657
Summary: Pull Request resolved: facebook#2557 `BestModelSelector` was previously limited to selecting the best out of a given dictionary of CV diagnostics that were computed in `ModelSpec.cross_validate`. This setup limited extensibility, since any change would require updating `ModelSpec` code to the diagnostics that are computed. This diff refactors `BestModelSelector` to directly operate on the `ModelSpecs`. This new modular design will let each `BestModelSelector` class compute the necessary diagnostics internally, without locking us up to any pre-specified list. Other minor changes: - Removed `CallableEnum` and subclasses and replaced these with a single `ReductionCriterion` enum. - Split off `BestModelSelector` into a separate file to avoid circular imports. Differential Revision: D59249657
This pull request was exported from Phabricator. Differential Revision: D59249657 |
8de9b93
to
91640d8
Compare
This pull request has been merged in c03d98a. |
Summary:
BestModelSelector
was previously limited to selecting the best out of a given dictionary of CV diagnostics that were computed inModelSpec.cross_validate
. This setup limited extensibility, since any change would require updatingModelSpec
code to the diagnostics that are computed.This diff refactors
BestModelSelector
to directly operate on theModelSpecs
. This new modular design will let eachBestModelSelector
class compute the necessary diagnostics internally, without locking us up to any pre-specified list.Other minor changes:
CallableEnum
and subclasses. These didn't offer a clear benefit over just passing in the callables, and they weren't being utilized in the code base.BestModelSelector
into a separate file to avoid circular imports.Differential Revision: D59249657