Telegram Web Link
Яндекс 360 запустил техножурнал

В Яндекс 360 мы создаём технологии, которые лежат в основе более чем 12 сервисов, включая Диск, Телемост, Почту, Мессенджер и другие. И мы любим о них рассказывать. Как устроены видеозвонки на тысячу человек? Как хранятся и обрабатываются петабайты данных? Какие вызовы мы решаем, создавая сервисы, которыми пользуются миллионы?

Теперь ответы на эти вопросы, все технические статьи, разборы сложных задач, доклады и выступления инженеров Яндекс 360 — в нашем журнале.
Выделение базовой части слов

При обработки естественного языка в машинном обучении мы сталкиваемся с множеством форм слова, например, демократия и демократизация. Для машин очень важно понимать, что эти разные слова имеют одинаковую базовую форму.

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

В модуле Python NLTK (Natural Language Toolkit Package) есть различные пакет, связанные с данным процессом выделения базовой части и использующие разные алгоритмы.

Один за пакетов, snowball, использует алгоритм соответственно Snowball, разработанный Мартином Портером. Алгоритм поддерживает большинство популярных языков. Подробнее об алгоритме можно почитать тут.

#snowball
Корутины

Некой противоположностью генераторов являются корутины. Для примера напишем функцию, которая будет в бесконечном цикле подставлять значение и выводить строку.

Обратите внимание на то, как было использовано ключевое слово yield. При таком написании создаётся не генератор, а корутина, что позволяет не просто генерировать значения, но и принимать их.

Функция работает так: при отправке значения через метод send локальная переменная name принимает его, а далее значение подставляется в строку и выводится на экран.

#генераторы #корутины
2025/02/24 18:16:12
Back to Top
HTML Embed Code: