Модели

Все модели можно скачать и свободно использовать на условиях лицензии CC-BY (жирным выделены модели, доступные для использования в веб-интерфейсе и API).

Контекстуализированные модели

Постоянный идентификатор Скачать Алгоритм Корпус Размер корпуса Тагсет Размерность вектора RUSSE'18 ParaPhraser Дата создания
araneum_lemmas_elmo_2048_2020 1.5 Гбайт ELMo Araneum (леммы) около 10 миллиардов слов Нет 2048 0.91 0.56 Октябрь 2020
tayga_lemmas_elmo_2048_2019 1.7 Гбайт ELMo Тайга (леммы) почти 5 миллиардов слов Нет 2048 0.93 0.54 Декабрь 2019
ruwikiruscorpora_tokens_elmo_1024_2019 197 Мбайт ELMo НКРЯ и Википедия за декабрь 2018 (токены) 989 миллионов слов Нет 1024 0.88 0.55 Август 2019
ruwikiruscorpora_lemmas_elmo_1024_2019 197 Мбайт ELMo НКРЯ и Википедия за декабрь 2018 (леммы) 989 миллионов слов Нет 1024 0.91 0.57 Август 2019

Статические модели

Таблицу можно (и нужно) пролистывать по горизонтали!
Постоянный идентификатор Скачать Корпус Размер корпуса Объём словаря Частотный порог Тагсет Алгоритм Размерность вектора Размер окна SimLex965 Google Analogies Дата создания
ukrconll_upos_cbow_200_10_2022 170 Мбайт Украинская Википедия и CommonCrawl за 2017 год 300 миллионов слов 99 884 5 (потолок словаря 100К) Universal Tags Continuous Bag-of-Words 200 10 Июль 2022
ruwikiruscorpora_upos_cbow_300_10_2021 638 Мбайт НКРЯ и Википедия за ноябрь 2021 1.2 миллиарда слов 249 333 5 (потолок словаря 250К) Universal Tags Continuous Bag-of-Words 300 10 0.30 0.70 Декабрь 2021
geowac_lemmas_none_fasttextskipgram_300_5_2020 1.4 Гбайт GeoWAC 2.1 миллиарда слов 154 923 150 Нет fastText Skipgram (3..5-граммы) 300 5 0.37 0.69 Октябрь 2020
geowac_tokens_none_fasttextskipgram_300_5_2020 1.8 Гбайт GeoWAC 2.1 миллиарда слов 347 295 150 Нет fastText Skipgram (3..5-граммы) 300 5 0.33 0.58 Октябрь 2020
ruscorpora_upos_cbow_300_20_2019 462 Мбайт НКРЯ 270 миллионов слов 189 193 5 (потолок словаря 250К) Universal Tags Continuous Bag-of-Words 300 20 0.36 0.60 Январь 2019
ruwikiruscorpora_upos_skipgram_300_2_2019 608 Мбайт НКРЯ и Википедия за декабрь 2018 788 миллионов слов 248 978 5 (потолок словаря 250К) Universal Tags Continuous Skipgram 300 2 0.32 0.72 Январь 2019
tayga_upos_skipgram_300_2_2019 610 Мбайт Тайга почти 5 миллиардов слов 249 565 5 (потолок словаря 250К) Universal Tags Continuous Skipgram 300 2 0.42 0.58 Январь 2019
tayga_none_fasttextcbow_300_10_2019 2.6 Гбайт Тайга почти 5 миллиардов слов 192 415 5 (потолок словаря 250К) Нет fastText CBOW (3..5-граммы) 300 10 0.37 0.71 Январь 2019
news_upos_skipgram_300_5_2019 611 Мбайт Русскоязычные новости 2.6 миллиарда слов 249 318 5 (потолок словаря 250К) Universal Tags Continuous Skipgram 300 5 0.22 0.51 Январь 2019
araneum_none_fasttextcbow_300_5_2018 2.6 Гбайт Araneum около 10 миллиардов слов 195 782 400 Нет fastText CBOW (3..5-граммы) 300 5 0.35 0.73 Март 2018
ruscorpora_none_fasttextskipgram_300_2_2019 2.4 Гбайт НКРЯ 270 миллионов слов 164 996 5 (потолок словаря 250К) Нет fastText Skipgram (3..5-граммы) 300 2 0.39 0.63 Январь 2019
ruwikiruscorpora-func_upos_skipgram_300_5_2019 606 Мбайт НКРЯ и Википедия за декабрь 2018 (с функциональными словами) 788 миллионов слов 248 118 5 (потолок словаря 250К) Universal Tags Continuous Skipgram 300 5 0.32 0.71 Январь 2019
tayga-func_upos_skipgram_300_5_2019 611 Мбайт Тайга (с функциональными словами) почти 5 миллиардов слов 249 946 5 (потолок словаря 250К) Universal Tags Continuous Skipgram 300 5 0.41 0.57 Январь 2019
taiga_upos_skipgram_300_2_2018 331 Мбайт Тайга почти 5 миллиардов слов 237 255 200 Universal Tags Continuous Skipgram 300 2 0.41 0.53 Июнь 2018
ruscorpora_upos_skipgram_300_5_2018 191 Мбайт НКРЯ 250 миллионов слов 195 071 20 Universal Tags Continuous Skipgram 300 5 0.37 0.58 Январь 2018
ruwikiruscorpora_upos_skipgram_300_2_2018 376 Мбайт НКРЯ и  Википедия за декабрь 2017 600 миллионов слов 384 764 40 Universal Tags Continuous Skipgram 300 2 0.34 0.70 Январь 2018
news_upos_cbow_600_2_2018 547 Мбайт Русскоязычные новости,с сентября 2013 до ноября 2016 почти 5 миллиардов слов 289 191 200 Universal Tags Continuous Bag-of-Words 600 2 0.35 0.46 Январь 2018
araneum_upos_skipgram_300_2_2018 192 Мбайта Araneum около 10 миллиардов слов 196 620 400 Universal Tags Continuous Skipgram 300 2 0.38 0.65 Январь 2018
araneum_none_fasttextskipgram_300_5_2018 2.5 Гбайт Araneum около 10 миллиардов слов 195 782 400 Нет fastText Skipgram (3-граммы) 300 5 0.36 0.71 Январь 2018
ruwikiruscorpora-nobigrams_upos_skipgram_300_5_2018 385 Мбайт НКРЯ и  Википедия за декабрь 2017 (без склеивания биграмм) 600 миллионов слов 394 332 40 Universal Tags Continuous Skipgram 300 5 0.31 0.72 Январь 2018
ruwikiruscorpora-superbigrams_skipgram_300_2_2018 735 Мбайт НКРЯ и  Википедия за декабрь 2017 (с неограниченным склеиванием биграмм) 600 миллионов слов 746 695 40 Universal Tags Continuous Skipgram 300 2 0.28 0.71 Январь 2018
ruscorpora_upos_skipgram_300_10_2017 200 Мбайт НКРЯ 250 миллионов слов 184 973 10 Universal Tags Continuous Skipgram 300 10 0.35 0.65 Январь 2017
ruwikiruscorpora_upos_cbow_300_20_2017 420 Мбайт НКРЯ и  Википедия за ноябрь 2016 600 миллионов слов 392 339 15 Universal Tags Continuous Bag-of-Words 300 20 0.33 0.70 Январь 2017
web_upos_cbow_300_20_2017 290 Мбайт Веб-корпус, декабрь 2014 900 миллионов слов 267 540 30 Universal Tags Continuous Bag-of-Words 300 20 0.32 0.67 Январь 2017
araneum_upos_skipgram_600_2_2017 419 Мбайт Araneum около 10 миллиардов слов 196 465 400 Universal Tags Continuous Skipgram 600 2 0.41 0.59 Июнь 2017
news_upos_cbow_300_2_2017 130 Мбайт Русскоязычные новости,с сентября 2013 до ноября 2016 почти 5 миллиардов слов 194 058 200 Universal Tags Continuous Bag-of-Words 300 2 0.33 0.42 Февраль 2017
ruscorpora_upos_skipgram_600_10_2017 371 Мбайт НКРЯ 250 миллионов слов 173 816 10 Universal Tags Continuous Skipgram 600 2 0.43 0.29 Июнь 2017
ruscorpora_mystem_cbow_300_2_2015 303 Мбайт НКРЯ 107 миллионов слов 281 776 3 Mystem Continuous Bag-of-Words 300 2 0.38 0.27 Декабрь 2015
ruwikiruscorpora_mystem_cbow_500_2_2015 1100 Мбайт НКРЯ и  Википедия за  2015 280 миллионов слов 604 043 5 Mystem Continuous Bag-of-Words 500 2 0.38 0.38 Март 2015
web_mystem_skipgram_500_2_2015 630 Мбайт Веб-корпус, декабрь 2014 660 миллионов слов 353 608 30 Mystem Continuous Skipgram 500 2 0.31 0.52 Ноябрь 2015
news_mystem_skipgram_1000_20_2015 525 Мбайт Русскоязычные новости, с сентября 2013 до октября 2015 2.5 миллиарда слов 147 358 200 Mystem Continuous Skip-Gram 1000 20 0.32 0.58 Декабрь 2015

Корпуса

  1. НКРЯ: Национальный Корпус Русского Языка в полном объёме;
  2. Википедия: дамп русской Википедии за соответствующую дату;
  3. Новости: поток новостей с 1 500 преимущественно русскоязычных новостных сайтов (около 30 миллионов документов);
  4. Araneum Russicum Maximum: веб-корпус русскоязычных текстов, собранный Владимиром Бенко в 2016 году (скачать лемматизированный корпус);
  5. Тайга: открытый и структурированный корпус русского языка, снабженный морфологической и синтаксической разметкой (подкорпус поэзии не использовался); собран Татьяной Шавриной;
  6. GeoWAC: сэмпл русскоязычных документов из дампа CommonCrawl, сбалансированный по географии авторов собран Jonathan Dunn и Ben Adams;
  7. Веб: случайно отобранные 9 миллионов русскоязычных веб-страниц; обкачаны в декабре 2014 года.

Предобработка корпусов

Перед обучением все корпуса были токенизированы, разбиты на предложения, лемматизированы (за исключением моделей с идентификаторами, содержащими "_tokens_") и размечены по частям речи при помощи UDPipe (кроме моделей на fastText и ELMo). Тэги частей речи соответствуют  формату Universal PoS Tags (например, «печь_NOUN»). Таблица конверсии в UPoS из тэгов Mystem доступна здесь. Стоп-слова (союзы, местоимения, предлоги, частицы, пунктуация и т.п.) были удалены (за исключением моделей с идентификаторами, содержащими "_func" или "_tokens_").

