Top.Mail.Ru
Ключевые фразы для контекстной рекламы
Главная Новости Контекстная реклама бьет ключом. Часть1.

Контекстная реклама бьет ключом. Часть1.


30.10.2022

Разбираемся с количеством ключевых фраз для рекламных кампаний


Эта статья является развитием – или, как модно говорить, «спин-оффом» - одной из тем, затронутых ранее в других публикациях и посвященных в целом системе контекстной рекламы (доступны здесь, здесь и здесь). Теперь же мы займемся решением частной, но весьма важной проблемы – а именно, определения оптимального количества так называемых «ключевых фраз» для кампаний в рамках контекстной рекламы.


Собственно, о понятии «ключевых фраз» слышал всякий, кто так или иначе создавал или администрировал эти самые кампании. При этом интерфейс рекламных сервисов (а это Директ от Яндекса и забанивший всех россиян Ads от Гугл) предоставляет очень широкие возможности для упражнений во «фразотворчестве», вводя рекламодателей в искушение: то ли написать одну-единственную фразу, то ли скопировать вообще весь перечень из всех возможных коллекторов, включая Вордстат. Отметим, что в доступных (многочисленных) публикациях по системам контекстной рекламы – и обучающих, и проблемно-исследовательских – проблема количества ключевых фраз в общем виде не обсуждается и не ставится. Мы решили заполнить пробел и подойти к решению этой проблемы по возможности системно. Имея в виду не столько теорию, сколько практические следствия – оптимизацию усилий обычных рекламодателей по разработке этих самых фраз.

И два технических замечания: примеры будем приводить исключительно из собственной практики – транспортной контейнерной логистики – для того, чтобы не изобретать искусственные условные конструкции типа «купить пластиковые окна в Москве».

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

Вместо введения: фактические запросы и обработка

Исходная модель: ключевые фразы и человеко-машина

Запросы-функции: оценка полноты и точности


Вместо введения: фактические запросы и обработка


Принцип функционирования  контекстной рекламы (рекламы на поиске), вероятно, всем известен, но ради связности напомним его. Введенный пользователем некий произвольный поисковый запрос инициирует показ рекламной машиной (далее: РМ, под которой подразумеваются Яндекс Директ и (или) Google Ads)  объявления, которое содержит предложение товара или услуги и которое, возможно, может заинтересовать этого пользователя. Этот принцип имеет несколько очень важных следствий, о которых нужно сразу же сказать.

Во-первых, в отличие от чистого информационного поиска, в рамках поисковой рекламы объявление демонстрируется не в ответ на запрос, а в связи c ним. Дело в том, что рекламодателя интересует не столько то, что именно ищет пользователь, сколько то, зачем ему это нужно – а именно, не стоит ли за произвольным информационным запросом некая потребность, которую и может удовлетворить предложение  (товар или услуга) этого рекламодателя.  Более подробно о намерениях и запросах смотрите в этой статье.

Соответственно, в общем случае  связь между предложением (исходящим от рекламодателя) и запросом (исходящим от пользователя) может быть весьма условной и далекой. Выражается это главным образом в том, что на языковом содержательном уровне запрос и предложение могут значительно друг от друга отличаться.  Кстати, в   теории информационного поиска  понятия, используемые в запросе и в предложении, принято называть «лексемами» (англ.”tokens”, которые выражаются самыми разными частями речи:  существительными,  глаголами,  прилагательными и наречиями)// Более подробно в отличной книге, изданной в том числе и при содействии Яндекса: К. Маннинг, П.Рагхаван, Х.Шютце «Введение в информационный поиск».

Так вот, лексемы, входящие в запрос и в предложение, в общем случае не обязаны совпадать.  Пусть, к примеру, пользователь вводит запрос «расстояние от Владивостока до Магадана». Вполне можно допустить, что он интересуется этим потому, что планирует рассчитать маршрут или стоимость доставки груза из одного города в другой. И если оценивать (или каким-то образом знать) его намерения, то будет разумным показать ему объявление «доставка грузов в контейнерах по морю», хотя ни одна из лексем из запроса не встречается в предложении.

Однако заметим, что по целому ряду причин обработка  подобных «несовпадающих» (условных, широких) запросов для рекламных машин представляет собой очень сложную задачу,  и РМ ориентируется прежде всего на совпадение лексем. Поэтому в ответ на попытку обычного рекламодателя явно задать условия для показов по «несовпадающим» запросам  РМ, скорее всего, выдаст предупреждение о нерелевантности (отсутствии содержательной связи).  Тем не менее, в Яндекс Директ  возможность несовпадающего  «показа» отчасти реализована при помощи опции «автотаргетинга», когда рекламодатель доверяет самой системе отбирать запросы, руководствуясь некоторыми собственными неоглашаемыми критериями. В скобках заметим, что эффективность обработки несовпадающих запросов варьируется от отрасли к отрасли, а решение о применении этой опции принимает конкретный рекламодатель.

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

 Но здесь может возникнуть вопрос – а зачем вообще простому смертному рекламодателю собирать и анализировать эти фактические запросы - к тому же если ему доступна в лучшем случае их небольшая часть?

