Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Paper • 1908.10084 • Published • 12
This is a sentence-transformers model finetuned from sentence-transformers/all-MiniLM-L6-v2 on the json dataset. 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.
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()
)
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("GbrlOl/finetune-embedding-all-MiniLM-L6-v2-geotechnical-test-v2")
# Run inference
sentences = [
'¿Cuál fue la vida útil estimada del Proyecto Reapertura Mina Guanaco en 2009?',
'B ORRA DOR \n \n \n \niv \n \nEn Mayo de 2008, Guanaco Compañía Minera sometió al Sistema de Evaluación de Impacto \nAmbiental el Proyecto Reapertura Mina Guanaco, el que fue evaluado por la COREMA Región de \nAntofagasta y calificado ambientalmente en forma favorable según consta en la Resolución Exenta \n0251/2009 de fecha 15 de Julio de 2009. \n \nDicho Proyecto tuvo como objetivo la continuación de la explotación de depósitos minerales de oro \nsituados en formaciones adyacentes a la Mina Guanaco mediante el desarrollo de minas a cielo \nabierto y subterráneas para, posteriormente, procesar los minerales y obtener metal doré. La vida \nútil estimada del Proyecto Reapertura Mina Guanaco en 2009 ascendía a 10 incluyendo 1 año de \nconstrucción, con base en un ritmo de procesamiento del mineral de entre 750 a 2.000 tpd de \nmineral fresco de las minas tanto subterráneas como a rajo abierto. \n \nSe estimó que durante la vida útil del Proyecto, se removerían desde los rajos entre 2 y 3 millones \nde toneladas de material y otros 10 a 12 millones de toneladas de material provendrían de las \nminas subterráneas. Con ello el material total a remover sería del orden de las 12 a 15 millones \ntoneladas y el material estéril correspondería a 7 a 9 millones de toneladas. Dependiendo de la \ntasa de procesamiento del mineral la producción anual sería de aproximadamente de 100 a 150 mil \nonzas de plata y 100 mil onzas de oro contenidas en metal doré. \n \nEl proyecto de Reapertura estableció la utilización de sus antiguas instalaciones, complementadas \ncon los nuevos procesos implementados.',
'Proyecto que finalmente no se materializó por parte \nde Amax Guanaco. \n \nEn 1998 Compañía Minera Amax Guanaco es adquirida por Kinross Gold Corporation formando \nuna sociedad llamada Minera Kinam Guanaco. Las faenas de extracción fueron paralizadas ese \nmismo año manteniéndose sólo la irrigación de las pilas para extraer el mineral remanente, \nproceso que se detuvo en Julio de 2001. Entre esa fec ha y el año 2003 se continuó lavando las \npilas para extraer el cianuro remanente y durante los años ven ideros se mantuvo la recirculación \nde las soluciones (sin cianuro) para evaporar el agua retenida en las pilas. \n \nEn la actualidad Guanaco Compañía Minera SpA es la actual dueña de la faena. Guanaco es una \nfaena de la mediana minería ( de acuerdo a la modificación de la ley 20.551), la cual se encuentra \ndedicada a la explotación y procesamiento de minerales de oro y plata, a una tasa máxima de \nprocesamiento de 2000 tpd, de acuerdo a la Res.Nº992/2010 y Res N° 506/2013.',
]
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]
query, sentence, and label| query | sentence | label | |
|---|---|---|---|
| type | string | string | int |
| details |
|
|
|
| query | sentence | label |
|---|---|---|
¿Se utilizaron antecedentes geológicos? |
B ORRA DOR |
0 |
La compactación de los relaves filtrados es por Proctor Normal o Estándar, o Proctor Modificado? |
Configuración intermedia del Botadero Sur y secciones para el análisis ...................................... 12 |
0 |
¿Cuál es el método de compactación del muro de embalse: proctor modificado, proctor normal o densidad relativa? |
43 |
0 |
CoSENTLoss with these parameters:{
"scale": 20.0,
"similarity_fct": "pairwise_cos_sim"
}
per_device_train_batch_size: 16per_device_eval_batch_size: 16learning_rate: 2e-05num_train_epochs: 100warmup_ratio: 0.1fp16: Truebatch_sampler: no_duplicatesoverwrite_output_dir: Falsedo_predict: Falseeval_strategy: noprediction_loss_only: Trueper_device_train_batch_size: 16per_device_eval_batch_size: 16per_gpu_train_batch_size: Noneper_gpu_eval_batch_size: Nonegradient_accumulation_steps: 1eval_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: 100max_steps: -1lr_scheduler_type: linearlr_scheduler_kwargs: {}warmup_ratio: 0.1warmup_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: no_duplicatesmulti_dataset_batch_sampler: proportional| Epoch | Step | Training Loss |
|---|---|---|
| 2.7222 | 100 | 4.5637 |
| 5.4167 | 200 | 1.6848 |
| 8.1111 | 300 | 0.4771 |
| 10.8333 | 400 | 0.1894 |
| 13.5278 | 500 | 0.0413 |
| 16.2222 | 600 | 0.019 |
| 18.9444 | 700 | 0.0085 |
| 21.6389 | 800 | 0.0088 |
| 24.3333 | 900 | 0.0097 |
| 27.0278 | 1000 | 0.0 |
| 29.75 | 1100 | 0.0001 |
| 32.4444 | 1200 | 0.0 |
| 35.1389 | 1300 | 0.0 |
| 37.8611 | 1400 | 0.0 |
| 40.5556 | 1500 | 0.0 |
| 43.25 | 1600 | 0.0 |
| 45.9722 | 1700 | 0.0 |
| 48.6667 | 1800 | 0.0 |
| 51.3611 | 1900 | 0.0 |
| 54.0556 | 2000 | 0.0 |
| 56.7778 | 2100 | 0.0 |
| 59.4722 | 2200 | 0.0 |
| 62.1667 | 2300 | 0.0 |
| 64.8889 | 2400 | 0.0 |
| 67.5833 | 2500 | 0.0 |
| 70.2778 | 2600 | 0.0 |
| 73.0 | 2700 | 0.0 |
| 75.6944 | 2800 | 0.0 |
| 78.3889 | 2900 | 0.0 |
| 81.0833 | 3000 | 0.0 |
| 83.8056 | 3100 | 0.0 |
| 86.5 | 3200 | 0.0 |
| 89.1944 | 3300 | 0.0 |
| 91.9167 | 3400 | 0.0 |
| 94.6111 | 3500 | 0.0 |
| 97.3056 | 3600 | 0.0 |
@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",
}
@online{kexuefm-8847,
title={CoSENT: A more efficient sentence vector scheme than Sentence-BERT},
author={Su Jianlin},
year={2022},
month={Jan},
url={https://kexue.fm/archives/8847},
}
Base model
sentence-transformers/all-MiniLM-L6-v2