Алгоритм рекомендации, анонсированный рекламой Microsoft Bing в 2016 году (Deep Crossing)

глубокое обучение алгоритм

Сегодня мы рассмотрим алгоритм, анонсированный поисковой рекламой Bing в 2016 году. оригинальный текст здесьууууу. Смотри.org/see2016/afraid…. Этот тип нейронной сети отличается от алгоритма рекомендаций YouTube, который мы видели ранее, и фокус совершенно другой.

жизненный опыт

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

Строго говоря, модель глубокого пересечения, упомянутая в документе, может использовать в качестве входных данных различные функции, такие как текст, категория, идентификатор или функции числового типа. Такого рода функции незаменимы в сфере поисковой рекламы, где находится Bing Ads. Прежде чем говорить о конкретных функциях и моделях, давайте сначала познакомимся с понятиями, связанными с индустрией поисковой рекламы:

Query: A text string a user types into the search box
Keyword: A text string related to a product, specified by an advertiser to match a user query
Match type: An option given to the advertiser on how closely the keyword should be matched by a user query, usually one of four kinds: exact, phrase, broad and contextual

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

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

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

При показе каждого объявления также будетПросмотры, клики и CTR, такие функции в основном основаны на функциях идентификации (реклама, идентификатор пользователя) и цифровых функциях модели.

особенность

Все функции, описанные выше, заложены в модель, так как же каждая функция вводится в модель? В общем, каждый признак является вектором.

  • Текстовые признаки раскладываются на трехбуквенные граммы, то есть три буквы соответствуют вектору, в 49292-мерном пространстве (не понял как делать юникод, когда увидел, может доход CJK текста слишком мало?).
  • Функция категории становится однократной, то есть предполагается, что эта функция категории имеет 5 различных категорий, тогда первая категория — [1,0,0,0,0], категория 4 — [0,0,0,1 ,0]. One-hot означает, что всегда существует только одна 1, которая является «горячей».

Модель

Модель Deep Crossing разделена на четыре части: Embedded, Stacking, The Residual Unit и Scoring layer. Функция потерь модели — логарифмическая потеря.

Embedding

Этот слой в основном отвечает за следующую функцию

j является признаком этого набора функций, мы можем сначала рассмотреть только один набор функций, поэтому мы можем игнорировать j.

n здесь не указывается и является размерностью этого объекта. Например, размер текстового объекта равен 49292.

X — это входные данные для функции, которая представляет собой n-мерный вектор.

M — вектор размеров m*n. Вы можете определить m, и когда m мало, вы уменьшаете размерность X. Здесь его можно понимать как поведение матричного разложения.

b — m-мерный вектор (в статье говорится, что b — n-мерный вектор, но W*X должен быть m-мерным, поэтому исходный текст должен быть неправильным, поправьте меня, если я ошибаюсь).

Наконец, используйте ReLU, чтобы каждый вектор результатов W*X+b был как минимум 0.

В этом слое вы обычно понимаете это как уменьшение размерности, чтобы его можно было ввести в следующий уровень Stacking Layer.

Stacking Layer

Этот слой предназначен для стека/объединения всех входных данных,

Низкоширотные объекты напрямую объединяются в слой суммирования без уменьшения размерности.

The Residual Unit

На самом деле это не слой, а «дуплексный ReLU» над выходом слоя стека и встраивания.

W_0 и b_0 здесь должны быть W и b предыдущего слоя внедрения, и слой ReLU добавляется поверх этого вывода, так что функция F соответствует X_O - X_I.

Scoring layer

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

Эффект

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

собственное резюме

Сама модель естьАлгоритм рекомендаций на основе глубокого обучения, анонсированный YouTube в 2016 годуПринципиальной разницы нет.Основное отличие ReLU.Остальное декомпозиция матриц + конкатенация.Модель YouTube делится на две.Концепции различных конструкций немного сложнее.Deep Crossing-это модель, которая должна это понимать Концепция проще, поэтому рекомендуется сначала прочитать это, а затем статью на YouTube. Опубликуйте еще раз, оригинальный Deep Crossing здесьууууу. Смотри.org/see2016/afraid….