model_stage1 / README.md
huudan123's picture
Add new SentenceTransformer model.
b7466e5 verified
metadata
base_model: vinai/phobert-base-v2
datasets: []
language: []
library_name: sentence-transformers
metrics:
  - pearson_cosine
  - spearman_cosine
  - pearson_manhattan
  - spearman_manhattan
  - pearson_euclidean
  - spearman_euclidean
  - pearson_dot
  - spearman_dot
  - pearson_max
  - spearman_max
pipeline_tag: sentence-similarity
tags:
  - sentence-transformers
  - sentence-similarity
  - feature-extraction
  - generated_from_trainer
  - dataset_size:102174
  - loss:TripletLoss
widget:
  - source_sentence: >-
      tôi nghĩ là tôi đã đọc rất nhiều về những đứa trẻ cồn của hội_chứng nghiện
      rượu mà tôi không biết cô có nghe nói về điều đó hay không
    sentences:
      - Tôi đã đọc rất nhiều về cách uống rượu  thực_sự tốt cho trẻ_em .
      - >-
        Tôi đã đọc về những đứa trẻ của Alcoholics , anh có quen với hội_chứng
        đó không ?
      - Bộ trang_phục cá_nhân không phải  giá rẻ .
  - source_sentence: >-
      năm 196 thông_qua những nỗ_lực chung của ngân_khố omb và gao một cơ_thể
      của các nguyên_tắc kế_toán được chấp_nhận gấp bao_gồm hầu_hết các
      giao_dịch đã được promulgated cho chính_phủ liên_bang
    sentences:
      - Các gấp đã bao_phủ hầu_hết các giao_dịch được tạo ra vào năm 1996 .
      - >-
        Đất_nước tập_trung vào du_lịch , điều đó dẫn đến một số_lượng lớn tòa
        nhà .
      - Chính_phủ liên_bang promulgated gấp vào năm 2010 .
  - source_sentence: >-
      yeah yeah tôi nghĩ rằng thực_sự tôi nghĩ rằng họ sẽ nhận được um một_số
      trong số họ từ nam mỹ
    sentences:
      - Tôi nghĩ rằng họ sẽ nhận được một_số trong số họ từ nam mỹ
      - >-
        Nếu bạn không đến bằng du_thuyền , bạn sẽ phải đi một chuyến đi bumpy 15
        dặm từ saint - Martin .
      - Họ không nhập_khẩu bất_kỳ trong số đó từ nam mỹ
  - source_sentence: >-
      chính_xác và nếu bạn có một chiếc xe không có nơi nào để đỗ nó dù bạn biết
      đó chỉ là bạn không có một chiếc xe nhưng sau đó chúng_tôi đến đây và họ
      có bãi đậu xe trong các trường_học và tôi không_thể hiểu được rằng bạn
      biết tất_cả những gì trẻ_em có ô_tô và những người bạn biết phải có một
      chiếc xe
    sentences:
      - Tôi nên xuống đó  cho anh ta nghỉ_ngơi .
      - Tôi chưa bao_giờ đến một trường_học  nhiều tài_xế học_sinh .
      - >-
        Tôi rất ngạc_nhiên khi thấy rằng tất_cả bọn trẻ đều có xe khi chúng_tôi
        đến đấy .
  - source_sentence: >-
      cửa_hàng quà tặng ở chân cầu giữa hai tòa nhà cung_cấp một lựa_chọn
      tuyệt_vời về những kỷ_niệm chất_lượng bản_sao và áp_phích của văn_hóa_nara
    sentences:
      - Tôi có_thể nhìn thấy những  bạn đang nói
      - Cửa_hàng quà tặng chỉ bán kẹo  bánh_nướng .
      - Cửa_hàng quà tặng  rất nhiều kỷ_niệm tuyệt_vời của nara .
