Skip to content

Repository files navigation

encodechka

encodechka-eval

Этот репозиторий - развитие подхода к оценке моделей из поста Маленький и быстрый BERT для русского языка, эволюционировавшего в Рейтинг русскоязычных энкодеров предложений. Идея в том, чтобы понять, как хорошо разные модели превращают короткие тексты в осмысленные векторы.

Похожие проекты:

  • RussianSuperGLUE: фокус на дообучаемых моделях
  • MOROCCO: RussianSuperGLUE + оценка производительности, трудновоспроизводим
  • RuSentEval: более академические/лингвистические задачи
  • Статья от Вышки Popov et al, 2019: первая научная статья на эту тему, но маловато моделей и задач
  • SentEvalRu и deepPavlovEval: два хороших, но давно не обновлявшихся бенчмарка.
  • ruMTEB (пост, код MTEB) - русскоязычная часть MTEB. С недавнего времени там есть 23 разнообразных задачи (включая поиск и переранжирование, которых нет в Encodechka), но, кажется, там нет замеров быстродействия. Если последнее вам не критично, рекомендуется использовать ruMTEB вместо Encodechka.

Пример запуска метрик – в блокноте evaluation example.

Блокнот для воспроизведения лидерборда: v2021, v2023.

Лидерборд на HuggingFace Space.

Лидерборд

Ранжирование моделей в по среднему качеству и производительности. Подсвечены Парето-оптимальные модели по каждому из критериев.

modelCPUGPUsizeMean SMean S+Wdim
deepvk/USER-bge-m3523.422.51371.10.7990.7091024
BAAI/bge-m3523.422.52166.00.7870.6961024
intfloat/multilingual-e5-large-instruct501.525.712136.00.7840.6841024
intfloat/multilingual-e5-large506.830.82135.93890.780.6861024
deepvk/USER-base33.112.2473.24020.7720.688768
sentence-transformers/paraphrase-multilingual-mpnet-base-v220.519.91081.84850.762768
intfloat/multilingual-e5-base130.6114.391061.00.7610.669768
sergeyzh/rubert-tiny-turbo5.53.3111.40.7490.667312
intfloat/multilingual-e5-small40.8612.09449.00.7420.645384
symanto/sn-xlm-roberta-base-snli-mnli-anli-xnli20.216.51081.84740.739768
cointegrated/LaBSE-en-ru133.415.3489.66210.7390.668768
sentence-transformers/LaBSE135.113.31796.50780.7390.667768
MUSE-3200.130.7303.00.736512
text-embedding-ada-002?0.7341536
sentence-transformers/paraphrase-multilingual-MiniLM-L12-v218.214.9479.25470.734384
sentence-transformers/distiluse-base-multilingual-cased-v111.88.0517.74520.722512
SONAR??3060.00.7211024
facebook/nllb-200-distilled-600M252.315.91577.48280.7090.641024
sentence-transformers/distiluse-base-multilingual-cased-v211.29.2517.74530.708512
cointegrated/rubert-tiny25.53.3111.38230.7040.638312
ai-forever/sbert_large_mt_nlu_ru504.529.71628.65390.7030.6261024
laser192.513.5200.00.6991024
laser2163.48.6175.00.6941024
ai-forever/sbert_large_nlu_ru497.729.91628.65390.6880.6261024
clips/mfaq18.118.21081.85760.687768
cointegrated/rut5-base-paraphraser137.015.6412.00150.6850.634768
DeepPavlov/rubert-base-cased-sentence128.413.2678.52150.6780.612768
DeepPavlov/distilrubert-base-cased-conversational64.210.4514.0020.6760.624768
DeepPavlov/distilrubert-tiny-cased-conversational21.23.3405.82920.670.616768
cointegrated/rut5-base-multitask136.912.7412.00150.6680.623768
ai-forever/ruRoberta-large512.325.51355.71620.6660.6091024
DeepPavlov/rubert-base-cased-conversational127.516.3678.52150.6530.606768
deepvk/deberta-v1-base128.619.0473.24020.6530.591768
cointegrated/rubert-tiny7.55.944.970.6450.575312
ai-forever/FRED-T5-large479.423.31372.99880.6390.5511024
inkoziev/sbert_synonymy6.94.2111.38230.6370.566312
numind/NuNER-multilingual-v0.1186.910678.00.6330.572768
cointegrated/rubert-tiny-toxicity105.547.20.6210.553312
ft_geowac_full0.31910.00.6170.55300
bert-base-multilingual-cased141.413.7678.52150.6140.565768
ai-forever/ruT5-large489.620.21277.75710.610.5781024
cointegrated/rut5-small37.68.6111.31620.6020.564512
ft_geowac_21mb1.221.00.5970.531300
inkoziev/sbert_pq7.44.2111.38230.5960.526312
ai-forever/ruT5-base126.312.8418.23250.5710.544768
hashing_1000_char0.51.00.5570.4641000
cointegrated/rut5-base127.815.5412.00140.5540.53768
hashing_300_char0.81.00.5290.433300
hashing_10000.21.00.5130.4161000
hashing_3000.31.00.4910.397300

Ранжирование моделей по задачам. Подсвечены наилучшие модели по каждой из задач.

