Геймеры играют в фэнтези-игру с драконом на большом экране, сидя в подсвеченной комнате.

Синергия в кликах: дивиденды Харсаньи для электронной коммерции

Краткий обзор математических основ дивидендов Харсаньи и их практическое применение в Streamlit.

Делиться

b004c1c943e797871bca52f2c6ecd3ba

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

Введение

Вы когда-нибудь играли в кооперативные игры или спортивные соревнования? Давайте рассмотрим другой пример, но на этот раз в профессиональном мире. Допустим, вы работаете в организации, основным средством продажи продукции которой является интернет-магазин. Внутри этой организации, вероятно, есть различные маркетинговые команды, которые привлекают клиентов на сайт с помощью онлайн-рекламы, email-рассылок и других каналов. Сам сайт поддерживается другой группой команд, в обязанности которых входят дизайн, мерчандайзинг, стратегии рекомендаций и многое другое. Организация также должна учитывать сам продукт и команды, которые создают, улучшают и разрабатывают новые продукты. Это ставит перед организацией важный вопрос:

Как правильно определить ценность, чтобы в будущем принимать более стратегические решения?

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

Дивиденды Харсаньи

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

Давайте рассмотрим теорию кооперативных игр в целом, а именно кооперативные игры с передаваемой полезностью (ТУ). В теории кооперативных игр с ТУ игроки могут формировать коалиции для достижения коллективного выигрыша согласованным способом. Те из нас, кто создавал надежные прогностические модели с использованием таких методов, как XGBoost или других ансамблевых методов, вероятно, использовали значения Шапли для понимания вклада каждой характеристики, поскольку сама модель представляет собой «черный ящик». Значения Шапли также можно использовать для определения выигрыша каждого игрока в коалиции в кооперативных играх с ТУ. Безусловно, такой подход, как использование значений Шапли, имеет большую ценность для понимания индивидуального вклада; однако дивиденды Харсаньи помогают нам узнать дополнительную ценность, создаваемую коалициями. Рассмотрим гипотетический пример.

Кооперативная игра — Убийца драконов

Допустим, трое друзей собираются вместе, чтобы поиграть в новую кооперативную видеоигру, цель которой — сообща нанести дракону как можно больше урона. Игроки — Эндрю, Брайан и Карсон. Они играли в эту игру много раз, однако не все игроки всегда играют вместе. Иногда это только Эндрю и Карсон, иногда Карсон и Брайан, иногда Карсон один и так далее. Они играли в эту игру так много раз, что каждая возможная группа игроков прошла её несколько раз, включая сессии только с одним игроком.

Карсон, специалист по анализу данных, хочет глубже понять эффективность работы группы. Он собрал результаты каждой сессии и в итоге получил средний балл для каждой коалиции и отдельного участника. Взгляните на эти сводные баллы ниже. Каждый игрок будет представлен первой буквой своего имени. Средний балл каждой коалиции/участника будет обозначен как v(n).

v(a) = 10

v(b) = 12

v(c) = 18

v(a,b) = 27

v(a,c) = 23

v(c,b) = 29

v(a,b,c) = 37

Мы ясно видим, что Карсон — лучший игрок в индивидуальном зачете, а Эндрю и Брайан — лучший дуэт. Вас, вероятно, не удивит, что коалиция из трех игроков дает наивысший результат. Карсон, любознательный специалист по анализу данных, хочет более глубоко изучить эти взаимодействия между своими друзьями. Для этого он решает рассчитать дивиденды Харсаньи, чтобы выяснить, какая группа сотрудничала наиболее эффективно. Теперь это сложный вопрос. Мы легко можем увидеть результаты каждой коалиции; однако что, если мы учтем вклад отдельных игроков? Мы можем обнаружить, какие коалиции усиливают друг друга или, наоборот, препятствуют вкладу меньших коалиций игроков. Другими словами, где 1+1 равно чему-то большему, чем два, и где 1+1 равно чему-то меньшему, чем два?

Для этого мы воспользуемся приведенной ниже формулой:

28826bc49b5c3f93bceecc101851ad06

Давайте разберем это по частям.

7a149222577560c0e14710b5d5990918

Это представляет собой дивиденды Харсаньи для коалиции S.

605fe01be116eefe84852b1583f510d9

