SentenceTransformer based on sentence-transformers/all-MiniLM-L6-v2
This is a sentence-transformers model finetuned from sentence-transformers/all-MiniLM-L6-v2. It maps sentences & paragraphs to a 384-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-MiniLM-L6-v2
- Maximum Sequence Length: 256 tokens
- Output Dimensionality: 384 dimensions
- Similarity Function: Cosine Similarity
Model Sources
- Documentation: Sentence Transformers Documentation
- Repository: Sentence Transformers on GitHub
- Hugging Face: Sentence Transformers on Hugging Face
Full Model Architecture
SentenceTransformer(
(0): Transformer({'max_seq_length': 256, 'do_lower_case': False}) with Transformer model: BertModel
(1): Pooling({'word_embedding_dimension': 384, '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("tjohn327/scion-minilm-v2")
# Run inference
sentences = [
"What role does the function 'target' play in modeling network topology?",
'The document introduces a formal framework for verifying secure forwarding protocols within the SCION Internet architecture, specifically focusing on the ICING data plane protocol. It employs event systems as labeled transition systems, defining an event system E as a tuple comprising a set of states S, an initial state s0, a set of events E, and a transition relation e−→. The framework formalizes the concepts of reachability and invariants, establishing that a state property P is an invariant if the reachable states from the initial state are contained within P. The refinement of abstract event systems to concrete systems is articulated through mappings that preserve invariants. The document emphasizes parametrization, allowing models to incorporate assumptions on parameters, which are highlighted in gray. An abstract model is defined for a path-aware network architecture, excluding cryptographic elements, and is proven to satisfy path authorization and detectability. The network topology is modeled as a multigraph, with nodes representing Autonomous Systems (ASes) and edges representing links, characterized by a partial bijective function target that facilitates multiple links and forwarding policies. Paths in the network are defined as finite sequences of hop fields, encapsulating local routing information.',
"The document chunk presents a testbed architecture for evaluating Secure In-Band Network Telemetry (ID-INT) within the SCION Internet Architecture, utilizing a Tofino 2 switch as the ID-INT enabled border routers for two SCION Autonomous Systems (ASes). The Dynamic Multi-Path Transport Protocol (DMTP) is adapted to send probe packets and retrieve telemetry data, focusing on instantaneous queue length at the egress of the border router. The experiment assesses DMTP's ability to adjust sending rates on Path 2 based on ID-INT telemetry, with initial path capacities set at 100 Mbps, later reduced to 75 Mbps. Results indicate that DMTP with ID-INT-enabled congestion control aligns sending rates more closely with available link capacity, achieving a 2% gain in goodput despite ID-INT overhead. The adaptation speed of DMTP using ID-INT telemetry is 35% faster than traditional congestion window-based control, demonstrating improved bandwidth utilization and congestion prevention. Related work includes a software implementation of the SCION reference border router in Go, and a hardware implementation on a NetFPGA SUME card capable of 10 Gbps throughput, highlighting the need for efficient high-bandwidth traffic handling in SCION.",
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 384]
# Get the similarity scores for the embeddings
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
Evaluation
Metrics
Information Retrieval
- Dataset:
val-ir-eval
- Evaluated with
InformationRetrievalEvaluator
Metric | Value |
---|---|
cosine_accuracy@1 | 0.3775 |
cosine_accuracy@3 | 0.5858 |
cosine_accuracy@5 | 0.681 |
cosine_accuracy@10 | 0.7754 |
cosine_precision@1 | 0.3775 |
cosine_precision@3 | 0.1955 |
cosine_precision@5 | 0.1363 |
cosine_precision@10 | 0.0777 |
cosine_recall@1 | 0.3768 |
cosine_recall@3 | 0.5854 |
cosine_recall@5 | 0.6802 |
cosine_recall@10 | 0.7739 |
cosine_ndcg@10 | 0.5692 |
cosine_mrr@10 | 0.5045 |
cosine_map@100 | 0.5122 |
Training Details
Training Hyperparameters
Non-Default Hyperparameters
eval_strategy
: stepsper_device_train_batch_size
: 192per_device_eval_batch_size
: 192fp16
: Truemulti_dataset_batch_sampler
: round_robin
All Hyperparameters
Click to expand
overwrite_output_dir
: Falsedo_predict
: Falseeval_strategy
: stepsprediction_loss_only
: Trueper_device_train_batch_size
: 192per_device_eval_batch_size
: 192per_gpu_train_batch_size
: Noneper_gpu_eval_batch_size
: Nonegradient_accumulation_steps
: 1eval_accumulation_steps
: Nonetorch_empty_cache_steps
: Nonelearning_rate
: 5e-05weight_decay
: 0.0adam_beta1
: 0.9adam_beta2
: 0.999adam_epsilon
: 1e-08max_grad_norm
: 1num_train_epochs
: 3max_steps
: -1lr_scheduler_type
: linearlr_scheduler_kwargs
: {}warmup_ratio
: 0.0warmup_steps
: 0log_level
: passivelog_level_replica
: warninglog_on_each_node
: Truelogging_nan_inf_filter
: Truesave_safetensors
: Truesave_on_each_node
: Falsesave_only_model
: Falserestore_callback_states_from_checkpoint
: Falseno_cuda
: Falseuse_cpu
: Falseuse_mps_device
: Falseseed
: 42data_seed
: Nonejit_mode_eval
: Falseuse_ipex
: Falsebf16
: Falsefp16
: Truefp16_opt_level
: O1half_precision_backend
: autobf16_full_eval
: Falsefp16_full_eval
: Falsetf32
: Nonelocal_rank
: 0ddp_backend
: Nonetpu_num_cores
: Nonetpu_metrics_debug
: Falsedebug
: []dataloader_drop_last
: Falsedataloader_num_workers
: 0dataloader_prefetch_factor
: Nonepast_index
: -1disable_tqdm
: Falseremove_unused_columns
: Truelabel_names
: Noneload_best_model_at_end
: Falseignore_data_skip
: Falsefsdp
: []fsdp_min_num_params
: 0fsdp_config
: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}fsdp_transformer_layer_cls_to_wrap
: Noneaccelerator_config
: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}deepspeed
: Nonelabel_smoothing_factor
: 0.0optim
: adamw_torchoptim_args
: Noneadafactor
: Falsegroup_by_length
: Falselength_column_name
: lengthddp_find_unused_parameters
: Noneddp_bucket_cap_mb
: Noneddp_broadcast_buffers
: Falsedataloader_pin_memory
: Truedataloader_persistent_workers
: Falseskip_memory_metrics
: Trueuse_legacy_prediction_loop
: Falsepush_to_hub
: Falseresume_from_checkpoint
: Nonehub_model_id
: Nonehub_strategy
: every_savehub_private_repo
: Nonehub_always_push
: Falsegradient_checkpointing
: Falsegradient_checkpointing_kwargs
: Noneinclude_inputs_for_metrics
: Falseinclude_for_metrics
: []eval_do_concat_batches
: Truefp16_backend
: autopush_to_hub_model_id
: Nonepush_to_hub_organization
: Nonemp_parameters
:auto_find_batch_size
: Falsefull_determinism
: Falsetorchdynamo
: Noneray_scope
: lastddp_timeout
: 1800torch_compile
: Falsetorch_compile_backend
: Nonetorch_compile_mode
: Nonedispatch_batches
: Nonesplit_batches
: Noneinclude_tokens_per_second
: Falseinclude_num_input_tokens_seen
: Falseneftune_noise_alpha
: Noneoptim_target_modules
: Nonebatch_eval_metrics
: Falseeval_on_start
: Falseuse_liger_kernel
: Falseeval_use_gather_object
: Falseaverage_tokens_across_devices
: Falseprompts
: Nonebatch_sampler
: batch_samplermulti_dataset_batch_sampler
: round_robin
Training Logs
Epoch | Step | val-ir-eval_cosine_ndcg@10 |
---|---|---|
1.0 | 50 | 0.5375 |
2.0 | 100 | 0.5626 |
3.0 | 150 | 0.5692 |
Framework Versions
- Python: 3.12.3
- Sentence Transformers: 3.4.1
- Transformers: 4.49.0
- PyTorch: 2.6.0+cu124
- Accelerate: 1.4.0
- Datasets: 3.3.2
- Tokenizers: 0.21.0
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",
}
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
- 10
Inference Providers
NEW
This model is not currently available via any of the supported Inference Providers.
Model tree for tjohn327/scion-minilm-v2
Base model
sentence-transformers/all-MiniLM-L6-v2Evaluation results
- Cosine Accuracy@1 on val ir evalself-reported0.378
- Cosine Accuracy@3 on val ir evalself-reported0.586
- Cosine Accuracy@5 on val ir evalself-reported0.681
- Cosine Accuracy@10 on val ir evalself-reported0.775
- Cosine Precision@1 on val ir evalself-reported0.378
- Cosine Precision@3 on val ir evalself-reported0.196
- Cosine Precision@5 on val ir evalself-reported0.136
- Cosine Precision@10 on val ir evalself-reported0.078
- Cosine Recall@1 on val ir evalself-reported0.377
- Cosine Recall@3 on val ir evalself-reported0.585