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

Training PET on data which is too large to fit in RAM #39

Closed
ghost opened this issue Jun 13, 2021 · 8 comments
Closed

Training PET on data which is too large to fit in RAM #39

ghost opened this issue Jun 13, 2021 · 8 comments

Comments

@ghost
Copy link

ghost commented Jun 13, 2021

I am training a pet model on 500gb of text. I have properly processed the data, but I can't load all my data into a variable since I don't have nearly enough RAM to do that.

@chris-aeviator
Copy link

Random side note: I believe other projects have been solving this with the deepspeed/ deeperspeed libraries - might need loads of rework codewise before you can use it

@ghost
Copy link
Author

ghost commented Jun 14, 2021

Oh. That's sad, because I can't any code rework on my own :(

Random side note: I believe other projects have been solving this with the deepspeed/ deeperspeed libraries - might need loads of rework codewise before you can use it

So is there no simple way to do it? Could you help me?

@ghost
Copy link
Author

ghost commented Jun 14, 2021

In what ways did they use ms deepspeed for this?

@timoschick
Copy link
Owner

Hi @BleepLogger, the focus of PET is few-shot learning from 0-1000 examples. I'm not sure if this is really the right library for you if you've got 500GB of data to train on. We currently don't plan any modifications to PET that would support such large training datasets, so if you really want to use PET, you'll probably have to make them yourself. However, if you just want to use the 500GB of data for pretraining, a better approach would be to first use another library for pretraining and then use the resulting model with PET

@ghost
Copy link
Author

ghost commented Jun 15, 2021

Okay, I'm willing to make those modifications on my own. How do I make them?

@ghost
Copy link
Author

ghost commented Jun 15, 2021

Also, I have data in 80 parts.
What if instead of fine-tuning PET on all of my data at once, I first fine-tune it on part 1, then fine-tune part 1's resulting model on part 2, and so on. Could this work?

@ghost
Copy link
Author

ghost commented Jun 15, 2021

@timoschick

@timoschick
Copy link
Owner

Okay, I'm willing to make those modifications on my own. How do I make them?

Sorry if I haven't been clear. What I was trying to say is that I don't know what the best way to train on such large datasets would be, so you don't just have to implement any modifications yourself, you'll also have to figure out which modifications are required on your own.

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

No branches or pull requests

2 participants