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

Option to skip expensive final validation #1372

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open

Conversation

rasbt
Copy link
Collaborator

@rasbt rasbt commented Apr 29, 2024

For quick dev and testing, the new final validation step can be very expensive, especially with larger checkpoints. This adds an option to disable it. (This is analogous to the initial_validation argument; since some people don't need the initial validation loss some times, they may also not need the final validation loss some times).

@rasbt
Copy link
Collaborator Author

rasbt commented May 3, 2024

This wouldn't change any default behaviors, and it would be analogous to the analogous to the initial_validation argument). Does it look ok to you @awaelchli and @carmocca or do you have any objections?

Copy link
Member

@awaelchli awaelchli left a comment

Choose a reason for hiding this comment

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

the new final validation step can be very expensive

This hasn't been my experience. This should only be a few seconds for Alpaca2k for example. I added it only to the finetuning scripts because it is quick and only happens at the end of training.

My personal opinion is, if I knew we would introduce a new flag for this, I think I would not have submitted the PR to add the end-validation. So if you'd like to revert that, that would be fine with me.

litgpt/pretrain.py Outdated Show resolved Hide resolved
@rasbt
Copy link
Collaborator Author

rasbt commented May 7, 2024

Thanks for the feedback. In my opinion, it's worth adding it because the initial evaluation was considered too expensive, so it's optional. For the same reason, the final validation can also be sometimes too expensive when wanting to do a quick run for testing purposes (e.g. figuring out what the "Memory used" value is or if the files are saved correctly etc.). So, it's nice to have some easy control over that and be able to skip the final validation in certain cases.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants