Matryoshka Representation Learning
Paper
• 2205.13147 • Published
• 25
This is a sentence-transformers model finetuned from hiieu/halong_embedding on the law_data_finetune dataset. 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.
SentenceTransformer(
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: XLMRobertaModel
(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()
)
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("test_finetune_law_5_matryoshkaloss")
# Run inference
sentences = [
'Quy định pháp luật nào xử lý vi phạm đối với việc không thực hiện 38 thủ tục hành chính lĩnh vực tôn giáo trực tuyến toàn trình ở Tuyên Quang?',
'Quyết định 1067/QĐ-UBND năm 2024 công bố danh mục 38 thủ tục hành chính đủ điều kiện thực hiện dịch vụ công trực tuyến toàn trình lĩnh vực tín ngưỡng, tôn giáo thuộc phạm vi quản lý nhà nước của Sở Nội vụ tỉnh Tuyên Quang\nĐiều 4. Chánh Văn phòng Ủy ban nhân dân tỉnh; Giám đốc các Sở, Thủ trưởng Ban, Ngành; Chủ tịch Ủy ban nhân dân huyện, thành phố; Chủ tịch Ủy ban nhân dân xã, phường, thị trấn và các cơ quan, tổ chức, cá nhân có liên quan chịu trách nhiệm thi hành Quyết định này',
'Quyết định 2612/QĐ-BGTVT năm 2009 về việc thành lập Tổ Biên tập Dự thảo Nghị định của Chính phủ về xử phạt vi phạm hành chính trong lĩnh vực hàng không dân dụng do Bộ trưởng Bộ Giao thông vận tải ban hành\nĐiều 1. Thành lập Tổ Biên tập Dự thảo Nghị định của Chính phủ về xử phạt vi phạm hành chính trong lĩnh vực hàng không dân dụng gồm các ông (bà) như sau:\n1. Ông Nguyễn Văn Thuấn, Vụ trưởng Vụ An toàn giao thông, Bộ Giao thông vận tải – Tổ trưởng Tổ Biên tập;\n2. Ông Lại Xuân Thanh – Phó Cục trưởng Cục Hàng không Việt Nam – Phó Tổ trưởng Tổ Biên tập;\n3. Thượng tá Đỗ Văn Cương, Phó trưởng phòng Vụ Pháp chế, Bộ Công an – Tổ viên;\n4. Ông Nguyễn Trọng Thắng, Chánh Thanh tra Cục Hàng không Việt Nam – Tổ viên;\n5. Ông Trần Văn Trường, Trưởng phòng thanh tra 3, Bộ Giao thông vận tải – Tổ viên\n6. Ông Nguyễn Hồng Hà, Chuyên viên chính Vụ Kinh tế ngành, Văn phòng Chính phủ - Tổ viên;\n7. Bà Trương Phương Lan, Chuyên viên Vụ Pháp luật hình sự - hành chính, Bộ Tư pháp – Tổ viên;\n8. Ông Nguyễn Anh Văn, Cán bộ Vụ Pháp chế, Bộ Quốc phòng – Tổ viên;\n9. Bà Nguyễn Thị Hồng Quyên, Chuyên viên Vụ Luật Pháp và Điều ước quốc tế - Tổ viên;\n10. Bà Trịnh Thị Hằng Nga, Chuyên viên Vụ Pháp chế, Bộ Giao thông vận tải – Tổ viên;\n11. Ông Tạ Văn Thanh, Chuyên viên Vụ Vận tải, Bộ Giao thông vận tải – Tổ viên;\n12. Ông Nguyễn Văn Thuân, Chuyên viên Vụ An toàn giao thông, Bộ Giao thông vận tải – Tổ viên kiêm thư ký;\n13. Ông Đinh Văn Cung, Thanh tra viên Cục Hàng không Việt Nam – Tổ viên kiêm thư ký;\n14. Bà Nguyễn Thu Hằng, Chuyên viên Vụ Môi trường, Bộ Giao thông vận tải – Tổ viên;\n15. Ông Trần Quốc Thắng, Chuyên viên Vụ Kết cấu hạ tầng giao thông, Bộ Giao thông vận tải – Tổ viên.',
]
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]
anchor and positive| anchor | positive | |
|---|---|---|
| type | string | string |
| details |
|
|
| anchor | positive |
|---|---|
Chính phủ quy định cụ thể những nội dung gì liên quan đến quy trình cưỡng chế bàn giao kinh phí bảo trì cho nhà chung cư có nhiều chủ sở hữu? |
Luật Nhà ở 2023 |
Biên chế công chức đã được phê duyệt trong năm 2017 áp dụng cho đơn vị sự nghiệp công lập ở cấp nào trên địa bàn tỉnh Ninh Bình? |
Nghị quyết 45/NQ-HĐND năm 2016 về quyết định biên chế công chức trong cơ quan của Hội đồng nhân dân, Ủy ban nhân dân, đơn vị sự nghiệp công lập của Ủy ban nhân dân các cấp trên địa bàn tỉnh và phê duyệt tổng số lượng người làm việc trong đơn vị sự nghiệp công lập thuộc phạm vi quản lý của tỉnh Ninh Bình năm 2017 |
Thủ tục hành chính về lao động ngoài nước tại An Giang hiện nay đã được chuyển sang xử lý trực tuyến qua hệ thống thông tin một cửa điện tử của tỉnh chưa? |
Quyết định 452/QĐ-UBND năm 2022 phê duyệt quy trình nội bộ trong giải quyết thủ tục hành chính về lĩnh vực quản lý lao động ngoài nước thuộc phạm vi chức năng quản lý của Sở Lao động - Thương binh và Xã hội tỉnh An Giang |
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
}
per_device_train_batch_size: 32gradient_accumulation_steps: 16learning_rate: 2e-05num_train_epochs: 2lr_scheduler_type: cosinewarmup_ratio: 0.05save_safetensors: Falsefp16: Truepush_to_hub: Truehub_model_id: test_finetune_law_5_matryoshkalossbatch_sampler: no_duplicatesoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: noprediction_loss_only: Trueper_device_train_batch_size: 32per_device_eval_batch_size: 8per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 16eval_accumulation_steps: Nonetorch_empty_cache_steps: Nonelearning_rate: 2e-05weight_decay: 0.0adam_beta1: 0.9adam_beta2: 0.999adam_epsilon: 1e-08max_grad_norm: 1.0num_train_epochs: 2max_steps: -1lr_scheduler_type: cosinelr_scheduler_kwargs: {}warmup_ratio: 0.05warmup_steps: 0log_level: passivelog_level_replica: warninglog_on_each_node: Truelogging_nan_inf_filter: Truesave_safetensors: Falsesave_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: Truedataloader_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: Trueresume_from_checkpoint: Nonehub_model_id: test_finetune_law_5_matryoshkalosshub_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: no_duplicatesmulti_dataset_batch_sampler: proportional| Epoch | Step | Training Loss |
|---|---|---|
| 0.0127 | 10 | 2.1784 |
| 0.0254 | 20 | 1.748 |
| 0.0381 | 30 | 0.997 |
| 0.0508 | 40 | 0.7892 |
| 0.0635 | 50 | 0.5799 |
| 0.0762 | 60 | 0.5507 |
| 0.0889 | 70 | 0.5314 |
| 0.1016 | 80 | 0.5095 |
| 0.1143 | 90 | 0.4417 |
| 0.1270 | 100 | 0.4295 |
| 0.1397 | 110 | 0.4198 |
| 0.1524 | 120 | 0.4008 |
| 0.1651 | 130 | 0.3533 |
| 0.1778 | 140 | 0.3875 |
| 0.1905 | 150 | 0.3367 |
| 0.2032 | 160 | 0.3728 |
| 0.2159 | 170 | 0.3644 |
| 0.2286 | 180 | 0.4102 |
| 0.2413 | 190 | 0.3494 |
| 0.2540 | 200 | 0.3153 |
| 0.2667 | 210 | 0.348 |
| 0.2794 | 220 | 0.3175 |
| 0.2921 | 230 | 0.3008 |
| 0.3048 | 240 | 0.3414 |
| 0.3175 | 250 | 0.2953 |
| 0.3302 | 260 | 0.2933 |
| 0.3429 | 270 | 0.3475 |
| 0.3556 | 280 | 0.2988 |
| 0.3683 | 290 | 0.3126 |
| 0.3810 | 300 | 0.3055 |
| 0.3937 | 310 | 0.2891 |
| 0.4063 | 320 | 0.2745 |
| 0.4190 | 330 | 0.3032 |
| 0.4317 | 340 | 0.2743 |
| 0.4444 | 350 | 0.2839 |
| 0.4571 | 360 | 0.2914 |
| 0.4698 | 370 | 0.2682 |
| 0.4825 | 380 | 0.279 |
| 0.4952 | 390 | 0.2553 |
| 0.5079 | 400 | 0.2743 |
| 0.5206 | 410 | 0.2907 |
| 0.5333 | 420 | 0.2564 |
| 0.5460 | 430 | 0.2839 |
| 0.5587 | 440 | 0.2721 |
| 0.5714 | 450 | 0.2628 |
| 0.5841 | 460 | 0.2521 |
| 0.5968 | 470 | 0.2652 |
| 0.6095 | 480 | 0.2476 |
| 0.6222 | 490 | 0.2637 |
| 0.6349 | 500 | 0.253 |
| 0.6476 | 510 | 0.2323 |
| 0.6603 | 520 | 0.2593 |
| 0.6730 | 530 | 0.2367 |
| 0.6857 | 540 | 0.2636 |
| 0.6984 | 550 | 0.2412 |
| 0.7111 | 560 | 0.2403 |
| 0.7238 | 570 | 0.2641 |
| 0.7365 | 580 | 0.2387 |
| 0.7492 | 590 | 0.2569 |
| 0.7619 | 600 | 0.2541 |
| 0.7746 | 610 | 0.2331 |
| 0.7873 | 620 | 0.2487 |
| 0.8 | 630 | 0.2459 |
| 0.8127 | 640 | 0.2413 |
| 0.8254 | 650 | 0.225 |
| 0.8381 | 660 | 0.2312 |
| 0.8508 | 670 | 0.2349 |
| 0.8635 | 680 | 0.2367 |
| 0.8762 | 690 | 0.2128 |
| 0.8889 | 700 | 0.2295 |
| 0.9016 | 710 | 0.2134 |
| 0.9143 | 720 | 0.2373 |
| 0.9270 | 730 | 0.2586 |
| 0.9397 | 740 | 0.231 |
| 0.9524 | 750 | 0.2325 |
| 0.9651 | 760 | 0.2309 |
| 0.9778 | 770 | 0.229 |
| 0.9905 | 780 | 0.2148 |
@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",
}
@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}
}
@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}
}
Base model
intfloat/multilingual-e5-base