Можно ли применить машинное обучение для вашего PPC-аккаунта, чтобы сделать его работу более эффективной? Журналист Дэвид Фотергил рассказывает, как он использует автоматизацию, чтобы найти ключевые слова для рекламных кампаний.
Главное в контекстной рекламе – эффективность. Всегда можно сделать больше за время, отведённое на оптимизацию кампании в AdWords; поэтому очень важно правильно расставить приоритеты и уложиться по времени.
В этой статье мы поговорим о машинном обучении, и как применять его для увеличения эффективности кампаний. В качестве примера я буду использовать категории ключевых слов.
Как говорил Стив Джобс, компьютер – это как “велосипед для мозга”. Так же как велосипед увеличивает эффективность передвижения человека, так и компьютеры повышают умственную работоспособность человека.
Рассуждать можно долго, но давайте сделаем что-то более существенное: попытаемся автоматизировать процесс размещения новых ключевых слов в рекламную кампанию.
Что такое машинное обучение?
Для начала давайте определим, что же это такое:
Машинное обучение – метод, используемый для разработки моделей/алгоритмов, которые позволяют компьютеру предсказывать действия человека. Они позволяют пользователям принимать надёжные, проверенные решения и выдавать результаты, основываясь на истории поиска.
В нашем случае, надёжные, проверенные решения – это определённые числовые значения, которые мы ожидаем от нашей рекламной кампании.
На высоком уровне, цель машинного обучения – это вывести прогностическую формулу и зависимые коэффициенты, которые позволят минимизировать “ошибки”.
Две главные проблемы, которые решает машинное обучение, – это классификация и регрессия. Классификация относится к распределению данных по названиям, тогда как регрессия предсказывает дальнейшие варианты.
Категоризация ключевых слов – одна из проблем классификации
Моя цель – показать, как использовать классификацию текста, чтобы разместить новые ключевые слова. Сделав это, вы сэкономите своё время.
Предварительное условие для решения проблемы классификации – наличие классифицированных данных. Для начала – распределите ключевые слова по соответствующим кампаниям.
Следующее требование – несколько “настроек”, которые позволят распределять новые данные. “Настройки” – это элементы, на которых строится модель — предиктивная переменная.
Самый простой способ трансформировать текстовые данные в настройку алгоритма – это создать вектор из набора слов. Вектор содержит в себе количество слов, которое встречается в документе. В нашем случае ключевое слово -это очень короткий документ.
На заметку: На деле, так как наши “документы” – т.е. ключевые слова — короткие, мы можем создать набор векторов, которые будут ничего не значить из-за отсутствия разнообразия, но это не затрагивает нашу статью, поэтому мы не будем углубляться в проблему.
Выбирая подходящий алгоритм
Существует огромное количество алгоритмов, которые решают множество проблем. На картинке внизу показано это. Также можно заметить, что у каждого алгоритма есть внутренняя логика, с помощью которой вы сможете принять верное решение.
Давайте применим модель Наива Байеса, чтобы определить, есть ли потенциал у этого подхода.
Я не собираюсь в деталях описывать, как применить эту модель, а только приведу пример, как использовал её в Python. Причина, по которой я делаю это, – показать силу автоматизации с помощью несколько строчек кода.
Ниже представлен скриншот из Jupyter Notebook, при выполнении следующих шагов:
- Загрузка данных, на основе которых строится модель (~20,000 ключевых фраз, заранее классифицированных).
- Разделение данных на подклассы для тестирования (это обязательно, чтобы мы могли протестировать модель, которая прогнозирует новые данные, а не просто описывает старые).
- Создание конвейера, который a) создает настройки – векторы (CountVectorizer) и b) применяет выбранный метод (MultinomialNB).
- Прогнозирование значений и проверка их правильности.
Заключение
Итак, насколько это эффективно? С помощью измерения точности мы определили, что данный метод правильно классифицирует 91% “новых” ключевых фраз (4431 из 4869).
И хотя это достаточно хороший результат, нужно ещё провести множество тестов, чтобы применить данную модель на практике.
Данный подход позволит улучшить и автоматизировать процесс, сделать его более эффективным.
Добавить комментарий