-
Notifications
You must be signed in to change notification settings - Fork 24
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
Quadrature Fourier features #56
Merged
Merged
Conversation
This file contains 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
vdutor
reviewed
Oct 20, 2021
Co-authored-by: Vincent Dutordoir <[email protected]>
vdutor
approved these changes
Oct 22, 2021
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Left some minor comments.
Co-authored-by: Vincent Dutordoir <[email protected]>
…rature.py Co-authored-by: Vincent Dutordoir <[email protected]>
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.
Significant refactoring and introduction of class hierarchies and abstract bases classes to better support the implementation of quadrature Fourier features (QFFs) and the different variants of random Fourier features (RFFs) with minimal code repetition.
Noteworthy changes
output_dim
, the user now supplies the number of samples drawn from the kernel's spectral density in the case of RFFs or the number of quadrature points to utilize in the case of QFFs. The effective output dimensions for all the supported types of basis functions are:RandomFourierFeaturesCosine
:output_dim = n_components
RandomFourierFeatures
:output_dim = 2 * n_components
QuadratureFourierFeatures
:output_dim = 2 * n_components**input_dim
RandomFourierFeaturesCosine
for now to keep the necessary set of changes minimal (to useRandomFourierFeatures
in these notebooks, we are required to update various parts of the notebook to reflect the fact that theoutput_dim
is now different.)