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

Fix label cost/probability ordering to be consistent with existing cb reduction #1786

Conversation

jackgerrits
Copy link
Member

The ccb and cb format had the cost and probability opposite ways, this PR rectifies this irregularity

@JohnLangford JohnLangford merged commit 7d5b8ff into VowpalWabbit:conditional_contextual_bandit Mar 14, 2019
@jackgerrits jackgerrits deleted the jagerrit/ccb_reduction_work branch April 5, 2019 16:22
JohnLangford pushed a commit that referenced this pull request Jul 9, 2019
* Add CCB label parsing, label and prediction types (#1754)

* Add initial types for ccb

* Add unit test file

* WIP ccb parser

* finish parsing component add tests

* implement ccb label caching

* Fix test

* Change parsing to agreed format

* Add missing header

* trigger ci

* [CCB] Enable interactions to be overridden by an example (#1770)

* Enable per example interaction override

* rename to override_interactions

* [CCB] Add ccb_explore_adf reduction (#1761)

* Add new empty reduction for CCB

* implement the ccb reduction

* parse and use the explicit included actions

* fix case where no action is available for a decision

* comments

* use unordered_set to manage excludelist and includelist

* fix build

* fix from comments

* cosmetics

* add a finish function

* fix indices with 0-based index

* handle decisions w/o actions

* cosmetics

* cosmetics: auto-format document

* comments

* add TODO

* Fix ordering to be consistent with existing cb reduction (#1786)

* [CCB] Dsjson and json parsing for CCB (#1767)

* Add incomplete ccb json parser, start tests

* WIP

* WIP

* fix ccb, finish tests

* Address comments

* add extra check

* fix tests

* Sample from PDF and swap chosen as part of CCB (#1797)

* Sample as part of ccb

* remove test code

* Move sampling to it's own reduction. allow a custom seed in tag

* Fix pred file in test

* ccb uses cb_sample

* Fix compile break

* Extend CCB parser for Dsjson/Json to support implicitly converting CB examples to CCB examples (#1805)

* Extend ccb parser mode to implicitly convert cb logs

* normal json cb_as_ccb

* Fix merge conflict

* Implement finish example and output for CCB (#1795)

* Add output for CCB

* Generify get_unbiased_cost, add const

* Move constant to top of namespace

* Shared example decision feature injection and auto crossing (#1796)

* First cut at automatic interactions and merging decision example with shared example

* Move to use label dict for feature mutation

* Remove code not for this PR

* Reserve vector memory and add named default_namespace

* remove cast

* Fix bad merge

* Fix learning and stashed pred (#1836)

* trigger ci

* trigger ci

* "remove cb_sample_seed, only can override with tag"

* - comment out explicit slot actions
- use variables in sizeof
- change from unorderd_map and unordered_set to using vector

* fix spelling error

* Use variable names instead of types for sizeof

* stop using read_object helper

* Rename get_unbiased_cost to get_cost_estimate

* Fix test number in runtests

* C# test needs an extra empty line to recognize the data file as multiline

* change seed handling to match explore

* move to asserts

* remove unused variable

* Update overridable interactions implementation (#1866)

* Use overridable interactions per example

* Change line endings

* Implement history rollup and higher order interactions for CCB (#1869)

* Implement history rollup and higher order interaction

* Change to todo comment

* Fix naming based on spec discussion (#1879)

* Resolve leaking of label and prediction in CCB (#1882)

* Clean up and restore label correctly

* Fix clear issue with decision_scores

* CCB Learning fixes (#1890)

* Add ccb sim

* Update namespaces

* Must finish example to return to pool

* add cmake

* rename decision to slot

* Update to user, slot, action display

* pre-rerepresentation

* move to different representation of probs

* Implement new display

* Fix sampling and id association

* Explore seed message, skip clearing history, insert interactions to all examples, add constant into history namespace

* remove sim from learning fix branch

* Move function definition

* do not sample when learning, but use label

* Sample reduction should swap the labelled action for learning

* Fix double def

* update sameple test for learning based sampling

* Fix parser constructors in test

* remove history related changes

* split ccb into two files, remove history

* Automatic quadratic features

* Add ccb test

* Fix runtests, includes and move to warning

* fix runtests file

* Fix warning

* Add new line so windows tests work

* move cb_sample beneath shared_merger

* use seed for sample for consistent behavior

*  Make sure interactions are set in locations where examples are allocated (#1942)

* Make sure interactions are set in locations where examples are allocated

* remove added file

* Fix ptr

* Reuse memory in ccb rather than alloc/dealloc (#1938)

* reuse memory

* Change v_array pool implementation to work by value

* Move to std::vector

* Inject slot id and revise automatic interactions to slot id with all existing namespaces and interactions (#1945)

* implement revised ccb interactions and id

* remove file

* Address comments

* Overwrite test results

* Add audit

* fix feature injection

* Fix namespace duplication and ignore bugs

* Fix interaction object for ccb parser (#1947)

* Address comments

* Fix scope of clear

* Fix scope of clear

* Update tests

* Address PR comments

* Remove json parser

* Fix usage of json_parser

* Fix bad merge of tests

* revert file change

* Remove if conditional

* rename dfstate to slotsstate

* Improve error handling, and improve perf of interactions generation

* Fix brackets
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

Successfully merging this pull request may close these issues.

2 participants