-
Notifications
You must be signed in to change notification settings - Fork 334
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
Update feature_subset_selection.ipynb #404
Conversation
Let the minimization of the objective function be the default behavior of the library. Then, If the objective is maximizing the model performance and minimize the number of features, 1-Nf/Nt is incorrect on the right term. Also, the function is wrong in the paper.
Check out this pull request on Review Jupyter notebook visual diffs & provide feedback on notebooks. Powered by ReviewNB |
Hi @diegoroman17 ! Thanks for this and welcome to Pyswarms! Let me review this over the weekend :) Looping in @stevenbw too |
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.
Hi @diegoroman17 ! I'm wondering what prompted this change?
I'm currently basing it on this paper and I think it does check-out.
If you're suggesting a better objective function then please feel free to comment!
Hi, @ljvmiranda921
The previous function is maximized with and . However, means a low performance of the model, but this is not according to the main goal. So, in my perspective the paper has an errata. In other hand, pyswarms minimize the objective function. It is performed with and . Although the main goal is correct (maximize the model performance), the size of the feature subset is also maximized, and this is again incorrect. Therefore, in my understanding the correct objective function for feature selecture using pyswarms should be: |
@diegoroman17 Gotcha! Would you mind updating the notebook as well, i.e., the implemented objective function, into the correct one? And rerun all cells so that the results would be consistent to the stated objective function |
@ljvmiranda921 , Yes, the entire notebook should be rerun with the modified objective function |
@diegoroman17 can you please do the rerun for us in order to complete this PR? Thanks! |
- Objective function corrected for a minimization problem. - Rerun of the entire notebook.
@ljvmiranda921 sure! I submitted a second commit with the entire notebook updated in this PR. Also, I attached the notebook below. |
Thanks for this PR @diegoroman17 ! Congrats on your first contribution! |
I've put up a pull request to add @diegoroman17! 🎉 |
Wrong objective function
Description
Let the minimization of the objective function be the default behavior of the library. Then, If the objective is maximizing the model performance and minimize the number of features, 1-Nf/Nt is incorrect on the right term. Also, the function is wrong in the paper.
Related Issue
Motivation and Context
How Has This Been Tested?
Screenshots (if appropriate):
Types of changes
Checklist: