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

feat: add option to schedule reclassification of all points #177

Merged
merged 2 commits into from Jun 15, 2021

Conversation

kjappelbaum
Copy link
Owner

@kjappelbaum kjappelbaum commented Jun 14, 2021

This PR allows to fix a quite annoying behavior of the algorithm in case the initial GPR predictions are bad. This might lead to points being discarded that are actually dominating points that we later classify as Pareto optimal.
The current implementation can do nothing for it as we just take the GPR predictions for granted and might discard points based on mediocre GPR predictions in the the first iterations.

Similar to the hyperparameter schedule option we now have a _should_reclassify function that users can customize. By default, it will reclassify the full design space if there is only one point left. But users might choose any other schedule.

@byooooo I have some compute i need to burn this month, let's make a plan for benchmarking this.
However, I think, we can merge without the benchmark.

  • Breaking change (fix or feature that would cause existing functionality to change)

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Documentation
  • Developer tools
  • Refactoring
  • Test

Actions (for code changes)

  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

@kjappelbaum kjappelbaum linked an issue Jun 14, 2021 that may be closed by this pull request
@kjappelbaum kjappelbaum added the enhancement New feature or request label Jun 14, 2021
@codecov-commenter
Copy link

codecov-commenter commented Jun 14, 2021

Codecov Report

Merging #177 (42dfd80) into master (0ae381c) will decrease coverage by 0.22%.
The diff coverage is 75.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #177      +/-   ##
==========================================
- Coverage   96.07%   95.84%   -0.23%     
==========================================
  Files          15       15              
  Lines        1120     1131      +11     
==========================================
+ Hits         1076     1084       +8     
- Misses         44       47       +3     
Flag Coverage Δ
unittests 95.84% <75.00%> (-0.23%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
pyepal/pal/pal_base.py 94.84% <75.00%> (-0.87%) ⬇️

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 0ae381c...42dfd80. Read the comment docs.

@kjappelbaum kjappelbaum requested a review from byooooo June 14, 2021 07:47
@kjappelbaum
Copy link
Owner Author

not really sure why coverage dropped with adding a test ...

Copy link
Collaborator

@byooooo byooooo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm!

@byooooo byooooo merged commit 01d97a4 into master Jun 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

allow users to specify schedule for re-classification of all points
3 participants