--- language: - en license: apache-2.0 library_name: sentence-transformers tags: - sentence-transformers - sentence-similarity - feature-extraction - generated_from_trainer - dataset_size:6300 - loss:MatryoshkaLoss - loss:MultipleNegativesRankingLoss base_model: BAAI/bge-base-en-v1.5 datasets: [] 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 widget: - source_sentence: On December 15, 2022, the European Union Member States formally adopted the EU’s Pillar Two Directive, which generally provides for a minimum effective tax rate of 15%. sentences: - What were the key business segments of The Goldman Sachs Group, Inc. as reported in their 2023 financial disclosures? - What are the aspects of the EU Pillar Two Directive adopted in December 2022? - How does customer size and geography affect the determination of SSP for products and services? - source_sentence: Schwab's management of credit risk involves policies and procedures that include setting and reviewing credit limits, monitoring of credit limits and quality of counterparties, and adjusting margin, PAL, option, and futures requirements for certain securities and instruments. sentences: - What measures does Schwab take to manage credit risk? - How might a 10% change in the obsolescence reserve percentage impact net earnings? - How did the discount rates for Depop and Elo7 change during their 2022 impairments analysis? - source_sentence: While we believe that our ESG goals align with our long-term growth strategy and financial and operational priorities, they are aspirational and may change, and there is no guarantee or promise that they will be met. sentences: - What is the relationship between the ESG goals and the long-term growth strategy? - What was the total revenue in millions for 2023 according to the disaggregated revenue information by segment? - How much did the net cumulative medical payments amount to in 2023? - source_sentence: The total unrealized losses on U.S. Treasury securities amounted to $134 million. sentences: - What critical audit matters were identified related to the revenue recognition in the Connectivity & Platforms businesses at Comcast in 2023? - What were the total unrealized losses on U.S. Treasury securities as of the last reporting date? - How is Revenue per Available Room (RevPAR) calculated and what does it indicate? - source_sentence: The Chief Executive etc. does not manage segment results or allocate resources to segments when considering these costs and they are therefore excluded from our definition of segment income. sentences: - How are tax returns affecting the company's tax provisions when audited? - What was the increase in sales and marketing expenses for the year ended December 31, 2023 compared to 2022? - What components are excluded from segment income definition according to company management? pipeline_tag: sentence-similarity model-index: - name: BGE base Financial Matryoshka results: - task: type: information-retrieval name: Information Retrieval dataset: name: dim 768 type: dim_768 metrics: - type: cosine_accuracy@1 value: 0.7142857142857143 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.83 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.8585714285714285 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.9042857142857142 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.7142857142857143 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.27666666666666667 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.1717142857142857 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.09042857142857141 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.7142857142857143 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.83 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.8585714285714285 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.9042857142857142 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.8098414318705203 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.7796729024943311 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.7831593716959953 name: Cosine Map@100 - task: type: information-retrieval name: Information Retrieval dataset: name: dim 512 type: dim_512 metrics: - type: cosine_accuracy@1 value: 0.7157142857142857 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.8242857142857143 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.8542857142857143 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.8942857142857142 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.7157142857142857 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.27476190476190476 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.17085714285714285 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.08942857142857143 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.7157142857142857 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.8242857142857143 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.8542857142857143 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.8942857142857142 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.805674034217217 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.7771672335600905 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.7814319590791096 name: Cosine Map@100 - task: type: information-retrieval name: Information Retrieval dataset: name: dim 256 type: dim_256 metrics: - type: cosine_accuracy@1 value: 0.7057142857142857 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.8185714285714286 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.8528571428571429 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.8928571428571429 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.7057142857142857 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.27285714285714285 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.17057142857142857 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.08928571428571427 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.7057142857142857 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.8185714285714286 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.8528571428571429 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.8928571428571429 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.7998364446362882 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.7700413832199544 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.7739467761950781 name: Cosine Map@100 - task: type: information-retrieval name: Information Retrieval dataset: name: dim 128 type: dim_128 metrics: - type: cosine_accuracy@1 value: 0.6871428571428572 name: Cosine Accuracy@1 - type: cosine_accuracy@3 value: 0.8057142857142857 name: Cosine Accuracy@3 - type: cosine_accuracy@5 value: 0.8385714285714285 name: Cosine Accuracy@5 - type: cosine_accuracy@10 value: 0.8871428571428571 name: Cosine Accuracy@10 - type: cosine_precision@1 value: 0.6871428571428572 name: Cosine Precision@1 - type: cosine_precision@3 value: 0.26857142857142857 name: Cosine Precision@3 - type: cosine_precision@5 value: 0.1677142857142857 name: Cosine Precision@5 - type: cosine_precision@10 value: 0.0887142857142857 name: Cosine Precision@10 - type: cosine_recall@1 value: 0.6871428571428572 name: Cosine Recall@1 - type: cosine_recall@3 value: 0.8057142857142857 name: Cosine Recall@3 - type: cosine_recall@5 value: 0.8385714285714285 name: Cosine Recall@5 - type: cosine_recall@10 value: 0.8871428571428571 name: Cosine Recall@10 - type: cosine_ndcg@10 value: 0.7864888199817319 name: Cosine Ndcg@10 - type: cosine_mrr@10 value: 0.7544109977324263 name: Cosine Mrr@10 - type: cosine_map@100 value: 0.7584408188949701 name: Cosine Map@100 --- # BGE base Financial Matryoshka This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [BAAI/bge-base-en-v1.5](https://huggingface.co/BAAI/bge-base-en-v1.5). 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:** [BAAI/bge-base-en-v1.5](https://huggingface.co/BAAI/bge-base-en-v1.5) - **Maximum Sequence Length:** 512 tokens - **Output Dimensionality:** 768 tokens - **Similarity Function:** Cosine Similarity - **Language:** en - **License:** apache-2.0 ### 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': True}) with Transformer model: BertModel (1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': True, 'pooling_mode_mean_tokens': False, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True}) (2): Normalize() ) ``` ## 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("pavanmantha/bge-base-en-sec10k-embed") # Run inference sentences = [ 'The Chief Executive etc. does not manage segment results or allocate resources to segments when considering these costs and they are therefore excluded from our definition of segment income.', 'What components are excluded from segment income definition according to company management?', 'What was the increase in sales and marketing expenses for the year ended December 31, 2023 compared to 2022?', ] 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: `dim_768` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:-----------| | cosine_accuracy@1 | 0.7143 | | cosine_accuracy@3 | 0.83 | | cosine_accuracy@5 | 0.8586 | | cosine_accuracy@10 | 0.9043 | | cosine_precision@1 | 0.7143 | | cosine_precision@3 | 0.2767 | | cosine_precision@5 | 0.1717 | | cosine_precision@10 | 0.0904 | | cosine_recall@1 | 0.7143 | | cosine_recall@3 | 0.83 | | cosine_recall@5 | 0.8586 | | cosine_recall@10 | 0.9043 | | cosine_ndcg@10 | 0.8098 | | cosine_mrr@10 | 0.7797 | | **cosine_map@100** | **0.7832** | #### Information Retrieval * Dataset: `dim_512` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:-----------| | cosine_accuracy@1 | 0.7157 | | cosine_accuracy@3 | 0.8243 | | cosine_accuracy@5 | 0.8543 | | cosine_accuracy@10 | 0.8943 | | cosine_precision@1 | 0.7157 | | cosine_precision@3 | 0.2748 | | cosine_precision@5 | 0.1709 | | cosine_precision@10 | 0.0894 | | cosine_recall@1 | 0.7157 | | cosine_recall@3 | 0.8243 | | cosine_recall@5 | 0.8543 | | cosine_recall@10 | 0.8943 | | cosine_ndcg@10 | 0.8057 | | cosine_mrr@10 | 0.7772 | | **cosine_map@100** | **0.7814** | #### Information Retrieval * Dataset: `dim_256` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:-----------| | cosine_accuracy@1 | 0.7057 | | cosine_accuracy@3 | 0.8186 | | cosine_accuracy@5 | 0.8529 | | cosine_accuracy@10 | 0.8929 | | cosine_precision@1 | 0.7057 | | cosine_precision@3 | 0.2729 | | cosine_precision@5 | 0.1706 | | cosine_precision@10 | 0.0893 | | cosine_recall@1 | 0.7057 | | cosine_recall@3 | 0.8186 | | cosine_recall@5 | 0.8529 | | cosine_recall@10 | 0.8929 | | cosine_ndcg@10 | 0.7998 | | cosine_mrr@10 | 0.77 | | **cosine_map@100** | **0.7739** | #### Information Retrieval * Dataset: `dim_128` * Evaluated with [InformationRetrievalEvaluator](https://sbert.net/docs/package_reference/sentence_transformer/evaluation.html#sentence_transformers.evaluation.InformationRetrievalEvaluator) | Metric | Value | |:--------------------|:-----------| | cosine_accuracy@1 | 0.6871 | | cosine_accuracy@3 | 0.8057 | | cosine_accuracy@5 | 0.8386 | | cosine_accuracy@10 | 0.8871 | | cosine_precision@1 | 0.6871 | | cosine_precision@3 | 0.2686 | | cosine_precision@5 | 0.1677 | | cosine_precision@10 | 0.0887 | | cosine_recall@1 | 0.6871 | | cosine_recall@3 | 0.8057 | | cosine_recall@5 | 0.8386 | | cosine_recall@10 | 0.8871 | | cosine_ndcg@10 | 0.7865 | | cosine_mrr@10 | 0.7544 | | **cosine_map@100** | **0.7584** | ## Training Details ### Training Dataset #### Unnamed Dataset * Size: 6,300 training samples * Columns: positive and anchor * Approximate statistics based on the first 1000 samples: | | positive | anchor | |:--------|:-----------------------------------------------------------------------------------|:----------------------------------------------------------------------------------| | type | string | string | | details | | | * Samples: | positive | anchor | |:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------| | The federal banking regulators’ guidance on sound incentive compensation practices sets forth three key principles for incentive compensation arrangements that are designed to help ensure such plans do not encourage imprudent risk-taking and align with the safety and soundness of the organization. These principles include balancing risk with financial results, compatibility with internal controls and risk management, and support from strong corporate governance with effective oversight by the board. | What are the three principles set forth by federal banking regulators' guidance on incentive compensation practices? | | Delta Air Lines generated a free cash flow of $2,003 million in 2023. This figure was adjusted for several factors including net redemptions of short-term investments and a pilot agreement payment of $735 million. | How much free cash flow did Delta Air Lines generate in 2023? | | Inherent in the qualitative assessment are estimates and assumptions about our consideration of events and circumstances that may indicate a potential impairment, including industry and market conditions, expected cost pressures, expected financial performance, and general macroeconomic conditions. | What does the qualitative assessment of goodwill consider regarding possible impairment? | * Loss: [MatryoshkaLoss](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#matryoshkaloss) with these parameters: ```json { "loss": "MultipleNegativesRankingLoss", "matryoshka_dims": [ 768, 512, 256, 128 ], "matryoshka_weights": [ 1, 1, 1, 1 ], "n_dims_per_step": -1 } ``` ### Training Hyperparameters #### Non-Default Hyperparameters - `eval_strategy`: epoch - `per_device_train_batch_size`: 32 - `per_device_eval_batch_size`: 16 - `gradient_accumulation_steps`: 16 - `learning_rate`: 2e-05 - `num_train_epochs`: 4 - `lr_scheduler_type`: cosine - `warmup_ratio`: 0.1 - `fp16`: True - `tf32`: False - `load_best_model_at_end`: True - `optim`: adamw_torch_fused - `batch_sampler`: no_duplicates #### All Hyperparameters
Click to expand - `overwrite_output_dir`: False - `do_predict`: False - `eval_strategy`: epoch - `prediction_loss_only`: True - `per_device_train_batch_size`: 32 - `per_device_eval_batch_size`: 16 - `per_gpu_train_batch_size`: None - `per_gpu_eval_batch_size`: None - `gradient_accumulation_steps`: 16 - `eval_accumulation_steps`: None - `learning_rate`: 2e-05 - `weight_decay`: 0.0 - `adam_beta1`: 0.9 - `adam_beta2`: 0.999 - `adam_epsilon`: 1e-08 - `max_grad_norm`: 1.0 - `num_train_epochs`: 4 - `max_steps`: -1 - `lr_scheduler_type`: cosine - `lr_scheduler_kwargs`: {} - `warmup_ratio`: 0.1 - `warmup_steps`: 0 - `log_level`: passive - `log_level_replica`: warning - `log_on_each_node`: True - `logging_nan_inf_filter`: True - `save_safetensors`: True - `save_on_each_node`: False - `save_only_model`: False - `restore_callback_states_from_checkpoint`: False - `no_cuda`: False - `use_cpu`: False - `use_mps_device`: False - `seed`: 42 - `data_seed`: None - `jit_mode_eval`: False - `use_ipex`: False - `bf16`: False - `fp16`: True - `fp16_opt_level`: O1 - `half_precision_backend`: auto - `bf16_full_eval`: False - `fp16_full_eval`: False - `tf32`: False - `local_rank`: 0 - `ddp_backend`: None - `tpu_num_cores`: None - `tpu_metrics_debug`: False - `debug`: [] - `dataloader_drop_last`: False - `dataloader_num_workers`: 0 - `dataloader_prefetch_factor`: None - `past_index`: -1 - `disable_tqdm`: False - `remove_unused_columns`: True - `label_names`: None - `load_best_model_at_end`: True - `ignore_data_skip`: False - `fsdp`: [] - `fsdp_min_num_params`: 0 - `fsdp_config`: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False} - `fsdp_transformer_layer_cls_to_wrap`: None - `accelerator_config`: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None} - `deepspeed`: None - `label_smoothing_factor`: 0.0 - `optim`: adamw_torch_fused - `optim_args`: None - `adafactor`: False - `group_by_length`: False - `length_column_name`: length - `ddp_find_unused_parameters`: None - `ddp_bucket_cap_mb`: None - `ddp_broadcast_buffers`: False - `dataloader_pin_memory`: True - `dataloader_persistent_workers`: False - `skip_memory_metrics`: True - `use_legacy_prediction_loop`: False - `push_to_hub`: False - `resume_from_checkpoint`: None - `hub_model_id`: None - `hub_strategy`: every_save - `hub_private_repo`: False - `hub_always_push`: False - `gradient_checkpointing`: False - `gradient_checkpointing_kwargs`: None - `include_inputs_for_metrics`: False - `eval_do_concat_batches`: True - `fp16_backend`: auto - `push_to_hub_model_id`: None - `push_to_hub_organization`: None - `mp_parameters`: - `auto_find_batch_size`: False - `full_determinism`: False - `torchdynamo`: None - `ray_scope`: last - `ddp_timeout`: 1800 - `torch_compile`: False - `torch_compile_backend`: None - `torch_compile_mode`: None - `dispatch_batches`: None - `split_batches`: None - `include_tokens_per_second`: False - `include_num_input_tokens_seen`: False - `neftune_noise_alpha`: None - `optim_target_modules`: None - `batch_eval_metrics`: False - `batch_sampler`: no_duplicates - `multi_dataset_batch_sampler`: proportional
### Training Logs | Epoch | Step | Training Loss | dim_128_cosine_map@100 | dim_256_cosine_map@100 | dim_512_cosine_map@100 | dim_768_cosine_map@100 | |:----------:|:------:|:-------------:|:----------------------:|:----------------------:|:----------------------:|:----------------------:| | 0.8122 | 10 | 1.1625 | - | - | - | - | | 0.9746 | 12 | - | 0.7429 | 0.7568 | 0.7688 | 0.7724 | | 1.6244 | 20 | 0.4282 | - | - | - | - | | 1.9492 | 24 | - | 0.7541 | 0.7691 | 0.7802 | 0.7828 | | 2.4365 | 30 | 0.3086 | - | - | - | - | | 2.9239 | 36 | - | 0.7581 | 0.7731 | 0.7810 | 0.7838 | | 3.2487 | 40 | 0.2432 | - | - | - | - | | **3.8985** | **48** | **-** | **0.7584** | **0.7739** | **0.7814** | **0.7832** | * The bold row denotes the saved checkpoint. ### Framework Versions - Python: 3.10.13 - Sentence Transformers: 3.0.1 - Transformers: 4.41.2 - PyTorch: 2.1.2 - Accelerate: 0.31.0 - Datasets: 2.19.1 - Tokenizers: 0.19.1 ## Citation ### BibTeX #### Sentence Transformers ```bibtex @inproceedings{reimers-2019-sentence-bert, title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks", author = "Reimers, Nils and Gurevych, Iryna", booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing", month = "11", year = "2019", publisher = "Association for Computational Linguistics", url = "https://arxiv.org/abs/1908.10084", } ``` #### MatryoshkaLoss ```bibtex @misc{kusupati2024matryoshka, title={Matryoshka Representation Learning}, author={Aditya Kusupati and Gantavya Bhatt and Aniket Rege and Matthew Wallingford and Aditya Sinha and Vivek Ramanujan and William Howard-Snyder and Kaifeng Chen and Sham Kakade and Prateek Jain and Ali Farhadi}, year={2024}, eprint={2205.13147}, archivePrefix={arXiv}, primaryClass={cs.LG} } ``` #### MultipleNegativesRankingLoss ```bibtex @misc{henderson2017efficient, title={Efficient Natural Language Response Suggestion for Smart Reply}, author={Matthew Henderson and Rami Al-Rfou and Brian Strope and Yun-hsuan Sung and Laszlo Lukacs and Ruiqi Guo and Sanjiv Kumar and Balint Miklos and Ray Kurzweil}, year={2017}, eprint={1705.00652}, archivePrefix={arXiv}, primaryClass={cs.CL} } ```