[Документальное исследование] Оценка заказа

искусственный интеллект алгоритм

Representation Learning for Predicting Customer Orders

Введение

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

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

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

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

Прогноз будущих заказов

Прежде чем внедрять прогностическую модель, сначала изучите распределение порядка в известном наборе данных.ppКак спрогнозировать будущие заказы, исходя из предпосылки

символ

использоватьV={1,2,..,n}V=\{1,2,..,n\}Представляет собой набор товарных категорий,SSУказывает тип заказа, которыйVVПодмножество всех возможных типов ордеров с количествомN=2nN=2^n.

Предполагая, что распределение заказов постоянно в течение определенного периода времени (это предпосылка возможности прогнозировать будущие заказы с помощью исторических заказов), предположимp={p1,...,pN}p=\{p_1,...,p_N\}распределение порядка, полученное из исторических данных,pip_iУказывает, что случайный порядок принадлежитiiвероятности в типах ордеров, используяpg={p1g,...,pNg}p^g=\{p_1^g,...,p^g_N\}Представляет истинное распределение последних заказов.

использоватьKKПредставляет количество заказов в будущем периоде времени, предполагая, чтоKKдано (поскольку предсказаниеKKГораздо проще, чем предсказывать конкретный порядок). использовать N-мерный целочисленный векторCg=(c1g,...,cNg)C^g=(c^g_1,...,c^g_N)представлять наземные истинные будущие заказы,c1gc^g_1означает первыйiiКоличество заказов основных правд для заказов классов.Cp=(c1p,...,cNp)C^p=(c^p_1,...,c^p_N), представляет изученный порядок, очевидноCp1=K||C^p||_1=K,C?С^?Построение обычно основано на изученном распределении порядкаpp.

Метрики оценки

Цель состоит в том, чтобы делать прогнозы.CpC^pкак можно ближеCgC^g, поэтому необходимо измерить разницу между ними.overlap(что можно понимать как сходство) можно рассчитать как:

Overlap(Cp,Cg)=i=1Nmin(cip,cig)KOverlap(C^p,C^g)=\sum^N_{i=1}\frac{\min(c^p_i,c^g_i)}{K}

так какCp1=Cg1=K||C^p||_1=||C^g||_1=K, приведенную выше формулу можно упростить следующим образом:

Overlap(Cp,Cg)=1CpCg12KOverlap(C^p,C^g)=1-\frac{||C^p-C^g||_1}{2K}

видимая минимизацияCpCg1||C^p-C^g||_1эквивалентно максимизацииOverlap(Cp,Cg)Overlap(C^p,C^g).

Алгоритм максимизации перекрытия

Определить вероятностьPr(Cg=C1;K,pg)Pr(C^g=C^1;K,p^g)Cg=C1=(c11,...,cN1),C1=KC^g=C^1=(c^1_1,...,c^1_N),||C^1||=K, который распределяется в соответствии с порядком истинности основанияpgp^gЗаказ генерируется случайным образом, поэтому вы получаете:

Pr(Cg=C1;K,pg)=K!c11!,...,cN1!i=1N(pig)ci1Pr(C^g=C^1;K,p^g)=\frac{K!}{c^1_1!,...,c^1_N!}\prod^N_{i=1}(p^g_i)^{c^1_i}

первоеiiПредельная вероятность количества наземных истинных ордеров в каждом типе ордеров равна:

Pr(cig=Cci1;K,pg)=Kci1(pig)ci1(1pig)Kci1Pr(c^g_i=Cc^1_i;K,p^g)= \begin{matrix} K\\ c^1_i \end{matrix}(p^g_i)^{c^1_i}(1-p^g_i)^{K-c^1_i}

знать,cigc^g_iПовторное биномиальное распределениеB(K,pig)B(K,p^g_i). Прогноз для определенного заказаCpC^p,имеют:

image.png

здесьE[cigcip;K,pg]E[|c^g_i-c^p_i|;K,p^g]определяется в соответствии сpgp^gгенерироватьcigc^g_iВремяcigcip|c^g_i-c^p_i|ожидаемое значение. когдаcipc^p_iзаcigc^g_iкогда среднее геометрическоеKpigKp^g_iокругление),E[cigcip;K,pg]E[|c^g_i-c^p_i|;K,p^g]достигает своего минимального значения.