model-index:
  - name: SentenceTransformer based on vinai/phobert-base-v2
    results:
      - task:
          type: semantic-similarity
          name: Semantic Similarity
        dataset:
          name: sts evaluator
          type: sts-evaluator
        metrics:
          - type: pearson_cosine
            value: 0.448183724877241
            name: Pearson Cosine
          - type: spearman_cosine
            value: 0.49798976487683716
            name: Spearman Cosine
          - type: pearson_manhattan
            value: 0.5665490459892699
            name: Pearson Manhattan
          - type: spearman_manhattan
            value: 0.573356017341304
            name: Spearman Manhattan
          - type: pearson_euclidean
            value: 0.487433096753723
            name: Pearson Euclidean
          - type: spearman_euclidean
            value: 0.5022088475069951
            name: Spearman Euclidean
          - type: pearson_dot
            value: 0.41082418016183564
            name: Pearson Dot
          - type: spearman_dot
            value: 0.4285949743481224
            name: Spearman Dot
          - type: pearson_max
            value: 0.5665490459892699
            name: Pearson Max
          - type: spearman_max
            value: 0.573356017341304
            name: Spearman Max

SentenceTransformer based on vinai/phobert-base-v2

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

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: RobertaModel 
  (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:

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("huudan123/model_stage1")
# Run inference
sentences = [
    'cửa_hàng quà tặng ở chân cầu giữa hai tòa nhà cung_cấp một lựa_chọn tuyệt_vời về những kỷ_niệm chất_lượng bản_sao và áp_phích của văn_hóa_nara',
    'Cửa_hàng quà tặng có rất nhiều kỷ_niệm tuyệt_vời của nara .',
    'Cửa_hàng quà tặng chỉ bán kẹo và bánh_nướng .',
]
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

Semantic Similarity

Metric Value
pearson_cosine 0.4482
spearman_cosine 0.498
pearson_manhattan 0.5665
spearman_manhattan 0.5734
pearson_euclidean 0.4874
spearman_euclidean 0.5022
pearson_dot 0.4108
spearman_dot 0.4286
pearson_max 0.5665
spearman_max 0.5734

Training Details

Training Hyperparameters

Non-Default Hyperparameters

  • overwrite_output_dir: True
  • eval_strategy: epoch
  • per_device_train_batch_size: 128
  • per_device_eval_batch_size: 128
  • num_train_epochs: 15
  • warmup_ratio: 0.1
  • fp16: True
  • load_best_model_at_end: True
  • gradient_checkpointing: True

All Hyperparameters

Click to expand
  • overwrite_output_dir: True
  • do_predict: False
  • eval_strategy: epoch
  • prediction_loss_only: True
  • per_device_train_batch_size: 128
  • per_device_eval_batch_size: 128
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 1
  • eval_accumulation_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.0
  • num_train_epochs: 15
  • max_steps: -1
  • lr_scheduler_type: linear
  • 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: 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: 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
  • 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: True
  • 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
  • batch_sampler: batch_sampler
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss loss sts-evaluator_spearman_cosine
0 0 - - 0.6643
0.6258 500 2.6454 - -
1.0 799 - 1.4970 0.5082
1.2516 1000 1.6242 - -
1.8773 1500 1.4441 - -
2.0 1598 - 1.3278 0.5658
2.5031 2000 1.1204 - -
3.0 2397 - 1.2538 0.5397
3.1289 2500 0.973 - -
3.7547 3000 0.7077 - -
4.0 3196 - 1.2978 0.5151
4.3805 3500 0.5556 - -
5.0 3995 - 1.3334 0.5034
5.0063 4000 0.4768 - -
5.6320 4500 0.3041 - -
6.0 4794 - 1.3129 0.4992
6.2578 5000 0.2762 - -
6.8836 5500 0.2116 - -
7.0 5593 - 1.3389 0.4980
  • The bold row denotes the saved checkpoint.

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 3.0.1
  • Transformers: 4.42.4
  • PyTorch: 2.3.1+cu121
  • Accelerate: 0.33.0
  • Datasets: 2.20.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",
}

TripletLoss

@misc{hermans2017defense,
    title={In Defense of the Triplet Loss for Person Re-Identification}, 
    author={Alexander Hermans and Lucas Beyer and Bastian Leibe},
    year={2017},
    eprint={1703.07737},
    archivePrefix={arXiv},
    primaryClass={cs.CV}
}