RU2480828C1 - Method of predicting target value of events based on unlimited number of characteristics - Google Patents
Method of predicting target value of events based on unlimited number of characteristics Download PDFInfo
- Publication number
- RU2480828C1 RU2480828C1 RU2011141635/08A RU2011141635A RU2480828C1 RU 2480828 C1 RU2480828 C1 RU 2480828C1 RU 2011141635/08 A RU2011141635/08 A RU 2011141635/08A RU 2011141635 A RU2011141635 A RU 2011141635A RU 2480828 C1 RU2480828 C1 RU 2480828C1
- Authority
- RU
- Russia
- Prior art keywords
- event
- segments
- events
- segment
- value
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
Abstract
Description
Область техникиTechnical field
Изобретение относится к вычислительной технике и может быть использовано для автоматизированного проведения адресных кампаний в отношении покупателей, прогноза снижения и увеличения количества потребителей продукции, прогноза результатов реализации событий для различных объектов и направлений хозяйственной деятельности.The invention relates to computer technology and can be used to automatically conduct targeted campaigns with respect to customers, a forecast of a decrease and increase in the number of consumers of products, a forecast of the results of events for various objects and areas of economic activity.
Предшествующий уровень техникиState of the art
Известны прогностические методы на основе нейросетей, карт Кохонена, деревьев решений, общим для которых является получение на входе процесса моделирования «вектора признаков» фиксированной размерности после этапа «подготовки данных» (этап Data Preparation, см. CRoss Industry Standard Process for Data Mining - CRISP-DM).Known prognostic methods based on neural networks, Kohonen maps, decision trees, for which it is common to obtain at the input of the process of modeling a “feature vector” of fixed dimension after the “data preparation” stage (Data Preparation stage, see CRoss Industry Standard Process for Data Mining - CRISP -DM).
Однако реальные данные, накапливаемые компаниями, содержат историю событий исследуемых объектов с переменным и часто большим количеством событий по каждому объекту, и только с большими потерями информации могут быть преобразованы в вектор. При этом каждое событие может содержать целый ряд характеристик, потенциально полезных для прогноза.However, the real data accumulated by the companies contains a history of events of the objects under investigation with a variable and often a large number of events for each object, and only with large losses of information can be converted into a vector. In addition, each event may contain a number of characteristics that are potentially useful for forecasting.
Например, информация о покупке товара по дисконтной карте одновременно содержит сумму покупки, точную дату, название и категорию товара, сумму скидки, название и адрес магазина, название отдела - всего до 100 и более полей. При этом значимыми для прогноза поведения покупателей в отношении конкретных акций могут оказаться совершенно различные характеристики, например:For example, information on purchasing a product using a discount card simultaneously contains the purchase amount, the exact date, name and category of the product, the amount of the discount, the name and address of the store, the name of the department — up to 100 or more fields. Moreover, completely different characteristics may be significant for predicting the behavior of buyers in relation to specific stocks, for example:
- Сумма покупок со словом 'ШАМПАНСКОЕ' в 'НАЗВАНИИ ТОВАРА' УТРОМ- Amount of purchases with the word 'CHAMPAGNE' in 'GOODS NAME' in the MORNING
- Сумма покупок со словом 'МАРТИНИ' ПО ПЯТНИЦАМ,- The amount of purchases with the word 'MARTINI' FRIDAY,
- Количество покупок со словом 'ПАМПЕРС' ДНЕМ,- Number of purchases with the word 'PAMPERS' DAY,
- Количество слов 'ВЫСШЕЕ' В АНКЕТЕ,- The number of words 'TOP' in the questionnaire,
- Количество посещений web-страницы 'ШУРУПЫ И САМОРЕЗЫ' и т.д.- The number of visits to the webpage 'SCREWS AND SCREWS', etc.
Таким образом, как значения текстовых полей, так и слова в них, в том числе в комбинации с числовыми полями, могут быть использованы для формирования отдельных потенциально полезных характеристик. При ассортименте торговых сетей в десятки и сотни тысяч наименований количество потенциально полезных характеристик покупателей часто превышает миллион.Thus, both the values of text fields and the words in them, including in combination with numerical fields, can be used to form individual potentially useful characteristics. With an assortment of retail chains of tens and hundreds of thousands of items, the number of potentially useful characteristics of buyers often exceeds a million.
Объем данных всех возможных характеристик событий миллионов покупателей превышает размер доступной оперативной памяти современных компьютеров, что вынуждает разработчиков информационных систем «уменьшать размерность» анализа до нескольких десятков тысяч переменных, то есть экспертным методом отбрасывать потенциально ценную информацию.The amount of data of all possible characteristics of the events of millions of customers exceeds the size of the available RAM of modern computers, which forces developers of information systems to "reduce the dimension" of the analysis to several tens of thousands of variables, that is, by an expert method to discard potentially valuable information.
Известен также алгоритм ассоциативных правил, использующийся для поиска часто встречающихся комбинаций товаров в «корзинах» покупок (Association Rule and Quantitative Association Rule Mining among Infrequent Items MDM'07, Ling Zhou, Stephen Yau, 2007, San Jose, California, USA). Но этот алгоритм не позволяет использовать наряду с основным идентификатором (например, название товара) другую дополнительную информацию (дата и время покупки, адрес магазина, группа, подгруппа, категория и подкатегория товара).The algorithm of associative rules is also known, which is used to search for frequently encountered combinations of goods in shopping baskets (Association Rule and Quantitative Association Rule Mining among Infrequent Items MDM'07, Ling Zhou, Stephen Yau, 2007, San Jose, California, USA). But this algorithm does not allow using along with the main identifier (for example, the name of the product) other additional information (date and time of purchase, store address, group, subgroup, category and subcategory of the product).
Известен способ (US, 6839682) предсказания финансового поведения потребителей (например, покупателей), включающий получение ряда входных транзакций для множества потребителей относительно множества торговцев; определение, по крайней мере, одного торгового сегмента, в котором каждый торговец объединяется по крайней мере с одним из определенных торговых сегментов; и по крайней мере для одного потребителя, применяя входные транзакции потребителя компьютером к каждой по крайней мере одной торговой прогнозирующей модели сегмента, каждому торговому определению прогнозирующей модели сегмента для торгового сегмента прогноз функционирует между входными транзакциями в прошлом временном интервале и финансовым поведением в последующем временном интервале, чтобы произвести для каждого потребителя предсказанное поведение в каждом, по крайней мере, подмножестве торговых сегментов.A known method (US, 6839682) predicts the financial behavior of consumers (for example, buyers), which includes obtaining a number of input transactions for many consumers relative to many merchants; definition of at least one trading segment in which each merchant is combined with at least one of the specific trading segments; and for at least one consumer, applying computer input consumer transactions to at least one trading predictive segment model, for each trading definition of a forecasting segment model for a trading segment, the forecast functions between input transactions in the past time interval and financial behavior in the subsequent time interval, to produce for each consumer the predicted behavior in each of at least a subset of the trading segments.
Этот известный способ реализует автоматизированный прогноз целевого показателя (ЦП) событий, включающий получение компьютером данных о событии с указанием по каждому событию целевого показателя и набора характеристик этого события, сегментацию, построение прогнозной модели и прогноз целевого показателя для последующих аналогичных событий.This known method implements an automated forecast of a target indicator (CPU) of events, including computer receiving event data indicating for each event a target indicator and a set of characteristics of this event, segmentation, building a forecast model and forecasting a target indicator for subsequent similar events.
В данном способе событием является покупка, целевым показателем - сумма продаж в торговом сегменте, характеристикой - вектор сумм продаж покупателя в других торговых сегментах, при этом все транзакционные данные о покупателе предварительно преобразуются в вектор сумм выручки по «сегментам торговли», после чего проводится компьютерный анализ только по этим упрощенным данным.In this method, the event is a purchase, the target is the amount of sales in the trading segment, the characteristic is the vector of the sales amounts of the buyer in other trading segments, and all transactional data about the buyer is preliminarily converted into a revenue vector for the “trading segments”, after which a computer analysis based on this simplified data only.
Таким образом, в этом известном способе не учитывается и не используется для прогноза информация о времени покупок, адресах магазинов, торговых сетях внутри «сегмента», анкетных данных покупателей и каких-либо других доступных данных.Thus, in this known method, information about the time of purchases, addresses of stores, retail chains within the “segment”, personal data of buyers and any other available data is not taken into account and is not used for forecasting.
Ограничением известного способа являются недостаточно высокая точность и достоверность прогноза целевых показателей (ЦП) событий, а также длительное время и сложная процедура при обработке больших объемов данных о событиях.A limitation of the known method is the insufficiently high accuracy and reliability of the forecast of target indicators (CPU) of events, as well as a long time and complex procedure when processing large amounts of data about events.
Раскрытие изобретенияDisclosure of invention
Решаемая изобретением задача - улучшение технико-эксплуатационных характеристик и расширение функциональных возможностей прогнозирования при упрощении его процедуры.The problem solved by the invention is the improvement of technical and operational characteristics and the expansion of the forecasting functionality while simplifying its procedure.
Техническим результатом является повышение точности и достоверности прогноза целевых показателей событий, а также сокращение времени и упрощение процедуры при больших объемах данных наблюдений о различных событиях за счет оптимизации распределения данных о событиях по типам памяти компьютера и алгоритмов их обработки, что дает возможность полного анализа всех необходимых характеристик событий.The technical result is to increase the accuracy and reliability of the forecast of event target indicators, as well as to reduce time and simplify the procedure for large amounts of observation data on various events by optimizing the distribution of event data by computer memory types and processing algorithms, which makes it possible to fully analyze all the necessary characteristics of events.
Современные процессоры компьютеров позволяют выполнять миллиарды операций в секунду, но их производительность ограничивается быстродействием устройств памяти и накопителей данных.Modern computer processors can perform billions of operations per second, but their performance is limited by the speed of memory devices and data storage devices.
По этой причине в основу изобретения положен полный анализ всех возможных характеристик о событиях, что становится возможным за счет оптимизации распределения данных о событиях по типам памяти компьютера и алгоритмов их обработки.For this reason, the invention is based on a complete analysis of all possible characteristics of events, which is made possible by optimizing the distribution of event data by computer memory types and processing algorithms.
Построение модели проводится путем последовательного построения уровней дерева решений путем разделения подмножества событий, отнесенных к узлу дерева (сегмента) на каждом уровне, на сегменты следующего уровня.The construction of the model is carried out by sequentially constructing the levels of the decision tree by dividing the subset of events related to the tree node (segment) at each level into segments of the next level.
Такой подход позволяет при промышленном применении использовать только основные начальные уровни дерева решений из построенной модели, дающие максимальный экономический эффект с учетом расходов на их хранение и использование для сотен и тысяч промоакций, в том числе на точках продаж в устройствах с ограниченным объемом памяти.This approach allows for industrial applications to use only the basic initial levels of the decision tree from the constructed model, which give the maximum economic effect, taking into account the costs of their storage and use for hundreds and thousands of promotions, including at points of sale in devices with a limited amount of memory.
Для решения поставленной задачи с достижением указанного технического результата в способе получают компьютером данные о событиях с указанием для каждого события целевого показателя и произвольного набора его числовых характеристик, посредством компьютера нумеруют события, проводят сквозную нумерацию характеристик событий, сортируют значения характеристик для событий в порядке номера характеристики события - значение характеристики события, запоминают их в этом порядке в накопителе данных компьютера с указанием номеров событий, после чего в цикле сегментации выполняют последовательное деление множества событий на подмножества - сегменты следующего уровня, соответствующие узлам дерева решений, в ходе которого выполняют последовательное чтение характеристик, их значений и номеров событий из накопителя данных, и для каждого сегмента вычисляют агрегированные данные на основе целевых показателей и количества из массива событий из оперативной памяти компьютера, и при отличии следующей характеристики события от предыдущей или ее значения от предыдущего рассчитывают экономический эффект деления на сегменты между предыдущим и следующим значениями предыдущей характеристики, запоминают наилучшую характеристику события и значение, имеющие максимальный экономический эффект деления на сегменты, после чтения последнего значения характеристики из накопителя данных проводят деление сегментов, в которых экономический эффект деления на сегменты следующего уровня положителен, на сегменты следующего уровня по наилучшей характеристике и ее значению, если обнаружены новые сегменты, то повторяют цикл сегментации, если новые сегменты не обнаружены, то для прогноза целевого показателя последующего аналогичного события последовательно сравнивают значения характеристик аналогичного события со значениями наилучших характеристик, по которым было проведено деление сегмента на сегменты следующего уровня, и по значению наилучшей характеристики определяют сегмент, к которому относится последующее аналогичное событие, среднее значение целевого показателя такого сегмента служит прогнозом для последующего аналогичного события.To solve the problem with the achievement of the specified technical result in the method, the computer receives event data indicating for each event a target indicator and an arbitrary set of its numerical characteristics, events are numbered by a computer, event characteristics are end-to-end numbering, characteristics values for events are sorted in the order of the characteristic number events - the value of the characteristics of the event, remember them in this order in the computer data storage device with the numbers of events, p after which, in the segmentation cycle, the set of events is sequentially divided into subsets — segments of the next level corresponding to nodes of the decision tree, during which they sequentially read characteristics, their values and event numbers from the data storage device, and for each segment aggregated data is calculated based on target indicators and the amount from the array of events from the computer’s RAM, and if the next characteristic of the event differs from the previous one or its value from the previous calculation t the economic effect of dividing into segments between the previous and next values of the previous characteristic, remember the best characteristic of the event and the value having the maximum economic effect of dividing into segments, after reading the last value of the characteristic from the data storage device, the segments are divided in which the economic effect of dividing into segments of the next level positive, on segments of the next level by the best characteristic and its value, if new segments are detected, then repeat the cycle of segments If there are no new segments, then to predict the target of a subsequent similar event, the characteristics of a similar event are successively compared with the values of the best characteristics, according to which the segment was divided into segments of the next level, and the segment to which the next one belongs is determined by the value of the best characteristic a similar event, the average value of the target indicator of such a segment serves as a forecast for the subsequent similar event.
Возможен дополнительный вариант способа, согласно которому при вычислении экономического эффекта деления на сегменты экономический эффект уменьшают на величину доверительного интервала экономического эффекта, для чего вычисляют дополнительные агрегированные данные, в частности сумму квадратов целевых показателей событий. В качестве критерия наилучшего деления на сегменты в этом случае используется максимальный пессимистический экономический эффект. Экономическим эффектом может быть, например, экономия в связи с отказом от проведения промоакции в нецелевом (убыточном по среднему целевому показателю) сегменте. Пессимистический экономический эффект корректируется в меньшую сторону на величину оценки статистической погрешности экономического эффекта путем расчета доверительного интервала для заданной пользователем требуемой доверительной вероятности.An additional variant of the method is possible, according to which, when calculating the economic effect of dividing into segments, the economic effect is reduced by the value of the confidence interval of the economic effect, for which additional aggregated data is calculated, in particular, the sum of the squares of the target events. In this case, the maximum pessimistic economic effect is used as a criterion of the best division into segments. The economic effect may be, for example, savings in connection with the refusal to conduct a promotion in a non-target (unprofitable by the average target) segment. The pessimistic economic effect is adjusted downward by the value of the statistical error of the economic effect by calculating the confidence interval for the user-specified required confidence probability.
Возможны также варианты способа, когда деление сегментов выполняют не более заданного количества уровней и/или не менее заданного количества событий в каждом сегменте следующего уровня. Ограничение на количество событий в сегменте может устанавливаться исходя из компромисса между требуемой достоверностью сегментов и имеющимся объемом данных, которых может оказаться недостаточно для удовлетворения этих требований.Variants of the method are also possible when the division of segments is performed by no more than a predetermined number of levels and / or at least a predetermined number of events in each segment of the next level. The limit on the number of events in a segment can be set based on a compromise between the required reliability of the segments and the available amount of data, which may not be enough to satisfy these requirements.
Возможен также вариант способа, когда деление сегмента производится не более чем на два сегмента следующего уровня.A variant of the method is also possible when the segment is divided into no more than two segments of the next level.
Указанные преимущества, а также особенности настоящего изобретения поясняются лучшим вариантом его выполнения со ссылками на прилагаемые фигуры.These advantages, as well as features of the present invention are illustrated by the best option for its implementation with reference to the accompanying figures.
Перечень чертежейList of drawings
Фиг.1 изображает диаграмму формирования и обработки данных для построения модели и прогноза целевого показателя заявленным способом;Figure 1 depicts a diagram of the formation and processing of data to build a model and forecast the target indicator of the claimed method;
Фиг.2 - цикл по уровню сегментации на фиг.1;Figure 2 - cycle by level of segmentation in figure 1;
Фиг.3 - экран формирования событий (наблюдений) на основе истории покупок покупателя для заявленного способа;Figure 3 - screen for the formation of events (observations) based on the purchase history of the buyer for the claimed method;
Фиг.4 - экран результата построения модели в виде дерева решений для проведения промоакции;Figure 4 - screen of the result of building a model in the form of a decision tree for conducting a promotion;
Фиг.5 - то же, что фиг.4, для персональных рекомендаций фильма «Pretty Woman» на данных компании NetFlix.Figure 5 - the same as figure 4, for personal recommendations of the film "Pretty Woman" on the data of NetFlix.
Лучший вариант реализации изобретенияThe best embodiment of the invention
Заявленный способ может быть реализован посредством следующего алгоритма (фиг.1 и фиг.2) работы вычислительного устройства, в процессе которого строится бинарное дерево решений, то есть каждый сегмент делится не более чем на два сегмента следующего уровня. На фиг.1 и 2 штрихом выделены блоки данных и путь их передачи, сплошными линиями показаны блоки обработки данных, блоки управления и путь. Блоки, выделенные на схеме жирными линиями (фиг.2), характеризуют основной цикл, обеспечивающий максимальную производительность.The claimed method can be implemented using the following algorithm (figure 1 and figure 2) of the computing device during which a binary decision tree is built, that is, each segment is divided into no more than two segments of the next level. In Figs. 1 and 2, the data blocks and the transmission path are highlighted by dashes, solid lines show the data processing blocks, control units, and the path. The blocks highlighted in bold lines in the diagram (figure 2) characterize the main cycle, providing maximum performance.
На основе журнала 1 событий, полученных компьютером (фиг.1), блок 2 формирует данные о событиях, состоящие для каждого события из числового целевого показателя (ЦП) и произвольного набора числовых характеристик с текстовыми названиями. События формируются в соответствии с необходимой для конкретной задачи бизнес-логикой, например экономикой промоакции, почтовой или CMC рассылки, раздачи купонов или персональных предложений. Здесь и далее под понятием «число» понимаются вещественные числа, которые как частный случай могли быть получены в результате присвоения сравнимым нечисловым характеристикам следующих друг за другом числовых значений, например датам, уровням образования или владения иностранным языком из анкеты покупателя и прочее.Based on the
В процессе построения модели при поступлении в обработку каждого события оно нумеруется. Каждая вновь обнаруженная характеристика (нумерация сквозная по всем событиям) также последовательно нумеруется блоком 3, в результате чего событие может выглядеть, например, так:In the process of constructing a model when it enters the processing of each event, it is numbered. Each newly discovered characteristic (end-to-end numbering for all events) is also sequentially numbered by block 3, as a result of which the event may look, for example, like this:
После этого значение каждой характеристики для каждого события сортируется и запоминается в накопителе 4 данных в порядке «Номер характеристики - значение характеристики - номер события», например:After that, the value of each characteristic for each event is sorted and stored in the data storage device 4 in the order "Characteristic number - characteristic value - event number", for example:
Жирным шрифтом выделено значение характеристики из примера события для блока 3 (сортировка по значению проведена в порядке убывания).The value of the characteristic from the event example for block 3 is highlighted in bold (sorting by value is carried out in descending order).
После этого в оперативном запоминающем устройстве (ОЗУ) компьютера создают блок 5 массива событий, индексированного по номеру события с указанием целевого показателя и номера сегмента.After that, in the random access memory (RAM) of the computer create
Далее в цикле сегментации блока 6 подсчитывают суммарные значения агрегированных данных сегментов блока 7 (фиг.2). Агрегированными данными может быть общее количество событий, сумма целевых показателей, сумма квадратов целевых показателей и другие, выбранные разработчиком.Next, in the segmentation cycle of
Пример массива сегментов и агрегированных данных о них (блок 7):An example of an array of segments and aggregated data about them (block 7):
Для этого в блоке 8 (фиг.2) в цикле до конца данных из накопителя блока 4 производится буферизованное чтение следующей записи значений характеристик. Каждая запись значения характеристики проверяется на совпадение номера характеристики и значения характеристики от предыдущей записи в блоке 9 принятия решения. Если они не отличаются, то целевой показатель события, полученный из массива блока 5, сразу используется в блоке 10 для накопления агрегированных данных сегмента блока 7, к которому принадлежит событие. Например, к текущему значению количества событий добавляется единица, к сумме целевых показателей (ЦП) сегмента добавляется значение целевого показателя события, к сумме квадратов ЦП добавляется квадрат текущего ЦП и т.д. При этом сегмент помечается как обновленный установлением флага Обновлен = «Да» в блоке 7.To do this, in block 8 (figure 2) in a cycle to the end of the data from the drive of block 4 is buffered reading of the next record of values of the characteristics. Each record of the characteristic value is checked for the coincidence of the characteristic number and the characteristic value from the previous record in
Блоки 8, 9 и 10 в процессе построения модели используются чаще всех других при выполнении операций, поскольку данные отсортированы по номерам и значениям характеристик, и высока вероятность, что соседние записи в накопителе блока 4 имеют одинаковые значения характеристик (например, тысяча покупателей купили по одной единице товара и соответствующая характеристика у всех таких событий будет одинакова и равна единице). Для этих операций требуется только сравнение данных в ОЗУ компьютера и выполнение арифметических операций его процессором для обновления агрегированных данных, что позволяет увеличить производительность и скорость построения модели, несмотря на то, что объем данных характеристик для реальных объемов событий, как правило, не помещается в оперативной памяти.
В качестве критерия наилучшего деления на сегменты используется пессимистический экономический эффект.The pessimistic economic effect is used as a criterion for the best division into segments.
Экономическим эффектом может быть, например, экономия в результате отказа от проведения промоакции в нецелевом (убыточном по среднему целевому показателю) сегменте, в этом случае экономический эффект будет равен сумме целевых показателей в убыточном сегменте со знаком минус. Другой пример экономического эффекта - сумма превышения ЦП в дочернем сегменте по сравнению со средним по родительскому сегменту.The economic effect may be, for example, the savings resulting from the refusal to conduct a promotion in a non-target (unprofitable by the average target) segment, in which case the economic effect will be equal to the sum of the target indicators in the unprofitable segment with a minus sign. Another example of the economic effect is the amount of excess CPU in the daughter segment compared to the average for the parent segment.
Могут быть использованы и другие показатели оптимального деления сегмента, не являющиеся строго экономическими, но в любом случае для промышленной применимости они так или иначе должны в итоге приводить к расчету экономического эффекта, поэтому мы их рассматриваем как частный случай экономических критериев.Other indicators of the optimal division of the segment, which are not strictly economic, can be used, but in any case, for industrial applicability, they should somehow lead to the calculation of the economic effect, therefore we consider them as a special case of economic criteria.
Для получения пессимистического экономического эффекта экономический эффект корректируется в меньшую сторону на величину оценки статистической погрешности экономического эффекта путем расчета доверительного интервала для заданной пользователем доверительной вероятности.To obtain a pessimistic economic effect, the economic effect is adjusted downward by the value of the statistical error of the economic effect by calculating the confidence interval for a user-specified confidence probability.
Таким образом, [Результат деления на сегменты]Thus, [Segmentation Result]
=[Пессимистический экономический эффект]== [Pessimistic economic effect] =
[Экономический эффект]-[Доверительный интервал Экономического эффекта][Economic effect] - [Confidence interval of Economic effect]
[Доверительный интервал Экономического эффекта] может вычисляться исходя из стандартного отклонения целевого показателя и количества событий в сегменте с учетом коэффициентов Стьюдента или другими статистическими методами с использованием необходимых для них и накапливаемых в блоке 7 агрегированных данных в зависимости от задачи, поставленной разработчику алгоритма.[Confidence interval of Economic effect] can be calculated based on the standard deviation of the target indicator and the number of events in the segment, taking into account Student's coefficients or other statistical methods using the aggregated data necessary for them and accumulated in
Деление на сегменты производится, если пессимистический экономический эффект от него больше нуля.Segmentation is performed if the pessimistic economic effect of it is greater than zero.
Если номер или значение характеристики отличается (а также после считывания последней записи из накопителя 4), то, прежде чем обновить данные сегмента, в цикле блока 11 для всех обновленных сегментов в блоке 12 проверяется, улучшен ли результат возможного деления данного сегмента на сегменты следующего уровня по значению между отличающимися значениями одной характеристики, сравнение которых проводилось в блоке 9, или если в блоке 9 считана запись с отличающейся характеристикой, то по значению «Присутствует-Отсутствует» предыдущей характеристики.If the characteristic number or value is different (as well as after reading the last record from the drive 4), then before updating the segment data, in the cycle of
Например, если предыдущая и следующая запись в накопителе 4 относятся к одной характеристике:For example, if the previous and next record in drive 4 belong to the same characteristic:
то деление должно проводиться по значению характеристики №94512 между 8,456 и 7,232.then the division should be carried out according to the value of characteristic No. 94512 between 8.456 and 7.232.
Поскольку между предыдущим и следующим значением характеристики при используемой сортировке значений быть не может, то более точная граница между сегментами следующего уровня не может быть определена и ее можно устанавливать в этом интервале. Например, точная граница может определяться как среднее с округлением до минимального количества значащих цифр, которые сохраняют ее в границах интервала, в данном случае 8,0.Since there can be no characteristic between the previous and next value of the characteristic with the sorting used, a more precise boundary between the segments of the next level cannot be determined and can be set in this interval. For example, the exact boundary can be defined as the average, rounded to the minimum number of significant digits that keep it within the interval, in this case 8.0.
Для варианта расчета экономического результата с отбросом сегментов с отрицательным средним значением целевого показателя экономический эффект от деления сегмента на два сегмента следующего уровня по значению характеристики 94512, равному 8,0, будет равен 12932.1 при следующих агрегированных значениях в массиве сегментов блока 7:For the option of calculating the economic result with the rejection of segments with a negative average value of the target indicator, the economic effect of dividing the segment into two segments of the next level by the value of characteristic 94512 equal to 8.0 will be 12932.1 with the following aggregated values in the array of segments of block 7:
Если результат возможного деления сегмента (для простоты в данном примере рассчитывается без доверительного интервала) при этом улучшен, то в данных этого сегмента блока 7 могут быть установлены следующие значения:If the result of a possible division of a segment (for simplicity in this example is calculated without a confidence interval) is improved, then the following values can be set in the data of this segment of block 7:
Если же предыдущая и следующая запись в накопителе 4 относятся к разным характеристикам:If the previous and next record in drive 4 belong to different characteristics:
то деление должно проводиться по значению «Присутствует» - «Отсутствует» характеристики №94512, и если результат возможного деления сегмента при этом также улучшен до 12932.1, то в данных этого сегмента блока 7 должны быть установлены следующие значения:then the division should be carried out according to the value “Present” - “Missing” of characteristic No. 94512, and if the result of a possible division of the segment is also improved to 12932.1, then the following values should be set in the data of this segment of block 7:
В случае улучшения экономического результата возможного деления сегмента в блоке 13 для сегмента устанавливаются найденные новые значения результата, лучшей характеристики и ее лучшего значения.In the case of improving the economic result of a possible division of the segment in block 13, the found new values of the result, the best characteristic and its best value are set for the segment.
Вычисления блока 12 требуют большего количества операций процессора компьютера, чем цикл блоков 8, 9 и 10, но выполняются реже, что позволяет не обращаться в процессе вычислений к накопителю данных и обеспечивает скорость вычислений, соизмеримую со скоростью последовательного буферизированного чтения данных с жесткого диска, то есть близкую к максимально возможной.The calculations of
После каждого цикла по уровню сегментации блока 6 (фиг.1) в блоке 14 принятия решений проверяется, выявлены ли на этом уровне новые сегменты, если они обнаружены, то новые сегменты в блоке 15 добавляются к блоку 16 прогнозной модели в виде бинарного дерева решений.After each cycle, according to the segmentation level of block 6 (Fig. 1), in decision block 14 it is checked whether new segments are detected at this level, if they are found, then new segments in block 15 are added to block 16 of the predictive model in the form of a binary decision tree.
После этого проводится деление сегментов, в которых выявлены сегменты следующего уровня, то есть присвоение событиям этих сегментов в блоке 5 новых сегментов, для чего считываются данные из накопителя 4 по характеристикам, по которым производится деление (вошедшим в модель блока 16), сравниваются со значением, по которому производится деление, и в зависимости от результата сравнения событие относится к соответствующему сегменту. Одновременно вычисляются средние значения целевого показателя в сегментах, которые указываются для каждого сегмента в модели блока 16, после чего она сохраняется для дальнейшего использования.After that, the division of segments in which segments of the next level are identified, that is, the assignment of events of these segments in
Если новых сегментов не выявлено, построение модели заканчивается.If no new segments are identified, model building ends.
В момент прогноза целевого показателя (возможно в реальном времени) данные о событии генерируются блоком 2 по таким же данным и правилам, что и для построения модели, что гарантирует применимость построенной модели блока 16 для прогноза. Для прогноза целевого показателя такого события в блоке 17 соответствующие значения его характеристик последовательно сравниваются со значениями этих характеристик в узлах дерева блока 16, пока событие не будет отнесено к сегменту, не имеющему сегментов. Среднее значение целевых показателей событий в этом сегменте, использованных для построения модели, является прогнозом целевого показателя такого события.At the time of forecasting the target indicator (possibly in real time), event data is generated by
На фиг.3 отображен пример потенциального события промоакции по продвижению товара «БАТОН СОЛНЕЧНЫЙ 400 ГР» (поле 30) потенциальному клиенту, похожему на существующего клиента №5 (поле 31), и порядок вычисления целевого показателя (поле 32) и характеристик (таблица 33).Figure 3 shows an example of a potential promotion event “BATON SUNNY 400 GR” (field 30) to a potential customer similar to existing customer No. 5 (field 31), and the procedure for calculating the target indicator (field 32) and characteristics (table 33 )
В данном случае бизнес-модель акции состоит в бесплатном предоставлении покупателям продвигаемого (целевого) товара («батон солнечный») на пробу. Целевым показателем в поле 32 является оценка прибыли от промоакции в отношении покупателя, похожего на существующего, но который еще не покупал данный товар, вычисляемого в полях 34 и 35. Все вошедшие на экран характеристики события таблицы 33 сформированы путем автоматического вычисления сумм покупок за различные временные периоды с указанием названия товара, содержащегося в первой записи 36 в журнале покупок таблицы 37: «ТОРТ «ТВОРОЖНИК» ШОКОЛАДНЫЙ 340 ГР», или слов в названии этого товара. Для остальных товаров в таблице покупок также формируются соответствующие характеристики, они не вошли на экран.In this case, the business model of the action consists in the free provision to customers of the promoted (target) product (“sunny loaf”) for testing. The target in
Для построения модели в соответствии с заявленным способом из каждого события указываются целевой показатель в поле 38 и характеристики события в виде таблицы 33 вещественных значений с текстовыми названиями. Пользователем должны быть введены только параметры бизнес-модели в разделах «Доходы» 39 и «Расходы» 40, а также в одном из вариантов способа может быть указана доверительная вероятность.To build a model in accordance with the claimed method, from each event, the target indicator in the
В результате компьютером построена прогнозная модель (фиг.4) в виде дерева решений. В поле 50 «Дерево решений - информация» отображено наличие 200 событий в сегменте из 687 в вышестоящем узле дерева (родительском сегменте), при этом средний экономический эффект в поле 51 в виде ожидаемой прибыли на 1 контакт в сегменте составляет 0.51 рубля, а в вышестоящем узле дерева - отрицателен и равен 1.39 рубля. Деление на сегменты проведено по характеристике «Сумма покупок со словом 'Ф/П' в названии», по значению 'больше 68.71'. Указание 'Ф/П' в названии товаров - сокращение от «Фин. Пакет», то есть полиэтиленовая упаковка для бюджетных молочных продуктов, таким образом, «БАТОН СОЛНЕЧНЫЙ» покупают те же клиенты, которые покупают и бюджетные молочные продукты.As a result, the computer built a predictive model (figure 4) in the form of a decision tree. The
В таблице 52 «Лучшие делящие параметры» показаны агрегированные данные потенциального деления на сегменты по характеристикам «Сумма покупок продуктов со словом в названии ГР' по понедельникам». Сокращение ГР' используется для указания веса в граммах фасованных товаров в упаковке. При этом количество наблюдений в возможных сегментах следующего уровня равно соответственно 137 и 63, а средняя прибыль в них равна +1,39 и -1,41. Однако с учетом стандартного отклонения и коэффициента Стьюдента пессимистический экономический эффект от возможного деления на сегменты (ПДП) 53 оказался отрицательным, в результате чего дальнейшее деление на сегменты не было произведено.Table 52 “Best Dividing Parameters” shows the aggregated data of potential segmentation according to the characteristics “Sum of purchases of products with a word in the name GR 'on Mondays”. The abbreviation GR 'is used to indicate the weight in grams of packaged goods. At the same time, the number of observations in possible segments of the next level is 137 and 63, respectively, and the average profit in them is +1.39 and -1.41. However, taking into account the standard deviation and Student's coefficient, the pessimistic economic effect of the possible segmentation (RAP) 53 turned out to be negative, as a result of which further division into segments was not performed.
Для клиентов, ранее не покупавших целевой товар, но у которых характеристика «Сумма покупок со словом 'Ф/П' в названии» присутствует и больше 68.71, среднее значение в этом сегменте, то есть 0.51 рубля на контакт, является прогнозом целевого показателя - экономического эффекта.For customers who have not previously purchased the target product, but whose characteristic “Sum of purchases with the word 'Ф / П' in the name” is present and more than 68.71, the average value in this segment, that is, 0.51 rubles per contact, is the forecast of the target indicator - economic effect.
Деление на сегменты также может регулироваться параметром 54 «максимальное количество уровней сегментации».Segmentation can also be controlled by
Аналогичный пример построенной модели - дерево решений для персональных рекомендаций фильма «PRETTY WOMAN» на данных компании NetFlix (фиг.5). Отличие этого примера в том, что в качестве базы для числовых характеристик вместо суммы покупки взята оценка фильма зрителем по 5-бальной шкале. В этом случае минимальный рейтинг, при котором нужно давать рекомендацию, принят равным 4 и указан в поле 60. Наилучший критерий (характеристика и значение) в узле дерева решений 61 для рекомендаций фильма «PRETTY WOMAN» на первом уровне сегментации - рейтинг фильма «DIRTY DANCING» больше 3,5. При этом средний прогнозный рейтинг в поле 62 в этом сегменте превышает требуемый, равный 4, на 0,37, при том что в вышестоящем узле дерева (родительском сегменте) он ниже требуемого на 0,09 балла.A similar example of the constructed model is a decision tree for personal recommendations of the film “PRETTY WOMAN” on NetFlix data (Fig. 5). The difference between this example is that, as a base for numerical characteristics, instead of the purchase amount, the film is rated by the viewer on a 5-point scale. In this case, the minimum rating at which a recommendation should be made is taken to be 4 and specified in
Пессимистический эффект деления этого сегмента на сегменты следующего уровня в поле 63 также положителен, и наилучшим критерием для деления стала та же характеристика фильма «DIRTY DANCING», но уже по значению 4,5.The pessimistic effect of dividing this segment into the next level segments in field 63 is also positive, and the same characteristic of the film “DIRTY DANCING”, but already by the value of 4.5, became the best criterion for dividing.
В обоих примерах никакого ручного ввода или подготовки данных не производилось, сегментация проводилась по всем автоматически сформированным характеристикам, общее число которых достигало сотен тысяч и более, что явствует из значений в полях 54 и 64 «Дерево решений - количество уникальных параметров + значений».In both examples, no manual data input or preparation was performed, segmentation was carried out according to all automatically generated characteristics, the total number of which reached hundreds of thousands or more, which is clear from the values in
Таким образом, в заявленном способе для построения следующего уровня прогнозной модели в виде бинарного дерева решений используется пессимистический экономический эффект деления каждого сегмента на сегменты следующего уровня с учетом доверительного интервала.Thus, in the claimed method for constructing the next level of the forecast model in the form of a binary decision tree, the pessimistic economic effect of dividing each segment into segments of the next level is taken into account, taking into account the confidence interval.
Значения характеристик событий сохраняются в сортированном виде в накопителе данных, что позволяет высвободить ОЗУ компьютера для целевых показателей и сегментов, а также за счет последовательного чтения данных из накопителя максимально быстро провести полный перебор всех значений множества характеристик для всех сегментов каждого уровня бинарного дерева решений.The values of the characteristics of events are stored in sorted form in the data storage device, which allows you to free up computer RAM for targets and segments, as well as through sequential reading of data from the storage device, as quickly as possible to fully exhaust all values of the set of characteristics for all segments of each level of the binary decision tree.
Построенная модель может использоваться для моментального прогнозирования целевого показателя событий, в том числе не участвовавших в ее построении. В качестве прогноза используется среднее значение целевого показателя в сегменте, к которому событие будет отнесено, путем последовательного сравнения характеристик события со значениями в узлах дерева решений.The constructed model can be used for instant forecasting of the target indicator of events, including those that did not participate in its construction. The average value of the target indicator in the segment to which the event will be assigned is used as a forecast by sequentially comparing the characteristics of the event with the values in the nodes of the decision tree.
Статистические методики вычисления доверительного интервала, в частности, на базе коэффициентов Стьюдента, как показали исследования, на большом объеме данных позволяют гарантировать выявление зависимостей в данных по миллионам показателей, автоматизируя процесс «уменьшения размерности» путем анализа всех вычисляемых характеристик и всех их значений, одновременно практически исключая при прогнозировании событий и их оценки человеческий фактор.The statistical methods for calculating the confidence interval, in particular, based on Student's coefficients, as shown by studies on a large amount of data, can guarantee the identification of dependencies in the data for millions of indicators, automating the process of “reducing dimension” by analyzing all calculated characteristics and all their values, at the same time practically excluding the human factor in predicting events and their assessment.
Промышленная применимостьIndustrial applicability
Наиболее успешно изобретение применимо для формирования адресных предложений целевым сегментам покупателей на промышленных объемах данных в различных отраслях торговли.The most successful invention is applicable to the formation of targeted offers to target segments of customers on industrial data volumes in various industries.
Claims (5)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2011141635/08A RU2480828C1 (en) | 2011-10-14 | 2011-10-14 | Method of predicting target value of events based on unlimited number of characteristics |
PCT/RU2012/000787 WO2013055257A1 (en) | 2011-10-14 | 2012-09-27 | Method for predicting a target for events on the basis of an unlimited number of characteristics |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2011141635/08A RU2480828C1 (en) | 2011-10-14 | 2011-10-14 | Method of predicting target value of events based on unlimited number of characteristics |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2480828C1 true RU2480828C1 (en) | 2013-04-27 |
Family
ID=48082155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2011141635/08A RU2480828C1 (en) | 2011-10-14 | 2011-10-14 | Method of predicting target value of events based on unlimited number of characteristics |
Country Status (2)
Country | Link |
---|---|
RU (1) | RU2480828C1 (en) |
WO (1) | WO2013055257A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2670610C1 (en) * | 2014-12-12 | 2018-10-25 | Бэйцзин Цзиндун Сенчури Трэйдинг Ко., Лтд. | Method and device for processing data of user operation |
CN112669085A (en) * | 2021-01-04 | 2021-04-16 | 北京明略软件系统有限公司 | Method and device for determining target event data |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9584379B2 (en) * | 2013-06-20 | 2017-02-28 | Microsoft Technology Licensing, Llc | Sorted event monitoring by context partition |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2236700C2 (en) * | 2000-03-02 | 2004-09-20 | Открытое акционерное общество "Московская телекоммуникационная корпорация" | Method for analysis and prognosing of dynamic system development and its separate components |
US6839682B1 (en) * | 1999-05-06 | 2005-01-04 | Fair Isaac Corporation | Predictive modeling of consumer financial behavior using supervised segmentation and nearest-neighbor matching |
WO2005109253A2 (en) * | 2004-05-05 | 2005-11-17 | Siemens Aktiengesellschaft | Method for the computer-assisted evaluation of the prognosis of characteristic values of a technical system, performed by means of a predictive model |
RU2326431C2 (en) * | 2006-07-06 | 2008-06-10 | Ара Аршавирович Абрамян | System for strategic prediction of technical condition of objects, mainly, computer systems |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2808909B1 (en) * | 2000-05-11 | 2005-06-03 | Jean Marie Billiotte | METHOD FOR CENTRALIZED STOCHASTIC SIMULATION AND TELETRANSMISSION OF PROBABLE SCENARIOS FOR THE PROBABILISTIC OPTIMIZATION OF PARAMETERS OF REMOTE INDUSTRIAL SYSTEMS |
US7333996B2 (en) * | 2001-08-22 | 2008-02-19 | International Business Machines Corporation | Management of contract data |
CA2533007A1 (en) * | 2003-06-10 | 2005-01-06 | Citibank, N.A. | System and method for analyzing marketing efforts |
-
2011
- 2011-10-14 RU RU2011141635/08A patent/RU2480828C1/en active
-
2012
- 2012-09-27 WO PCT/RU2012/000787 patent/WO2013055257A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6839682B1 (en) * | 1999-05-06 | 2005-01-04 | Fair Isaac Corporation | Predictive modeling of consumer financial behavior using supervised segmentation and nearest-neighbor matching |
RU2236700C2 (en) * | 2000-03-02 | 2004-09-20 | Открытое акционерное общество "Московская телекоммуникационная корпорация" | Method for analysis and prognosing of dynamic system development and its separate components |
WO2005109253A2 (en) * | 2004-05-05 | 2005-11-17 | Siemens Aktiengesellschaft | Method for the computer-assisted evaluation of the prognosis of characteristic values of a technical system, performed by means of a predictive model |
RU2326431C2 (en) * | 2006-07-06 | 2008-06-10 | Ара Аршавирович Абрамян | System for strategic prediction of technical condition of objects, mainly, computer systems |
Non-Patent Citations (1)
Title |
---|
Технический справочник по алгоритму дерева принятия решений Майкрософт SQL Server 2008, URL: http://msdn.microsoft.com/ru-ru/library/сс645868(v=sql.100).aspx. * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2670610C1 (en) * | 2014-12-12 | 2018-10-25 | Бэйцзин Цзиндун Сенчури Трэйдинг Ко., Лтд. | Method and device for processing data of user operation |
RU2670610C9 (en) * | 2014-12-12 | 2018-11-26 | Бэйцзин Цзиндун Сенчури Трэйдинг Ко., Лтд. | Method and device for processing data of user operation |
CN112669085A (en) * | 2021-01-04 | 2021-04-16 | 北京明略软件系统有限公司 | Method and device for determining target event data |
Also Published As
Publication number | Publication date |
---|---|
WO2013055257A1 (en) | 2013-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108898459B (en) | Commodity recommendation method and device | |
Brida et al. | A non-linear approximation to the distribution of total expenditure distribution of cruise tourists in Uruguay | |
US11769194B2 (en) | Method and system for presenting items in online environment based on previous item selections | |
CN110782266B (en) | Commodity sales prediction and model training method, device and equipment | |
JP5337174B2 (en) | Demand prediction device and program thereof | |
US11762819B2 (en) | Clustering model analysis for big data environments | |
CN109741082A (en) | A kind of seasonal merchandise needing forecasting method based on Time Series | |
KR20160071990A (en) | Customer data analysis and verification system | |
US20020165755A1 (en) | Method of predicting behavior of a customer at a future date and a data processing system readable medium | |
US11854022B2 (en) | Proactively predicting transaction dates based on sparse transaction data | |
CN110189164B (en) | Commodity-store recommendation scheme based on information entropy measurement and random feature sampling | |
CN111652654A (en) | Sales prediction and neural network construction method, device, equipment and storage medium | |
EP4111397A1 (en) | Systems and methods using inventory data to measure and predict availability of products and optimize assortment | |
JP2018139036A (en) | Analysis device | |
CA3131040A1 (en) | Method and system for optimizing an objective having discrete constraints | |
RU2480828C1 (en) | Method of predicting target value of events based on unlimited number of characteristics | |
US20190050833A1 (en) | Systems and Methods for Distributing Data to Node Devices for Real Time Scoring, Based on Accounts for the Data | |
CN111127074A (en) | Data recommendation method | |
Ranggadara et al. | Applying customer loyalty classification with RFM and Naïve Bayes for better decision making | |
CN113610521A (en) | Method and apparatus for detecting anomalies in behavioral data | |
CN113283582A (en) | Textile industry financial loss prediction method and device, storage medium and processor | |
Sharma et al. | Best seller rank (bsr) to sales: An empirical look at amazon. com | |
Gutama et al. | Analysis of the effect of website sales quality on purchasing decisions on e-commerce websites | |
CN112231548A (en) | User login behavior analysis method, device and system and storage medium | |
CN115841345A (en) | Cross-border big data intelligent analysis method, system and storage medium |