Во-первых, именно эти фактические запросы служат в качестве исходных («первичных») данных для формирования (а вообще говоря, «разработки») массива вторичных запросов, тех самых ключевых фраз, которым и посвящена эта статья. Иначе говоря, в идеальном случае в качестве исходного шага рекламодатель должен обращаться именно к массиву фактических запросов, а уж только потом – к многочисленным сервисам-коллекторам.

Во-вторых, только анализ фактических запросов позволяет соотнести намерение (потребность) и способ ее выражения, проще говоря, оценить потенциального клиента. Сформулируем это в более парадоксальной форме: анализ и работа с вторичными запросами (ключевыми фразами) практически не имеет отношения к  поведению людей, а представляет собой этап в программировании РМ.  Забегая вперед, любой вторичный запрос – это инструкция или функция для РМ, которая представляет собой всего лишь алгоритм, не имеющий никаких намерений.

В-третьих, хотя это и является несколько более узкой задачей, анализ первичных запросов позволяет точнее понять потенциального клиента. Если в рамках первой задачи рекламодатель может оценить, зачем клиент делает тот или иной запрос, то в данном случае есть возможность понять, как он фактически описывает (или называет) что именно ему нужно. Например, в рамках контейнерной логистики вовсе нетривиальным будет вопрос – а что нужно сделать: перевезти контейнер, доставить  контейнер или отправить? А контейнер или контейнер с грузом? Уверены, что и в любой другой отрасли найдутся подобные примеры.

Тем не менее, поведенческий анализ фактических запросов предметом этой статьи не является, и для дальнейшего мы будем предполагать, что некоторый репрезентативный массив фактических запросов <для любой произвольной отрасли> уже сформирован.


Исходная модель: ключевые фразы и человеко-машина


Как часто делается в работах по информатике в целом и информационному поиску в частности, для начала максимально упростим ситуацию и построим предельно «человеко-подобную» модель. Ее, кстати, вполне можно назвать и аналоговой.

Итак, пусть показами рекламных объявлений физически управляет некий человек, который и выполняет функцию РМ. Управляет самым непосредственным образом: видит введенный очередным пользователем фактический запрос и, нажимая на кнопку, показывает соответствующее рекламное объявление (ну почти как барышня-телефонистка в начале века осуществляла ручное коммутирование).

Очевидно, что главная здесь категория «соответствующее».  Иначе говоря, человек РМ должен получить от рекламодателя исчерпывающие инструкции, касающиеся условий показа.  В самом простейшем случае инструкция могла бы выглядеть так:

Пример 1.

Фактический запрос                                Действие

<точная формулировка запроса 1> - показать <объявление 1>;

<точная формулировка запроса 2> - показать <объявление 1>;

<точная формулировка запроса 3> - показать <объявление 2>;

И т.д.//

Иными словами, для организации показа рекламодатель должен составить перечень фактических запросов и потребовать, что показ осуществляется тогда и только тогда, когда фактический запрос точно совпадает с тем, что находится в перечне. Соответственно, человек-РМ сверяет фактический запрос с имеющимся в перечне и в случае совпадения показывает то или иное объявление. Конечно, в описанном виде работа РМ выглядит несколько курьезно, хотя строго обоснованно и реалистично.  Но существенно здесь совсем иное – а именно, чрезмерная усложненность и неэффективность работы такой РМ. И дело не в том, что кнопочки нажимает какой-то несчастный (вероятно, как гласит мем: за ЖРАТ), а в самом алгоритме.

С одной стороны, этот алгоритм чрезвычайно сложен, поскольку требует от рекламодателя составления исчерпывающего перечня всех запросов. При этом в перечне должны оказаться не только фактические (то есть, уже когда-то введенные) запросы, но и возможные – такие, которые еще будут использованы.

С другой -  он неэффективен, поскольку вынуждает РМ игнорировать запросы, которые в других условиях могли бы инициировать показы. В самом деле, стоит пользователю переставить слова и вместо «отправить груз в контейнере» ввести «груз в контейнере отправить», и запрос будет отвергнут как нерелевантный, поскольку алгоритм требует точного совпадения. То же самое произойдет и в случае пропуска предлогов, отсутствия согласования по родам или падежам и т.д.

При этом указанные алгоритм упускает из виду очевидную вещь: в любой тематической области обязательно найдется некоторое количество запросов, выражающих примерно одно и то же – такие множества схожих по смыслу запросов можно называть «кластерами».  Применительно к контейнерной логистике  кажется весьма логичным предположение о том, что запросы, представленные ниже, имеют одинаковый смысл (или как говорят в информатике «эквивалентную интерпретацию»):

