Edit model card

SentenceTransformer based on sentence-transformers/all-mpnet-base-v2

This is a sentence-transformers model finetuned from sentence-transformers/all-mpnet-base-v2. 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: sentence-transformers/all-mpnet-base-v2
  • Maximum Sequence Length: 384 tokens
  • Output Dimensionality: 768 tokens
  • Similarity Function: Cosine Similarity

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 384, 'do_lower_case': False}) with Transformer model: MPNetModel 
  (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})
  (2): Normalize()
)

Usage

Direct Usage (Sentence Transformers)

First install the Sentence Transformers library:

pip install -U sentence-transformers

Then you can load this model and run inference.

from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
model = SentenceTransformer("jet-taekyo/mpnet_finetuned_semantic")
# Run inference
sentences = [
    'What impact do automated systems have on underserved communities?',
    "automated systems make on underserved communities and to institute proactive protections that support these \ncommunities. \n•\nAn automated system using nontraditional factors such as educational attainment and employment history as\npart of its loan underwriting and pricing model was found to be much more likely to charge an applicant who\nattended a Historically Black College or University (HBCU) higher loan prices for refinancing a student loan\nthan an applicant who did not attend an HBCU. This was found to be true even when controlling for\nother credit-related factors.32\n•\nA hiring tool that learned the features of a company's employees (predominantly men) rejected women appli\xad\ncants for spurious and discriminatory reasons; resumes with the word “women’s,” such as “women’s\nchess club captain,” were penalized in the candidate ranking.33\n•\nA predictive model marketed as being able to predict whether students are likely to drop out of school was",
    'on a principle of local control, such that those individuals closest to the data subject have more access while \nthose who are less proximate do not (e.g., a teacher has access to their students’ daily progress data while a \nsuperintendent does not). \nReporting. In addition to the reporting on data privacy (as listed above for non-sensitive data), entities devel-\noping technologies related to a sensitive domain and those collecting, using, storing, or sharing sensitive data \nshould, whenever appropriate, regularly provide public reports describing: any data security lapses or breaches \nthat resulted in sensitive data leaks; the number, type, and outcomes of ethical pre-reviews undertaken; a \ndescription of any data sold, shared, or made public, and how that data was assessed to determine it did not pres-\nent a sensitive data risk; and ongoing risk identification and management procedures, and any mitigation added',
]
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

Metric Value
cosine_accuracy@1 0.8882
cosine_accuracy@3 0.9868
cosine_accuracy@5 0.9868
cosine_accuracy@10 1.0
cosine_precision@1 0.8882
cosine_precision@3 0.3289
cosine_precision@5 0.1974
cosine_precision@10 0.1
cosine_recall@1 0.8882
cosine_recall@3 0.9868
cosine_recall@5 0.9868
cosine_recall@10 1.0
cosine_ndcg@10 0.9499
cosine_mrr@10 0.9331
cosine_map@100 0.9331
dot_accuracy@1 0.8882
dot_accuracy@3 0.9868
dot_accuracy@5 0.9868
dot_accuracy@10 1.0
dot_precision@1 0.8882
dot_precision@3 0.3289
dot_precision@5 0.1974
dot_precision@10 0.1
dot_recall@1 0.8882
dot_recall@3 0.9868
dot_recall@5 0.9868
dot_recall@10 1.0
dot_ndcg@10 0.9499
dot_mrr@10 0.9331
dot_map@100 0.9331

Information Retrieval

Metric Value
cosine_accuracy@1 0.8828
cosine_accuracy@3 0.9688
cosine_accuracy@5 0.9922
cosine_accuracy@10 1.0
cosine_precision@1 0.8828
cosine_precision@3 0.3229
cosine_precision@5 0.1984
cosine_precision@10 0.1
cosine_recall@1 0.8828
cosine_recall@3 0.9688
cosine_recall@5 0.9922
cosine_recall@10 1.0
cosine_ndcg@10 0.9458
cosine_mrr@10 0.9279
cosine_map@100 0.9279
dot_accuracy@1 0.8828
dot_accuracy@3 0.9688
dot_accuracy@5 0.9922
dot_accuracy@10 1.0
dot_precision@1 0.8828
dot_precision@3 0.3229
dot_precision@5 0.1984
dot_precision@10 0.1
dot_recall@1 0.8828
dot_recall@3 0.9688
dot_recall@5 0.9922
dot_recall@10 1.0
dot_ndcg@10 0.9458
dot_mrr@10 0.9279
dot_map@100 0.9279

Training Details

Training Dataset

