/ Модель

Характеристики

Контекст
512 токенов
Параметры
162 млн
Лицензия
Apache 2.0
Архитектура
bert · dense
Базовая модель
bert-base-arabertv02
Библиотека
sentence-transformers
Опубликована
16 июн 2024

Arabert-all-nli-triplet-Matryoshka

ЭмбеддингиТекст → embedding9 профессий

Арабская Sentence Transformers-модель создаёт векторные представления предложений для семантического поиска и оценки сходства.

975скачиваний за 30 дней11лайковвеса обновлены23 янв 2025

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Эмбеддинги» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки32

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

  • MLQARetrieval

    main_score

    Результат

    0,0172

    Общий результат 0,0827Общий результат 0,0755Общий результат 0,064
    MTEB

    Публичная таблицадругая ревизия

  • TV2Nordretrieval

    main_score

    Результат

    0,1024

    MTEB

    Публичная таблицадругая ревизия

  • MassiveIntentClassification

    main_score

    Результат

    0,1022

    Общий результат 0,3437Общий результат 0,2123
    MTEB

    Публичная таблицадругая ревизия

  • Tatoeba

    main_score

    Результат

    0,0466

    Общий результат 0,2029Общий результат 0,1176Общий результат 0,0411
    MTEB

    Публичная таблицадругая ревизия

  • LegalQuAD

    main_score

    Результат

    0,0468

    MTEB

    Публичная таблицадругая ревизия

  • MasakhaNEWSClusteringP2P

    main_score

    Результат

    0,239

    MTEB

    Публичная таблицадругая ревизия

  • MIRACLReranking

    main_score

    Результат

    0,0444

    Общий результат 0,0998Общий результат 0,0601
    MTEB

    Публичная таблицадругая ревизия

  • MIRACLRetrieval

    main_score

    Результат

    0

    MTEB

    Публичная таблицадругая ревизия

  • SIB200ClusteringS2S

    main_score

    Результат

    0,0192

    Общий результат 0,0651Общий результат 0,0426Общий результат 0,0354
    MTEB

    Публичная таблицадругая ревизия

  • IndicGenBenchFloresBitextMining

    main_score

    Результат

    0,1044

    Общий результат 0,1155
    MTEB

    Публичная таблицадругая ревизия

  • NusaTranslationBitextMining

    main_score

    Результат

    0,6932

    MTEB

    Публичная таблицадругая ревизия

  • NusaX-senti

    main_score

    Результат

    0,5148

    MTEB

    Публичная таблицадругая ревизия

  • TempReasonL1

    main_score

    Результат

    0,0121

    MTEB

    Публичная таблицадругая ревизия

  • GermanQuAD-Retrieval

    main_score

    Результат

    0,14

    MTEB

    Публичная таблицадругая ревизия

  • LEMBPasskeyRetrieval

    main_score

    Результат

    0,38

    MTEB

    Публичная таблицадругая ревизия

  • StatcanDialogueDatasetRetrieval

    main_score

    Результат

    0,0046

    MTEB

    Публичная таблицадругая ревизия

  • SciFact-PL

    main_score

    Результат

    0,0366

    MTEB

    Публичная таблицадругая ревизия

  • MasakhaNEWSClassification

    main_score

    Результат

    0,2636

    MTEB

    Публичная таблицадругая ревизия

  • MultiEURLEXMultilabelClassification

    main_score

    Результат

    0,0122

    MTEB

    Публичная таблицадругая ревизия

  • MassiveScenarioClassification

    main_score

    Результат

    0,3495

    MTEB

    Публичная таблицадругая ревизия

  • SummEvalSummarization.v2

    main_score

    Результат

    0,2812

    MTEB

    Публичная таблицадругая ревизия

  • STS22

    main_score

    Результат

    0,3474

    Общий результат 0,4889Общий результат −0,169
    MTEB

    Публичная таблицадругая ревизия

  • WikiClusteringP2P.v2

    main_score

    Результат

    0,0074

    MTEB

    Публичная таблицадругая ревизия

  • STS22.v2

    main_score

    Результат

    0,5374

    MTEB

    Публичная таблицадругая ревизия

  • AllegroReviews

    main_score

    Результат

    0,2245

    MTEB

    Публичная таблицадругая ревизия

  • LEMBNeedleRetrieval

    main_score

    Результат

    0,1

    MTEB

    Публичная таблицадругая ревизия

  • GermanDPR

    main_score

    Результат

    0,0583

    MTEB

    Публичная таблицадругая ревизия

  • AlloprofReranking

    main_score

    Результат

    0,3354

    MTEB

    Публичная таблицадругая ревизия

  • CQADupstackWebmastersRetrieval

    main_score

    Результат

    0,0762

    MTEB

    Публичная таблицадругая ревизия

  • CodeSearchNetRetrieval

    main_score

    Результат

    0,1872

    MTEB

    Публичная таблицадругая ревизия

  • MTOPDomainClassification

    main_score

    Результат

    0,5296

    MTEB

    Публичная таблицадругая ревизия

  • QuoraRetrieval

    main_score

    Результат

    0,655

    MTEB

    Публичная таблицадругая ревизия

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Arabert All NLI Triplet Matryoshka — арабская модель Sentence Transformers, разработанная Omartificial Intelligence Space и дообученная на aubmindlab/bert-base-arabertv02 с использованием набора Arabic NLI Triplet. Она преобразует предложения и абзацы на арабском языке в плотные векторные представления для сравнения семантической близости. Модель основана на BERT с усреднением токенных представлений, имеет 162,4 млн параметров и принимает последовательности длиной до 512 токенов.

