CoolFace
Modelpublic

hskwon7/paraphrase-MiniLM-L6-v2-ft-for-etf-semantic-search

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes23downloads
Model Card

SentenceTransformer based on sentence-transformers/paraphrase-MiniLM-L6-v2

This is a sentence-transformers model finetuned from sentence-transformers/paraphrase-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/paraphrase-MiniLM-L6-v2 <!-- at revision c9a2bfebc254878aee8c3aca9e6844d5bbb102d1 -->
  • —Maximum Sequence Length: 128 tokens
  • —Output Dimensionality: 384 dimensions
  • —Similarity Function: Cosine Similarity <!-- - Training Dataset: Unknown --> <!-- - Language: Unknown --> <!-- - License: Unknown -->

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 128, '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})
)

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("hskwon7/paraphrase-MiniLM-L6-v2-ft-for-etf-semantic-search")
# Run inference
sentences = [
    'Low Return Moderate Risk ETF',
    'Arrow Dow Jones Global Yield ET. Arrow Dow Jones Global Yield ETF. Issuer: ArrowShares. Category: Global Allocation. Type: Exchange Traded Fund. Position: buy, bull, long. Return: Low Return. Risk: Moderate Risk. Expense Ratio: High Expense Ratio. Dividend Yield: High Dividend Yield. The fund uses a "passive" or "indexing" investment approach to seek to track the price and yield performance of the index. It invests at least 80% of its total assets in the component securities of the index (or depositary receipts representing those securities). The index seeks to identify the 150 highest yielding investable securities in the world within three "asset classes.". Holdings: Komercni Banka AS (KOMB.PR): 1.4%, Fortum Oyj (FORTUM.HE): 1.3%, Altria Group Inc (MO): 1.3%, Enagas SA (ENG.MC): 1.2%, Phoenix Group Holdings PLC (PHNX.L): 1.2%, British American Tobacco PLC (BATS.L): 1.2%, Medical Properties Trust Inc (MPW): 1.2%, Kumba Iron Ore Ltd (KIO.JO): 1.2%, PT Bukit Asam Tbk Registered Shs Series -B- (PTBA.JK): 1.1%, Exxaro Resources Ltd (EXX.JO): 1.1%',
    'Innovator U.S. Equity Power Buf. Innovator U.S. Equity Power Buffer ETF - August. Issuer: Innovator ETFs. Category: Defined Outcome. Type: Exchange Traded Fund. Position: buy, bull, long. Return: Moderate Return. Risk: Low Risk. Expense Ratio: High Expense Ratio. Dividend Yield: Low Dividend Yield. The fund invests under normal circumstances, at least 80% of its net assets (plus any borrowings for investment purposes) in investments that provide exposure to the SPDR ® S&P 500 ® ETF Trust (the “Underlying ETF”). FLEX Options are exchange-traded option contracts with uniquely customizable terms. It is non-diversified.',
]
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]

<!--

Direct Usage (Transformers)

<details><summary>Click to see the direct usage in Transformers</summary>

</details> -->

<!--

Downstream Usage (Sentence Transformers)

You can finetune this model on your own dataset.

<details><summary>Click to expand</summary>

</details> -->

<!--

Out-of-Scope Use

List how the model may foreseeably be misused and address what users ought not to do with the model. -->

<!--

Bias, Risks and Limitations

What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model. -->

<!--

Recommendations

What are recommendations with respect to the foreseeable issues? For example, filtering explicit content. -->

Training Details

Training Dataset