modelSTSPINLISATIIAICICXNE1NE2
deepvk/USER-bge-m30.870.760.580.820.970.790.810.780.280.43
BAAI/bge-m30.860.750.510.820.970.790.810.780.240.42
intfloat/multilingual-e5-large-instruct0.860.740.470.810.980.80.820.770.210.35
intfloat/multilingual-e5-large0.860.730.470.810.980.80.820.770.240.37
deepvk/USER-base0.850.740.480.810.990.810.80.70.290.41
sentence-transformers/paraphrase-multilingual-mpnet-base-v20.850.660.540.790.950.780.790.74
intfloat/multilingual-e5-base0.830.70.460.80.960.780.80.740.230.38
sergeyzh/rubert-tiny-turbo0.830.720.480.790.950.760.780.680.300.37
intfloat/multilingual-e5-small0.820.710.460.760.960.760.780.690.230.27
symanto/sn-xlm-roberta-base-snli-mnli-anli-xnli0.760.60.860.760.910.720.710.6
cointegrated/LaBSE-en-ru0.790.660.430.760.950.770.790.770.350.42
sentence-transformers/LaBSE0.790.660.430.760.950.770.790.760.350.41
MUSE-30.810.610.420.770.960.790.770.75
text-embedding-ada-0020.780.660.440.770.960.770.750.73
sentence-transformers/paraphrase-multilingual-MiniLM-L12-v20.840.620.50.760.920.740.770.72
sentence-transformers/distiluse-base-multilingual-cased-v10.80.60.430.750.940.760.760.74
SONAR0.710.580.410.770.980.790.780.74
facebook/nllb-200-distilled-600M0.710.540.410.760.950.760.80.750.310.42
sentence-transformers/distiluse-base-multilingual-cased-v20.790.550.420.750.910.750.760.73
cointegrated/rubert-tiny20.750.650.420.740.940.750.760.640.360.39
ai-forever/sbert_large_mt_nlu_ru0.780.650.40.80.980.80.760.450.30.34
laser0.750.60.410.730.960.720.720.7
laser20.740.60.410.730.950.720.720.69
ai-forever/sbert_large_nlu_ru0.680.620.390.780.980.80.780.480.360.4
clips/mfaq0.630.590.350.790.950.740.760.69
cointegrated/rut5-base-paraphraser0.650.530.40.780.950.750.750.670.450.41
DeepPavlov/rubert-base-cased-sentence0.740.660.490.750.920.750.720.390.360.34
DeepPavlov/distilrubert-base-cased-conversational0.70.560.390.760.980.780.760.480.40.43
DeepPavlov/distilrubert-tiny-cased-conversational0.70.550.40.740.980.780.760.450.350.44
cointegrated/rut5-base-multitask0.650.540.380.760.950.750.720.590.470.41
ai-forever/ruRoberta-large0.70.60.350.780.980.80.780.320.30.46
DeepPavlov/rubert-base-cased-conversational0.680.520.380.730.980.780.750.420.410.43
deepvk/deberta-v1-base0.680.540.380.760.980.80.780.290.290.4
cointegrated/rubert-tiny0.660.530.40.710.890.680.70.580.240.34
ai-forever/FRED-T5-large0.620.440.370.780.980.810.670.450.250.15
inkoziev/sbert_synonymy0.690.490.410.710.910.720.690.470.320.24
numind/NuNER-multilingual-v0.10.670.530.40.710.890.720.70.460.320.34
cointegrated/rubert-tiny-toxicity0.570.440.370.681.00.780.70.430.240.32
ft_geowac_full0.690.530.370.720.970.760.660.260.220.34
bert-base-multilingual-cased0.660.530.370.70.890.70.690.380.360.38
ai-forever/ruT5-large0.510.390.350.770.970.790.720.380.460.44
cointegrated/rut5-small0.610.530.340.730.920.710.70.270.440.38
ft_geowac_21mb0.680.520.360.720.960.740.650.150.210.32
inkoziev/sbert_pq0.570.410.380.70.920.690.680.430.260.24
ai-forever/ruT5-base0.50.280.340.730.970.760.70.290.450.41
hashing_1000_char0.70.530.40.70.840.590.630.050.050.14
cointegrated/rut5-base0.440.280.330.740.920.750.580.390.480.39
hashing_300_char0.690.510.390.670.750.570.610.040.030.08
hashing_10000.630.490.390.660.770.550.570.050.020.04
hashing_3000.610.480.40.640.710.540.50.050.020.02

Задачи

  • Semantic text similarity (STS) на основе переведённого датасета STS-B;
  • Paraphrase identification (PI) на основе датасета paraphraser.ru;
  • Natural language inference (NLI) на датасете XNLI;
  • Sentiment analysis (SA) на данных SentiRuEval2016.
  • Toxicity identification (TI) на датасете токсичных комментариев из OKMLCup;
  • Inappropriateness identification (IA) на датасете Сколтеха;
  • Intent classification (IC) и её кросс-язычная версия ICX на датасете NLU-evaluation-data, который я автоматически перевёл на русский. В IC классификатор обучается на русских данных, а в ICX – на английских, а тестируется в обоих случаях на русских.
  • Распознавание именованных сущностей на датасетах factRuEval-2016 (NE1) и RuDReC (NE2). Эти две задачи требуют получать эмбеддинги отдельных токенов, а не целых предложений; поэтому там участвуют не все модели.

Changelog

  • Август 2023 - обновил рейтинг:
    • поправив ошибку в вычислении mean token embeddings
    • добавил несколько моделей, включая нового лидера - intfloat/multilingual-e5-large
    • по просьбам трудящихся, добавил text-embedding-ada-002 (размер и производительность указаны от балды)
  • Лето 2022 - опубликовал первый рейтинг

Цитирование

Если вы упоминаете бенчмарк в научной работе, можете сослаться на мой пост на Хабре следующим образом (bibtex):

@misc{dale_encodechka, author = "Dale, David",
title = "Рейтинг русскоязычных энкодеров предложений", editor = "habr.com", url = "https://habr.com/ru/articles/669674/", month = {June},
year = {2022}, note = {[Online; posted 12-June-2022]},
}

About

The tiniest sentence encoder for Russian language

Topics

Resources

Stars

246 stars

Watchers

10 watching

Forks

Releases

Packages

Used by

Contributors

Languages