Comments (3)
We are not sure what resume/restart refers to in the context of handleing large amounts of data. How would you expect the existing trained model to change? It is theoretically possible, though not implemented, to intentionally extend vocab or update the unigram probabilities with new data, but the final model file should be different from the model trained with the original large data.
from sentencepiece.
I mean both the model and vocab should change when we iteratively train on new data. Right now there are two challenges with this model
- Unable to update model/vocab when we get new data
- Does not support large corpus as the internal array overflow the memory.
We are trying to solve 2) for now by using LevelDB instead of the vector. If it's successful I will let you know. It will be painfully slow but can support virtually unlimited corpus size.
- is good to have. Else the alternative is to keep collecting the data and then retrain from zero all over again on the combined data.
from sentencepiece.
Because subword is a method where the vocabulary size is determined in advance, a theoretical definition of incremental training is not given at this moment.
Since the vocab size is small in subwording, sampling works in most cases. e.g., sampling only top 32k subwrods will not change drastically as long as the data is correctly sampled.
from sentencepiece.
Related Issues (20)
- No make file found while build and install the Python wrapper HOT 2
- Tokenize at the word level without spacers nor joiners HOT 2
- Build sentencepiece with mingw HOT 1
- Tokenization for phonetic languages HOT 3
- Runtime error on iOS HOT 11
- Convert SentencePiece .vocab format to OpenNMT-py .onmt_vocab format HOT 1
- I want to obtain a model file using my vocab! HOT 1
- How long does it take to train 31.2GB text data? HOT 1
- How to deal with id HOT 3
- Wrong calculation of max_score in unigram_model.cc
- install command line tools without sudo HOT 1
- Error HOT 1
- Windows pip Dependancy Installation Error HOT 2
- Any api for setting user defined symbols? HOT 1
- Inconsistent result between py and cpp HOT 1
- Error when running this command: pip install 'transformers[tf-cpu]' on mac HOT 1
- Support for Windows Python 3.12.2
- Is GGUF supported? HOT 1
- Treat Hawaiian Glottal stop as consonant, not punctuation HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sentencepiece.