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 of human-like models #971

Open
BigBoxxx opened this issue Aug 8, 2024 · 8 comments
Open

Training of human-like models #971

BigBoxxx opened this issue Aug 8, 2024 · 8 comments

Comments

@BigBoxxx
Copy link

BigBoxxx commented Aug 8, 2024

I believe it's possible to train models with different playing styles by using game records from human players with various styles. Can this human-model training also be implemented using train.py?

@lightvector
Copy link
Owner

Maybe. If you could find a way to reliably categorize the styles of different players across tens of thousands of games, then you could add some parameters to the human sgf metadata encoder to label the style and train it. But to start off, you would have to find a way to categorize styles for the games without having a model trained to do it, because you wouldn't have a model yet.

@mooy8899
Copy link

mooy8899 commented Aug 9, 2024

define "human-like"

@BigBoxxx
Copy link
Author

BigBoxxx commented Aug 9, 2024

@lightvector Thank you for your answer. We are trying to move in this direction.

Another question is, can we use your b18c384nbt-humanv0.bin.gz model and fine-tune it with some specific human game data? This would be to adapt it to specific player styles or differences in rating definitions across various regions.

@jopdorp
Copy link

jopdorp commented Aug 13, 2024

It would also be great to make smaller models, for example b10 human style

@BigBoxxx
Copy link
Author

@jopdorp Good idea~ so which part of the documentation can I refer to in order to implement the training process?🙏

@jopdorp
Copy link

jopdorp commented Aug 23, 2024

@BigBoxxx I think thre are two general approaches here, that is to train a new supervised model from scratch, similar to how @lightvector trained the 18b humansl model, or :

You could take the 18b human sl model, input randomly generated data into it, and the 10b model to be trained, then update the parameters of the 10b model to get closer to the same outputs as the 18b model, this way you would not need any data, and you can get closer to the capabilities of the 18b model.

As a side note, this second approach could also be applied to make more powerful 10b and 20b normal models (non humansl)

@BigBoxxx
Copy link
Author

@jopdorp Thanks jopdorp, what documents can I refer to for training a new supervised model from scratch, similar to the 18b humansl model?

@jopdorp
Copy link

jopdorp commented Aug 28, 2024

@BigBoxxx I think there is just the source code in the python directory

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

4 participants