Zero-Shot Classification
Transformers
Safetensors
PyTorch
English
zero-shot
multi-label
text-classification
Instructions to use polodealvarado/projection_biencoder with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use polodealvarado/projection_biencoder with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("zero-shot-classification", model="polodealvarado/projection_biencoder")# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("polodealvarado/projection_biencoder", dtype="auto") - Notebooks
- Google Colab
- Kaggle
File size: 1,550 Bytes
46d3bc8 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | ---
language:
- en
license: mit
library_name: transformers
pipeline_tag: zero-shot-classification
tags:
- zero-shot
- multi-label
- text-classification
- pytorch
metrics:
- precision
- recall
- f1
base_model: bert-base-uncased
datasets:
- polodealvarado/zeroshot-classification
---
# Zero-Shot Text Classification — projection_biencoder
CLIP-inspired with projection heads, L2 norm, and learnable temperature.
This model encodes texts and candidate labels into a shared embedding space using BERT,
enabling classification into arbitrary categories without retraining for new labels.
## Training Details
| Parameter | Value |
|-----------|-------|
| Base model | `bert-base-uncased` |
| Model variant | `projection_biencoder` |
| Training steps | 1000 |
| Batch size | 2 |
| Learning rate | 2e-05 |
| Trainable params | 109,679,105 |
| Training time | 318.3s |
## Dataset
Trained on [polodealvarado/zeroshot-classification](https://huggingface.co/datasets/polodealvarado/zeroshot-classification).
## Evaluation Results
| Metric | Score |
|--------|-------|
| Precision | 0.9431 |
| Recall | 0.9826 |
| F1 Score | 0.9624 |
## Usage
```python
from models.projection import ProjectionBiEncoderModel
model = ProjectionBiEncoderModel.from_pretrained("polodealvarado/projection_biencoder")
predictions = model.predict(
texts=["The stock market crashed yesterday."],
labels=[["Finance", "Sports", "Biology", "Economy"]],
)
print(predictions)
# [{"text": "...", "scores": {"Finance": 0.98, "Economy": 0.85, ...}}]
```
|