Edit model card

SentenceTransformer based on DTAI-KULeuven/robbert-2023-dutch-base

This is a sentence-transformers model finetuned from DTAI-KULeuven/robbert-2023-dutch-base. 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: DTAI-KULeuven/robbert-2023-dutch-base
  • 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("ymelka/robbert-cosmetic-similarity-v1")
# Run inference
sentences = [
    'Een rijke gezichtsverzorging voor vrouwen van 60 jaar en ouder, die te maken hebben met een vette huid, vergrote poriën en droogheid. Deze verzorging helpt bij het reguleren van talgproductie, het verfijnen van de poriën en het herstellen van de vochtbalans van de huid. Het resulteert in een egale en jeugdige uitstraling.',
    'New Nordic Hair Volume tabletten ondersteunen het behoud van gezond haar door voedingsstoffen zoals biotine, zink en appelextract naar de hoofdhuid en haarfollikels te brengen. Deze tabletten bevatten tevens gierst en koper, die het haar van binnenuit versterken en volume geven. Door de unieke combinatie van ingrediënten wordt de haargroei gestimuleerd en voelt het haar sterk en vol aan. Neem dagelijks 1 tablet met water bij een maaltijd voor optimale resultaten. Niet geschikt voor zwangere vrouwen, vrouwen die borstvoeding geven en kinderen jonger dan 11 jaar.',
    'Avène Cleanance Zuiverende En Matterende Reinigingsgel is speciaal ontwikkeld voor de vette huid met imperfecties. Deze reinigingsgel reinigt de huid diep en verwijdert onzuiverheden en overtollig talg, waardoor de huid fris en mat blijft. De formule bevat actieve ingrediënten zoals Avène Thermaal Water en Monolaurine die de talgproductie reguleren en de huid zuiveren. Gebruik de reinigingsgel dagelijks, breng aan op een vochtig gezicht en masseer zachtjes in. Spoel af met water en dep de huid droog. Vermijd contact met de ogen. Geschikt voor dagelijks gebruik.',
]
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.8747
spearman_cosine 0.9329
pearson_manhattan 0.8478
spearman_manhattan 0.9305
pearson_euclidean 0.8455
spearman_euclidean 0.9309
pearson_dot 0.8466
spearman_dot 0.9279
pearson_max 0.8747
spearman_max 0.9329

Training Details

Training Dataset

