Новый взгляд аналитики

ШАБЛОНЫ ПОИСКА ЗНАНИЙ

 

Компания продаёт металлорежущие инструменты. Большинство заказов выполняются по предварительным заявкам. Товары поставляются с виртуальных складов, которые находятся у разных поставщиков. В случае отсутствия продукции её требуется изготовить за границей. В этом случае срок получения составляет 1-4 месяца.

Каждый технический товар имеет длинное название. В нём представлено множество характеристик. Все показатели важны для покупателя. У каждого поставщика есть свои правила написания. Общее число товаров составляет более 200 000. Ежемесячно добавляется более 10 000. Количество групп насчитывает более 1000.

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

Компания представляет свои товары на разных сайтах. Каждый сайт имеет свою тематику и дизайн. Там потенциальные покупатели могут выбрать товар. Большинство характеристик собрано в списки с имеющимися значениями. Раскрывая их можно сделать свой выбор. Такими действиями легко подобрать необходимый товар.

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

Теперь начнём наводить порядок и составим план действий. Сначала проведём сбор информации. Сведения по всем товарам извлечём из локальной базы данных. Перенесём их в отдельную таблицу. Проведём опрос специалистов по вопросу важности номенклатуры. Определим несколько больших товарных групп. В них отберём несколько товаров для анализа.

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

Часть 1 содержит вначале одно существительное и несколько прилагательных. Они могут быть написаны строчными и прописными буквами. Бывают сокращения и аббревиатуры. В начале слов иногда используется латинская буква. Далее указан массив размеров с числами, вместо запятой стоит точка. Указывается иногда единица измерения.

Часть 2 хранит данные о виде товара, назначении, маркетинговой линии товара. Здесь имеются различные индексы и комплектность, вид теста и качество обработки. Могут быть любая последовательность, большое число показателей. Совершенно не типичная часть строки названия.

В части 3 обычно описывается материал товара. Он может быть сокращённым или полным. Потом описывается стандарт. Это может быть российский или иностранный норматив. В конце представлен бренд. Состоит из одного или нескольких слов. Он может быть полным или сокращённым, иногда присутствуют разные буквы.

В процессе анализа получена такая информация. Название товара может содержать до 20 элементов. Длина строки не превышает 100 символов. Это ограничение накладывает требование базы данных. В процессе формирования новой строки будем придерживаться такой последовательности.

Сначала исходные названия расположены в одной таблице. Из каждой строки выбираем старые элементы. Исправляем их и создаём новые компоненты. Они записываются в разные столбцы. Потом объединяем их в другом порядке. Проводим проверку и сортировку. При необходимости сокращаем длину строки.

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

Для каждой коллекции представляется отдельная таблица, в скобках указано количество строк. Это коллекции регулярных выражений и типовых замен на правильные формы. Есть коллекция для расширения сокращений. Коллекция брендов предназначена извлечения и замены. Ещё есть коллекции обозначений материалов, допусков и квалитетов.

Таблица регулярных выражений

Вначале разбираются строки и исправляются типичные дефекты. Удаляются лишние пробелы и обрабатывает единицы измерения. Устанавливает запятые в числах с помощью оригинального алгоритма. Он отличает числа с точками от похожих индексов. Остальное сделают встроенные функции и операторы подобия.

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

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

Сначала из 1-й части выделим слова, числовые массивы и единицы измерения. Размеры могут быть метрическими или измеряться в дюймах. Из 3-й части отбираются другие элементы: модели, материалы, бренды. Используются выше описанные инструменты. Потом формируется часть 2. Для этого из полной строки вычтем предыдущие части. Далее составим конфигурацию в нужном порядке. И проведём сортировку товаров по новым названиям.

В конце каждого цикла процесса проводится проверка. Корректируется длина названия, оцениваются дубликаты слов и чисел. Определяются нераспознанные части. Целью выбора такого содержания и порядка процесса определяется высокое качество и скорость обработки.

Таблица сравнения названий товаров
Таблица материалов
Таблица брендов