Автор: Дыков М. А. Воробкалов П. Н.
Источник: Известия Южного федерального университета. Технические науки. Выпуск № 2 / том 79 / 2008
Дыков М. А. Воробкалов П. Н. - Анализ семантики поискового запроса в интернет-магазине В данной статье рассмотрен существующий метод поиска товаров в Интернет-магазине и его недостатки. Предложен новый метод анализа семантики поискового запроса в Интернет-магазине, позволяющий выделять из строки поискового запроса на естественном языке упомянутые в ней свойства товара и их значения.
В настоящий момент в большинстве Интернет-магазинов для поиска товаров используют полнотекстовый поиск. Данный вид поиска ра- ботает следующим образом [1].:
Одной из основных проблем обработки естественного языка является представление семантической составляющей слов [2]. Отсутствие распознавания смысла слов при полнотекстовом поиске приводит к ряду проблем:
Семантический поиск призван увеличить релевантность результатов поиска путем определения требований пользователя и значений ключевых слов в контексте поискового запроса [3].
Для распознавания качественных значений количественных свойств товаров для каждого количественного свойства составляется таблица соответствия качественного значения свойства количественному. Столбцами данной таблицы являются категории, строками – качественные значения свойства (например: дешевый, дорогой для цены). Данная таблица заполняется на основании анализа значений количественного свойства у товаров в каждой категории. В результате данного анализа каждому качественному значению в определенной категории сопоставляется диапазон количественных значений.
Рисунок 1 – Схема работы метода анализа семантики поискового запроса закону Зипфа
Анализ строки поискового запроса в Интернет-магазине значительно проще по сравнению с анализом семантики массивов текста. Прежде всего, запрос состоит только из одного предложения. Строка поискового запроса в Интернет-магазине может быть представлена в следующем формализованном виде:
Q = {L1, L2, L3, …, Ln},
где Li – слово: союз, частица, предлог, прилагательное, существительное. В результате анализа семантики строки поискового запроса необходимо получить следующие данные:
K = {k1, k2, k3, …, kn} – набор категорий, к которым может принадлежать товар; Qвых = U1(E1) B1 U2(E2) B2 U3(E3) B3 … Un(En)), где Ei – фраза; Ui – унарная операция: {отрицание} (может отсутствовать); Bi – бинарная операция: {и; или}; Ei = (Oi Pi1 Vi1) и (Oi Pi2 Vi2) – «(Oi Pi2 Vi2)» – может отсутствовать; Oi – свойство; Pi – операция отношения:{включает; больше; меньше}; Vi – значение свойства.
Рассмотрим пример анализа поискового запроса: «Красный дорогой телефон с камерой» с применением разработанного метода. Ниже представлены результаты выполнения каждого шага:
Таким образом, получаем следующий результат работы метода: категория товара – телефоны; (цвет включает красный) и (цена > 5000 руб- лей) и (камера присутствует).Рассмотрим время, затраченное на выполнение шагов разработанного метода:
Следовательно, соотношение производительности рассмотренных шагов разработанного метода и соответствующих этапов полнотекстового поиска = P/(YP + 1). В большинстве случаев P > 10, Y < 0,3. Таким образом, разработанный метод показывает прирост в производительности. К недостаткам данного метода можно отнести то, что он будет выдавать некачественные результаты при малом количестве товаров в Интернет-магазине, так как многие слова запроса не будут находиться среди значений свойств товаров и, таким образом, могут некорректно распознаваться свойства состоящие из нескольких слов. В перспективе данный недостаток можно исправить путем создания с последующим подключением словарей, содержащих названия и значений свойств товаров, взятых из других Интернет-магазинов.
Таким образом, был разработан метод анализа семантики поискового запроса, позволяющий выделить из строки поискового запро- са, написанной на естественном языке, категорию, свойства и их значения у искомого товара. Применение данного метода позволяет определять требования пользователей: выделять качественные значения количественных свойств товаров, обрабатывать унарные и бинарные операции, выявлять принадлежность слов и словосочетаний определенной характеристике товара, определять отношения между словами или группами слов. Это приводит к повышению качества обработки поисковых запросов и релевантности поисковых результатов.