Новости, о которых невозможно молчать
Новости, о которых невозможно молчать

Мы недавно писали на Хабр о нашей библиотеке silero-stress для простановки ударения в обычных словах и омографах. Теперь у нашего проекта silero-stress вышла версия v1.2, в которую вошло следующее:

  • Добавили акцентор для украинского языка на основе словаря в 3M слов;

  • Выложили в открытый доступ словари ударений ещё для 18 языков России и СНГ;

  • Если слова нет в словаре, ударение ставится алгоритмом (подробности в табличке под спойлером ниже);

  • Обновили пакет.

Для русского и украинского языков размеры словарей позволили обучить акценторы, которые работают со 100%-й точностью на исходном словаре, а так же имеют какую-то ненулевую генерализацию на неизвестные слова (ещё акцентор занимает примерно на два порядка меньше места, чем словарь).

Для остальных языков мы выложили в открытый доступ собранные нами словари и указали алгоритм простановки ударения в неизвестных словах.

Почти для всех языков получилось вручную разметить небольшого размера словари. В ходе разметки выяснилось, что для подавляющего большинства языков в первом приближении работает эвристика "ставить ударение на первый/последний слог", которой можно заменить полноценный акцентор, обученный на большом словаре.

Для остальных языков мы выложили в открытый доступ собранные нами словари и указали алгоритм простановки ударения в неизвестных словах.

Словари на все языки, кроме русского и украинского получились довольно небольшими. Чтобы не смущать пользователей, мы вынесли функционал расстановки ударений в малоресурных языках в отдельный модуль. Если будет запрос и помощь от комьюнити, то по мере развития проекта мы будем добавлять языки "на основу". С омографами меньше верится, что мы когда-либо до них добежим, но никогда не говори никогда.

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

Скрытый текст

Язык

Словарь (шт. слов)

Акцентор

Словарь размечен вручную

Алгоритм доразметки

Русский

~4 млн

акцентор + классификатор омографов

частично

Украинский

~3 млн

акцентор

частично

Белорусский

24 тыс.

словарь

да

только словарь

Якутский

86 тыс.

словарь + алгоритм

частично

последний слог

Азер. (лат.)

11 тыс.

словарь + алгоритм

да

последний слог

Азер. (кир.)

11 тыс.

словарь + алгоритм

да

последний слог

Армянский

8.5 тыс.

словарь + алгоритм

да

последний слог

Башкирский

9.7 тыс.

словарь + алгоритм

да

последний слог

Грузинский

12.5 тыс.

алгоритм

нет

предпоследний слог

Кабардинский

5.5 тыс.

словарь + алгоритм

да

последний слог

Казахский

6.8 тыс.

словарь + алгоритм

да

последний слог

Калмыцкий

9 тыс.

алгоритм

нет

последний слог

Киргизский

11.7 тыс.

словарь + алгоритм

да

последний слог

Мокшанский

5.3 тыс.

словарь + алгоритм

да

первый слог

Таджикский

9 тыс.

словарь + алгоритм

да

последний слог

Татарский

11.5 тыс.

словарь + алгоритм

да

последний слог

Удмуртский

13.5 тыс.

алгоритм

нет

последний слог

Узбекский (лат.)

5 тыс.

алгоритм

нет

последний слог

Узбекский (кир.)

5 тыс.

алгоритм

нет

последний слог

Хакасский

12.3 тыс.

словарь + алгоритм

да

последний слог

Чувашский

23 тыс.

словарь + алгоритм

да

последний слог

Эрзянский

4 тыс.

словарь + алгоритм

да

первый слог

Ссылки:

  • Репозиторий проекта тут

  • Как пользоваться почитать тут

Работа над проектом ведётся при поддержке Фонда содействия инновациям в рамках федерального проекта «Искусственный интеллект» национальной программы «Цифровая экономика Российской Федерации».