Unnamed Dataset

  • Size: 4,100 training samples
  • Columns: sentence1, sentence2, and score
  • Approximate statistics based on the first 1000 samples:
    sentence1 sentence2 score
    type string string float
    details
    • min: 35 tokens
    • mean: 56.73 tokens
    • max: 86 tokens
    • min: 80 tokens
    • mean: 147.02 tokens
    • max: 226 tokens
    • min: 0.0
    • mean: 0.51
    • max: 1.0
  • Samples:
    sentence1 sentence2 score
    Een hydraterende gezichtsverzorging voor mannen van 28 jaar oud, die specifiek is ontworpen om de doffe huid te verhelderen en te hydrateren. De formule bevat antioxidanten om de huid te beschermen tegen vrije radicalen en om wallen te verminderen. Het helpt ook bij het verminderen van droogheid en het verbeteren van de huidelasticiteit. Natessance Biologische Jojoba Olie is een 100% pure olie die bekend staat om haar voedende en regenererende eigenschappen. Deze olie verfraait en beschermt de huid, waardoor deze elastischer wordt en het haar soepeler en glanzender maakt. Geschikt voor alle huid- en haartypes, bevat deze formule vierge biologische jojoba-olie van koude persing zonder toevoegingen. Breng de olie aan op het haar vóór het wassen met shampoo en op een schone en droge huid voor het gezicht en lichaam. De fles bevat 50 ml en is ideaal voor dagelijks gebruik. 0.0614345669746398
    Een milde reiniger speciaal ontwikkeld voor de rijpere huid van vrouwen van 50 jaar en ouder. Deze reiniger verwijdert overtollig talg en onzuiverheden, terwijl het de huid hydrateert en een doffe teint revitaliseert. De Clarins Zachte Schuimende Verzachtende Reiniger is speciaal ontwikkeld voor de zeer droge en gevoelige huid. Dit reinigingsschuim reinigt de huid grondig, verwijdert make-up en hydrateert intensief. De formule bevat actieve ingrediënten zoals shea butter, Moringa zaad extract en kamille bloem extract, die de huid verzachten en in balans houden. Gebruik de reiniger dagelijks door een kleine hoeveelheid op de vochtige huid aan te brengen en zachtjes in te masseren. Spoel vervolgens af met water. Voor een optimaal resultaat wordt aanbevolen om de reiniger 's ochtends en 's avonds te gebruiken. Let op: vermijd contact met de ogen en spoel grondig met water bij contact. 0.9998431205749512
    Een hydraterende gezichtscrème die diep doordringt om droogheid te verlichten en de huid te voeden. Bevat antioxidanten om de teint te verbeteren en de huid te beschermen tegen schadelijke invloeden van buitenaf. Ideaal voor vrouwen van 60 jaar en ouder. Apivita After Sun Beperkte Editie 200ml is een verfrissende en hydraterende aftersun lotion die speciaal is ontwikkeld om de huid te kalmeren en te herstellen na blootstelling aan de zon. Deze lotion bevat natuurlijke ingrediënten zoals aloë vera, kamille en olijfolie, die de huid verzachten, hydrateren en verkoelen. Aloë vera staat bekend om zijn kalmerende werking op de huid, terwijl kamille ontstekingsremmende eigenschappen heeft en de huid helpt te herstellen. Olijfolie voedt en hydrateert de huid diep, waardoor deze zacht en soepel aanvoelt. Breng de lotion royaal aan op de huid na blootstelling aan de zon en herhaal indien nodig. Vermijd contact met de ogen en bij eventuele irritatie stop het gebruik. Apivita After Sun Beperkte Editie 200ml is de perfecte aftersun lotion voor een gehydrateerde en gekalmeerde huid na een dag in de zon. 0.0812613666057586
  • Loss: CoSENTLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "pairwise_cos_sim"
    }
    

Evaluation Dataset

