HazyResearch / flyingsquid

More interactive weak supervision with FlyingSquid
Apache License 2.0
313 stars 21 forks source link

Support for abstaining #2

Closed coulls closed 4 years ago

coulls commented 4 years ago

Hello!

I stumbled upon this new weak labeling framework while looking for updates to the Snorkel code to support conditional dependencies. Very interesting work, but after quickly glancing through the code it is unclear if you fully support use of abstain here. As I understand it, the labeling semantics that are supported at the moment are 1 for positive, -1 for negative, and 0 for abstain. However, the docstring for several functions states that abstains are not supported. At the same time, there are other functions that clearly do consider abstains.

Could you clarify (1) if the code supports abstains in its current form, and (2) if the semantics are indeed as described above (1, -1, and 0)?

Thanks!

coulls commented 4 years ago

Dug through the code some more and did some more testing on my own. The code does indeed support abstains with the semantics described above. I was in a situation with extreme sparsity, and the model was not behaving well under those conditions.

DanFu09 commented 4 years ago

Thanks for filing an issue - we've updated the docstrings. To confirm, your mapping is correct, +1 for positive, -1 for negative, and 0 for abstain (and the whole codebase supports abstains).

Can you give us more details on your extreme sparsity use case? We're very interested in the use case, and we've been thinking about how to recover signal well in those situations. We've been trying some things out on the side that (at least anecdotally) might show some promise.