Символ сигма используется в математике для обозначения вычисления суммы ряда слагаемых в компактной форме. Ниже показано выражение для слагаемых, по которым мы вычисляем сумму. В данном случае он явно обозначает подмножество T S. T является подмножеством коалиции S, для которой мы вычисляем делимое. В сочетании с символом сигма это демонстрирует, что мы вычисляем сумму всех возможных подмножеств S определенным образом, который мы обсудим далее. И последнее замечание: сама коалиция считается подмножеством.

1dffcdaaa9dd4c43a5bafa9578a79572

Символы вертикальной черты вокруг S и T указывают на то, что мы рассматриваем размеры множеств. Результатом этих разностей является степень, в которую мы возводим минус единицу в каждой сумме. Затем она умножается на значение для подмножества T.

Расчет дивидендов — для физических лиц

Начнём с отдельных игроков (Эндрю, Брайана и Карсона), так как это будет наиболее просто. Для удобства приведем их суммарные результаты, упомянутые ранее:

v(a) = 10

v(b) = 12

v(c) = 18

Можете угадать, какие у них дивиденды по программе Харсаньи? Давайте начнем с Эндрю и рассчитаем это шаг за шагом (или просто шаг за шагом).

db6c554cc68f6726e9b8ba102f831f18

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

Начнем с показателя степени: размер множества a равен единице. Множество T также будет иметь размер единицы. Это оставляет нам возведение -1 в нулевую степень, что дает 1. Затем мы умножаем это на наше значение a, равное 10, получая дивиденд Харсаньи в размере 10 для Эндрю. Для отдельных лиц дивиденд — это просто значение.

Дивиденд (а) = 10

Дивиденд (b) = 12

Дивиденд (с) = 18

Расчет дивидендов — пар

Давайте рассчитаем дивиденды для Эндрю и Брайана (a, b). Подмножествами являются (a,b), (a) и (b). Следовательно, мы получим три суммы.

Сумма #1 , подмножество (a), v(a) = 10, размер (a) = 1,

-1^([a,b]-[a]) * v(a) = -1^(2-1) * 10 = -10

Сумма #2 , подмножество (b), v(b) = 12, размер (b) = 1,

-1^([a,b]-[b]) * v(b) = -1^(2-1) * 12 = -12

Сумма #3 , подмножество (a,b), v(a,b) = 27, размер (a,b) = 2,

-1^([a,b]-[a,b]) * v(a,b) = -1^(2-2) * 27 = 27

Сложите все эти значения, и получим:

Дивиденд (a,b) = 5

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

Дивиденд (a,c) = -5

Дивиденд (c,b) = -1

Расчет дивидендов — Трио

Приготовьтесь, здесь много вычислений; однако крайне важно понимать, какие значения складываются, а какие вычитаются при расчете тройки.

  • Сумма #1 , подмножество (a), v(a) = 10, размер (a) = 1
    • -1^([a,b,c]-[a]) * v(a) = -1^(3-1) * 10 = 10
  • Сумма #2 , подмножество (b), v(b) = 12, размер (b) = 1
    • -1^([a,b,c]-[b]) * v(b) = -1^(3-1) * 12 = 12
  • Сумма #3 , подмножество (c), v(c) = 18, размер (c) = 1
    • -1^([a,b,c]-[c]) * v(c) = -1^(3-1) * 18 = 18
  • Сумма # 4, подмножество (a,c), v(ab) = 27, размер (a,b) = 2
    • -1^([a,b,c]-[a,b]) * v(a,b) = -1^(3-2) * 27 = -27
  • Сумма #5 , подмножество (a,c), v(a,c) = 23, размер (a,c) = 2
    • -1^([a,b,c]-[a,c]) * v(a,c) = -1^(3-2) * 23 = -23
  • Сумма #6 , подмножество (c,b), v(c,b) = 29, размер (c,b) = 2
    • -1^([a,b,c]-[c,b]) * v(c,b) = -1^(3-2) * 29 = -29
  • Сумма #7 , подмножество (a,b,c), v(a,b,c) = 37, размер (a,b,c) = 3
    • -1^([a,b,c]-[a,b,c]) * v(a,b,c) = -1^(3-3) * 37 = 37

Делимое (a,b,c) = -2

Итак, здесь, безусловно, много математики, но она довольно проста. А как насчет интуитивного понимания происходящего? Как вы только что видели, расчет дивидендов для коалиций из одного и двух игроков довольно прост и не требует использования формулы; однако, как только вы переходите к коалициям из трех игроков и более, количество шагов увеличивается экспоненциально. В частности, в случае коалиции из трех игроков легко заметить, что значения коалиции из двух игроков вычитаются, а значения коалиции из одного игрока добавляются обратно. А как насчет коалиций из четырех игроков? Значения коалиции из трех игроков будут вычитаться, значения коалиции из двух игроков будут добавляться обратно, значения коалиции из одного игрока будут вычитаться и так далее. Вы легко можете проследить эту закономерность; однако, что именно делает эта закономерность вычитания и сложения? Давайте сосредоточимся на примере с тремя игроками. Вычитая значения коалиции из двух игроков, мы удаляем синергию, полученную от этой коалиции, а также значения более низкого уровня от меньших коалиций внутри неё. Однако, когда это происходит, фактически вычитается слишком много значений, и когда значения для одного игрока добавляются обратно, мы корректируем вычтенное значение и остаёмся только с чистой синергией от коалиции из трёх игроков.

Применение в реальном мире — Веб-сайт электронной коммерции

9f46265a29944ef1ae69ee795bb2108d

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

  • Куда следует направлять клиентов в зависимости от страницы?
  • Какие товары предоставляют возможности для дополнительных или перекрестных продаж?
  • Какие целевые страницы лучше всего подходят для разных каналов?
  • Какие маршруты следует улучшить, а какие вовсе исключить?

Приложение Харсаньи

Весь проект можно найти на моём GitHub здесь. Я расскажу вам о трёх основных файлах: synthetic_data.py, dividends.py и app.py.

синтетические_данные.py

Зачем включать функцию генерации синтетических данных? Одна из моих целей в этом проекте — образовательный характер, и функция генерации синтетических данных позволяет конечному пользователю быстро изучить инструмент и даже понять, с какими типами данных он предназначен работать. Обратите внимание, что также есть возможность загрузки собственных данных в виде CSV-файла.

Вот упрощенное представление того, как должны выглядеть данные:

SEO Электронная почта Страница товара Рабочий стол Конвертация
1 0 1 0 1
0 0 1 0 1
0 0 0 0 0
0 1 1 1 0

Как видите, каждая характеристика и целевой столбец (Конверсия) имеют логический тип данных. Каждое наблюдение может быть представлено как клиент или сессия на веб-сайте. В разделе синтетических данных переменные характеристик могут быть разделены на три категории: канал, страница и устройство; однако, если вы загружаете собственные данные, вы можете использовать любые переменные, если они имеют логический тип данных.

Склонность к переменным характеристикам

Создание «качественных» синтетических данных означает их максимально реалистичное представление. В этом проекте это значит, что мы должны включить реалистичные вероятности для каждой переменной признака.

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

FEATURE_PROPENSITY_RANGES

