/ Модель

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

Контекст
512 токенов
Параметры
124 млн
Архитектура
bert · dense
Базовая модель
paraphrase-multilingual-MiniLM-L12-v2
Библиотека
sentence-transformers
Опубликована
18 июл 2024

custom-hindi-emb-model-contrastive

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

Многоязычная BERT-модель, дообученная для создания эмбеддингов и поиска семантически близких текстов, с акцентом на хинди.

108скачиваний за 30 дней0лайковвеса обновлены18 июл 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Это дообученная модель Sentence Transformers на базе sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2. Она кодирует предложения и абзацы в плотные векторы размерности 384 и предназначена для сравнения семантической близости, поиска похожих текстов и кластеризации. Архитектура включает BERT-трансформер и усреднение токенных представлений; сходство оценивается косинусной метрикой.

Модель дообучена на 1 800 парах текстов с ContrastiveLoss. Примеры обучающих данных и название модели указывают на акцент на текстах на хинди. Максимальная длина последовательности в конфигурации README — 128 токенов; метаданные указывают контекст до 512 токенов. Для сопоставления текстов следует учитывать предел 128 токенов из описания Sentence Transformers. Размер модели — 124,3 млн параметров; формат весов — safetensors. Лицензия в предоставленных данных не указана.

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

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

Ограничения

В README указана максимальная длина последовательности 128 токенов, тогда как метаданные сообщают контекст 512 токенов; для этой версии следует учитывать указанное в README ограничение 128 токенов. Дообучение основано на 1 800 обучающих примерах, поэтому качество для других языков и предметных областей может быть ограничено.

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

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

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

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

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

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

Открыть на Hugging Face

SentenceTransformer based on sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2

This is a sentence-transformers model finetuned from sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2. 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.

Model Details

Model Description

Model Sources

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 128, '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})
)

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("amorfati/custom-hindi-emb-model-contrastive")
# Run inference
sentences = [
    ' Team India : पूरा भरोसा हम चैंपियन बनेंगे... अब चैंपियंस ट्रॉफी और WTC की बारी, जय शाह का बड़ा बयान; कौन होगा कप्तान? ',
    'Team India : कौन होगा टीम इंडिया का नया बॉलिंग कोच? विनय कुमार नहीं! इस वर्ल्ड कप विनर की खुल सकती है किस्मत',
    'Samsung Galaxy Ring हुई लॉन्च, 9 साइज और 3 कलर ऑप्शन में मिलेगी, जानें फीचर्स',
]
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]

Training Details

Training Dataset

Unnamed Dataset

  • Size: 1,800 training samples
  • Columns: premise, hypothesis, and label
  • Approximate statistics based on the first 1000 samples:
    premisehypothesislabel
    typestringstringint
    detailsmin: 12 tokensmean: 31.99 tokensmax: 52 tokensmin: 12 tokensmean: 31.68 tokensmax: 52 tokens0: 100.00%
  • Samples:
    premisehypothesislabel
    पति से छिपकर पत्नी का करना चाहिए ये काम, सुधा मूर्ति की ये बात संवार देगी आपकी शादी Bangladeshi Hindus: 'हिंदू बन गए हैं आसान टारेगट' - ढाका में हमलों के बाद बांग्लादेशी हिंदू ने बताया देश का 'काला सच' 0
    फर्जी कॉल, SMS से लेकर WhatsApp मैसेज तक, Chakshu पोर्टल पर करें हर फ्रॉड की शिकायत, होगी कार्रवाई विदेशी Trucks में ड्राइवर को सिर्फ AC ही नहीं बल्कि, मिलती हैं ये लग्जरी सुविधाएं 0
    GK Quiz: कौन सा जीव है जिसे अपनी मौत आने से पहले उसे पता चल जाता है? Indian Army Recruitment 2024: इंडियन आर्मी में निकली डायरेक्ट भर्ती, हवलदार समेत इन पदों पर मिलेगी नौकरी 0
  • Loss: ContrastiveLoss with these parameters:
    {
        "distance_metric": "SiameseDistanceMetric.COSINE_DISTANCE",
        "margin": 0.5,
        "size_average": true
    }
    