Вектор размерности 768 можно использовать для семантического поиска, поиска перефразировок, кластеризации и классификации текстов; обучение Matryoshka также рассчитано на представления меньшей размерности — 512, 256, 128 и 64. Для сравнения предусмотрена косинусная близость. В README приведены результаты оценки на STS-наборах, но они не гарантируют аналогичного качества на других данных. Лицензия — Apache-2.0.

Сценарии применения

  • поиск арабских текстов по смыслу
  • сравнение семантической близости арабских предложений
  • поиск перефразировок на арабском языке
  • кластеризация арабских текстов по тематике
  • классификация арабских текстов на основе эмбеддингов

Ограничения

Максимальная длина входной последовательности — 512 токенов. Приведённые в карточке оценки получены на STS-наборах и могут не отражать качество на других доменах и типах арабского текста.

Для каких профессий подходит9

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Arabert All NLI Triplet Matryoshka Model

This is a sentence-transformers model finetuned from aubmindlab/bert-base-arabertv02 on the Omartificial-Intelligence-Space/arabic-n_li-triplet 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
  • Base model: aubmindlab/bert-base-arabertv02
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 768 tokens
  • Similarity Function: Cosine Similarity
  • Training Dataset:
    • Omartificial-Intelligence-Space/arabic-n_li-triplet

Model Sources

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("Omartificial-Intelligence-Space/Arabic-arabert-all-nli-triplet")
# Run inference
sentences = [
    'يجلس شاب ذو شعر أشقر على الحائط يقرأ جريدة بينما تمر امرأة وفتاة شابة.',
    'ذكر شاب ينظر إلى جريدة بينما تمر إمرأتان بجانبه',
    'الشاب نائم بينما الأم تقود ابنتها إلى الحديقة',
]
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

MetricValue
pearson_cosine0.595
spearman_cosine0.616
pearson_manhattan0.6296
spearman_manhattan0.627
pearson_euclidean0.6327
spearman_euclidean0.6317
pearson_dot0.4282
spearman_dot0.4295
pearson_max0.6327
spearman_max0.6317

Semantic Similarity

MetricValue
pearson_cosine0.5846
spearman_cosine0.6064
pearson_manhattan0.6288
spearman_manhattan0.6264
pearson_euclidean0.6313
spearman_euclidean0.6302
pearson_dot0.3789
spearman_dot0.3768
pearson_max0.6313
spearman_max0.6302

Semantic Similarity

MetricValue
pearson_cosine0.5779
spearman_cosine0.596
pearson_manhattan0.6243
spearman_manhattan0.6217
pearson_euclidean0.6238
spearman_euclidean0.6215
pearson_dot0.3597
spearman_dot0.353
pearson_max0.6243
spearman_max0.6217

Semantic Similarity

MetricValue
pearson_cosine0.5831
spearman_cosine0.6022
pearson_manhattan0.6152
spearman_manhattan0.6122
pearson_euclidean0.6162
spearman_euclidean0.6153
pearson_dot0.4044
spearman_dot0.4015
pearson_max0.6162
spearman_max0.6153

Semantic Similarity

MetricValue
pearson_cosine0.5725
spearman_cosine0.5914
pearson_manhattan0.6024
spearman_manhattan0.5967
pearson_euclidean0.6069
spearman_euclidean0.6041
pearson_dot0.3632
spearman_dot0.3585
pearson_max0.6069
spearman_max0.6041

Training Details

Training Dataset

Omartificial-Intelligence-Space/arabic-n_li-triplet

  • Dataset: Omartificial-Intelligence-Space/arabic-n_li-triplet
  • Size: 557,850 training samples
  • Columns: anchor, positive, and negative
  • Approximate statistics based on the first 1000 samples:
    anchorpositivenegative
    typestringstringstring
    detailsmin: 4 tokensmean: 8.02 tokensmax: 41 tokensmin: 4 tokensmean: 10.03 tokensmax: 34 tokensmin: 4 tokensmean: 10.72 tokensmax: 38 tokens
  • Samples:
    anchorpositivenegative
    شخص على حصان يقفز فوق طائرة معطلةشخص في الهواء الطلق، على حصان.شخص في مطعم، يطلب عجة.
    أطفال يبتسمون و يلوحون للكاميراهناك أطفال حاضرونالاطفال يتجهمون
    صبي يقفز على لوح التزلج في منتصف الجسر الأحمر.الفتى يقوم بخدعة التزلجالصبي يتزلج على الرصيف
  • Loss: 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
    }
    

Evaluation Dataset

Omartificial-Intelligence-Space/arabic-n_li-triplet

  • Dataset: Omartificial-Intelligence-Space/arabic-n_li-triplet
  • Size: 6,584 evaluation samples
  • Columns: anchor, positive, and negative
  • Approximate statistics based on the first 1000 samples:
    anchorpositivenegative
    typestringstringstring
    detailsmin: 4 tokensmean: 14.87 tokensmax: 70 tokensmin: 4 tokensmean: 7.54 tokensmax: 26 tokensmin: 4 tokensmean: 8.14 tokensmax: 23 tokens
  • Samples:
    anchorpositivenegative
    امرأتان يتعانقان بينما يحملان حزمةإمرأتان يحملان حزمةالرجال يتشاجرون خارج مطعم
    طفلين صغيرين يرتديان قميصاً أزرق، أحدهما يرتدي الرقم 9 والآخر يرتدي الرقم 2 يقفان على خطوات خشبية في الحمام ويغسلان أيديهما في المغسلة.طفلين يرتديان قميصاً مرقماً يغسلون أيديهمطفلين يرتديان سترة يذهبان إلى المدرسة
    رجل يبيع الدونات لعميل خلال معرض عالمي أقيم في مدينة أنجليسرجل يبيع الدونات لعميلامرأة تشرب قهوتها في مقهى صغير
  • Loss: 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
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • per_device_train_batch_size: 64
  • per_device_eval_batch_size: 64
  • num_train_epochs: 1
  • warmup_ratio: 0.1
  • fp16: True
  • batch_sampler: no_duplicates

All Hyperparameters

  • overwrite_output_dir: False
  • do_predict: False
  • prediction_loss_only: True
  • per_device_train_batch_size: 64
  • per_device_eval_batch_size: 64
  • 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: 1
  • 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
  • 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: 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, '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_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

EpochStepTraining Losssts-test-128_spearman_cosinests-test-256_spearman_cosinests-test-512_spearman_cosinests-test-64_spearman_cosinests-test-768_spearman_cosine
0.022920014.4811-----
0.04594009.0389-----
0.06886008.1478-----
0.09188007.168-----
0.114710007.1998-----
0.137712006.7985-----
0.160614006.3754-----
0.183516006.3202-----
0.206518005.9186-----
0.229420005.9594-----
0.252422006.0211-----
0.275324005.9984-----
0.298326005.8321-----
0.321228005.621-----
0.344230005.9004-----
0.367132005.562-----
0.390034005.5125-----
0.413036005.4922-----
0.435938005.3023-----
0.458940005.4376-----
0.481842005.1048-----
0.504844005.0605-----
0.527746004.9985-----
0.550648005.2594-----
0.573650005.2183-----
0.596552005.1621-----
0.619554005.166-----
0.642456005.2241-----
0.665458005.1342-----
0.688360005.2267-----
0.711362005.1083-----
0.734264005.0119-----
0.757166004.6471-----
0.780168003.6699-----
0.803070003.2954-----
0.826072003.1039-----
0.848974003.001-----
0.871976002.8992-----
0.894878002.7504-----
0.917780002.7891-----
0.940782002.7157-----
0.963684002.6795-----
0.986686002.6278-----
1.08717-0.60220.59600.60640.59140.6160

Framework Versions

  • Python: 3.9.18
  • Sentence Transformers: 3.0.1
  • Transformers: 4.40.0
  • PyTorch: 2.2.2+cu121
  • Accelerate: 0.26.1
  • Datasets: 2.19.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",
}

MatryoshkaLoss

@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}
}

MultipleNegativesRankingLoss

@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}
}

Acknowledgments

The author would like to thank Prince Sultan University for their invaluable support in this project. Their contributions and resources have been instrumental in the development and fine-tuning of these models.

## Citation

If you use the Arabic Matryoshka Embeddings Model, please cite it as follows:

@misc{nacar2024enhancingsemanticsimilarityunderstanding,
      title={Enhancing Semantic Similarity Understanding in Arabic NLP with Nested Embedding Learning}, 
      author={Omer Nacar and Anis Koubaa},
      year={2024},
      eprint={2407.21139},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={https://arxiv.org/abs/2407.21139}, 
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · sentence-transformers

Можно запустить

Подбираем GPU…

Класс архитектуры
BertModel
Ревизия весов
e5f7a34

0 моделей