Unnamed Dataset

  • Size: 790 evaluation samples
  • Columns: sentence1, sentence2, and score
  • Approximate statistics based on the first 1000 samples:
    sentence1 sentence2 score
    type string string float
    details
    • min: 35 tokens
    • mean: 56.71 tokens
    • max: 81 tokens
    • min: 95 tokens
    • mean: 146.68 tokens
    • max: 225 tokens
    • min: 0.0
    • mean: 0.51
    • max: 1.0
  • Samples:
    sentence1 sentence2 score
    Een milde reiniger speciaal ontwikkeld voor de gevoelige huid van vrouwen van 40 jaar en ouder. Deze reiniger helpt bij het verwijderen van onzuiverheden en overtollig talg, terwijl het de huid hydrateert en verzacht. Het is ideaal voor het verminderen van droogheid en roodheid op het gezicht. De Cattier Zuiverende Reinigingsgel is speciaal ontwikkeld voor de vette huid met onzuiverheden en puistjes. Met biologische essentiële oliën van tea tree, rozemarijn en pepermunt reinigt deze gel zacht de huid en verwijdert effectief onzuiverheden en overtollig talg. Verrijkt met aloë vera, biedt het een aangename sensatie van frisheid en laat de huid helder en gezond achter. De actieve ingrediënten, waaronder biologische tea tree olie en aloë vera, helpen de huid te zuiveren, hydrateren en beschermen. Breng de gel aan op een vochtig gezicht, vermijd de oogcontour, masseer in en spoel af met lauw water. Gebruik de gel regelmatig voor een zuivere en gezonde huid. 0.9999536275863647
    Een voedende gezichtsverzorging voor vrouwen van 55 jaar en ouder met een droge en doffe huid. Deze verzorging is rijk aan hydraterende en voedende ingrediënten om de huid te verzachten, te voeden en te herstellen. Het helpt ook om roodheid te verminderen en de huid te laten stralen. Nivea Care Nutrition Intense Snel Intrekkende Gezichts-En Lichaamscrème is een all-purpose crème die de huid intens voedt zonder een vettig gevoel achter te laten. De formule is verrijkt met voedende hydro-waxen die onmiddellijk op de huid smelten, waardoor de huid 24 uur lang intens gevoed wordt. Dermatologisch goedgekeurd en 100% voedend. Ideaal voor een gehydrateerde en zachte huid. Breng de crème aan op een schone huid en masseer zachtjes in. Geschikt voor dagelijks gebruik. Voorzichtigheid geboden bij allergieën voor de vermelde ingrediënten. 0.9952190518379213
    Een milde reiniger speciaal ontwikkeld voor de gevoelige huid van mannen van 75 jaar en ouder. Verwijdert overtollig talg en onzuiverheden, terwijl het de poriën verkleint en de huid verzacht. Helpt bij het verminderen van rimpels en het verbeteren van de algehele huidtextuur. De Fleurance Nature Uiterst Rijke Dagcrème Met Sheaboter is een voedend verzorgingsproduct dat speciaal is ontwikkeld voor de droge tot zeer droge huid. De crème beschermt de huid tegen uitdroging en agressieve invloeden van buitenaf, terwijl het ook een trekkerig gevoel kalmeert. Dankzij de rijke textuur wordt de huid intens gevoed en gehydrateerd, waardoor deze de hele dag soepel en comfortabel aanvoelt. De dagcrème bevat sheaboter uit Fair Trade handel, aloe vera, zoete amandelolie en zonnebloemzaadolie, die de huid verzachten en verlichten. Breng de crème 's ochtends en 's avonds aan op een schone en droge huid van gezicht en hals voor optimale resultaten. Dit product is geschikt voor uitwendig gebruik en is speciaal ontwikkeld voor mensen met een droge tot zeer droge huid. 0.8514625430107117
  • Loss: CoSENTLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "pairwise_cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • learning_rate: 2e-05
  • weight_decay: 0.01
  • warmup_ratio: 0.1
  • bf16: True
  • batch_sampler: no_duplicates

All Hyperparameters

Click to expand
  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 8
  • per_device_eval_batch_size: 8
  • per_gpu_train_batch_size: None
  • per_gpu_eval_batch_size: None
  • gradient_accumulation_steps: 1
  • eval_accumulation_steps: None
  • learning_rate: 2e-05
  • weight_decay: 0.01
  • adam_beta1: 0.9
  • adam_beta2: 0.999
  • adam_epsilon: 1e-08
  • max_grad_norm: 1.0
  • num_train_epochs: 3
  • 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: True
  • 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: False
  • 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: {'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: False
  • 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: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

Epoch Step Training Loss loss dev_spearman_cosine
0 0 - - 0.6910
0.3899 200 2.93 2.8793 0.8809
0.7797 400 2.7965 2.7213 0.8993
1.1696 600 2.6738 2.6655 0.9253
1.5595 800 2.5102 2.6055 0.9216
1.9493 1000 2.4069 2.8576 0.9057
2.3392 1200 2.2689 2.9301 0.9282
2.7290 1400 2.168 2.6996 0.9349
3.0 1539 - - 0.9329

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 3.0.1
  • Transformers: 4.42.3
  • PyTorch: 2.3.0+cu121
  • Accelerate: 0.32.1
  • 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",
}

CoSENTLoss

@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},
}
Downloads last month
3
Safetensors
Model size
124M params
Tensor type
F32
·
Inference API
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.

Evaluation results