Comments (5)
Hi Andrew,
If you are OK with this, I would like to help a little bit by fixing this issue. Do I have your permission?
from capreolus.
Hi Ali, yes, that would be great! I'd be happy to discuss potential fixes as well, if it's helpful. I can think of a couple possible approaches:
- Raise an exception when
validatefreq
<niters
to force the user to change their config - When
validatefreq
<niters
, reducevalidatefreq
toniters
and log a message. The downside of this is that users might get strange behavior if they later increaseniters
(e.g., starting withniters=1; validatefreq=4
and then later settingniters=10
), because they could miss the message and expect validation to be happening much more often that it does. - Always run validation on the last epoch regardless of
validatefreq
.
from capreolus.
Regardless of the above, it would be nice to also log a message describing how often validation is going to be performed. That would make the behavior more clear and hopefully reduce confusion.
from capreolus.
As a user, I prefer option 1 since that is very explicit and there is no implicit actions behind it. I believe the user should be informed that there is problem with the config he/she provided. I would add a sanity check for validatefreq
< niters
if you are agreed.
Also, describing the validation schedule is a great idea. Would something like "Validation is scheduled on iterations: [x, y, ...]" be good? I think its logger should be just before the main loop in train:
capreolus/capreolus/trainer/pytorch.py
Line 229 in 7b7dc1d
from capreolus.
Yes, both of these changes sound good to me. Thanks for your help!
from capreolus.
Related Issues (20)
- MSMARCO python index error when reranking HOT 5
- What are lr scheduler variables? HOT 1
- monoBERT resource allocation HOT 2
- MonoBERT MSMARCO error HOT 1
- How much GPU/time/other configs do I need for running the monoBERT MS Marco experiment? HOT 6
- tfrecord even after training? HOT 6
- About issue #168 HOT 3
- Generate Ranked List of Train Data HOT 1
- Increase Number of Epochs HOT 1
- Smaller BERT Models HOT 1
- Spec for Running Tensorflow Version on Multiple GPUs HOT 1
- Spec of System for Running on GPU Quadro 8000 HOT 1
- Cannot set up capreolus on Compute Canada HOT 7
- capreolus.eval is not a module HOT 2
- How to use capreolus for Robust evaluation? HOT 1
- Which one of "ndcg_cut_20" and "ndcg_cun_20 [interp]" is the result in reproduces document? HOT 1
- MRR@10=0.35 not achieved on fine-tuning monoBERT task HOT 13
- Setup Issues with Capreolus on Canada Compute
- Unable to install annoy which is a dependency of capreolus HOT 1
- Version Conflict between python/scipy-stack in Capreolus Installation on Compute Canada HOT 1
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 capreolus.