Главное о кейсе
Проект “RLT.TagParser” задуман как система, реализующая функционал создания ключевых тегов из подготовленной заказчиком документации и составленного им описания объекта закупки для улучшения системы поиска на электронной площадке Росэлторг. Нетривиальность задачи обеспечили требования к неограниченному словарю тегов, человекочитаемому виду и возможности к генерации тегов, не встречавшихся ранее.
Уникальность проекта также обусловлена тем, что ни одна из федеральных площадок электронных торгов не создавала системы автоматической генерации неограниченного словаря тегов. Система реализована с использованием передовых подходов в ML.
Key details of the case
The “RLT.TagParser” project was conceived as a system that implements the functionality of creating key tags based on the documentation provided by the customer and on the description of the procurement object submitted by the customer for the purposes of improving the search system on the Roseltorg electronic platform. The non-trivial nature of the task was ensured by the requirements for an unlimited dictionary of tags in a human-readable form and by the capacity to generate tags that have not been encountered before.
What also makes the project stand out is the fact that none of the federal electronic trading platforms have created a system of automatic generation of an unlimited dictionary of tags. The system was created using advanced approaches in ML.
Как проект изменил жизнь пользователей
Подход к созданию системы поиска закупок через теги позволил кратко описывать их сущность в нескольких ключевых словах и увеличил:
трафик на сайте на 22% благодаря улучшенной SEO-оптимизации под ключевые запросы (переработка семантического ядра);
среднее количество страниц на 12% за сеанс;
среднее время на сайте на 17%, чему поспособствовала более удобная система поиска закупок;
среднее количество участников в закупке на 3.2%;
скорость поиска поставщиком подходящих закупок на 28%.
The approach to create a procurement search system through tags has made it possible to briefly describe their essence in a few keywords and increased:
1. website traffic by 22% thanks to the improved SEO optimization for key requests (processing of the semantic core);
2. average number of pages by 12% per session;
3. average time on the website by 17% which was facilitated by a more convenient procurement search system;
4. the average number of participants in the procurement by 3.2%;
5. speed of the suitable procurement search by the supplier by 28%.
Бизнес-задача и ее решение
Сформулированные бизнес-задачи для проекта:
Улучшить пользовательский опыт в части поиска закупок (упрощение входа в сферу закупок для новых компаний);
Получить из “Названия закупки” и “Названия Лота” именно ключевую информацию по ним с последующей агрегацией закупок по тегам;
Упрощение создания посадочных страниц для наиболее часто встречаемых ключевых слов.
Business objectives and their solutions
Defined business objectives of the project:
· To improve user experience in terms of searching for a procurement (lowering entry barriers into the procurement business for new companies);
· To obtain key information from the “Procurement Name” and “Lot Name” on each individual procurement and lot with a subsequent aggregation of procurements by tags;
· To facilitate the creation of landing pages for the most common keywords.
Декомпозиция задач:
Перед Департаментом перспективных разработок Росэлторг стояла задача создать систему генерации тегов из текста с описанием закупок со следующими требованиями:
Словарь тегов должен быть недетерминированным и иметь возможность автоматического расширения;
Пользователь должен видеть теги в человекочитаемом виде (с соблюдением падежа, рода, числа и т.д.) ;
Длина тега должна быть не более 3 слов;
При появлении тегов, не встречавшихся в ранее опубликованных закупках, они должны быть сгенерированы автоматически с соблюдение родов и падежей;
Необходимо обучить глубокую нейронную сеть с архитектурой языковых моделей для приведения тега из 2 слов к человекочитаемому виду;
Теги должны валидироваться на стоп-листах и иметь ограничения по тематике;
Аббревиатуры и сокращения должны обрабатываться отдельно по генерируемому справочнику;
Необходима отдельная обработка медицинских препаратов из справочника ЕСКЛП (Единый справочник-каталог лекарственных препаратов);
Теги должны описывать сущность закупки, без стандартной для сферы описательной информации;
Система должна обрабатывать не менее 10 000 закупок за 10 секунд.
Task decomposition:
The Department of Advanced Developments of Roseltorg was faced with the task of creating a system for generating tags based on text describing procurements with the following requirements:
· The tag dictionary must be nondeterminate and have the capacity of automatic expansion;
· The user must see tags in a human-readable form (in compliance with case, gender, number, etc.);
· The tag length must be no more than 3 words;
· When tags not found in previously published procurements appear, they should be generated automatically with respect to genders and cases;
· To train a deep neural network with the architecture of language models to bring a tag of 2 words to a human-readable form;
· Tags must be validated on stop lists and have restrictions in relation to the subject matter;
· Abbreviations and acronyms must be processed separately according to the generated directory;
· Separate processing of medications from the ESKLP directory (Unified Directory-Catalogue of Medicines) is required;
· Tags should describe the essence of a procurement, without conventional descriptive information;
· The system must process at least 10,000 procurements in 10 seconds.
Решение:
Нами было принято решение писать систему на правилах, основанных на морфологическом разборе слов и синтаксическом разборе текста. Логика генерации тегов была разделена на несколько шагов:
Предобработка текста и очистка от описательной информации благодаря выявлению паттернов и анализу синтаксиса предложений;
Составление тегов из одного слова с отдельной обработкой аббревиатур;
Составление тегов из двух слов, связанных между собой по результатам синтаксического разбора и имеющих подходящие части речи по результатам морфологического разбора;
Составление аббревиатур на основе исторических названий закупок через подход сопоставления с паттерном;
Отдельная обработка лекарственных препаратов, перечисленных в справочнике ЕСКЛП (Единый справочник-каталог лекарственных препаратов);
Составление справочника наиболее часто фигурирующих IT-продуктов в исторических процедурах и их отдельная обработка;
Приведение полученных тегов к человекочитаемому виду (к примеру, из слов “задвижка шиберный” получился тег “шиберная задвижка”) путем обучения многослойной глубокой нейронной сети с архитектурой языковых моделей;
Составление вручную и по статистическим методам стоп-листов и валидация тегов по ним;
Сортировка набора тегов в закупке с учетом исторической частоты появления и частоты запроса в рунете;
Реализация поиска по тегам процедур на электронной площадке Росэлторг с возможностью задания нескольких тегов с дополнительной фильтрацией в режиме реального времени;
Упрощенная система создания посадочных страниц на портале с высокочастотными тегами для SEO-оптимизации и более удобного поиска закупок участниками рынка.
Solution:
We decided to create the system based on rules of the morphological analysis of words and the syntactic analysis of text. The tag generation logic was divided into several steps:
1. Text preprocessing and removal of descriptive information by identifying patterns and analyzing sentence syntax;
2. Compiling tags from one word with a separate processing of abbreviations;
3. Compiling tags from two words that are related to each other based on the results of the syntactic analysis and that have suitable parts of speech based on the results of the morphological analysis;
4. Compiling abbreviations based on the historical procurement names through a pattern matching approach;
5. Separate processing of medicinal products listed in the ESKLP directory (Unified Directory-Catalogue of Medicines);
6. Compilation of a directory of the most frequently used IT products in historical procedures and their separate processing;
7. Bringing the resulting tags into a human-readable form (for example, from the words “valve gate” the tag “gate valve” was obtained) by training a multi-layered deep neural network with a language model architecture;
8. Manual compilation as well as compilation using statistical methods of stop lists and tag validation based on these stop lists;
9. Sorting a set of tags in a procurement taking into account its historical frequency of occurrence and the frequency of requests in Russian internet;
10. Implementation of a search by procedure tags on the Roseltorg electronic platform with the capacity to specify several tags with additional filtering in real time;
11. A simplified system of creating landing pages on the portal with high-frequency tags for SEO optimization and a more convenient search for procurements by market participants.
Инсайты, гипотезы, процесс создания и взаимодействия с заказчиком
Инсайты:
Внедрение теговой системы и тем самым улучшение качества системы поиска значимо повлияло на ключевые бизнес метрики, а именно:
-объем трафика;
-доля новых пользователей;
-среднее время сеанса на сайте;
-среднее количество страниц за сеанс;
-увеличение доли трафика из канала SEO на сайт;
-экономия времени на поиск закупок поставщиками;
-увеличение среднего количества участников в закупке;
Гипотеза:
Последующее улучшение системы тегов, внедрение их синонимичности и категориальной связанности, анализ опечаток позволит еще больше улучшить ключевые метрики.
Прочая информация о кейсе
Система обработки текста и генерации тегов создана при поддержке научного состава Лаборатории Росэлторг.Университет и разрабатывалась специалистами с многолетним стажем применения ML в сфере электронных торгов. Система введена “в эксплуатацию” и ежемесячно используется аудиторией порядка 600 тыс. пользователей по всей России. В данный момент система включает более 4,5 миллионов тегов и постоянно пополняется.
Other information about the case
The text processing and tag generation system was created with the assistance of the scientific staff of the
Roseltorg.University Laboratory and was developed by experts who possess many years of experience in using ML in the field of electronic trading. The system has been “put into operation” and is used monthly by about 600 thousand users throughout Russia. Currently the system includes more than 4.5 million tags and is constantly being updated.
Текущая доступность работы
Доступно для общего использования на сайте электронной площадки Росэлторг в разделе поиска торгов
Скриншоты