FEATURE_PROPENSITY_RANGES: Dict[str, Tuple[float, float]] = { # Каналы «email»: (2.0, 2.0), «seo»: (6.0, 6.0), «sem»: (6.0, 6.0), «direct»: (5.0, 5.0), «display»: (1.0, 1.0), «social»: (1.0, 1.0), «affiliate»: (7.0, 7.0), # Страницы (A/F с указанием диапазонов) «product_page_a»: (5.0, 7.0), «product_page_b»: (4.0, 8.0), «product_page_c»: (5.0, 7.0), «product_page_d»: (4.0, 8.0), «product_page_e»: (5.0, 7.0), «product_page_f»: (4.0, 8.0), «deals_page»: (6.0, 6.0), «search_page»: (5.0, 5.0), «homepage»: (4.0, 4.0), «account_page»: (7.0, 7.0), «support_page»: (3.0, 3.0), # Устройство «device_desktop»: (6.0, 6.0), «device_mobile»: (3.0, 3.0), }

_coef_range_for_score

Сами диапазоны значений нельзя напрямую подставить в модель для генерации выборки, которая даст средний коэффициент конверсии около 5%. Мы достигаем этого с помощью логистической регрессии, которая требует реалистичных коэффициентов в линейной функции. Для преобразования этих диапазонов в осмысленные коэффициенты я создал следующую функцию:

def _coef_range_for_score(score: float) -> Tuple[float, float]: if score <= 2.0: return (-1.0, -0.3) # отрицательный эффект elif score <= 4.0: return (-0.3, 0.3) # почти нейтральный эффект elif score <= 6.0: return (0.3, 1.0) # умеренно положительный эффект elif score <= 8.0: return (1.0, 2.5) # сильный положительный эффект else: return (2.5, 4.0) # очень сильный положительный эффект

_sample_marginal_probabilities

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

def _sample_marginal_probabilities( rng: np.random.Generator, ) -> Tuple[Dict[str, float], float]: probs: Dict[str, float] = {} # Каналы – довольно редкие, есть и более распространенные (SEO, Direct) probs[«email»] = rng.uniform(0.03, 0.15) probs[«seo»] = rng.uniform(0.10, 0.60) probs[«sem»] = rng.uniform(0.05, 0.40) probs[«direct»] = rng.uniform(0.10, 0.50) probs[«display»] = rng.uniform(0.01, 0.10) probs[«social»] = rng.uniform(0.03, 0.20) probs[«affiliate»] = rng.uniform(0.02, 0.15)

_build_logistic_spec

Следующая функция строит модель логистической регрессии. Вот первые несколько строк кода.

def _build_logistic_spec( rng: np.random.Generator, ) -> LogisticSpec: scores = _sample_feature_scores(rng) # Основные эффекты main_effects = {} for feature in ALL_BINARY_FEATURES: score = scores[feature] lo, hi = _coef_range_for_score(score) main_effects[feature] = rng.uniform(lo, hi)

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

interactions_2 = {} interactions_3 = {} strong_2 = (1.0, 3.0) moderate_2 = (0.5, 1.5) weak_2 = (-0.3, 0.3) strong_3 = (1.5, 3.5) moderate_3 = (0.7, 2.0) def add_interaction_2(a, b, coef_range): key = tuple(sorted((a, b))) interactions_2[key] = rng.uniform(*coef_range) def add_interaction_3(a, b, c, coef_range): key = tuple(sorted((a, b, c))) interactions_3[key] = rng.uniform(*coef_range) add_interaction_3(«sem», «product_page_a», «deals_page», strong_3) add_interaction_3(«seo», «product_page_c», «search_page», moderate_3)

Наконец, мы добавляем свободный член. Обратите внимание, что хотя это обеспечит соответствие нашей базовой модели данным с коэффициентом конверсии около 5%, нам потребуется доработать ее, чтобы поддерживать этот показатель близким к 5%.

intercept = float(np.log(0.05 / (1.0 — 0.05))) return LogisticSpec(intercept, main_effects, interactions_2, interactions_3)

_compute_linear_predictor

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

def _compute_linear_predictor( df: pd.DataFrame, spec: LogisticSpec, ) -> np.ndarray: z = np.full(shape=len(df), fill_value=spec.intercept, dtype=float) # Основные эффекты for f, beta in spec.main_effects.items(): if f in df.columns: z += beta * df[f].values # Двусторонний for (a, b), beta in spec.interactions_2.items(): if a in df.columns and b in df.columns: z += beta * (df[a].values * df[b].values) # Трехсторонний for (a, b, c), beta in spec.interactions_3.items(): if a in df.columns and b in df.columns and c в df.columns: z += beta * (df[a].values * df[b].values * df[c].values) return z

_calibrate_intercept_to_global_rate

Коэффициенты конверсии могут значительно варьироваться; однако, я считаю, что можно с уверенностью предположить, что большинство веб-сайтов получают конверсии от небольшого числа своих клиентов. В этом инструменте мы скорректируем данные, чтобы получить коэффициент конверсии около 5%. Существует несколько способов сделать это; однако я считаю наиболее эффективным подход — корректировать свободный член до тех пор, пока мы не получим пороговое значение, близкое к целевому значению в 5%. Функция ниже делает именно это. Последняя функция, следующая за этой, объединяет все предыдущие и фактически вызывается в приложении.

def _calibrate_intercept_to_global_rate( df: pd.DataFrame, spec: LogisticSpec, target_rate: float = 0.05, max_iter: int = 8, ) -> LogisticSpec: for _ in range(max_iter): z = _compute_linear_predictor(df, spec) p = expit(z) mean_p = float(p.mean()) if mean_p <= 0 or mean_p >= 1: break # something degenerate; сдаться current_odds = mean_p / (1.0 — mean_p) target_odds = target_rate / (1.0 — target_rate) delta = np.log(target_odds / current_odds) spec.intercept += float(delta) # Ранняя остановка, если достаточно близко if abs(mean_p — target_rate) < 0.002: break return spec

dividends.py

Как вы, наверное, догадались, этот файл — это программа, которая рассчитывает дивиденды Харсаньи. Мы уже подробно рассмотрели, как они рассчитываются; поэтому я считаю гораздо более продуктивным обсудить, как будут рассчитываться дивиденды в контексте этого инструмента.

Данные о последовательности кликов сами по себе могут быть очень скудными, поскольку типичный путь клиента может включать в себя несколько отдельных действий. Это создает проблему при расчете значений коалиции. Допустим, у нас есть набор данных из 100 000 клиентов со всеми их действиями, и мы хотим рассчитать значение коалиции для клиентов, которые взаимодействовали с главной страницей и страницей продукта. Мы можем обнаружить лишь небольшое количество клиентов, которые выполнили только эти два действия; поэтому для каждой коалиции мы будем проверять, выполнил ли клиент эти действия независимо от того, что он сделал еще. Затем мы берем среднее значение, чтобы получить значение коалиции. Важно отметить, что нет формального определения того, как следует рассчитывать показатель ценности в контексте дивидендов Харсаньи; поэтому необходимо использовать собственное суждение. В этом примере взятие среднего значения эффективно, потому что мы используем бинарные данные, и среднее значение дает долю или процент. Теперь, если бы мы использовали выручку, взятие среднего значения могло бы быть значительно вводящим в заблуждение из-за потенциальных выбросов.

Наконец, следует отметить, что в этом файле используется параллельное программирование с помощью модуля concurrent.futures и динамических конфигураций. Параллельное программирование может значительно сократить время, необходимое для расчета дивидендов Харсаньи при работе с большими наборами данных. Также есть возможность указать максимальный размер коалиций, для которых вы хотите рассчитать дивиденды. Цель этого инструмента — предоставить заинтересованным сторонам конкретные инструменты для работы. Если вы создаете коалиции клиентских путей, включающие несколько взаимодействий, это может привести к множеству разрозненных возможностей, которые могут чрезмерно расходовать имеющиеся ресурсы, вместо того чтобы сосредоточиться на нескольких небольших, высокоэффективных коалициях. Последняя конфигурация, которую я упомяну, — это минимальная доля данных для коалиции, которая должна быть включена в расчеты. Это гарантирует, что любые возможности, которые обнаруживает инструмент, будут иметь достаточный размер выборки.

Демонстрация с использованием синтетических данных

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

Шаг 1: Создайте синтетический набор данных.

39428adcc1c1bee9f11316202fb802f2

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

c5fbacc43a9c7936317bd40fadd9efe2

Шаг 3: Анализ результатов

784da6e2e4b0178533dc7e3075e7934e

Полученная таблица данных будет отсортирована по столбцу «Дивиденды Харсаньи»; следовательно, скорее всего, первые несколько коалиций будут состоять из одиночных игроков. Учитывая контекст, в котором, вероятно, будут использоваться дивиденды Харсаньи, данные по отдельным игрокам не являются бесценными, но в данном контексте они полезны. Реальный эффект достигается при анализе многопользовательских коалиций. Давайте рассмотрим несколько примеров, используя экспорт приведенной выше таблицы.

ae840049684f0dcf03b71a11ed52257e

Это многосторонние коалиции с наибольшими дивидендами Харсаньи; другими словами, игроки, которые создают наибольшую синергию друг с другом. Итак, что же нам делать с этой информацией?

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

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

Заключение

Я мог бы бесконечно рассказывать о безграничных возможностях, которые может предоставить анализ на основе дивидендов Харсаньи, особенно в условиях крупномасштабного маркетинга или интернет-магазина, где постоянно действуют бесчисленные переменные. В заключение я хочу дать вам несколько советов по привлечению идей и возможностей с помощью дивидендов Харсаньи:

  • Найдите баланс между ценностью и количеством коалиций: вы, несомненно, столкнетесь с ситуациями, когда вы выявите ценные коалиции, но сосредоточение на них повлияет лишь на небольшую часть бизнеса или клиентов. Крайне важно найти здоровый баланс в этом отношении.
  • Придерживайтесь коалиций разумного размера: представление возможностей или идей крупным коалициям может оказаться дорогостоящим с разных сторон. В моем примере с сайтом электронной коммерции могут быть ситуации, когда ценная коалиция охватывает несколько страниц и, возможно, множество маркетинговых каналов. Если я попрошу заинтересованных лиц сосредоточиться на таких комбинациях, это может потребовать сложных инвестиций в различные команды и технологии. С другой стороны, если это большая коалиция из нескольких похожих страниц, то любое увеличение инвестиций можно оптимизировать. В конечном итоге, разумный размер коалиции будет зависеть от бизнес-обоснования. Как и в любом проекте в области анализа данных, здесь ключевое значение имеют знания в предметной области.
  • Преобразование дивидендов в измеримый эффект : Любая возможность или идея, представленная заинтересованной стороне, скорее всего, потребует финансового результата. Поэтому необходимо уметь преобразовать дивиденды Харсаньи в доход от инвестиций. Это может быть так же просто, как вернуться к показателю ценности коалиции и добавить множитель, если вы рекомендуете проект, который приведет к увеличению размера коалиции, например, больше кампаний с определенного канала на определенную страницу, как я упоминал ранее. Вероятно, существует бесчисленное множество способов осуществить этот тип математического преобразования.

Надеюсь, вам понравилась эта статья! Мне очень интересна эта область теории кооперативных игр! Если вы хотите узнать больше, обязательно ознакомьтесь с оригинальной опубликованной работой Джона Харсаньи под названием: «Упрощенная модель ведения переговоров для кооперативной игры с n участниками», опубликованной в 1963 году.

Источник: towardsdatascience.com

✅ Найденные теги: Дивиденды, новости, Синергия, Харсанья, электронная коммерция

ОСТАВЬТЕ СВОЙ КОММЕНТАРИЙ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Каталог бесплатных опенсорс-решений, которые можно развернуть локально и забыть о подписках

галерея

Фото сгенерированных лиц: исследование показывает, что люди не могут отличить настоящие лица от сгенерированных
Нейросети построили капитализм за трое суток: 100 агентов Claude заперли…
Скетч: цифровой осьминог и виртуальный мир внутри компьютера с человечком.
Сцена с жестами пальцами, где один жест символизирует "VPN", а другой "KHP".
‼️Paramount купила Warner Bros. Discovery — сумма сделки составила безумные…
Скриншот репозитория GitHub "Claude Scientific Skills" AI для научных исследований.
Структура эффективного запроса Claude с элементами задачи, контекста и референса.
Эскиз и готовая веб-страница платформы для AI-дизайна в современном темном режиме.
ideipro logotyp
Image Not Found
Звёздное небо с галактиками и туманностями, космос, Вселенная, астрофотография.

Система оповещения обсерватории Рубина отправила 800 000 сигналов в первую ночь наблюдений.

Астрономы будут получать оповещения о небесных явлениях в течение нескольких минут после их обнаружения. Теренс О'Брайен, редактор раздела «Выходные». Публикации этого автора будут добавляться в вашу ежедневную рассылку по электронной почте и в ленту новостей на главной…

Мар 2, 2026
Женщина с длинными тёмными волосами в синем свете, нейтральный фон.

Расследование в отношении 61-фунтовой машины, которая «пожирает» пластик и выплевывает кирпичи.

Обзор компактного пресса для мягкого пластика Clear Drop — и что будет дальше. Шон Холлистер, старший редактор Публикации этого автора будут добавляться в вашу ежедневную рассылку по электронной почте и в ленту новостей на главной странице вашего…

Мар 2, 2026
Черный углеродное волокно с текстурой плетения, отражающий свет.

Материал будущего: как работает «бессмертный» композит

Учёные из Университета штата Северная Каролина представили композит нового поколения, способный самостоятельно восстанавливаться после серьёзных повреждений.  Речь идёт о модифицированном армированном волокном полимере (FRP), который не просто сохраняет прочность при малом весе, но и способен «залечивать» внутренние…

Мар 2, 2026
Круглый экран с изображением замка и горы, рядом электронная плата.

Круглый дисплей Waveshare для креативных проектов

Круглый 7-дюймовый сенсорный дисплей от Waveshare создан для разработчиков и дизайнеров, которым нужен нестандартный экран.  Это IPS-панель с разрешением 1 080×1 080 пикселей, поддержкой 10-точечного ёмкостного сенсора, оптической склейкой и защитным закалённым стеклом, выполненная в круглом форм-факторе.…

Мар 2, 2026

Впишите свой почтовый адрес и мы будем присылать вам на почту самые свежие новости в числе самых первых