Skip to content
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

Model Input Standardization Using TrainingData #477

Closed
wants to merge 1 commit into from

Conversation

EricZLou
Copy link
Contributor

@EricZLou EricZLou commented Jul 7, 2020

Summary: Different GP models take different kwargs as inputs into their constructors. To standardize the inputs, we create a TrainingData dataclass in conjunction with a classmethod construct_inputs().

Differential Revision: D22395030

@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D22395030

@EricZLou EricZLou force-pushed the export-D22395030 branch from 2e8a39f to e4d923a Compare July 7, 2020 21:15
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D22395030

@EricZLou EricZLou force-pushed the export-D22395030 branch from e4d923a to 3fba385 Compare July 8, 2020 03:35
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D22395030

@EricZLou EricZLou changed the title Model Input Standardization Using TrainingData in BoTorch Codebase Model Input Standardization Using TrainingData Jul 8, 2020
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D22395030

EricZLou added a commit to EricZLou/botorch that referenced this pull request Jul 8, 2020
Summary:
Pull Request resolved: pytorch#477

Different GP models take different kwargs as inputs into their constructors. To standardize the inputs, we create a `TrainingData` dataclass in conjunction with a classmethod `construct_inputs()`.

Reviewed By: Balandat

Differential Revision: D22395030

fbshipit-source-id: e58bead479d0b649552145c947c86caa33e341a2
@EricZLou EricZLou force-pushed the export-D22395030 branch from 3fba385 to 413e219 Compare July 8, 2020 04:19
EricZLou added a commit to EricZLou/botorch that referenced this pull request Jul 8, 2020
Summary:
Pull Request resolved: pytorch#477

Different GP models take different kwargs as inputs into their constructors. To standardize the inputs, we create a `TrainingData` dataclass in conjunction with a classmethod `construct_inputs()`.

Reviewed By: Balandat

Differential Revision: D22395030

fbshipit-source-id: e4e7b3c4e132cf73527a24ff45318c5eb54512f2
@EricZLou EricZLou force-pushed the export-D22395030 branch from 413e219 to 0225ffc Compare July 8, 2020 04:30
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D22395030

EricZLou added a commit to EricZLou/botorch that referenced this pull request Jul 8, 2020
Summary:
Pull Request resolved: pytorch#477

Different GP models take different kwargs as inputs into their constructors. To standardize the inputs, we create a `TrainingData` dataclass in conjunction with a classmethod `construct_inputs()`.

Reviewed By: Balandat

Differential Revision: D22395030

fbshipit-source-id: be89da3e2878993d8ba8972e48712762e9c3ccc8
@EricZLou EricZLou force-pushed the export-D22395030 branch from 0225ffc to dc111ba Compare July 8, 2020 04:48
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D22395030

EricZLou added a commit to EricZLou/botorch that referenced this pull request Jul 8, 2020
Summary:
Pull Request resolved: pytorch#477

Different GP models take different kwargs as inputs into their constructors. To standardize the inputs, we create a `TrainingData` dataclass in conjunction with a classmethod `construct_inputs()`.

Reviewed By: Balandat

Differential Revision: D22395030

fbshipit-source-id: eae9a65cb1e0142c2d8e19757b0b813f2cbd7b49
@EricZLou EricZLou force-pushed the export-D22395030 branch from dc111ba to cc75142 Compare July 8, 2020 14:04
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D22395030

EricZLou added a commit to EricZLou/botorch that referenced this pull request Jul 8, 2020
Summary:
Pull Request resolved: pytorch#477

Different GP models take different kwargs as inputs into their constructors. To standardize the inputs, we create a `TrainingData` dataclass in conjunction with a classmethod `construct_inputs()`.

Reviewed By: Balandat

Differential Revision: D22395030

fbshipit-source-id: c94b342d763e24c44a71fe2beb0483b2aead2d7b
@EricZLou EricZLou force-pushed the export-D22395030 branch from cc75142 to a67c4fe Compare July 8, 2020 15:04
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D22395030

Summary:
Pull Request resolved: pytorch#477

Different GP models take different kwargs as inputs into their constructors. To standardize the inputs, we create a `TrainingData` dataclass in conjunction with a classmethod `construct_inputs()`.

Reviewed By: Balandat

Differential Revision: D22395030

fbshipit-source-id: 38e6283a2b86fdfc69060eaa579d5b1d152c7475
@EricZLou EricZLou force-pushed the export-D22395030 branch from a67c4fe to db7d6b7 Compare July 8, 2020 15:21
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D22395030

@codecov
Copy link

codecov bot commented Jul 8, 2020

Codecov Report

Merging #477 into master will not change coverage.
The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff            @@
##            master      #477   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           83        84    +1     
  Lines         5205      5225   +20     
=========================================
+ Hits          5205      5225   +20     
Impacted Files Coverage Δ
botorch/models/gp_regression.py 100.00% <100.00%> (ø)
botorch/models/model.py 100.00% <100.00%> (ø)
botorch/utils/containers.py 100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a153151...db7d6b7. Read the comment docs.

@facebook-github-bot
Copy link
Contributor

This pull request has been merged in 10a71ae.

facebook-github-bot pushed a commit that referenced this pull request Sep 11, 2020
Summary:
#### New Features
* Constrained Multi-Objective tutorial (#493)
* Multi-fidelity Knowledge Gradient tutorial (#509)
* Support for batch qMC sampling (#510)
* New `evaluate` method for `qKnowledgeGradient` (#515)

#### Compatibility
* Require PyTorch >=1.6 (#535)
* Require GPyTorch >=1.2 (#535)
* Remove deprecated `botorch.gen module` (#532)

#### Bug fixes
* Fix bad backward-indexing of task_feature in `MultiTaskGP` (#485)
* Fix bounds in constrained Branin-Currin test function (#491)
* Fix max_hv for C2DTLZ2 and make Hypervolume always return a float (#494)
* Fix bug in `draw_sobol_samples` that did not use the proper effective dimension (#505)
* Fix constraints for `q>1` in `qExpectedHypervolumeImprovement` (c80c4fd)
* Only use feasible observations in partitioning for `qExpectedHypervolumeImprovement`
  in `get_acquisition_function` (#523)
* Improved GPU compatibility for `PairwiseGP` (#537)

#### Performance Improvements
* Reduce memory footprint in `qExpectedHypervolumeImprovement` (#522)
* Add `(q)ExpectedHypervolumeImprovement` to nonnegative functions
  [for better initialization] (#496)

#### Other changes
* Support batched `best_f` in `qExpectedImprovement` (#487)
* Allow to return full tree of solutions in `OneShotAcquisitionFunction` (#488)
* Added `construct_inputs` class method to models to programmatically construct the
  inputs to the constructor from a standardized `TrainingData` representation
  (#477, #482, 3621198)
* Acqusiition function constructors now accept catch-all `**kwargs` options
  (#478, e5b6935)
* Use `psd_safe_cholesky` in `qMaxValueEntropy` for better numerical stabilty (#518)
* Added `WeightedMCMultiOutputObjective` (81d91fd)
* Add ability to specify `outcomes` to all multi-output objectives (#524)
* Return optimization output in `info_dict` for `fit_gpytorch_scipy` (#534)
* Use `setuptools_scm` for versioning (#539)

Pull Request resolved: #542

Reviewed By: sdaulton

Differential Revision: D23645619

Pulled By: Balandat

fbshipit-source-id: 0384f266cbd517aacd5778a6e2680336869bb31c
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants