/ Модель

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

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

mpnet-base-gooaq

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

Англоязычная модель MPNet для преобразования текстов в эмбеддинги и семантического поиска, дообученная на парах вопросов и ответов GooAQ.

109скачиваний за 30 дней0лайковвеса обновлены17 окт 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

В подключённых источниках результатов для этой модели пока нет.

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

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

tomaarsen/mpnet-base-gooaq — текстовая Sentence Transformer модель, разработанная на базе microsoft/mpnet-base и дообученная на наборе вопросов и ответов GooAQ. Она преобразует предложения и абзацы в плотные векторы размерности 768; близость текстов можно оценивать косинусным сходством. Модель содержит около 136,7 млн параметров, использует архитектуру MPNet с усреднением токеновых представлений и принимает последовательности длиной до 512 токенов.

Модель предназначена прежде всего для семантического поиска и сопоставления вопросов с ответами на английском языке. Её также можно применять для оценки семантического сходства, поиска перефразировок, кластеризации и классификации текста. В карточке приведены результаты поиска на GooAQ dev: точность cosine_accuracy@1 — 0,7198, @3 — 0,884 и @5 — 0,9305.

Модель выдаёт векторы, а не готовые ответы или метки классов; для поиска требуется сравнение векторов, например по косинусному сходству. Обучение ориентировано на англоязычные пары вопросов и ответов, поэтому качество для других языков не подтверждено. Лицензия — Apache-2.0.

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

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

Ограничения

Модель выдаёт эмбеддинги, а не готовые ответы, поэтому для поиска или классификации нужны дополнительные компоненты. Она обучена на англоязычных данных GooAQ; качество для других языков не подтверждено.

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

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

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

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

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

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

Открыть на Hugging Face

MPNet base trained on GooAQ Question-Answer tuples

This is a sentence-transformers model finetuned from microsoft/mpnet-base on the sentence-transformers/gooaq 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.

This model was trained using the train_script.py code.

Model Details

Model Description

  • Model Type: Sentence Transformer
  • Base model: microsoft/mpnet-base
  • Maximum Sequence Length: 512 tokens
  • Output Dimensionality: 768 tokens
  • Similarity Function: Cosine Similarity
  • Training Dataset:
  • Language: en
  • License: apache-2.0

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: MPNetModel 
  (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("tomaarsen/mpnet-base-gooaq")
# Run inference
sentences = [
    '11 is what of 8?',
    'Convert fraction (ratio) 8 / 11 Answer: 72.727272727273%',
    'Old-age pensions are not included in taxable income under the personal income tax.',
]
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

Information Retrieval

MetricValue
cosine_accuracy@10.7198
cosine_accuracy@30.884
cosine_accuracy@50.9305
cosine_accuracy@100.9709
cosine_precision@10.7198
cosine_precision@30.2947
cosine_precision@50.1861
cosine_precision@100.0971
cosine_recall@10.7198
cosine_recall@30.884
cosine_recall@50.9305
cosine_recall@100.9709
cosine_ndcg@100.8491
cosine_mrr@100.8096
cosine_map@1000.8111
dot_accuracy@10.7073
dot_accuracy@30.877
dot_accuracy@50.9244
dot_accuracy@100.9669
dot_precision@10.7073
dot_precision@30.2923
dot_precision@50.1849
dot_precision@100.0967
dot_recall@10.7073
dot_recall@30.877
dot_recall@50.9244
dot_recall@100.9669
dot_ndcg@100.8412
dot_mrr@100.8004
dot_map@1000.8023

Training Details

Training Dataset

sentence-transformers/gooaq

  • Dataset: sentence-transformers/gooaq at b089f72
  • Size: 3,002,496 training samples
  • Columns: question and answer
  • Approximate statistics based on the first 1000 samples:
    questionanswer
    typestringstring
    detailsmin: 8 tokensmean: 11.89 tokensmax: 22 tokensmin: 15 tokensmean: 60.37 tokensmax: 147 tokens
  • Samples:
    questionanswer
    biotechnology is best defined as?Biotechnology is best defined as_______________? The science that involves using living organisms to produce needed materials. Which of the following tools of biotechnology, to do investigation, is used when trying crime?
    how to open xye file?Firstly, use File then Open and make sure that you can see All Files (*. *) and not just Excel files (the default option!) in the folder containing the *. xye file: Select the file you wish to open and Excel will bring up a wizard menu for importing plain text data into Excel (as shown below).
    how much does california spend?Estimated 2016 expenditures The total estimated government spending in California in fiscal year 2016 was $265.9 billion. Per-capita figures are calculated by taking the state's total spending and dividing by the number of state residents according to United States Census Bureau estimates.
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Evaluation Dataset

sentence-transformers/gooaq

  • Dataset: sentence-transformers/gooaq at b089f72
  • Size: 10,000 evaluation samples
  • Columns: question and answer
  • Approximate statistics based on the first 1000 samples:
    questionanswer
    typestringstring
    detailsmin: 8 tokensmean: 11.86 tokensmax: 25 tokensmin: 14 tokensmean: 60.82 tokensmax: 166 tokens
  • Samples:
    questionanswer
    how to open nx file?['Click File > Open. The File Open dialog box opens.', 'Select NX File (*. prt) in the Type box. ... ', 'Select an NX . ... ', 'Select Import in the File Open dialog box. ... ', 'If you do not want to retain the import profile in use, select an import profile from the Profile list. ... ', 'Click OK in the Import New Model dialog box.']
    how to recover deleted photos from blackberry priv?['Run Android Data Recovery. ... ', 'Enable USB Debugging Mode. ... ', 'Scan Your BlackBerry PRIV to Find Deleted Photos. ... ', 'Recover Deleted Photos from BlackBerry PRIV.']
    which subatomic particles are found within the nucleus of an atom?In the middle of every atom is the nucleus. The nucleus contains two types of subatomic particles, protons and neutrons. The protons have a positive electrical charge and the neutrons have no electrical charge. A third type of subatomic particle, electrons, move around the nucleus.
  • Loss: MultipleNegativesRankingLoss with these parameters:
    {
        "scale": 20.0,
        "similarity_fct": "cos_sim"
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 64
  • per_device_eval_batch_size: 64
  • learning_rate: 2e-05
  • num_train_epochs: 1
  • warmup_ratio: 0.1
  • bf16: True
  • batch_sampler: no_duplicates

All Hyperparameters

  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • 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: 2e-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
  • 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
  • batch_sampler: no_duplicates
  • multi_dataset_batch_sampler: proportional

Training Logs

EpochStepTraining Losslossgooaq-dev_cosine_map@100
00--0.1379
0.000013.6452--
0.00532502.4418--
0.01075000.373--
0.01607500.183--
0.021310000.12860.08050.6796
0.026612500.1099--
0.032015000.091--
0.037317500.0768--
0.042620000.06650.05260.7162
0.048022500.0659--
0.053325000.0602--
0.058627500.0548--
0.063930000.05430.04260.7328
0.069332500.0523--
0.074635000.0494--
0.079937500.0468--
0.085340000.04940.03620.7450
0.090642500.048--
0.095945000.0442--
0.101247500.0442--
0.106650000.04080.03320.7519
0.111952500.0396--
0.117255000.0379--
0.122657500.0392--
0.127960000.03950.03000.7505
0.133262500.0349--
0.138665000.0383--
0.143967500.0335--
0.149270000.03230.02530.7624
0.154572500.0342--
0.159975000.0292--
0.165277500.0309--
0.170580000.03350.02490.7631
0.175982500.0304--
0.181285000.0318--
0.186587500.0271--
0.191890000.0290.02300.7615
0.197292500.0309--
0.202595000.0305--
0.207897500.0237--
0.2132100000.02740.02200.7667
0.2185102500.0248--
0.2238105000.0249--
0.2291107500.0272--
0.2345110000.02890.02300.7664
0.2398112500.027--
0.2451115000.0259--
0.2505117500.0237--
0.2558120000.02450.02200.7694
0.2611122500.0251--
0.2664125000.0243--
0.2718127500.0229--
0.2771130000.02730.02010.7725
0.2824132500.0244--
0.2878135000.0248--
0.2931137500.0255--
0.2984140000.02440.01920.7729
0.3037142500.0242--
0.3091145000.0235--
0.3144147500.0231--
0.3197150000.02280.01900.7823
0.3251152500.0229--
0.3304155000.0224--
0.3357157500.0216--
0.3410160000.02180.01860.7787
0.3464162500.022--
0.3517165000.0233--
0.3570167500.0216--
0.3624170000.02260.01690.7862
0.3677172500.0215--
0.3730175000.0212--
0.3784177500.0178--
0.3837180000.02170.01610.7813
0.3890182500.0217--
0.3943185000.0191--
0.3997187500.0216--
0.4050190000.0220.01570.7868
0.4103192500.0223--
0.4157195000.021--
0.4210197500.0176--
0.4263200000.0210.01620.7873
0.4316202500.0206--
0.4370205000.0196--
0.4423207500.0186--
0.4476210000.01970.01580.7907
0.4530212500.0156--
0.4583215000.0178--
0.4636217500.0175--
0.4689220000.01870.01510.7937
0.4743222500.0182--
0.4796225000.0185--
0.4849227500.0217--
0.4903230000.01790.01560.7937
0.4956232500.0193--
0.5009235000.015--
0.5062237500.0181--
0.5116240000.01730.01500.7924
0.5169242500.0177--
0.5222245000.0183--
0.5276247500.0171--
0.5329250000.01850.01400.7955
0.5382252500.0178--
0.5435255000.015--
0.5489257500.017--
0.5542260000.01710.01390.7931
0.5595262500.0164--
0.5649265000.0175--
0.5702267500.0175--
0.5755270000.01630.01330.7954
0.5809272500.0179--
0.5862275000.016--
0.5915277500.0155--
0.5968280000.01620.01380.7979
0.6022282500.0164--
0.6075285000.0148--
0.6128287500.0152--
0.6182290000.01660.01340.7987
0.6235292500.0159--
0.6288295000.0168--
0.6341297500.0187--
0.6395300000.0170.01370.7980
0.6448302500.0168--
0.6501305000.0149--
0.6555307500.0159--
0.6608310000.01490.01310.8017
0.6661312500.0149--
0.6714315000.0147--
0.6768317500.0157--
0.6821320000.01510.01250.8011
0.6874322500.015--
0.6928325000.0157--
0.6981327500.0153--
0.7034330000.01410.01230.8012
0.7087332500.0143--
0.7141335000.0121--
0.7194337500.0164--
0.7247340000.0140.01210.8014
0.7301342500.0147--
0.7354345000.0149--
0.7407347500.014--
0.7460350000.01560.01170.8022
0.7514352500.0153--
0.7567355000.0146--
0.7620357500.0144--
0.7674360000.01390.01110.8035
0.7727362500.0134--
0.7780365000.013--
0.7833367500.0156--
0.7887370000.01440.01080.8048
0.7940372500.0133--
0.7993375000.0154--
0.8047377500.0132--
0.8100380000.0130.01080.8063
0.8153382500.0126--
0.8207385000.0135--
0.8260387500.014--
0.8313390000.0130.01090.8086
0.8366392500.0136--
0.8420395000.0141--
0.8473397500.0155--
0.8526400000.01530.01060.8075
0.8580402500.0131--
0.8633405000.0128--
0.8686407500.013--
0.8739410000.01330.01090.8060
0.8793412500.0119--
0.8846415000.0144--
0.8899417500.0142--
0.8953420000.01380.01050.8083
0.9006422500.014--
0.9059425000.0134--
0.9112427500.0134--
0.9166430000.01240.01060.8113
0.9219432500.0122--
0.9272435000.0126--
0.9326437500.0121--
0.9379440000.01370.01030.8105
0.9432442500.0132--
0.9485445000.012--
0.9539447500.0136--
0.9592450000.01330.01040.8112
0.9645452500.0118--
0.9699455000.0132--
0.9752457500.0118--
0.9805460000.0120.01020.8104
0.9858462500.0127--
0.9912465000.0134--
0.9965467500.0121--
1.046914--0.8111

Environmental Impact

Carbon emissions were measured using CodeCarbon.

  • Energy Consumed: 1.637 kWh
  • Carbon Emitted: 0.636 kg of CO2
  • Hours Used: 4.514 hours

Training Hardware

  • On Cloud: No
  • GPU Model: 1 x NVIDIA GeForce RTX 3090
  • CPU Model: 13th Gen Intel(R) Core(TM) i7-13700K
  • RAM Size: 31.78 GB

Framework Versions

  • Python: 3.11.6
  • Sentence Transformers: 3.1.0.dev0
  • Transformers: 4.41.2
  • PyTorch: 2.3.0+cu121
  • Accelerate: 0.30.1
  • Datasets: 2.19.1
  • 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",
}

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

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей