SentenceTransformer
This is a sentence-transformers model trained on the klue/klue 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.
Model Details
Model Description
- Model Type: Sentence Transformer
- Maximum Sequence Length: 512 tokens
- Output Dimensionality: 768 tokens
- Similarity Function: Cosine Similarity
- Training Dataset:
- Language: ko
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': 512, 'do_lower_case': False}) with Transformer model: BertModel
(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("snunlp/KR-SBERT-Medium-extended-klueNLItriplet_PARpair_QApair-klueSTS")
# Run inference
sentences = [
'SR은 동대구·김천구미·신경주역에서 승하차하는 모든 국민에게 운임 10%를 할인해 준다.',
'SR은 동대구역, 김천구미역, 신주역을 오가는 모든 승객을 대상으로 요금을 10% 할인해 드립니다.',
'수강신청 하는 날짜가 어느 날짜인지 아시는지요?',
]
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
- Dataset:
sts-dev
- Evaluated with
EmbeddingSimilarityEvaluator
Metric | Value |
---|---|
pearson_cosine | 0.8786 |
spearman_cosine | 0.8765 |
pearson_manhattan | 0.8589 |
spearman_manhattan | 0.8582 |
pearson_euclidean | 0.8595 |
spearman_euclidean | 0.8597 |
pearson_dot | 0.8518 |
spearman_dot | 0.8479 |
pearson_max | 0.8786 |
spearman_max | 0.8765 |
Training Details
Training Dataset
klue/klue
- Dataset: klue/klue at 349481e
- Size: 11,668 training samples
- Columns:
sentence1
,sentence2
, andlabel
- Approximate statistics based on the first 1000 samples:
sentence1 sentence2 label type string string float details - min: 7 tokens
- mean: 18.12 tokens
- max: 56 tokens
- min: 6 tokens
- mean: 17.58 tokens
- max: 60 tokens
- min: 0.0
- mean: 0.44
- max: 1.0
- Samples:
sentence1 sentence2 label 숙소 위치는 찾기 쉽고 일반적인 한국의 반지하 숙소입니다.
숙박시설의 위치는 쉽게 찾을 수 있고 한국의 대표적인 반지하 숙박시설입니다.
0.7428571428571428
위반행위 조사 등을 거부·방해·기피한 자는 500만원 이하 과태료 부과 대상이다.
시민들 스스로 자발적인 예방 노력을 한 것은 아산 뿐만이 아니었다.
0.0
회사가 보낸 메일은 이 지메일이 아니라 다른 지메일 계정으로 전달해줘.
사람들이 주로 네이버 메일을 쓰는 이유를 알려줘
0.06666666666666667
- Loss:
CosineSimilarityLoss
with these parameters:{ "loss_fct": "torch.nn.modules.loss.MSELoss" }
Evaluation Dataset
klue/klue
- Dataset: klue/klue at 349481e
- Size: 519 evaluation samples
- Columns:
sentence1
,sentence2
, andlabel
- Approximate statistics based on the first 1000 samples:
sentence1 sentence2 label type string string float details - min: 7 tokens
- mean: 18.16 tokens
- max: 55 tokens
- min: 7 tokens
- mean: 17.69 tokens
- max: 58 tokens
- min: 0.0
- mean: 0.5
- max: 1.0
- Samples:
sentence1 sentence2 label 무엇보다도 호스트분들이 너무 친절하셨습니다.
무엇보다도, 호스트들은 매우 친절했습니다.
0.9714285714285713
주요 관광지 모두 걸어서 이동가능합니다.
위치는 피렌체 중심가까지 걸어서 이동 가능합니다.
0.2857142857142858
학생들의 균형 있는 영어능력을 향상시킬 수 있는 학교 수업을 유도하기 위해 2018학년도 수능부터 도입된 영어 영역 절대평가는 올해도 유지한다.
영어 영역의 경우 학생들이 한글 해석본을 암기하는 문제를 해소하기 위해 2016학년도부터 적용했던 EBS 연계 방식을 올해도 유지한다.
0.25714285714285723
- Loss:
CosineSimilarityLoss
with these parameters:{ "loss_fct": "torch.nn.modules.loss.MSELoss" }
Training Hyperparameters
Non-Default Hyperparameters
eval_strategy
: stepsper_device_train_batch_size
: 64per_device_eval_batch_size
: 64num_train_epochs
: 30warmup_ratio
: 0.1fp16
: True
All Hyperparameters
Click to expand
overwrite_output_dir
: Falsedo_predict
: Falseeval_strategy
: stepsprediction_loss_only
: Trueper_device_train_batch_size
: 64per_device_eval_batch_size
: 64per_gpu_train_batch_size
: Noneper_gpu_eval_batch_size
: Nonegradient_accumulation_steps
: 1eval_accumulation_steps
: Nonelearning_rate
: 5e-05weight_decay
: 0.0adam_beta1
: 0.9adam_beta2
: 0.999adam_epsilon
: 1e-08max_grad_norm
: 1.0num_train_epochs
: 30max_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
: Falsehub_always_push
: Falsegradient_checkpointing
: Falsegradient_checkpointing_kwargs
: Noneinclude_inputs_for_metrics
: Falseeval_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
: Falsebatch_sampler
: batch_samplermulti_dataset_batch_sampler
: proportional
Training Logs
Epoch | Step | Training Loss | loss | sts-dev_spearman_cosine |
---|---|---|---|---|
0 | 0 | - | - | 0.7123 |
0.0109 | 1 | 0.0255 | - | - |
0.5435 | 50 | 0.0225 | 0.0336 | 0.7961 |
1.0870 | 100 | 0.0159 | 0.0288 | 0.8299 |
1.6304 | 150 | 0.012 | 0.0258 | 0.8499 |
2.1739 | 200 | 0.0098 | 0.0238 | 0.8651 |
2.7174 | 250 | 0.0069 | 0.0233 | 0.8700 |
3.2609 | 300 | 0.0056 | 0.0241 | 0.8682 |
3.8043 | 350 | 0.0043 | 0.0231 | 0.8715 |
4.3478 | 400 | 0.0043 | 0.0261 | 0.8680 |
4.8913 | 450 | 0.0039 | 0.0239 | 0.8743 |
5.4348 | 500 | 0.0037 | 0.0247 | 0.8726 |
5.9783 | 550 | 0.0034 | 0.0231 | 0.8762 |
6.5217 | 600 | 0.003 | 0.0238 | 0.8746 |
7.0652 | 650 | 0.003 | 0.0246 | 0.8712 |
7.6087 | 700 | 0.0028 | 0.0240 | 0.8765 |
Framework Versions
- Python: 3.11.9
- Sentence Transformers: 3.0.1
- Transformers: 4.41.2
- PyTorch: 2.3.1
- Accelerate: 0.31.0
- Datasets: 2.19.2
- 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",
}
- Downloads last month
- 105
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social
visibility and check back later, or deploy to Inference Endpoints (dedicated)
instead.
Dataset used to train snunlp/KR-SBERT-Medium-extended-klueNLItriplet_PARpair_QApair-klueSTS
Evaluation results
- Pearson Cosine on sts devself-reported0.879
- Spearman Cosine on sts devself-reported0.877
- Pearson Manhattan on sts devself-reported0.859
- Spearman Manhattan on sts devself-reported0.858
- Pearson Euclidean on sts devself-reported0.860
- Spearman Euclidean on sts devself-reported0.860
- Pearson Dot on sts devself-reported0.852
- Spearman Dot on sts devself-reported0.848
- Pearson Max on sts devself-reported0.879
- Spearman Max on sts devself-reported0.877