Observation 1: когда установленоCpKpgC^p\approx Kp^gчас,cipc^p_iзначениеKpigKp^g_iпоймали иCp1=K||C^p||_1=K,E[cigcip;K,pg]E[|c^g_i-c^p_i|;K,p^g]близко к своему минимальному значению, его геометрический смыслCgC^gиCpC^pмеждуl1l_1- Ожидание расстояния.

пройти черезObservation 1Ранее упомянутая максимизация может быть легко найденаOverlap(Cp,Cg)Overlap(C^p,C^g)На самом деле, это установитьCpKpgC^p\approx Kp^g. На практике, однако, распределение истинного порядка не может быть известно.pgp^g, из последних исторических данных можно узнать только одно распределение ордеровpp, затем используйтеppстроитьCpC^p, и надеюсьppиpgp^gкак можно ближе,ppТакже известен как прокси-распределение ордеров.

Алгоритм 1 показывает использование прокси-распределения ордеровppстроитьCpC^pпроцесс.

image.png

модель генеративного отбора

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

Встраивание категорий продуктов и карта категорий продуктов

Набор заданных категорий товаровV={1,2,...,n}V=\{1,2,...,n\}и несколько коллекций исторических заказовS={S1,S2,...,Sr}S=\{S_1,S_2,...,S_r\},SiS_iзаVVПодмножество. Категорияiiпредставлен какdd- размерный векторxiеRdx_i\in \mathbb{R}^d, называетсяВстраивание элемента.

Для построения графа категорий вводятся две воображаемые вершины, исходный узел00и стоковые узлыn+1n+1и встроенныйx0x_0вершины00. Граф категорий является ориентированным графомG=<V{0,n+1},E>G=<V\cup\{0,n+1\},E>,EEсодержит от00прибытьVV,отVVприбытьVV(кроме петель), изVVприбытьn+1n+1со всех сторон иn+1n+1на петле, аn=4n=4Диаграмма категорий показана на рисунке 2 (а):

image.png

Случайное блуждание для генерации случайных порядков

Моделирование генеративного процесса выбора клиентов как процесса случайного блуждания на основе графа категорий: из исходных узлов00Сначала клиенты могут перемещаться только по ребрам за пределами текущей вершины и в конечном итоге попадут в ловушку в узле стока.?+1?+1В (см. последний цикл на рис. 2) заказ клиента, полученный таким образом, представляет собой набор продуктов, которые он посещает.

После формализации случайное блуждание можно рассматривать как марковский процесс.{Xi,i=0,1,..X0=0}\{X_i,i=0,1,..|X_0=0\}, набор посещенных категорийS={Xii=0,1,...}{0,n+1}S=\{X_i|i=0,1,...\}-\{0,n+1\}. Кроме того, требуется матрица переходных вероятностейPP, в матрицеPijP_{ij}означает отiiперейти кjjвероятность, текстPijP_{ij}устанавливается следующим образом:

image.png

yiy_iУказывает, что клиент покупает категориюiiПрекратить ли покупать после, определите набор параметровX={x0,...,xn,y1,...,yn}X=\{x_0,...,x_n,y_1,...,y_n\}. использоватьxiTxjx_i^Tx_jдля измерения категорииi,ji,jкорреляция, используяsoftmaxsoftmaxфункция стандартизации категорий на карте категорийiiвзаимосвязь с другими узлами. Заказы, случайно сгенерированные этой моделью, определяются какSS,использоватьPr{S=sX}Pr\{S=s|X\}представлять категорию заказаsVs\subseteq Vв случайном порядкеSSВероятность.

тренировочный процесс

В этом разделе, чтобы изучить представления вершин, мы сначала сформулируем процесс обучения как задачу оценки максимального правдоподобия. Точный расчет стохастического градиента показан в Алгоритме 2:

image.png

Набор данных и исходный код

Ссылка на набор данных Исходная ссылка