---
tags:
- sentence-transformers
- cross-encoder
- reranker
- generated_from_trainer
- dataset_size:5749
- loss:BinaryCrossEntropyLoss
pipeline_tag: text-ranking
library_name: sentence-transformers
metrics:
- pearson
- spearman
model-index:
- name: CrossEncoder
results:
- task:
type: cross-encoder-correlation
name: Cross Encoder Correlation
dataset:
name: sts validation
type: sts-validation
metrics:
- type: pearson
value: 0.9194308725342207
name: Pearson
- type: spearman
value: 0.9162169914711082
name: Spearman
---
# CrossEncoder
This is a [Cross Encoder](https://www.sbert.net/docs/cross_encoder/usage/usage.html) model trained using the [sentence-transformers](https://www.SBERT.net) library. It computes scores for pairs of texts, which can be used for text reranking and semantic search.
## Model Details
### Model Description
- **Model Type:** Cross Encoder
- **Maximum Sequence Length:** 512 tokens
- **Number of Output Labels:** 1 label
### Model Sources
- **Documentation:** [Sentence Transformers Documentation](https://sbert.net)
- **Documentation:** [Cross Encoder Documentation](https://www.sbert.net/docs/cross_encoder/usage/usage.html)
- **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers)
- **Hugging Face:** [Cross Encoders on Hugging Face](https://huggingface.co/models?library=sentence-transformers&other=cross-encoder)
## Usage
### Direct Usage (Sentence Transformers)
First install the Sentence Transformers library:
```bash
pip install -U sentence-transformers
```
Then you can load this model and run inference.
```python
from sentence_transformers import CrossEncoder
# Download from the 🤗 Hub
model = CrossEncoder("cross_encoder_model_id")
# Get scores for pairs of texts
pairs = [
['Ah ha, ha, ha, ha, ha!', 'Ha, ha, ha, ha, ha, ha!'],
['Besides battling its sales slump, Siebel also has been sparring with some investors upset about huge stock option windfalls company managers have pocketed.', 'Besides a sales slump, Siebel is sparring with some shareholders over management stock option windfalls.'],
['Rosenthal declined comment on the Garrett situation Tuesday but said in a statement: "We had a big contract negotiation.', 'The show\'s creator and executive producer, Phil Rosenthal, quipped in a statement: "We had a big contract negotiation.'],
['The army said the raid, which comes just days after Israeli troops shot and killed Abdullah Kawasme, the Hamas leader in the city, targeted militants in Hamas.', "The arrests came just days after Israeli troops shot and killed Abdullah Kawasme, the militant group's leader in Hebron."],
['Saudi to give Lebanese army $3 billion', 'Saudi Arabia to grant Lebanese army $3 billion'],
]
scores = model.predict(pairs)
print(scores.shape)
# (5,)
# Or rank different texts based on similarity to a single text
ranks = model.rank(
'Ah ha, ha, ha, ha, ha!',
[
'Ha, ha, ha, ha, ha, ha!',
'Besides a sales slump, Siebel is sparring with some shareholders over management stock option windfalls.',
'The show\'s creator and executive producer, Phil Rosenthal, quipped in a statement: "We had a big contract negotiation.',
"The arrests came just days after Israeli troops shot and killed Abdullah Kawasme, the militant group's leader in Hebron.",
'Saudi Arabia to grant Lebanese army $3 billion',
]
)
# [{'corpus_id': ..., 'score': ...}, {'corpus_id': ..., 'score': ...}, ...]
```
## Evaluation
### Metrics
#### Cross Encoder Correlation
* Dataset: `sts-validation`
* Evaluated with [CECorrelationEvaluator](https://sbert.net/docs/package_reference/cross_encoder/evaluation.html#sentence_transformers.cross_encoder.evaluation.CECorrelationEvaluator)
| Metric | Value |
|:-------------|:-----------|
| pearson | 0.9194 |
| **spearman** | **0.9162** |
## Training Details
### Training Dataset
#### Unnamed Dataset
* Size: 5,749 training samples
* Columns: sentence_0, sentence_1, and label
* Approximate statistics based on the first 1000 samples:
| | sentence_0 | sentence_1 | label |
|:--------|:------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------|:---------------------------------------------------------------|
| type | string | string | float |
| details |
Ah ha, ha, ha, ha, ha! | Ha, ha, ha, ha, ha, ha! | 0.9 |
| Besides battling its sales slump, Siebel also has been sparring with some investors upset about huge stock option windfalls company managers have pocketed. | Besides a sales slump, Siebel is sparring with some shareholders over management stock option windfalls. | 0.76 |
| Rosenthal declined comment on the Garrett situation Tuesday but said in a statement: "We had a big contract negotiation. | The show's creator and executive producer, Phil Rosenthal, quipped in a statement: "We had a big contract negotiation. | 0.75 |
* Loss: [BinaryCrossEntropyLoss](https://sbert.net/docs/package_reference/cross_encoder/losses.html#binarycrossentropyloss) with these parameters:
```json
{
"activation_fn": "torch.nn.modules.linear.Identity",
"pos_weight": null
}
```
### Training Hyperparameters
#### Non-Default Hyperparameters
- `eval_strategy`: steps
- `per_device_train_batch_size`: 96
- `per_device_eval_batch_size`: 96
- `fp16`: True
#### All Hyperparameters