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

VW calls predict twice during learn for cb_explore_adf #4274

Open
olgavrou opened this issue Nov 7, 2022 · 2 comments
Open

VW calls predict twice during learn for cb_explore_adf #4274

olgavrou opened this issue Nov 7, 2022 · 2 comments
Labels
Bug Bug in learning semantics, critical by default Unintuitive Behavior Not a bug precisely, but a behavior that is surprising.

Comments

@olgavrou
Copy link
Collaborator

olgavrou commented Nov 7, 2022

Describe the bug

If you call vw with --cb_explore_adf and an example that does not have a label then predict will be called twice, this seems sub-optimal and un-intuitive for reductions above cb_explore_adf and can cause bugs

e.g. when called with LAS, learn paths would not get full predictions if there is a label missing and -p <file> is specified (see #4273)

If a label is missing during learn what should the reduction contract be? Should learn be called anyway? Should prediction be called? Should we warn? Should we throw?

How to reproduce

input modified from cb_test.ldf file:

shared | s_1 s_2
 | a_1 b_1 c_1
 | a_2 b_2 c_2
 | a_3 b_3 c_3

run with --cb_explore_adf and printing/breakpoint to see that predict gets called twice from cb_explore_adf_common.h

code line

Version

9.5.0

OS

Linux

Language

CLI

Additional context

No response

@olgavrou olgavrou added Bug Bug in learning semantics, critical by default Unintuitive Behavior Not a bug precisely, but a behavior that is surprising. labels Nov 7, 2022
@olgavrou
Copy link
Collaborator Author

change to no-op if learn is called without predict and warn if learn is called without a label but at debug log level

@Gauravmauryaios
Copy link

can you assign this project .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Bug in learning semantics, critical by default Unintuitive Behavior Not a bug precisely, but a behavior that is surprising.
Projects
None yet
Development

No branches or pull requests

2 participants