Unnamed Dataset

  • Size: 714 training samples
  • Columns: sentence_0 and sentence_1
  • Approximate statistics based on the first 714 samples:
    sentence_0 sentence_1
    type string string
    details
    • min: 7 tokens
    • mean: 17.7 tokens
    • max: 36 tokens
    • min: 2 tokens
    • mean: 176.29 tokens
    • max: 384 tokens
  • Samples:
    sentence_0 sentence_1
    What are the key characteristics of high-integrity information? This information can be linked to the original source(s) with appropriate evidence. High-integrity
    information is also accurate and reliable, can be verified and authenticated, has a clear chain of custody,
    and creates reasonable expectations about when its validity may expire.”11


    11 This definition of information integrity is derived from the 2022 White House Roadmap for Researchers on
    Priorities Related to Information Integrity Research and Development.
    How can the validity of information be verified and authenticated? This information can be linked to the original source(s) with appropriate evidence. High-integrity
    information is also accurate and reliable, can be verified and authenticated, has a clear chain of custody,
    and creates reasonable expectations about when its validity may expire.”11


    11 This definition of information integrity is derived from the 2022 White House Roadmap for Researchers on
    Priorities Related to Information Integrity Research and Development.
    What should trigger the use of a human alternative in the attainment process? In many scenarios, there is a reasonable expectation
    of human involvement in attaining rights, opportunities, or access. When automated systems make up part of
    the attainment process, alternative timely human-driven processes should be provided. The use of a human
    alternative should be triggered by an opt-out process. Timely and not burdensome human alternative. Opting out should be timely and not unreasonably
    burdensome in both the process of requesting to opt-out and the human-driven alternative provided. Provide timely human consideration and remedy by a fallback and escalation system in the
    event that an automated system fails, produces error, or you would like to appeal or con­
    test its impacts on you
    Proportionate. The availability of human consideration and fallback, along with associated training and
    safeguards against human bias, should be proportionate to the potential of the automated system to meaning­
    fully impact rights, opportunities, or access. Automated systems that have greater control over outcomes,
    provide input to high-stakes decisions, relate to sensitive domains, or otherwise have a greater potential to
    meaningfully impact rights, opportunities, or access should have greater availability (e.g., staffing) and over­
    sight of human consideration and fallback mechanisms. Accessible. Mechanisms for human consideration and fallback, whether in-person, on paper, by phone, or
    otherwise provided, should be easy to find and use. These mechanisms should be tested to ensure that users
    who have trouble with the automated system are able to use human consideration and fallback, with the under­
    standing that it may be these users who are most likely to need the human assistance. Similarly, it should be
    tested to ensure that users with disabilities are able to find and use human consideration and fallback and also
    request reasonable accommodations or modifications. Convenient. Mechanisms for human consideration and fallback should not be unreasonably burdensome as
    compared to the automated system’s equivalent. 49
  • Loss: MatryoshkaLoss with these parameters:
    {
        "loss": "MultipleNegativesRankingLoss",
        "matryoshka_dims": [
            768,
            512,
            256,
            128,
            64
        ],
        "matryoshka_weights": [
            1,
            1,
            1,
            1,
            1
        ],
        "n_dims_per_step": -1
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 20
  • per_device_eval_batch_size: 20
  • num_train_epochs: 5
  • multi_dataset_batch_sampler: round_robin

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 20
  • per_device_eval_batch_size: 20
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 1
  • eval_accumulation_steps: None
  • torch_empty_cache_steps: None
  • learning_rate: 5e-05
  • weight_decay: 0.0
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1
  • num_train_epochs: 5
  • max_steps: -1
  • lr_scheduler_type: linear
  • lr_scheduler_kwargs: {}
  • warmup_ratio: 0.0
  • 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: False
  • fp16_opt_level: O1
  • half_precision_backend: auto
  • bf16_full_eval: False
  • fp16_full_eval: False
  • tf32: None
  • 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: False
  • 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
  • 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
  • eval_on_start: False
  • eval_use_gather_object: False
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: round_robin

Training Logs

Epoch Step cosine_map@100
1.0 36 0.9395
1.3889 50 0.9320
2.0 72 0.9298
2.7778 100 0.9348
3.0 108 0.9304
4.0 144 0.9342
4.1667 150 0.9342
5.0 180 0.9331
1.0 31 0.9163
1.6129 50 0.9279

Framework Versions

  • Python: 3.11.9
  • Sentence Transformers: 3.1.0
  • Transformers: 4.44.2
  • PyTorch: 2.4.1+cu121
  • Accelerate: 0.34.2
  • Datasets: 3.0.0
  • Tokenizers: 0.19.1

Citation

BibTeX

Sentence Transformers

@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

@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

@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}
}
Downloads last month
16
Safetensors
Model size
109M params
Tensor type
F32
·
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Model tree for jet-taekyo/mpnet_finetuned_semantic

Finetuned
(117)
this model

Evaluation results