Пример 2

(а)отправить груз в контейнере;

(б) отправить грузовой контейнер;

(в) отправить контейнер с грузом;

(г) отправить контейнер//

Очевидно, что если не вдаваться в возможные психолого-лингвистические тонкости, то речь идет о том, чтобы «отправить»+»груз»+»контейнер».  Таким образом, все эти 4 высказывания можно представить (репрезентировать) всего лишь одним обобщающим высказыванием, которое  является комбинацией лексем (вопрос о том, что в любом естественном языке люди выражают свои мысли при помощи предложений или словосочетаний, а не комбинаций лексем, пока оставим без рассмотрения).

В практическом плане это означает, что мы можем существенно упростить инструкцию для нашего человека-РМ, которая в общем виде теперь выглядит так: если в фактическом запросе присутствуют три указанные лексемы, то показываем объявление. Следовательно, у нас в распоряжении появляется новый тип запросов, которые мы выше мельком обозначили как «вторичные». Эти запросы служат исключительно для обработки фактических запросов (то есть, являются «техническими») и – в зависимости от результата такой обработки – обусловливают осуществление того или иного действия. Эта конструкция является ничем иным как реализацией идеи «функции» - так, как ее понимают в математике и информатике: фактический запрос – независимая переменная или аргумент – возвращает значение показать=1 или не показывать=0. А в терминологии рекламных машин такие вторичные запросы-обработчики-функции как раз и называются «ключевыми фразами» (далее везде мы будем использовать обе этих категории).

Пример 3

Фактический запрос               Ключевая фраза (запрос-функция)           Действие//

Достоинства этого нового алгоритма очевидны.

Во-первых, мы существенно сократили время обработки: намного быстрее «выхватить» несколько лексем (в данном случае, три), нежели осуществлять пословное сравнение.

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


Запросы-функции: оценка полноты и точности

Вопрос о возможном количестве запросов-функций предполагает обсуждение полноты их возможного перечня, тогда как о должном  их количестве – сортировки или «выбраковки» отдельных запросов.

1)      Полнота перечня

Приближенный (и общий) ответ на первый вопрос можно получить, если учесть цели разработки запросов-функций: их может быть ровно столько, сколько существует отдельных групп близких по смыслу фактических запросов (кластеров), поскольку каждый кластер должен репрезентироваться как минимум одним запросом-функцией. При этом сказать заранее, сколько фактически таких кластеров возникнет  невозможно, поскольку отрасли значительно различаются. Однако независимо от отрасли, кластеры должны формироваться корректно, так, чтобы выполнялось главное условие: объединение близких по смыслу запросов таким образом, чтобы каждый фактический запрос вошел только в один кластер.

 Таким образом, проблема сводится к рассмотрению количества способов (процедур), при помощи которых можно эти самые кластеры конструировать. Отметим, что эти процедуры применимы как для случая обработки уже имеющегося массива  фактических запросов, так и для разработки гипотетически возможных фактических запросов.  По-видимому, имеют место четыре  основные корректные порождающие процедуры, две из которых можно назвать прямыми или непосредственными, а две – косвенными или опосредованными. 

1.1.Словоформы

Эта процедура наиболее проста, поскольку сводится к объединению в один кластер запросов с одинаковыми лексемами и примерно одинаковой длиной. Причем лексемы здесь берутся, так сказать, в качестве корней, безотносительно ко всевозможным аффиксам – приставкам, суффиксам и т.д.  Порядок слов здесь также не учитывается. Для расширения уже существующего массива также выделяются базовые лексемы,  а затем они превращаются  в другие части речи (например, из существительных в прилагательные) и (или) меняется их порядок  в высказываниях.

Пример 4.

Отправить груз в контейнере – Отправить грузовой контейнер

Отправить груз в контейнере – Отправить контейнер с грузом

Единственное, здесь предполагается, что служебные частицы (типа предлогов) не изменяют смысл конкретного высказывания. И очевидно, что для определенных категорий запросов игнорирование служебных частиц приведет к ошибкам в обработке, как например, в случае с запросом «отправить контейнер Уфа».

1.2. Нулевые (подразумеваемые) лексемы

Речевая активность широко задействует сокращение высказываний, когда некоторые лексемы опускаются, поскольку их наличие в определенном контексте избыточно. Такой контекст лингвисты еще называют «узусом». Проще говоря, в повседневной речи  не уточняют то, что «и так понятно».  Таким образом, в один кластер можно объединить запросы разной длины и даже содержащие дополнительные лексемы, при условии, что эти лексемы можно «исключить» без потери смысла.

Пример 5.

Отправить контейнер – отправить грузовой контейнер//В данном случае можно утверждать, что в контексте транспортной логистики «контейнер»  всегда означает «грузовой контейнер», хотя, конечно, в жизни бывают и другие контейнеры, например, мусорные.

Пример 6.

Доставить груз – доставить груз на авто//Менее очевидный пример, но на практике доставляют груз по умолчанию именно автотранспортом, а вот если необходим какой-то  иной вид доставки, то его указывают явно.

Сокращение запросов за счет исключения нулевых лексем в конечном счете упрощает процесс, но здесь важно корректно использовать контекст.

Завершая обзор этих процедур, важно отметить, почему они являются «непосредственными». Все дело в том, что в кластеры объединяются запросы на основе их фактического содержания (фактически входящих в их состав лексем), а также за счет сокращения опять-таки уже имеющихся лексем.  

1.3.Синонимические запросы

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

Пример 7.

Отправить груз в контейнере – Отправить товар в контейнере//Для перевозчика или экспедитора, словом, для логиста, все, что перевозится, является «грузом», тогда как для прочих смертных это может быть и «имуществом», и «материальными ценностями» и  т.д.

Пример 8.

Цена отправки контейнера – Сколько стоит отправить контейнер//


1.4. Запросы, содержащие роды и виды

В один кластер можно объединять также запросы, содержащие лексемы, которые между собой соотносятся как «род» и «вид». В принципе, их можно считать «синонимами», поскольку почти все, что относится к виду, относится и к роду. И в иных отраслях или ситуациях этим различием можно пренебречь.

Пример 9.

Отправить сыпучий груз – Отправить песок//Как известно, песок – это сыпучий груз, поэтому если, скажем, кто-то осуществляет доставку земли, то он легко справится и с песком, следовательно, без какого-либо колебания он может рекламировать свои услуги для доставки любого вида сыпучего груза.

Рассматривая эти процедуры, стоит указать на одну фундаментальную проблему. С одной стороны, с точки зрения содержания эти процедуры весьма эффективны, поскольку приводят к формированию кластеров близких запросов. Но с технической точки создание кластеров с их помощью значительно усложняет в дальнейшем разработку инструкций для РМ. Как говорилось ранее, благодаря запросам-функциям нет необходимости создавать полный перечень всех фактических запросов. А теперь в дополнение к списку запросов-функций нужно еще создавать и словарь синонимов и родовых понятий.

 

Пример 10.

Фактический запрос                               Запрос-функция                                 Действие

Отправить груз в контейнере               отправить груз контейнер                 показать //кластеры без синонимов

Отправить товар                                   отправить груз (товар, имущество etc.)//кластер с синонимами


2)      Точность интерпретации

Итак, будем считать, что искомые кластеры сформированы, отметив между делом, что каждый фактический запрос входит только в один такой кластер. Здесь возникают следующие вопросы: сколько запросов – функций может репрезентировать каждый кластер, сколько их должно быть и что делать, если таких запросов больше, чем один.

Для начала следует заметить, что если кластеры сформированы корректно – с  использованием одной из описанных выше процедур – то можно без ограничения считать, что любой запрос, отнесенный к данному кластеру, будет выражать почти тоже самое, что и любой другой.  В этом, кстати, основное преимущество использования корректно сформированных кластеров: любой фактический запрос может быть использован в качестве запроса-функции. Кроме того, вхождение каждого фактического запроса только в один кластер обусловливает выполнение условия «один кластер – один запрос-функция», что в дальнейшем минимизирует время обработки.

В порядке теоретического отступления заметим, что существует еще один способ разработать запрос-функцию, кроме как выбрать один  из имеющегося массива фактических. Такой запрос можно еще и сконструировать, сделав его максимально удобным для машинной обработки (в нашей модели, напомним, фигурирует гипотетический человек).  В этом случае запрос-функция будет представлять собой искусственную   языковую конструкцию, состоящую по существу из чистых лексем  и построенную по определенным правилам (эти правила описываются категориями «стемминга» и лемматизации).  К обсуждению этих «неестественных» запросов мы вернемся в следующем разделе, где будут обсуждаться уже реальные цифровые машины на примере Яндекс.Директа.

 

Подведем итоги.

1.       Ключевая фраза – это технический запрос-функция, улучшающий алгоритм работы рекламных машин.

2.       Такой запрос представляет группу близких по смыслу фактических запросов, объединенных в одну группу (кластер). Он имеет примерно тот же смысл, что и любой другой запрос из кластера.

3.       Количество запросов-функций различно для каждой предметной области, но подчиняется правилу «один запрос-один кластер».

4.       Каждый фактический запрос должен входить только в один кластер, а сами кластеры должны быть корректно определены (на основе логически корректных процедур).


Окончание следует


Возврат к списку