Unnamed Dataset
  • —Size: 91,099 training samples
  • —Columns: <code>sentence0</code>, <code>sentence1</code>, and <code>label</code>
  • —Approximate statistics based on the first 1000 samples: | | sentence0 | sentence1 | label | |:--------|:---------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------|:--------------------------------------------------------------| | type | string | string | float | | details | <ul><li>min: 5 tokens</li><li>mean: 10.9 tokens</li><li>max: 21 tokens</li></ul> | <ul><li>min: 104 tokens</li><li>mean: 127.74 tokens</li><li>max: 128 tokens</li></ul> | <ul><li>min: 1.0</li><li>mean: 1.0</li><li>max: 1.0</li></ul> |
  • —Samples: | sentence0 | sentence1 | label | |:--------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------| | <code>Defined Outcome Low Risk ETF</code> | <code>Innovator U.S. Equity Buffer ET. Innovator U.S. Equity Buffer ETF - June. Issuer: Innovator ETFs. Category: Defined Outcome. Type: Exchange Traded Fund. Position: buy, bull, long. Return: Moderate Return. Risk: Low Risk. Expense Ratio: High Expense Ratio. Dividend Yield: Low Dividend Yield. The fund has adopted a policy pursuant to Rule 35d-1 under the 1940 Act to invest, under normal circumstances, at least 80% of its net assets (plus any borrowings for investment purposes) in investments that provide exposure to the SPDR® S&P 500® ETF Trust (the “Underlying ETF”). It is non-diversified.</code> | <code>1.0</code> | | <code>Miscellaneous Region Moderate Return Moderate Risk Low Expense Ratio Moderate Dividend Yield ETF</code> | <code>Franklin FTSE Germany ETF. Franklin FTSE Germany ETF. Issuer: Franklin Templeton Investments. Category: Miscellaneous Region. Type: Exchange Traded Fund. Position: buy, bull, long. Return: Moderate Return. Risk: Moderate Risk. Expense Ratio: Low Expense Ratio. Dividend Yield: Moderate Dividend Yield. Under normal market conditions, the fund invests at least 80% of its assets in the component securities of the FTSE Germany Capped Index and in depositary receipts representing such securities. The FTSE Germany Capped Index is based on the FTSE Germany Index and is designed to measure the performance of German large- and mid-capitalization stocks. The fund is non-diversified.. Holdings: SAP SE (SAP.DE): 17.8%, Siemens AG (SIE.DE): 10.0%, Allianz SE (ALV.DE): 7.9%, Deutsche Telekom AG (DTE.DE): 7.0%, Mercedes-Benz Group AG (MBG.DE): 3.1%, Infineon Technologies AG (IFX.DE): 2.8%, Deutsche Boerse AG (DB1.DE): 2.8%, Rheinmetall AG (RHM.DE): 2.6%, Basf SE (BAS.DE): 2.6%</code> | <code>1.0</code> | | <code>Moderate Risk ETF</code> | <code>Rareview Dynamic Fixed Income E. Rareview Dynamic Fixed Income ETF. Issuer: Rareview Capital. Category: Bond. Type: Exchange Traded Fund. Position: buy, bull, long. Return: Moderate Return. Risk: Moderate Risk. Expense Ratio: High Expense Ratio. Dividend Yield: High Dividend Yield. Under normal market conditions, the fund will invest at least 80% of its net assets (plus any borrowings for investment purposes) in fixed income closed-end funds trading at a discount or premium to their underlying net asset value and that pay regular periodic cash distributions. Through its investments in closed-end funds that hold non-U.S. fixed income securities, the fund may invest indirectly in foreign securities, including securities of issuers located in emerging markets.. Holdings: SPDR® Blmbg 1-3 Mth T-Bill ETF (BIL): 16.8%, Western Asset Emerg Mkts Debt (EMD): 5.4%, MS Emerging Markets Domestic (EDD): 5.0%, Allspring Inc Opp (EAD): 3.8%, Templeton Emerging Markets Income (TEI): 3.5%, abrdn Asia-Pa...</code> | <code>1.0</code> |
  • —Loss: <code>MultipleNegativesRankingLoss</code> with these parameters:
json
  {
      "scale": 20.0,
      "similarity_fct": "cos_sim"
  }

Training Hyperparameters

Non-Default Hyperparameters
  • —per_device_train_batch_size: 16
  • —per_device_eval_batch_size: 16
  • —num_train_epochs: 2
  • —disable_tqdm: True
  • —multi_dataset_batch_sampler: round_robin
All Hyperparameters

<details><summary>Click to expand</summary>

  • —overwrite_output_dir: False
  • —do_predict: False
  • —eval_strategy: no
  • —prediction_loss_only: True
  • —per_device_train_batch_size: 16
  • —per_device_eval_batch_size: 16
  • —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: 2
  • —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: True
  • —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: {'minnumparams': 0, 'xla': False, 'xlafsdpv2': False, 'xlafsdpgrad_ckpt': False}
  • —tp_size: 0
  • —fsdp_transformer_layer_cls_to_wrap: None
  • —accelerator_config: {'splitbatches': False, 'dispatchbatches': None, 'evenbatches': True, 'useseedablesampler': True, 'nonblocking': False, 'gradientaccumulationkwargs': 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: None
  • —hub_always_push: False
  • —gradient_checkpointing: False
  • —gradient_checkpointing_kwargs: None
  • —include_inputs_for_metrics: False
  • —include_for_metrics: []
  • —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
  • —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
  • —use_liger_kernel: False
  • —eval_use_gather_object: False
  • —average_tokens_across_devices: False
  • —prompts: None
  • —batch_sampler: batch_sampler
  • —multi_dataset_batch_sampler: round_robin

</details>

Training Logs

EpochStepTraining Loss
0.08785001.3374
0.175610000.8677
0.263415000.785
0.351220000.7487
0.439125000.7374
0.526930000.713
0.614735000.7142
0.702540000.6895
0.790345000.6907
0.878150000.6976
0.965955000.6975
1.053760000.6712
1.141665000.6661
1.229470000.6708
1.317275000.6655
1.405080000.6627
1.492885000.6601
1.580690000.6665
1.668495000.6649
1.7562100000.6675
1.8440105000.6639
1.9319110000.6634

Framework Versions

  • —Python: 3.11.12
  • —Sentence Transformers: 4.1.0
  • —Transformers: 4.51.3
  • —PyTorch: 2.6.0+cu124
  • —Accelerate: 1.6.0
  • —Datasets: 2.14.4
  • —Tokenizers: 0.21.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",
}
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}
}

<!--

Glossary

Clearly define terms in order to be accessible across audiences. -->

<!--

Model Card Authors

Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction. -->

<!--

Model Card Contact

Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors. -->