Процесс предобработки корпусов с примерами кода в деталях описан в тьюториале. Также доступны готовые скрипты, воспроизводящие нашу предобработку на любом русском тексте: вариант для UDPipe и вариант для Mystem.

Некоторые устойчивые и частотные словосочетания из двух слов (биграммы) были объединены в один токен через спецсимвол «::» (особенно это касается имен собственных), например, борис::гребенщиков_PROPN. Для сравнения доступна и модель без склейки биграмм (ruwikiruscorpora-nobigrams_upos_skipgram_300_5_2018), а также модель, в которой были склеены все возможные биграммы продуктивных типов, независимо от их частотных характеристик (ruwikiruscorpora-superbigrams_skipgram_300_2_2018).

Начиная с 2019 года, скачиваемые модели содержат ненормированные вектора. Модели ELMo обучены на корпусах с минималистичной предобработкой: только токенизация и (опциально) лемматизация при помощи UDPipe. Стоп-слова не удалялись, частеречные тэги не добавлялись.

Для локальной работы с нашими (и не только нашими) моделями ELMo мы подготовили лёгкую в использовании библиотеку для Python.

Оценка моделей

Оценка качества дистрибутивно-семантических моделей сама по себе является сложной проблемой. Лучше всего напрямую оценивать, насколько хорошо модель работает для конкретной практической задачи (extrinsic evaluation). Однако, если модели обучаются «для всего» или для демонстрации возможностей метода (как в случае с нашим сервисом), приходится тестировать некую общую способность моделей работать с языком, без привязки к конкретной задаче (intrinsic evaluation).

Мы оцениваем наши модели двумя хорошо известными способами:

  1. Корреляция (по Спирмену) значений парной схожести слов, сгенерированных моделью, и значений, взятых из вручную размеченного тестового сета. Мы применяем тестовый сет RuSimLex965, построенный на базе Multilingual SimLex999 dataset (наша статья о RuSimLex965).
  2. Точность решения задач на аналогии (пропорций). Для оценки мы использовали русскую версию семантических секций Google Analogies Dataset (перевод Татьяны Кононовой; почитать подробнее о задаче решения аналогий).

Модели ELMo оцениваются на задаче word sense disambiguation (WSD), используя тестовый сет Human-Annotated Sense-Disambiguated Word Contexts for Russian (он же RUSSE'18). Итоговая оценка - макро-усредненная F1 по всем словам тестового сета. Подробнее об оценке моделей ELMo читайте в нашей статье. В качестве дополнительной метрики мы используем задачу классификации пар документов. Датасетом здесь является корпус проекта ParaPhraser.

Скачать все наши тестовые сеты (с частеречными тэгами или без них, в лемматизированном и сыром виде).

Кто использует модели RusVectōrēs?

  1. Habra-юзер drafterleo сделал поэтичный поисковик по стишкам-пирожкам.

  2. Доцент школы лингвистики НИУ ВШЭ Борис Орехов создал "векторные пересказы" классических произведений русской литературы.

  3. Github-юзер opennota разработал семантический поисковик по стихам Александра Сергеевича Пушкина.

  4. Sberbank AI использует наши модели в качестве baseline на соревновании по стихотворному искусственному интеллекту "КлассикAI".

  5. Группа Михаила Копотева из Хельсинкского университета использует автоматическое выделение конструкций на основе семантической близости коллокатов в проекте CoCoCo: Colligations, Collocations & Constructions.

  6. Группа Ольги Митрофановой с кафедры математической лингвистики СПбГУ работает над дистрибутивно-семантическим калькулятором для предсказания русскоязычных коллокаций с заданными свойствами.

  7. ...

У вас есть что добавить к этому списку? Пишите нам!