Add JointTraining base strategy
See original GitHub issueWe should allow the cumulative strategy to skip the training of the passed batch but accumulating the data for futher use.
Something like this:
strat = Cumulative()
strat.train(step, skip_training=True)
This would allow to compute the “offline” accuracy directly: i.e. the acc of the model trained on the entire training set:
strat = Cumulative()
for i, step in enumerate(train_stream):
if i == len(train_stream) -1:
strat.train(step)
else:
strat.train(step, skip_training=True)
or we could go this way:
strat = Cumulative()
strat.train(train_stream, train_only_last=True)
What do you think?
Issue Analytics
- State:
- Created 3 years ago
- Comments:6 (4 by maintainers)
Top Results From Across the Web
cjcsi3500_01j.pdf - Joint Staff
The goal of joint training is readiness of the Joint Force with a shared understanding of the strategies, decision-making, method of operations, ...
Read more >Joint Qualification System (JQS) - milConnect - FAQ
As an Army, Navy, Marine Corps, or Air Force officer, you can use the Joint Qualification System (JQS) page in milConnect to nominate...
Read more >Military Training: Management Actions Needed to Enhance ...
To increase the benefits of joint training programs for the reserve components, we recommend that the Secretary of Defense direct the Joint Forces...
Read more >How Joint Are We and Can We Be Better? - DTIC
Joint training within the command is fairly routine since forces from all the services fall under one commander. Air support and operations for...
Read more >Military Training: Actions Needed to Enhance DOD's Program ...
The overall intent of DOD's Training Transformation Program is to assure commanders that forces deployed to their theater are not experiencing joint operations ......
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Do we need to call train for this? If I call a train method I expect training, not just data collection. I would create a separate class JointTraining with a method
train(stream)
that trains jointly on the entire stream, instead of sequentially like the BaseStrategy is doing.Probably JointTraining does not needs most of the stuff developed for BaseStrategy (e.g. Plugins) except for the EvaluationProtocol.
JointTraining
has been added as a strategy independent but similar toBaseStrategy
in https://github.com/vlomonaco/avalanche/commit/c2cbef1be4f62da5781d52a3648880505e226773. Users can subclasses this for more complex join training behaviours. It supports both training on streams with a single task label or multiple of them. You can find a usage example inexamples/joint_training.py
.I’m closing this issue but you can create new issues if you find something should be changed/improved.