claritylab/zero-shot-implicit-binary-bert
437
Zero-shot Implicit Binary BERT
This is a BERT model. It was introduced in the Findings of ACL'23 Paper Label Agnostic Pre-training for Zero-shot Text Classification by *Christopher Clarke, Yuzhao Heng, Yiping Kang, Krisztian Flautner, Lingjia Tang and Jason Mars*. The code for training and evaluating this model can be found here.
Model description
This model is intended for zero-shot text classification. It was trained under the binary classification framework via implicit training with the aspect-normalized UTCD dataset.
- Finetuned from model: `bert-base-uncased`
Usage
Install our python package:
pip install zeroshot-classifierThen, you can use the model like this:
>>> from zeroshot_classifier.models import BinaryBertCrossEncoder
>>> model = BinaryBertCrossEncoder(model_name='claritylab/zero-shot-implicit-binary-bert')
>>> text = "I'd like to have this track onto my Classical Relaxations playlist."
>>> labels = [
>>> 'Add To Playlist', 'Book Restaurant', 'Get Weather', 'Play Music', 'Rate Book', 'Search Creative Work',
>>> 'Search Screening Event'
>>> ]
>>> aspect = 'intent'
>>> aspect_sep_token = model.tokenizer.additional_special_tokens[0]
>>> text = f'{aspect} {aspect_sep_token} {text}'
>>> query = [[text, lb] for lb in labels]
>>> logits = model.predict(query, apply_softmax=True)
>>> print(logits)
[[7.3497969e-04 9.9926502e-01]
[9.9988127e-01 1.1870124e-04]
[9.9988961e-01 1.1033980e-04]
[1.9227572e-03 9.9807727e-01]
[9.9985313e-01 1.4685343e-04]
[9.9938977e-01 6.1021477e-04]
[9.9838030e-01 1.6197052e-03]]