Evaluation Dataset

Unnamed Dataset

  • Size: 200 evaluation samples
  • Columns: premise, hypothesis, and label
  • Approximate statistics based on the first 1000 samples:
    premisehypothesislabel
    typestringstringint
    detailsmin: 12 tokensmean: 31.98 tokensmax: 61 tokensmin: 12 tokensmean: 32.0 tokensmax: 61 tokens1: 100.00%
  • Samples:
    premisehypothesislabel
    Vastu Tips: घर के मुख्य दरवाजे पर ये एक चीज लटकाने से दौड़ी आएंगी मां लक्ष्मी, पैसों की तंगी से मिलेगा छुटकारा Vastu Tips: घर के मुख्य दरवाजे पर ये एक चीज लटकाने से दौड़ी आएंगी मां लक्ष्मी, पैसों की तंगी से मिलेगा छुटकारा1
    CLAT 2025: कल से शुरू हो रही रज‍िस्‍ट्रेशन प्रक्र‍िया, अप्‍लाई करने के ल‍िए क्‍या योग्‍यता चाह‍िए; क्‍या होगा एग्‍जाम पैटर्न और क‍ितनी होगी फीस जानें CLAT 2025: कल से शुरू हो रही रज‍िस्‍ट्रेशन प्रक्र‍िया, अप्‍लाई करने के ल‍िए क्‍या योग्‍यता चाह‍िए; क्‍या होगा एग्‍जाम पैटर्न और क‍ितनी होगी फीस जानें1
    XAT 2025: 15 जुलाई से शुरू होंगे रजिस्ट्रेशन, जानें कैसे भरें एप्लिकेशन फॉर्म XAT 2025: 15 जुलाई से शुरू होंगे रजिस्ट्रेशन, जानें कैसे भरें एप्लिकेशन फॉर्म1
  • Loss: ContrastiveLoss with these parameters:
    {
        "distance_metric": "SiameseDistanceMetric.COSINE_DISTANCE",
        "margin": 0.5,
        "size_average": true
    }
    

Training Hyperparameters

Non-Default Hyperparameters

  • eval_strategy: steps
  • per_device_train_batch_size: 16
  • per_device_eval_batch_size: 16
  • learning_rate: 2e-05
  • num_train_epochs: 20
  • warmup_ratio: 0.1

All Hyperparameters

  • overwrite_output_dir: False
  • do_predict: False
  • eval_strategy: steps
  • prediction_loss_only: True
  • per_device_train_batch_size: 16
  • per_device_eval_batch_size: 16
  • 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: 20
  • 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: False
  • 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: batch_sampler
  • multi_dataset_batch_sampler: proportional

Training Logs

EpochStepTraining Lossloss
0.88501000.00560.0052
1.76992000.00280.0037
2.65493000.00190.0034
3.53984000.00140.0039
4.42485000.00110.0039
5.30976000.00050.0033
6.19477000.00050.0031
7.07968000.00040.0032
7.96469000.00040.0031
8.849610000.00040.0028
9.734511000.00030.0029
10.619512000.00040.0029
11.504413000.00030.0028
12.389414000.00020.0029
13.274315000.00030.0028
14.159316000.00020.0027
15.044217000.00030.0028
15.929218000.00030.0027
16.814219000.00030.0027
17.699120000.00020.0028
18.584121000.00020.0027
19.469022000.00030.0026

Framework Versions

  • Python: 3.10.12
  • Sentence Transformers: 3.0.1
  • Transformers: 4.42.4
  • PyTorch: 2.3.1+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",
}

ContrastiveLoss

@inproceedings{hadsell2006dimensionality,
    author={Hadsell, R. and Chopra, S. and LeCun, Y.},
    booktitle={2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'06)}, 
    title={Dimensionality Reduction by Learning an Invariant Mapping}, 
    year={2006},
    volume={2},
    number={},
    pages={1735-1742},
    doi={10.1109/CVPR.2006.100}
}

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей