Метод обработки объектов класса ID в рекомендуемых сценариях

машинное обучение

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

1. OneHot

Этот метод является наиболее распространенным методом обработки функций класса id.В этом случае функции класса id могут быть пронумерованы, и каждое значение равно 1 для одного бита и 0 для других битов. Например, пол делится на мужской, женский, неизвестный. Тогда «мужской» представляется как [1,0,0].

2. Multi-OneHot

Помимо вышеперечисленных случаев, переменная также может иметь несколько значений одновременно. Например, в сценарии электронной коммерции пользователь может взаимодействовать с несколькими продуктами в историческом поведении. В настоящее время OneHot, описывающий интерактивные элементы пользователя, имеет более 1 бита из 1, например [1,0,0, 1 ,0].

3. Статистические методы.

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

4. Embedding

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

4.1 Unsupervised Sequence Embedding

В настоящее время методы неконтролируемого внедрения в основном применяются к сериализованным функциям или данным. Среди них более классическими являются word2vector, glove и так далее. Идея word2vec возникла из НЛП, но постепенно применяется к различным упорядоченным последовательностям.Принцип может относиться кКолонка.Call.com/fear/26306795.Идею word2vec можно применить ко многим сценариям. В сценарии рекомендации продукта использование word2vector в сочетании с исторической последовательностью покупок пользователя позволяет изучить векторизованное представление товара, а именно item2vec, а также может быть расширено до song2vec (встраивание песни), move2vec (встраивание фильма).

4.2 Graph Embedding

Если функция класса id имеет взаимосвязь, подобную графу, модель, основанная на алгоритме графа, может использоваться для изучения представления внедрения функции, как правило, такого как углубленное изучение, внедрение графа и т. д. Подобно word2vec, глубокая прогулка. Сначала используйте случайное блуждание, чтобы получить последовательность идентификаторов, а затем используйте word2vec, чтобы получить результат внедрения каждого идентификатора.

image-20201203232042916

4.3 Уровень внедрения DNN

По сравнению с методом неконтролируемого внедрения слой внедрения добавляется после входного слоя в DNN, так что представление внедрения функции типа идентификатора получается посредством обучения. Большинство основных моделей рекомендаций, используемых в рекомендательных сценариях, таких как DeepFM/DIN, используют этот метод слоя внедрения для внедрения функций класса id перед выполнением последующих операций.

image-20201203232406791