[{"data":1,"prerenderedAt":1552},["ShallowReactive",2],{"article-alternates":3,"article-\u002Fru\u002Fgaming\u002Fbayesovskaya-optimizaciya-ceny-v-mobilnom-f2p":13},{"i18nKey":4,"paths":5},"gaming-002-2026-06",{"de":6,"en":7,"es":8,"fr":9,"it":10,"ru":11,"tr":12},"\u002Fde\u002Fgaming\u002Fbayesian-price-optimization-mobile-f2p","\u002Fen\u002Fgaming\u002Fbayesian-price-optimization-mobile-f2p","\u002Fes\u002Fgaming\u002Foptimizacion-de-precios-bayesiana-f2p-movil","\u002Ffr\u002Fgaming\u002Foptimisation-prix-bayesienne-f2p-mobile","\u002Fit\u002Fgaming\u002Fottimizzazione-del-prezzo-bayesiana-f2p-mobile","\u002Fru\u002Fgaming\u002Fbayesovskaya-optimizaciya-ceny-v-mobilnom-f2p","\u002Ftr\u002Fgaming\u002Fmobile-f2pde-bayesian-price-optimization",{"_path":11,"_dir":14,"_draft":15,"_partial":15,"_locale":16,"title":17,"description":18,"publishedAt":19,"modifiedAt":19,"category":14,"i18nKey":4,"tags":20,"readingTime":26,"author":27,"body":28,"_type":1546,"_id":1547,"_source":1548,"_file":1549,"_stem":1550,"_extension":1551},"gaming",false,"","Байесовская оптимизация цены в мобильном F2P","Оптимизируйте IAP-тесты цены с помощью оценки posterior. Сегментация, длительность теста, компромиссы conversion — реальный фреймворк для увеличения доходов F2P.","2026-06-24",[21,22,23,24,25],"f2p-monetizacija","bajesovskaya-optimizacija","iap-testirovanie","mobilnye-igry","cenova-strategija",8,"Roibase",{"type":29,"children":30,"toc":1539},"root",[31,39,46,51,56,61,67,72,83,101,111,116,603,608,614,619,629,639,649,654,1236,1241,1247,1252,1262,1487,1492,1502,1512,1518,1523,1533],{"type":32,"tag":33,"props":34,"children":35},"element","p",{},[36],{"type":37,"value":38},"text","В мобильном F2P оптимизация цены все еще выполняется по логике A\u002FB-тестирования: две точки цены, 7–14 дней, выбирается победитель. Но когда conversion rate повышается с 2,8% до 3,1%, это действительно выигрыш или вы потеряли whale-сегмент и снизили общий LTV? Классический frequentist A\u002FB-тест говорит «какой вариант победил», но не отвечает на вопрос «какую цену показать какому пользователю в какой момент». Байесовская оптимизация цены заполняет этот пробел — обновляя IAP-лестницу на основе posterior-распределения, вы можете одновременно оптимизировать conversion и сегмент-специфичный revenue.",{"type":32,"tag":40,"props":41,"children":43},"h2",{"id":42},"почему-frequentist-ab-тест-недостаточен-в-f2p",[44],{"type":37,"value":45},"Почему Frequentist A\u002FB-тест недостаточен в F2P",{"type":32,"tag":33,"props":47,"children":48},{},[49],{"type":37,"value":50},"Классический A\u002FB-тест работает на двух предположениях: (1) поведение пользователя стабильно в течение теста, (2) выигравший вариант оптимален для всех сегментов. В F2P оба неверны. Поведение пользователя отличается в первые 72 часа, на 7-й день и на 30-й день — одна и та же цена показывает разную производительность в разных когортах retention. Пример: $4.99 starter pack имеет conversion 3,5%, вариант $9.99 — 2,8%. По классической логике A\u002FB выигрывает $4.99. Однако анализ 30-дневного LTV показал, что вариант $9.99 в whale-сегменте (top 5% spender) генерирует на 42% более высокий lifetime spend. Frequentist-тест не видит эту динамику, потому что не делает posterior-оценку по сегментам.",{"type":32,"tag":33,"props":52,"children":53},{},[54],{"type":37,"value":55},"Вторая проблема — фиксированная длительность теста. A\u002FB-тест длится 14 дней, затем принимается решение, но на 14-й день вы может быть не достигли достаточной статистической мощности. При байесовском подходе posterior-распределение обновляется непрерывно — когда появляется достаточная уверенность, можно остановиться раньше, или, если результат неоднозначен, продлить тест. Это критично для F2P, потому что календарь live ops не ждет две недели — приходит новое событие, контекст pricing меняется, результат теста становится устаревшим.",{"type":32,"tag":33,"props":57,"children":58},{},[59],{"type":37,"value":60},"Третья проблема — бинарная логика решения. Frequentist-тест говорит вам «A выиграл», но в F2P нет выигравшего варианта — правильная цена показывается правильному сегменту в правильное время. Байесовская оптимизация благодаря posterior-оценке дает оптимальный диапазон цен для каждого сегмента, что служит входом для динамического pricing engine.",{"type":32,"tag":40,"props":62,"children":64},{"id":63},"байесовский-iap-лестница-тест-итеративная-оптимизация-через-posterior-оценку",[65],{"type":37,"value":66},"Байесовский IAP-лестница тест: итеративная оптимизация через posterior-оценку",{"type":32,"tag":33,"props":68,"children":69},{},[70],{"type":37,"value":71},"Байесовская оптимизация цены работает на трех уровнях: prior-распределение (предыдущие тестовые данные + доменные знания), функция правдоподобия (текущие данные conversion), posterior-распределение (произведение двух — обновленное убеждение). В IAP-тесте это применяется следующим образом:",{"type":32,"tag":33,"props":73,"children":74},{},[75,81],{"type":32,"tag":76,"props":77,"children":78},"strong",{},[79],{"type":37,"value":80},"Определение prior:",{"type":37,"value":82}," у вас есть данные из предыдущих price-тестов — распределение conversion rate и revenue. Например, для $4.99 IAP ваш prior это Beta(120, 3800) — 120 conversions, 3800 impressions. Это базовая линия вашей игры. Если вы добавляете $6.99 в тест, установите prior на основе доменных знаний: при увеличении цены на 40% conversion обычно падает на 25–35% (эластичность -0.6 к -0.9). Ваш prior может быть Beta(80, 3840).",{"type":32,"tag":33,"props":84,"children":85},{},[86,91,93,99],{"type":32,"tag":76,"props":87,"children":88},{},[89],{"type":37,"value":90},"Обновление likelihood:",{"type":37,"value":92}," тест начался, каждый день поступают новые данные о conversions. Байесовский фреймворк обновляет posterior каждый день. На 3-й день вариант $6.99 показал 45 conversions, 1200 impressions — likelihood это Beta(45, 1155). Posterior = prior × likelihood = Beta(125, 4995). Это дает вам текущую оценку conversion rate: 125\u002F(125+4995) ≈ 2,44%. Важно: это не просто точечная оценка, а распределение — 95% credible interval ",{"type":32,"tag":94,"props":95,"children":96},"span",{},[97],{"type":37,"value":98},"2,1%, 2,8%",{"type":37,"value":100},". То есть вероятность того, что conversion между 2,1% и 2,8%, составляет 95%.",{"type":32,"tag":33,"props":102,"children":103},{},[104,109],{"type":32,"tag":76,"props":105,"children":106},{},[107],{"type":37,"value":108},"Thompson Sampling для динамического распределения:",{"type":37,"value":110}," в классическом A\u002FB traffic распределяется 50–50. В байесовской оптимизации вы используете Thompson Sampling: для каждого impression берется выборка из posterior-распределения, показывается вариант с наибольшим ожидаемым revenue. Это позволяет по мере продвижения теста трафику переходить к лучше работающему варианту, но не дает 100% allocation — продолжает исследовать. В F2P это важно, потому что whale-сегмент мал, но высокой ценности, и если его отрезать рано, вы его потеряете.",{"type":32,"tag":33,"props":112,"children":113},{},[114],{"type":37,"value":115},"Пример кода (Python + PyMC):",{"type":32,"tag":117,"props":118,"children":122},"pre",{"className":119,"code":120,"language":121,"meta":16,"style":16},"language-python shiki shiki-themes github-dark","import pymc as pm\nimport numpy as np\n\n# Prior: $4.99 IAP conversion\nprior_alpha_499 = 120\nprior_beta_499 = 3800\n\n# $6.99 вариант — новый тест\nconversions_699 = 45\nimpressions_699 = 1200\n\nwith pm.Model() as price_test:\n    # Обновление posterior\n    conv_rate_699 = pm.Beta('conv_rate_699', \n                             alpha=prior_alpha_499*0.7 + conversions_699,\n                             beta=prior_beta_499*1.0 + (impressions_699 - conversions_699))\n    \n    # Ожидание revenue (цена IAP × conversion)\n    expected_revenue = conv_rate_699 * 6.99\n    \n    # Sampling\n    trace = pm.sample(2000, return_inferencedata=True)\n\n# 95% credible interval\nprint(pm.summary(trace, var_names=['conv_rate_699']))\n","python",[123],{"type":32,"tag":124,"props":125,"children":126},"code",{"__ignoreMap":16},[127,154,176,186,196,216,234,242,250,268,286,294,317,326,355,394,440,449,458,485,493,502,549,557,566],{"type":32,"tag":94,"props":128,"children":131},{"class":129,"line":130},"line",1,[132,138,144,149],{"type":32,"tag":94,"props":133,"children":135},{"style":134},"--shiki-default:#F97583",[136],{"type":37,"value":137},"import",{"type":32,"tag":94,"props":139,"children":141},{"style":140},"--shiki-default:#E1E4E8",[142],{"type":37,"value":143}," pymc ",{"type":32,"tag":94,"props":145,"children":146},{"style":134},[147],{"type":37,"value":148},"as",{"type":32,"tag":94,"props":150,"children":151},{"style":140},[152],{"type":37,"value":153}," pm\n",{"type":32,"tag":94,"props":155,"children":157},{"class":129,"line":156},2,[158,162,167,171],{"type":32,"tag":94,"props":159,"children":160},{"style":134},[161],{"type":37,"value":137},{"type":32,"tag":94,"props":163,"children":164},{"style":140},[165],{"type":37,"value":166}," numpy ",{"type":32,"tag":94,"props":168,"children":169},{"style":134},[170],{"type":37,"value":148},{"type":32,"tag":94,"props":172,"children":173},{"style":140},[174],{"type":37,"value":175}," np\n",{"type":32,"tag":94,"props":177,"children":179},{"class":129,"line":178},3,[180],{"type":32,"tag":94,"props":181,"children":183},{"emptyLinePlaceholder":182},true,[184],{"type":37,"value":185},"\n",{"type":32,"tag":94,"props":187,"children":189},{"class":129,"line":188},4,[190],{"type":32,"tag":94,"props":191,"children":193},{"style":192},"--shiki-default:#6A737D",[194],{"type":37,"value":195},"# Prior: $4.99 IAP conversion\n",{"type":32,"tag":94,"props":197,"children":199},{"class":129,"line":198},5,[200,205,210],{"type":32,"tag":94,"props":201,"children":202},{"style":140},[203],{"type":37,"value":204},"prior_alpha_499 ",{"type":32,"tag":94,"props":206,"children":207},{"style":134},[208],{"type":37,"value":209},"=",{"type":32,"tag":94,"props":211,"children":213},{"style":212},"--shiki-default:#79B8FF",[214],{"type":37,"value":215}," 120\n",{"type":32,"tag":94,"props":217,"children":219},{"class":129,"line":218},6,[220,225,229],{"type":32,"tag":94,"props":221,"children":222},{"style":140},[223],{"type":37,"value":224},"prior_beta_499 ",{"type":32,"tag":94,"props":226,"children":227},{"style":134},[228],{"type":37,"value":209},{"type":32,"tag":94,"props":230,"children":231},{"style":212},[232],{"type":37,"value":233}," 3800\n",{"type":32,"tag":94,"props":235,"children":237},{"class":129,"line":236},7,[238],{"type":32,"tag":94,"props":239,"children":240},{"emptyLinePlaceholder":182},[241],{"type":37,"value":185},{"type":32,"tag":94,"props":243,"children":244},{"class":129,"line":26},[245],{"type":32,"tag":94,"props":246,"children":247},{"style":192},[248],{"type":37,"value":249},"# $6.99 вариант — новый тест\n",{"type":32,"tag":94,"props":251,"children":253},{"class":129,"line":252},9,[254,259,263],{"type":32,"tag":94,"props":255,"children":256},{"style":140},[257],{"type":37,"value":258},"conversions_699 ",{"type":32,"tag":94,"props":260,"children":261},{"style":134},[262],{"type":37,"value":209},{"type":32,"tag":94,"props":264,"children":265},{"style":212},[266],{"type":37,"value":267}," 45\n",{"type":32,"tag":94,"props":269,"children":271},{"class":129,"line":270},10,[272,277,281],{"type":32,"tag":94,"props":273,"children":274},{"style":140},[275],{"type":37,"value":276},"impressions_699 ",{"type":32,"tag":94,"props":278,"children":279},{"style":134},[280],{"type":37,"value":209},{"type":32,"tag":94,"props":282,"children":283},{"style":212},[284],{"type":37,"value":285}," 1200\n",{"type":32,"tag":94,"props":287,"children":289},{"class":129,"line":288},11,[290],{"type":32,"tag":94,"props":291,"children":292},{"emptyLinePlaceholder":182},[293],{"type":37,"value":185},{"type":32,"tag":94,"props":295,"children":297},{"class":129,"line":296},12,[298,303,308,312],{"type":32,"tag":94,"props":299,"children":300},{"style":134},[301],{"type":37,"value":302},"with",{"type":32,"tag":94,"props":304,"children":305},{"style":140},[306],{"type":37,"value":307}," pm.Model() ",{"type":32,"tag":94,"props":309,"children":310},{"style":134},[311],{"type":37,"value":148},{"type":32,"tag":94,"props":313,"children":314},{"style":140},[315],{"type":37,"value":316}," price_test:\n",{"type":32,"tag":94,"props":318,"children":320},{"class":129,"line":319},13,[321],{"type":32,"tag":94,"props":322,"children":323},{"style":192},[324],{"type":37,"value":325},"    # Обновление posterior\n",{"type":32,"tag":94,"props":327,"children":329},{"class":129,"line":328},14,[330,335,339,344,350],{"type":32,"tag":94,"props":331,"children":332},{"style":140},[333],{"type":37,"value":334},"    conv_rate_699 ",{"type":32,"tag":94,"props":336,"children":337},{"style":134},[338],{"type":37,"value":209},{"type":32,"tag":94,"props":340,"children":341},{"style":140},[342],{"type":37,"value":343}," pm.Beta(",{"type":32,"tag":94,"props":345,"children":347},{"style":346},"--shiki-default:#9ECBFF",[348],{"type":37,"value":349},"'conv_rate_699'",{"type":32,"tag":94,"props":351,"children":352},{"style":140},[353],{"type":37,"value":354},", \n",{"type":32,"tag":94,"props":356,"children":358},{"class":129,"line":357},15,[359,365,369,374,379,384,389],{"type":32,"tag":94,"props":360,"children":362},{"style":361},"--shiki-default:#FFAB70",[363],{"type":37,"value":364},"                             alpha",{"type":32,"tag":94,"props":366,"children":367},{"style":134},[368],{"type":37,"value":209},{"type":32,"tag":94,"props":370,"children":371},{"style":140},[372],{"type":37,"value":373},"prior_alpha_499",{"type":32,"tag":94,"props":375,"children":376},{"style":134},[377],{"type":37,"value":378},"*",{"type":32,"tag":94,"props":380,"children":381},{"style":212},[382],{"type":37,"value":383},"0.7",{"type":32,"tag":94,"props":385,"children":386},{"style":134},[387],{"type":37,"value":388}," +",{"type":32,"tag":94,"props":390,"children":391},{"style":140},[392],{"type":37,"value":393}," conversions_699,\n",{"type":32,"tag":94,"props":395,"children":397},{"class":129,"line":396},16,[398,403,407,412,416,421,425,430,435],{"type":32,"tag":94,"props":399,"children":400},{"style":361},[401],{"type":37,"value":402},"                             beta",{"type":32,"tag":94,"props":404,"children":405},{"style":134},[406],{"type":37,"value":209},{"type":32,"tag":94,"props":408,"children":409},{"style":140},[410],{"type":37,"value":411},"prior_beta_499",{"type":32,"tag":94,"props":413,"children":414},{"style":134},[415],{"type":37,"value":378},{"type":32,"tag":94,"props":417,"children":418},{"style":212},[419],{"type":37,"value":420},"1.0",{"type":32,"tag":94,"props":422,"children":423},{"style":134},[424],{"type":37,"value":388},{"type":32,"tag":94,"props":426,"children":427},{"style":140},[428],{"type":37,"value":429}," (impressions_699 ",{"type":32,"tag":94,"props":431,"children":432},{"style":134},[433],{"type":37,"value":434},"-",{"type":32,"tag":94,"props":436,"children":437},{"style":140},[438],{"type":37,"value":439}," conversions_699))\n",{"type":32,"tag":94,"props":441,"children":443},{"class":129,"line":442},17,[444],{"type":32,"tag":94,"props":445,"children":446},{"style":140},[447],{"type":37,"value":448},"    \n",{"type":32,"tag":94,"props":450,"children":452},{"class":129,"line":451},18,[453],{"type":32,"tag":94,"props":454,"children":455},{"style":192},[456],{"type":37,"value":457},"    # Ожидание revenue (цена IAP × conversion)\n",{"type":32,"tag":94,"props":459,"children":461},{"class":129,"line":460},19,[462,467,471,476,480],{"type":32,"tag":94,"props":463,"children":464},{"style":140},[465],{"type":37,"value":466},"    expected_revenue ",{"type":32,"tag":94,"props":468,"children":469},{"style":134},[470],{"type":37,"value":209},{"type":32,"tag":94,"props":472,"children":473},{"style":140},[474],{"type":37,"value":475}," conv_rate_699 ",{"type":32,"tag":94,"props":477,"children":478},{"style":134},[479],{"type":37,"value":378},{"type":32,"tag":94,"props":481,"children":482},{"style":212},[483],{"type":37,"value":484}," 6.99\n",{"type":32,"tag":94,"props":486,"children":488},{"class":129,"line":487},20,[489],{"type":32,"tag":94,"props":490,"children":491},{"style":140},[492],{"type":37,"value":448},{"type":32,"tag":94,"props":494,"children":496},{"class":129,"line":495},21,[497],{"type":32,"tag":94,"props":498,"children":499},{"style":192},[500],{"type":37,"value":501},"    # Sampling\n",{"type":32,"tag":94,"props":503,"children":505},{"class":129,"line":504},22,[506,511,515,520,525,530,535,539,544],{"type":32,"tag":94,"props":507,"children":508},{"style":140},[509],{"type":37,"value":510},"    trace ",{"type":32,"tag":94,"props":512,"children":513},{"style":134},[514],{"type":37,"value":209},{"type":32,"tag":94,"props":516,"children":517},{"style":140},[518],{"type":37,"value":519}," pm.sample(",{"type":32,"tag":94,"props":521,"children":522},{"style":212},[523],{"type":37,"value":524},"2000",{"type":32,"tag":94,"props":526,"children":527},{"style":140},[528],{"type":37,"value":529},", ",{"type":32,"tag":94,"props":531,"children":532},{"style":361},[533],{"type":37,"value":534},"return_inferencedata",{"type":32,"tag":94,"props":536,"children":537},{"style":134},[538],{"type":37,"value":209},{"type":32,"tag":94,"props":540,"children":541},{"style":212},[542],{"type":37,"value":543},"True",{"type":32,"tag":94,"props":545,"children":546},{"style":140},[547],{"type":37,"value":548},")\n",{"type":32,"tag":94,"props":550,"children":552},{"class":129,"line":551},23,[553],{"type":32,"tag":94,"props":554,"children":555},{"emptyLinePlaceholder":182},[556],{"type":37,"value":185},{"type":32,"tag":94,"props":558,"children":560},{"class":129,"line":559},24,[561],{"type":32,"tag":94,"props":562,"children":563},{"style":192},[564],{"type":37,"value":565},"# 95% credible interval\n",{"type":32,"tag":94,"props":567,"children":569},{"class":129,"line":568},25,[570,575,580,585,589,594,598],{"type":32,"tag":94,"props":571,"children":572},{"style":212},[573],{"type":37,"value":574},"print",{"type":32,"tag":94,"props":576,"children":577},{"style":140},[578],{"type":37,"value":579},"(pm.summary(trace, ",{"type":32,"tag":94,"props":581,"children":582},{"style":361},[583],{"type":37,"value":584},"var_names",{"type":32,"tag":94,"props":586,"children":587},{"style":134},[588],{"type":37,"value":209},{"type":32,"tag":94,"props":590,"children":591},{"style":140},[592],{"type":37,"value":593},"[",{"type":32,"tag":94,"props":595,"children":596},{"style":346},[597],{"type":37,"value":349},{"type":32,"tag":94,"props":599,"children":600},{"style":140},[601],{"type":37,"value":602},"]))\n",{"type":32,"tag":33,"props":604,"children":605},{},[606],{"type":37,"value":607},"Этот подход дает вам: «на 3-й день conversion $6.99 составляет 2,1–2,8%, ожидаемый revenue $0.17 на пользователя» — по мере продолжения теста interval сужается.",{"type":32,"tag":40,"props":609,"children":611},{"id":610},"сегмент-специфичная-iap-лестница-оптимизация-whale-dolphin-minnow",[612],{"type":37,"value":613},"Сегмент-специфичная IAP-лестница: оптимизация whale, dolphin, minnow",{"type":32,"tag":33,"props":615,"children":616},{},[617],{"type":37,"value":618},"В F2P не все пользователи одинаково реагируют на одну цену. Если не делать posterior-оценку по сегментам, вы оптимизируете для среднего conversion, но теряете сегмент-специфичный revenue. Три основных сегмента:",{"type":32,"tag":33,"props":620,"children":621},{},[622,627],{"type":32,"tag":76,"props":623,"children":624},{},[625],{"type":37,"value":626},"Whale (top 5% spender):",{"type":37,"value":628}," LTV $200+, количество IAP 8+, retention D30 85%+. Для этого сегмента чувствительность к цене низкая — если $9.99 IAP конвертирует на 15% меньше, но lifetime spend на 60% выше, это все равно выигрыш. Posterior-оценка здесь отвечает на вопрос: «$9.99 оптимален для whale-сегмента, или $14.99 дает более высокий LTV?» В течение теста вы отслеживаете conversion whale-когорты отдельно, posterior обновляется специфично для whale. Пример: общее conversion $9.99 это 2,8%, но для whale-сегмента 6,2% — для этого сегмента нужно тестировать более высокую цену.",{"type":32,"tag":33,"props":630,"children":631},{},[632,637],{"type":32,"tag":76,"props":633,"children":634},{},[635],{"type":37,"value":636},"Dolphin (middle 25% spender):",{"type":37,"value":638}," LTV $20–50, количество IAP 2–4, retention D30 50–70%. Чувствительность к цене средняя. В dolphin-сегменте байесовский тест обычно находит оптимальный диапазон: между $4.99 и $6.99, какой дает более высокий ожидаемый revenue. Posterior-распределение здесь может быть бимодальным — некоторые dolphin ведут себя как whale (weekend spiker), некоторые смещаются к minnow. Требуется уточнение сегментации.",{"type":32,"tag":33,"props":640,"children":641},{},[642,647],{"type":32,"tag":76,"props":643,"children":644},{},[645],{"type":37,"value":646},"Minnow (остальные 70%):",{"type":37,"value":648}," LTV \u003C$10, большинство non-payer. Чувствительность к цене очень высока — даже между $2.99 и $4.99 conversion может измениться на 40%. В этом сегменте байесовский тест обычно показывает: самая низкая цена ($0.99–$1.99) обеспечивает максимум conversion, но общий revenue низкий. Стратегия: привлекайте minnow'ов первым IAP за $0.99 (impulse buy), затем направляйте на $4.99 лестницу.",{"type":32,"tag":33,"props":650,"children":651},{},[652],{"type":37,"value":653},"Для сегмент-специфичной posterior-оценки используется hierarchical Bayesian model:",{"type":32,"tag":117,"props":655,"children":657},{"className":119,"code":656,"language":121,"meta":16,"style":16},"with pm.Model() as hierarchical_price:\n    # Global conversion prior\n    global_alpha = pm.Gamma('global_alpha', alpha=2, beta=0.1)\n    global_beta = pm.Gamma('global_beta', alpha=2, beta=0.1)\n    \n    # Сегмент-специфичная conversion\n    conv_whale = pm.Beta('conv_whale', alpha=global_alpha, beta=global_beta)\n    conv_dolphin = pm.Beta('conv_dolphin', alpha=global_alpha, beta=global_beta)\n    conv_minnow = pm.Beta('conv_minnow', alpha=global_alpha, beta=global_beta)\n    \n    # Likelihood (сегментные данные)\n    whale_obs = pm.Binomial('whale_obs', n=200, p=conv_whale, observed=12)\n    dolphin_obs = pm.Binomial('dolphin_obs', n=800, p=conv_dolphin, observed=24)\n    minnow_obs = pm.Binomial('minnow_obs', n=3000, p=conv_minnow, observed=60)\n    \n    trace = pm.sample(3000)\n",[658],{"type":32,"tag":124,"props":659,"children":660},{"__ignoreMap":16},[661,681,689,751,808,815,823,874,923,972,979,987,1062,1134,1206,1213],{"type":32,"tag":94,"props":662,"children":663},{"class":129,"line":130},[664,668,672,676],{"type":32,"tag":94,"props":665,"children":666},{"style":134},[667],{"type":37,"value":302},{"type":32,"tag":94,"props":669,"children":670},{"style":140},[671],{"type":37,"value":307},{"type":32,"tag":94,"props":673,"children":674},{"style":134},[675],{"type":37,"value":148},{"type":32,"tag":94,"props":677,"children":678},{"style":140},[679],{"type":37,"value":680}," hierarchical_price:\n",{"type":32,"tag":94,"props":682,"children":683},{"class":129,"line":156},[684],{"type":32,"tag":94,"props":685,"children":686},{"style":192},[687],{"type":37,"value":688},"    # Global conversion prior\n",{"type":32,"tag":94,"props":690,"children":691},{"class":129,"line":178},[692,697,701,706,711,715,720,724,729,733,738,742,747],{"type":32,"tag":94,"props":693,"children":694},{"style":140},[695],{"type":37,"value":696},"    global_alpha ",{"type":32,"tag":94,"props":698,"children":699},{"style":134},[700],{"type":37,"value":209},{"type":32,"tag":94,"props":702,"children":703},{"style":140},[704],{"type":37,"value":705}," pm.Gamma(",{"type":32,"tag":94,"props":707,"children":708},{"style":346},[709],{"type":37,"value":710},"'global_alpha'",{"type":32,"tag":94,"props":712,"children":713},{"style":140},[714],{"type":37,"value":529},{"type":32,"tag":94,"props":716,"children":717},{"style":361},[718],{"type":37,"value":719},"alpha",{"type":32,"tag":94,"props":721,"children":722},{"style":134},[723],{"type":37,"value":209},{"type":32,"tag":94,"props":725,"children":726},{"style":212},[727],{"type":37,"value":728},"2",{"type":32,"tag":94,"props":730,"children":731},{"style":140},[732],{"type":37,"value":529},{"type":32,"tag":94,"props":734,"children":735},{"style":361},[736],{"type":37,"value":737},"beta",{"type":32,"tag":94,"props":739,"children":740},{"style":134},[741],{"type":37,"value":209},{"type":32,"tag":94,"props":743,"children":744},{"style":212},[745],{"type":37,"value":746},"0.1",{"type":32,"tag":94,"props":748,"children":749},{"style":140},[750],{"type":37,"value":548},{"type":32,"tag":94,"props":752,"children":753},{"class":129,"line":188},[754,759,763,767,772,776,780,784,788,792,796,800,804],{"type":32,"tag":94,"props":755,"children":756},{"style":140},[757],{"type":37,"value":758},"    global_beta ",{"type":32,"tag":94,"props":760,"children":761},{"style":134},[762],{"type":37,"value":209},{"type":32,"tag":94,"props":764,"children":765},{"style":140},[766],{"type":37,"value":705},{"type":32,"tag":94,"props":768,"children":769},{"style":346},[770],{"type":37,"value":771},"'global_beta'",{"type":32,"tag":94,"props":773,"children":774},{"style":140},[775],{"type":37,"value":529},{"type":32,"tag":94,"props":777,"children":778},{"style":361},[779],{"type":37,"value":719},{"type":32,"tag":94,"props":781,"children":782},{"style":134},[783],{"type":37,"value":209},{"type":32,"tag":94,"props":785,"children":786},{"style":212},[787],{"type":37,"value":728},{"type":32,"tag":94,"props":789,"children":790},{"style":140},[791],{"type":37,"value":529},{"type":32,"tag":94,"props":793,"children":794},{"style":361},[795],{"type":37,"value":737},{"type":32,"tag":94,"props":797,"children":798},{"style":134},[799],{"type":37,"value":209},{"type":32,"tag":94,"props":801,"children":802},{"style":212},[803],{"type":37,"value":746},{"type":32,"tag":94,"props":805,"children":806},{"style":140},[807],{"type":37,"value":548},{"type":32,"tag":94,"props":809,"children":810},{"class":129,"line":198},[811],{"type":32,"tag":94,"props":812,"children":813},{"style":140},[814],{"type":37,"value":448},{"type":32,"tag":94,"props":816,"children":817},{"class":129,"line":218},[818],{"type":32,"tag":94,"props":819,"children":820},{"style":192},[821],{"type":37,"value":822},"    # Сегмент-специфичная conversion\n",{"type":32,"tag":94,"props":824,"children":825},{"class":129,"line":236},[826,831,835,839,844,848,852,856,861,865,869],{"type":32,"tag":94,"props":827,"children":828},{"style":140},[829],{"type":37,"value":830},"    conv_whale ",{"type":32,"tag":94,"props":832,"children":833},{"style":134},[834],{"type":37,"value":209},{"type":32,"tag":94,"props":836,"children":837},{"style":140},[838],{"type":37,"value":343},{"type":32,"tag":94,"props":840,"children":841},{"style":346},[842],{"type":37,"value":843},"'conv_whale'",{"type":32,"tag":94,"props":845,"children":846},{"style":140},[847],{"type":37,"value":529},{"type":32,"tag":94,"props":849,"children":850},{"style":361},[851],{"type":37,"value":719},{"type":32,"tag":94,"props":853,"children":854},{"style":134},[855],{"type":37,"value":209},{"type":32,"tag":94,"props":857,"children":858},{"style":140},[859],{"type":37,"value":860},"global_alpha, ",{"type":32,"tag":94,"props":862,"children":863},{"style":361},[864],{"type":37,"value":737},{"type":32,"tag":94,"props":866,"children":867},{"style":134},[868],{"type":37,"value":209},{"type":32,"tag":94,"props":870,"children":871},{"style":140},[872],{"type":37,"value":873},"global_beta)\n",{"type":32,"tag":94,"props":875,"children":876},{"class":129,"line":26},[877,882,886,890,895,899,903,907,911,915,919],{"type":32,"tag":94,"props":878,"children":879},{"style":140},[880],{"type":37,"value":881},"    conv_dolphin ",{"type":32,"tag":94,"props":883,"children":884},{"style":134},[885],{"type":37,"value":209},{"type":32,"tag":94,"props":887,"children":888},{"style":140},[889],{"type":37,"value":343},{"type":32,"tag":94,"props":891,"children":892},{"style":346},[893],{"type":37,"value":894},"'conv_dolphin'",{"type":32,"tag":94,"props":896,"children":897},{"style":140},[898],{"type":37,"value":529},{"type":32,"tag":94,"props":900,"children":901},{"style":361},[902],{"type":37,"value":719},{"type":32,"tag":94,"props":904,"children":905},{"style":134},[906],{"type":37,"value":209},{"type":32,"tag":94,"props":908,"children":909},{"style":140},[910],{"type":37,"value":860},{"type":32,"tag":94,"props":912,"children":913},{"style":361},[914],{"type":37,"value":737},{"type":32,"tag":94,"props":916,"children":917},{"style":134},[918],{"type":37,"value":209},{"type":32,"tag":94,"props":920,"children":921},{"style":140},[922],{"type":37,"value":873},{"type":32,"tag":94,"props":924,"children":925},{"class":129,"line":252},[926,931,935,939,944,948,952,956,960,964,968],{"type":32,"tag":94,"props":927,"children":928},{"style":140},[929],{"type":37,"value":930},"    conv_minnow ",{"type":32,"tag":94,"props":932,"children":933},{"style":134},[934],{"type":37,"value":209},{"type":32,"tag":94,"props":936,"children":937},{"style":140},[938],{"type":37,"value":343},{"type":32,"tag":94,"props":940,"children":941},{"style":346},[942],{"type":37,"value":943},"'conv_minnow'",{"type":32,"tag":94,"props":945,"children":946},{"style":140},[947],{"type":37,"value":529},{"type":32,"tag":94,"props":949,"children":950},{"style":361},[951],{"type":37,"value":719},{"type":32,"tag":94,"props":953,"children":954},{"style":134},[955],{"type":37,"value":209},{"type":32,"tag":94,"props":957,"children":958},{"style":140},[959],{"type":37,"value":860},{"type":32,"tag":94,"props":961,"children":962},{"style":361},[963],{"type":37,"value":737},{"type":32,"tag":94,"props":965,"children":966},{"style":134},[967],{"type":37,"value":209},{"type":32,"tag":94,"props":969,"children":970},{"style":140},[971],{"type":37,"value":873},{"type":32,"tag":94,"props":973,"children":974},{"class":129,"line":270},[975],{"type":32,"tag":94,"props":976,"children":977},{"style":140},[978],{"type":37,"value":448},{"type":32,"tag":94,"props":980,"children":981},{"class":129,"line":288},[982],{"type":32,"tag":94,"props":983,"children":984},{"style":192},[985],{"type":37,"value":986},"    # Likelihood (сегментные данные)\n",{"type":32,"tag":94,"props":988,"children":989},{"class":129,"line":296},[990,995,999,1004,1009,1013,1018,1022,1027,1031,1035,1039,1044,1049,1053,1058],{"type":32,"tag":94,"props":991,"children":992},{"style":140},[993],{"type":37,"value":994},"    whale_obs ",{"type":32,"tag":94,"props":996,"children":997},{"style":134},[998],{"type":37,"value":209},{"type":32,"tag":94,"props":1000,"children":1001},{"style":140},[1002],{"type":37,"value":1003}," pm.Binomial(",{"type":32,"tag":94,"props":1005,"children":1006},{"style":346},[1007],{"type":37,"value":1008},"'whale_obs'",{"type":32,"tag":94,"props":1010,"children":1011},{"style":140},[1012],{"type":37,"value":529},{"type":32,"tag":94,"props":1014,"children":1015},{"style":361},[1016],{"type":37,"value":1017},"n",{"type":32,"tag":94,"props":1019,"children":1020},{"style":134},[1021],{"type":37,"value":209},{"type":32,"tag":94,"props":1023,"children":1024},{"style":212},[1025],{"type":37,"value":1026},"200",{"type":32,"tag":94,"props":1028,"children":1029},{"style":140},[1030],{"type":37,"value":529},{"type":32,"tag":94,"props":1032,"children":1033},{"style":361},[1034],{"type":37,"value":33},{"type":32,"tag":94,"props":1036,"children":1037},{"style":134},[1038],{"type":37,"value":209},{"type":32,"tag":94,"props":1040,"children":1041},{"style":140},[1042],{"type":37,"value":1043},"conv_whale, ",{"type":32,"tag":94,"props":1045,"children":1046},{"style":361},[1047],{"type":37,"value":1048},"observed",{"type":32,"tag":94,"props":1050,"children":1051},{"style":134},[1052],{"type":37,"value":209},{"type":32,"tag":94,"props":1054,"children":1055},{"style":212},[1056],{"type":37,"value":1057},"12",{"type":32,"tag":94,"props":1059,"children":1060},{"style":140},[1061],{"type":37,"value":548},{"type":32,"tag":94,"props":1063,"children":1064},{"class":129,"line":319},[1065,1070,1074,1078,1083,1087,1091,1095,1100,1104,1108,1112,1117,1121,1125,1130],{"type":32,"tag":94,"props":1066,"children":1067},{"style":140},[1068],{"type":37,"value":1069},"    dolphin_obs ",{"type":32,"tag":94,"props":1071,"children":1072},{"style":134},[1073],{"type":37,"value":209},{"type":32,"tag":94,"props":1075,"children":1076},{"style":140},[1077],{"type":37,"value":1003},{"type":32,"tag":94,"props":1079,"children":1080},{"style":346},[1081],{"type":37,"value":1082},"'dolphin_obs'",{"type":32,"tag":94,"props":1084,"children":1085},{"style":140},[1086],{"type":37,"value":529},{"type":32,"tag":94,"props":1088,"children":1089},{"style":361},[1090],{"type":37,"value":1017},{"type":32,"tag":94,"props":1092,"children":1093},{"style":134},[1094],{"type":37,"value":209},{"type":32,"tag":94,"props":1096,"children":1097},{"style":212},[1098],{"type":37,"value":1099},"800",{"type":32,"tag":94,"props":1101,"children":1102},{"style":140},[1103],{"type":37,"value":529},{"type":32,"tag":94,"props":1105,"children":1106},{"style":361},[1107],{"type":37,"value":33},{"type":32,"tag":94,"props":1109,"children":1110},{"style":134},[1111],{"type":37,"value":209},{"type":32,"tag":94,"props":1113,"children":1114},{"style":140},[1115],{"type":37,"value":1116},"conv_dolphin, ",{"type":32,"tag":94,"props":1118,"children":1119},{"style":361},[1120],{"type":37,"value":1048},{"type":32,"tag":94,"props":1122,"children":1123},{"style":134},[1124],{"type":37,"value":209},{"type":32,"tag":94,"props":1126,"children":1127},{"style":212},[1128],{"type":37,"value":1129},"24",{"type":32,"tag":94,"props":1131,"children":1132},{"style":140},[1133],{"type":37,"value":548},{"type":32,"tag":94,"props":1135,"children":1136},{"class":129,"line":328},[1137,1142,1146,1150,1155,1159,1163,1167,1172,1176,1180,1184,1189,1193,1197,1202],{"type":32,"tag":94,"props":1138,"children":1139},{"style":140},[1140],{"type":37,"value":1141},"    minnow_obs ",{"type":32,"tag":94,"props":1143,"children":1144},{"style":134},[1145],{"type":37,"value":209},{"type":32,"tag":94,"props":1147,"children":1148},{"style":140},[1149],{"type":37,"value":1003},{"type":32,"tag":94,"props":1151,"children":1152},{"style":346},[1153],{"type":37,"value":1154},"'minnow_obs'",{"type":32,"tag":94,"props":1156,"children":1157},{"style":140},[1158],{"type":37,"value":529},{"type":32,"tag":94,"props":1160,"children":1161},{"style":361},[1162],{"type":37,"value":1017},{"type":32,"tag":94,"props":1164,"children":1165},{"style":134},[1166],{"type":37,"value":209},{"type":32,"tag":94,"props":1168,"children":1169},{"style":212},[1170],{"type":37,"value":1171},"3000",{"type":32,"tag":94,"props":1173,"children":1174},{"style":140},[1175],{"type":37,"value":529},{"type":32,"tag":94,"props":1177,"children":1178},{"style":361},[1179],{"type":37,"value":33},{"type":32,"tag":94,"props":1181,"children":1182},{"style":134},[1183],{"type":37,"value":209},{"type":32,"tag":94,"props":1185,"children":1186},{"style":140},[1187],{"type":37,"value":1188},"conv_minnow, ",{"type":32,"tag":94,"props":1190,"children":1191},{"style":361},[1192],{"type":37,"value":1048},{"type":32,"tag":94,"props":1194,"children":1195},{"style":134},[1196],{"type":37,"value":209},{"type":32,"tag":94,"props":1198,"children":1199},{"style":212},[1200],{"type":37,"value":1201},"60",{"type":32,"tag":94,"props":1203,"children":1204},{"style":140},[1205],{"type":37,"value":548},{"type":32,"tag":94,"props":1207,"children":1208},{"class":129,"line":357},[1209],{"type":32,"tag":94,"props":1210,"children":1211},{"style":140},[1212],{"type":37,"value":448},{"type":32,"tag":94,"props":1214,"children":1215},{"class":129,"line":396},[1216,1220,1224,1228,1232],{"type":32,"tag":94,"props":1217,"children":1218},{"style":140},[1219],{"type":37,"value":510},{"type":32,"tag":94,"props":1221,"children":1222},{"style":134},[1223],{"type":37,"value":209},{"type":32,"tag":94,"props":1225,"children":1226},{"style":140},[1227],{"type":37,"value":519},{"type":32,"tag":94,"props":1229,"children":1230},{"style":212},[1231],{"type":37,"value":1171},{"type":32,"tag":94,"props":1233,"children":1234},{"style":140},[1235],{"type":37,"value":548},{"type":32,"tag":33,"props":1237,"children":1238},{},[1239],{"type":37,"value":1240},"Эта модель связывает whale, dolphin, minnow conversion'ы с глобальным prior — даже при малом размере выборки дает разумную оценку.",{"type":32,"tag":40,"props":1242,"children":1244},{"id":1243},"длительность-теста-и-stopping-rule-решение-через-posterior-probability",[1245],{"type":37,"value":1246},"Длительность теста и stopping rule: решение через posterior probability",{"type":32,"tag":33,"props":1248,"children":1249},{},[1250],{"type":37,"value":1251},"В классическом A\u002FB длительность теста определяется заранее (14 дней, минимум 1000 conversions). В байесовской оптимизации stopping rule строится на posterior probability: «вероятность того, что вариант A лучше варианта B, превысила 95%?» Это динамическое остановку и дает ранний выигрыш, и снижает риск false positive.",{"type":32,"tag":33,"props":1253,"children":1254},{},[1255,1260],{"type":32,"tag":76,"props":1256,"children":1257},{},[1258],{"type":37,"value":1259},"Пример stopping rule:",{"type":37,"value":1261}," тест $4.99 vs $6.99 IAP. Каждый день posterior обновляется. На 5-й день рассчитывается posterior probability:",{"type":32,"tag":117,"props":1263,"children":1265},{"className":119,"code":1264,"language":121,"meta":16,"style":16},"# Posterior samples\nsamples_499 = trace.posterior['conv_rate_499'].values.flatten()\nsamples_699 = trace.posterior['conv_rate_699'].values.flatten()\n\n# Revenue сравнение (цена × conversion)\nrevenue_499 = samples_499 * 4.99\nrevenue_699 = samples_699 * 6.99\n\n# Вероятность $6.99 лучше\nprob_699_better = (revenue_699 > revenue_499).mean()\nprint(f\"P($6.99 > $4.99) = {prob_699_better:.2%}\")\n",[1266],{"type":32,"tag":124,"props":1267,"children":1268},{"__ignoreMap":16},[1269,1277,1304,1328,1335,1343,1369,1394,1401,1409,1436],{"type":32,"tag":94,"props":1270,"children":1271},{"class":129,"line":130},[1272],{"type":32,"tag":94,"props":1273,"children":1274},{"style":192},[1275],{"type":37,"value":1276},"# Posterior samples\n",{"type":32,"tag":94,"props":1278,"children":1279},{"class":129,"line":156},[1280,1285,1289,1294,1299],{"type":32,"tag":94,"props":1281,"children":1282},{"style":140},[1283],{"type":37,"value":1284},"samples_499 ",{"type":32,"tag":94,"props":1286,"children":1287},{"style":134},[1288],{"type":37,"value":209},{"type":32,"tag":94,"props":1290,"children":1291},{"style":140},[1292],{"type":37,"value":1293}," trace.posterior[",{"type":32,"tag":94,"props":1295,"children":1296},{"style":346},[1297],{"type":37,"value":1298},"'conv_rate_499'",{"type":32,"tag":94,"props":1300,"children":1301},{"style":140},[1302],{"type":37,"value":1303},"].values.flatten()\n",{"type":32,"tag":94,"props":1305,"children":1306},{"class":129,"line":178},[1307,1312,1316,1320,1324],{"type":32,"tag":94,"props":1308,"children":1309},{"style":140},[1310],{"type":37,"value":1311},"samples_699 ",{"type":32,"tag":94,"props":1313,"children":1314},{"style":134},[1315],{"type":37,"value":209},{"type":32,"tag":94,"props":1317,"children":1318},{"style":140},[1319],{"type":37,"value":1293},{"type":32,"tag":94,"props":1321,"children":1322},{"style":346},[1323],{"type":37,"value":349},{"type":32,"tag":94,"props":1325,"children":1326},{"style":140},[1327],{"type":37,"value":1303},{"type":32,"tag":94,"props":1329,"children":1330},{"class":129,"line":188},[1331],{"type":32,"tag":94,"props":1332,"children":1333},{"emptyLinePlaceholder":182},[1334],{"type":37,"value":185},{"type":32,"tag":94,"props":1336,"children":1337},{"class":129,"line":198},[1338],{"type":32,"tag":94,"props":1339,"children":1340},{"style":192},[1341],{"type":37,"value":1342},"# Revenue сравнение (цена × conversion)\n",{"type":32,"tag":94,"props":1344,"children":1345},{"class":129,"line":218},[1346,1351,1355,1360,1364],{"type":32,"tag":94,"props":1347,"children":1348},{"style":140},[1349],{"type":37,"value":1350},"revenue_499 ",{"type":32,"tag":94,"props":1352,"children":1353},{"style":134},[1354],{"type":37,"value":209},{"type":32,"tag":94,"props":1356,"children":1357},{"style":140},[1358],{"type":37,"value":1359}," samples_499 ",{"type":32,"tag":94,"props":1361,"children":1362},{"style":134},[1363],{"type":37,"value":378},{"type":32,"tag":94,"props":1365,"children":1366},{"style":212},[1367],{"type":37,"value":1368}," 4.99\n",{"type":32,"tag":94,"props":1370,"children":1371},{"class":129,"line":236},[1372,1377,1381,1386,1390],{"type":32,"tag":94,"props":1373,"children":1374},{"style":140},[1375],{"type":37,"value":1376},"revenue_699 ",{"type":32,"tag":94,"props":1378,"children":1379},{"style":134},[1380],{"type":37,"value":209},{"type":32,"tag":94,"props":1382,"children":1383},{"style":140},[1384],{"type":37,"value":1385}," samples_699 ",{"type":32,"tag":94,"props":1387,"children":1388},{"style":134},[1389],{"type":37,"value":378},{"type":32,"tag":94,"props":1391,"children":1392},{"style":212},[1393],{"type":37,"value":484},{"type":32,"tag":94,"props":1395,"children":1396},{"class":129,"line":26},[1397],{"type":32,"tag":94,"props":1398,"children":1399},{"emptyLinePlaceholder":182},[1400],{"type":37,"value":185},{"type":32,"tag":94,"props":1402,"children":1403},{"class":129,"line":252},[1404],{"type":32,"tag":94,"props":1405,"children":1406},{"style":192},[1407],{"type":37,"value":1408},"# Вероятность $6.99 лучше\n",{"type":32,"tag":94,"props":1410,"children":1411},{"class":129,"line":270},[1412,1417,1421,1426,1431],{"type":32,"tag":94,"props":1413,"children":1414},{"style":140},[1415],{"type":37,"value":1416},"prob_699_better ",{"type":32,"tag":94,"props":1418,"children":1419},{"style":134},[1420],{"type":37,"value":209},{"type":32,"tag":94,"props":1422,"children":1423},{"style":140},[1424],{"type":37,"value":1425}," (revenue_699 ",{"type":32,"tag":94,"props":1427,"children":1428},{"style":134},[1429],{"type":37,"value":1430},">",{"type":32,"tag":94,"props":1432,"children":1433},{"style":140},[1434],{"type":37,"value":1435}," revenue_499).mean()\n",{"type":32,"tag":94,"props":1437,"children":1438},{"class":129,"line":288},[1439,1443,1448,1453,1458,1463,1468,1473,1478,1483],{"type":32,"tag":94,"props":1440,"children":1441},{"style":212},[1442],{"type":37,"value":574},{"type":32,"tag":94,"props":1444,"children":1445},{"style":140},[1446],{"type":37,"value":1447},"(",{"type":32,"tag":94,"props":1449,"children":1450},{"style":134},[1451],{"type":37,"value":1452},"f",{"type":32,"tag":94,"props":1454,"children":1455},{"style":346},[1456],{"type":37,"value":1457},"\"P($6.99 > $4.99) = ",{"type":32,"tag":94,"props":1459,"children":1460},{"style":212},[1461],{"type":37,"value":1462},"{",{"type":32,"tag":94,"props":1464,"children":1465},{"style":140},[1466],{"type":37,"value":1467},"prob_699_better",{"type":32,"tag":94,"props":1469,"children":1470},{"style":134},[1471],{"type":37,"value":1472},":.2%",{"type":32,"tag":94,"props":1474,"children":1475},{"style":212},[1476],{"type":37,"value":1477},"}",{"type":32,"tag":94,"props":1479,"children":1480},{"style":346},[1481],{"type":37,"value":1482},"\"",{"type":32,"tag":94,"props":1484,"children":1485},{"style":140},[1486],{"type":37,"value":548},{"type":32,"tag":33,"props":1488,"children":1489},{},[1490],{"type":37,"value":1491},"На 5-й день P($6.99 > $4.99) = 73% — не решайте еще. На 9-й день 94% — все еще ниже порога 95%. На 12-й день 96% — остановите тест, $6.99 оптимален. Этот подход сэкономит вам 2–5 дней по сравнению с frequentist.",{"type":32,"tag":33,"props":1493,"children":1494},{},[1495,1500],{"type":32,"tag":76,"props":1496,"children":1497},{},[1498],{"type":37,"value":1499},"Минимальная длительность теста:",{"type":37,"value":1501}," даже если байесовский подход рекомендует ранее остановиться, в F2P запускайте минимум 7 дней — в первой неделе видны spike retention, поведение weekend spender, эффект события. Если остановитесь раньше, posterior будет смещенным.",{"type":32,"tag":33,"props":1503,"children":1504},{},[1505,1510],{"type":32,"tag":76,"props":1506,"children":1507},{},[1508],{"type":37,"value":1509},"Regret minimization:",{"type":37,"value":1511}," если вы используете Thompson Sampling, в течение теста вы даете трафик субоптимальному варианту (exploration). Regret = optimal revenue - actual revenue. Байесовский фреймворк минимизирует regret, потому что по мере обновления posterior exploration уменьшается, exploitation растет. За 14-дневный тест первые 5 дней это 30% regret, последние 5 дней это 5% regret — средний 15%. В классическом A\u002FB средний regret 25–30%, потому что трафик постоянно распределяется 50–50.",{"type":32,"tag":40,"props":1513,"children":1515},{"id":1514},"переход-в-production-dynamic-pricing-engine-и-continuous-posterior-refinement",[1516],{"type":37,"value":1517},"Переход в production: dynamic pricing engine и continuous posterior refinement",{"type":32,"tag":33,"props":1519,"children":1520},{},[1521],{"type":37,"value":1522},"Тест завершен, $6.99 выиграл — но работа не закончена. Настоящая сила байесовской оптимизации цены в том, что в production'е она непрерывно уточняет posterior. Результат теста — не статичная точка цены, а вход в динамический pricing engine.",{"type":32,"tag":33,"props":1524,"children":1525},{},[1526,1531],{"type":32,"tag":76,"props":1527,"children":1528},{},[1529],{"type":37,"value":1530},"Архитектура dynamic pricing engine:",{"type":37,"value":1532}," в каждой пользовательской сессии делается сегмент-оценка (LTV prediction, retention cohort, spending velocity). В зависимости от сегмента из posterior-распределения sample'ируется оптимальная цена. Пример: новый пользователь, D1 retention 80%, первый IAP еще впереди — prior minnow доминирует, sample'ируется из диапазона $0.99–$1.99. Тот же пользователь на D7",{"type":32,"tag":1534,"props":1535,"children":1536},"style",{},[1537],{"type":37,"value":1538},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":16,"searchDepth":178,"depth":178,"links":1540},[1541,1542,1543,1544,1545],{"id":42,"depth":156,"text":45},{"id":63,"depth":156,"text":66},{"id":610,"depth":156,"text":613},{"id":1243,"depth":156,"text":1246},{"id":1514,"depth":156,"text":1517},"markdown","content:ru:gaming:bayesovskaya-optimizaciya-ceny-v-mobilnom-f2p.md","content","ru\u002Fgaming\u002Fbayesovskaya-optimizaciya-ceny-v-mobilnom-f2p.md","ru\u002Fgaming\u002Fbayesovskaya-optimizaciya-ceny-v-mobilnom-f2p","md",1782338702863]