---
tags:
- sentence-transformers
- sentence-similarity
- feature-extraction
- generated_from_trainer
- dataset_size:3628
- loss:MultipleNegativesRankingLoss
- loss:CosineSimilarityLoss
base_model: jinaai/jina-embedding-b-en-v1
widget:
- source_sentence: How does my portfolio stack up against others?
sentences:
- Which of my investments have the highest volatility?
- Are there any red flags in my portfolio?
- Compare my portfolio with others?
- source_sentence: Present my worst performing funds?
sentences:
- Show my worst performing funds?
- How much more am I paying in fees across my investments?
- Are my ETFs giving better returns compare to my mutual funds?
- source_sentence: Present best stocks
sentences:
- Show me best stocks
- Do I have financials in my portfolio?
- Show my riskiest holdings
- source_sentence: Which stocks in my collection are the most volatile?
sentences:
- Are my ETFs giving better returns compare to my mutual funds?
- Which of my stocks are most volatile?
- Show my market cap breakdown
- source_sentence: How many folios do I have?
sentences:
- Show my holdings
- do I have more stocks or mutual funds?
- Do I hold any costly funds ?
pipeline_tag: sentence-similarity
library_name: sentence-transformers
metrics:
- cosine_accuracy@1
- cosine_accuracy@3
- cosine_accuracy@5
- cosine_accuracy@10
- cosine_precision@1
- cosine_precision@3
- cosine_precision@5
- cosine_precision@10
- cosine_recall@1
- cosine_recall@3
- cosine_recall@5
- cosine_recall@10
- cosine_ndcg@10
- cosine_mrr@10
- cosine_map@100
model-index:
- name: SentenceTransformer based on jinaai/jina-embedding-b-en-v1
results:
- task:
type: information-retrieval
name: Information Retrieval
dataset:
name: test eval
type: test-eval
metrics:
- type: cosine_accuracy@1
value: 0.8842975206611571
name: Cosine Accuracy@1
- type: cosine_accuracy@3
value: 0.9862258953168044
name: Cosine Accuracy@3
- type: cosine_accuracy@5
value: 1.0
name: Cosine Accuracy@5
- type: cosine_accuracy@10
value: 1.0
name: Cosine Accuracy@10
- type: cosine_precision@1
value: 0.8842975206611571
name: Cosine Precision@1
- type: cosine_precision@3
value: 0.3287419651056015
name: Cosine Precision@3
- type: cosine_precision@5
value: 0.19999999999999998
name: Cosine Precision@5
- type: cosine_precision@10
value: 0.09999999999999999
name: Cosine Precision@10
- type: cosine_recall@1
value: 0.8842975206611571
name: Cosine Recall@1
- type: cosine_recall@3
value: 0.9862258953168044
name: Cosine Recall@3
- type: cosine_recall@5
value: 1.0
name: Cosine Recall@5
- type: cosine_recall@10
value: 1.0
name: Cosine Recall@10
- type: cosine_ndcg@10
value: 0.9526136905092828
name: Cosine Ndcg@10
- type: cosine_mrr@10
value: 0.9363177226813588
name: Cosine Mrr@10
- type: cosine_map@100
value: 0.936317722681359
name: Cosine Map@100
---
# SentenceTransformer based on jinaai/jina-embedding-b-en-v1
This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [jinaai/jina-embedding-b-en-v1](https://huggingface.co/jinaai/jina-embedding-b-en-v1). It maps sentences & paragraphs to a 768-dimensional dense vector space and can be used for semantic textual similarity, semantic search, paraphrase mining, text classification, clustering, and more.
## Model Details
### Model Description
- **Model Type:** Sentence Transformer
- **Base model:** [jinaai/jina-embedding-b-en-v1](https://huggingface.co/jinaai/jina-embedding-b-en-v1)
- **Maximum Sequence Length:** 512 tokens
- **Output Dimensionality:** 768 dimensions
- **Similarity Function:** Cosine Similarity
### Model Sources
- **Documentation:** [Sentence Transformers Documentation](https://sbert.net)
- **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers)
- **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers)
### Full Model Architecture
```
SentenceTransformer(
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: T5EncoderModel
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
)
```
## 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 SentenceTransformer
# Download from the 🤗 Hub
model = SentenceTransformer("sentence_transformers_model_id")
# Run inference
sentences = [
'How many folios do I have?',
'Show my holdings',
'Do I hold any costly funds ?',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 768]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
```
## Evaluation
### Metrics
#### Information Retrieval
* Dataset: `test-eval`
* Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator)
| Metric | Value |
|:--------------------|:-----------|
| cosine_accuracy@1 | 0.8843 |
| cosine_accuracy@3 | 0.9862 |
| cosine_accuracy@5 | 1.0 |
| cosine_accuracy@10 | 1.0 |
| cosine_precision@1 | 0.8843 |
| cosine_precision@3 | 0.3287 |
| cosine_precision@5 | 0.2 |
| cosine_precision@10 | 0.1 |
| cosine_recall@1 | 0.8843 |
| cosine_recall@3 | 0.9862 |
| cosine_recall@5 | 1.0 |
| cosine_recall@10 | 1.0 |
| **cosine_ndcg@10** | **0.9526** |
| cosine_mrr@10 | 0.9363 |
| cosine_map@100 | 0.9363 |
## Training Details
### Training Datasets
#### Unnamed Dataset
* Size: 1,814 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 |
Refresh my portfolio for me | I want to refresh my portfolio | 1.0 |
| What are the top riskier securities in my portfolio? | What are my riskiest holdings | 1.0 |
| Can you tell me my portfolio's performance for the last 18 days? | What is the performance of my portfolio over the last 18 days? | 1.0 |
* Loss: [MultipleNegativesRankingLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#multiplenegativesrankingloss) with these parameters:
```json
{
"scale": 20.0,
"similarity_fct": "cos_sim"
}
```
#### Unnamed Dataset
* Size: 1,814 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 | list my top performing holdings from the last 5 years | show my holdings that have performed well over the past 5 years | 1.0 |
| Identify my costliest funds? | What are my costliest funds? | 1.0 |
| List my least riskiest mutual funds | Show my least riskiest mutual funds | 1.0 |
* Loss: [CosineSimilarityLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#cosinesimilarityloss) with these parameters:
```json
{
"loss_fct": "torch.nn.modules.loss.MSELoss"
}
```
### Training Hyperparameters
#### Non-Default Hyperparameters
- `eval_strategy`: steps
- `per_device_train_batch_size`: 32
- `per_device_eval_batch_size`: 32
- `num_train_epochs`: 10
- `multi_dataset_batch_sampler`: round_robin
#### All Hyperparameters