![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
У вас є магазин з мільйоном (грубо кажучи, насправді, більше) найменувань товарів. Всіх найрізноманітніших видів. І ось ви взяли, і за кожним найменуванням порахували продажі протягом двох тридцятиденних періодів один за одним: X0 і X1. Розподіл кожного з іксів -- приблизнно power-law, p ~ x-α. І ото вирішив я побудувати гістограму того, що називається "lift" -- відносна зміна продаж від місяця до місяця:
(X1 - X0) / (X0 + ε)
Епсилон там для того, аби не було ділення на нуль. (Десь 20% кожного з іксів -- нулі, але пари, де нулями є і X0, і X1, в популяцію не входять). Гістограма, як ви розумієте, тягнеться від -1 до безмежної асимптоти. І ось що я спостерігаю, і що мені абсолютно незрозуміло, звідки таке береться:
Що це, блін, таке? Моє єстество протестує проти того, що це може бути якийсь бізнесовий ефект. Це щось числове, чиста арифметика. З корінням або в статистиці, або в програмуванні (тобто, як воно все в таблички записується) Але що?
Графіків не покажу, бо, то не можна, таємниця слідства, вотетовотвсьо.
UPDATE: Сам дотумкав. Ефект, насправді, бізнесовий, а я просто не подумав. Ці ікси -- місячні продажі. Розподіл продаж щомісяця має купу локальних максимумів в різних "круглих" числах: пропорційних 10, особливо 20, сотня, півтораста... Цього виявилося достатньо, щоби сумарний розподіл відносноі різниці проріс максимумами в особливо раціональних точках
UPDATE 2: Я тормоз. Круглі числа ні при чому, це банальний ефект постійної ціни на одиницю товару, тому для невеликих кількостей проданих юнітів що дельта, що Х0 в знаменнику, будуть пропорційними цілим числам. Дякую
ichthuss за відповідь.
(X1 - X0) / (X0 + ε)
Епсилон там для того, аби не було ділення на нуль. (Десь 20% кожного з іксів -- нулі, але пари, де нулями є і X0, і X1, в популяцію не входять). Гістограма, як ви розумієте, тягнеться від -1 до безмежної асимптоти. І ось що я спостерігаю, і що мені абсолютно незрозуміло, звідки таке береться:
- Гістограма очікувано має максимума в нулі, плюс, великий пік в мінус одиниці, це ясно
- Але, крім того, є дуже чітко проявлені максимуми в 1, 2, 3, 4, ...
- Більше того, менш чітко проявлені, але видимі максимуми в 0.5, 1.5, 2.5 ...
- То було з позитивного боку, а зліва від нуля там є конкретні піки такі на 1/2, 2/3, 3/4, 4/5...
Що це, блін, таке? Моє єстество протестує проти того, що це може бути якийсь бізнесовий ефект. Це щось числове, чиста арифметика. З корінням або в статистиці, або в програмуванні (тобто, як воно все в таблички записується) Але що?
Графіків не покажу, бо, то не можна, таємниця слідства, вотетовотвсьо.
UPDATE: Сам дотумкав. Ефект, насправді, бізнесовий, а я просто не подумав. Ці ікси -- місячні продажі. Розподіл продаж щомісяця має купу локальних максимумів в різних "круглих" числах: пропорційних 10, особливо 20, сотня, півтораста... Цього виявилося достатньо, щоби сумарний розподіл відносноі різниці проріс максимумами в особливо раціональних точках
UPDATE 2: Я тормоз. Круглі числа ні при чому, це банальний ефект постійної ціни на одиницю товару, тому для невеликих кількостей проданих юнітів що дельта, що Х0 в знаменнику, будуть пропорційними цілим числам. Дякую
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
no subject
Date: 2023-08-31 04:17 am (UTC)Є така штука, воронка продажів. Там непрогнозована одна річ - кількість лідів на вході, все інше дуже чітко прораховується і дуже надійно повторюване.
- ППК використовується 99% бізнеса, саме тому що воно дуже класно дозволяє керувати лідами. Краник відчиняється і зачиняється рівно коли треба, і практично ідеально видає рівно стільки лідів і продажів скільки хочеться, і більшість людей намагаються його використати щоб зробити ідеально псевдовипадкові продажі, що типу випадково продажі розподіляються рівномірно, саме щоб в звітності виглядало все рівно.
Усі інші інструменти набагато меньш прогнозовані а ніхто не хоче за негарантоване платити, навіть коли воно коштує набагато дешевше.
no subject
Date: 2023-08-31 03:31 pm (UTC)Кожне найменування товару входить в супергрупу подібних. Ви шукаєте іграшку для ялинки з картинкою Супермена в рожевих трусах з зеленими сердечками, а таких в системі — п‘ять майже ідентичних, але від п‘яти різних продавців, тому різні коди товару. Який попадеться вам, а який попадеться наступному бажаючому — невідомо, бо там досить хитрий і непрозорий алгоритм пропозиції, помножений на не завжди передбачувані дії покупця при виборі. Тому і виходить, що один продавець продає цього місяця більше, а другийй може продати лише невелику кількість одиниць, а третій - жодної. А на наступний місяць все міняється
no subject
Date: 2023-08-31 04:19 pm (UTC)Так не може бути.
Алгоритм там має бути простий, але хитрий, бо він має бути добре масштабованим і добре передбачуваним.
А саме передбачуваність має бути в тому, щоб кожного місяця був запланований результат.
Подруге, система має відсипати справедливу кількість лідів, і в інтернеті дуже багато охочих піймати агрегатора на нерівному розподілі лідів і на цьому зробити бабло якимось чином.
Є дві речі, дуже принципові для країн що декларують капіталізм як свій шлях.
Поперше, в усіх мають бути рівні можливості, і це не обговорюється.
Подруге, є хакери, які намагаються знайти слабке місце в алгоритма розподілення, щоб якимось чином собі (чи комусь за гроші) зробити набагато більше лідів.
І от алгоритм розподілення має бути з одного боку простим, щоб він працював швидко і не потребував великих обчислювальних витрат а також щоб не потребувати гіпермегашвидких зв"язків (він розподілений в хмарі); а з іншого боку, в йому має бути кілька костилів, щоб враховувати загальносистемний розподіл, і щоб для завданої групи користувачів ЗА МІСЯЦЬ був гарантований відсоток від загальної кількості лідів.
Чому за місяць, бо якщо в малого бізнеса не буде місяць прибутку він може закритись, і керівницьтво агрегатора з кожи вистрибує щоб за місяць отримували приблизно цифру яку обіцяє маркетинг (+-50% може бути але не більше), і зазвичай костиль так працює, що скажімо раз на тиждень розраховується статистика (частіше складно зібрати дані з усіх серверів), і корегується видача, так щоб наступний тиждень збалансував небаланси попереднього.
Самі алгоритми беруться з геймдеву, там є фах геймдизайнера або близький левелдезігнер, в його всі характеристики персонажів і ігрових айтемів вводяться в таблицю в екселі і рахуються ймовірні варіанти кінця битви, так щоб вирівняти шанси для одного рівня гравців, бо інакше людям буде нецікаво грати.
Тобто алгоритм дуже простий, а балансується отими коефіцієнтами.
Іноді геймдиз лажає і якась комбінація стає абсолютно сильною, тоді найпросунутіші контори роблять компенсації постраждалим, роздаючі нібито випадкові подарунки (можуть просто кинути під ноги лутбокс, можуть запросити на якусь подію, типу десь типу випадково випаде багато руди і гравця туди запросять).
Але див вище, алгоритм не може бути складний, бо обчислювальні ресурси і CAP теорема, і в той же час має бути можливість підкрутити результат ЗА МІСЯЦЬ, ніхто не очікує що воно буде ідеально кожного дня рівні цифри видавати.
no subject
Date: 2023-08-31 05:29 pm (UTC)Так є, причому, масштабно є.
Деталі можу хіба приватом, але загальна ідея така: кожен з наших суперменів в рожевих трусах має трошки інакший лістінґ. Десь пропущений в описі матеріал трусів, десь не всі розміри, десь в бренді помилка, десь бренд не написаний, і т. п. Далі: покупці у нас по всій країні, від Аляски до Флориди, і по всій країні же -- проміжні склади, звідки той товар можуть привезти. Рідко яке наіменування товару представлене у всіх fullfilment центрах, і майже ніхто і ніколи не має повного набору розмірів/стилів у всіх центрах одночасно. Тобто, залежно від того, коли і де купуватимуть наступного супермена, алгоритм пошуку враховуватиме близькість адреси покупця і найближчого складу, і вибиратиме інший товар.
Але це все "об'єктивні" причини, а є ще ціла жменя суб'єктивних: кінцевий продавець може доплачувати агрегатору, щоби його товари за малу копійку з'являлися в паралельних пошуках, або щоби вони випливали вище, ніж того заслуговують, в прямих пошуках (це два різних види "рекламного продукту" від агрегатора), може використовувати "емейл-капманію" (і вибірка покупців, які купували щось віддалено "подібне" останніми місяцями отримає спам з рекламою суперменів). Ще можна запустити кампанію тимчасової знижки, яка строго регулюється агрегатором, але існує. Оскільки через агрегатор продають не лише великі бізнеси, де всякі такі суб'єктивні штуки робить програма і сигналізує агрегатору через прямі ейпіай-канали, але і сотні тисяч маленьких продавців, які кожну з цих дій виконують шляхом клацання мишкою на вебсайті або тицяння пальцем в телефонний епп, то там чорт ногу вломить. Словом, в таких масштабах все виглядає на порядки інакше, ніж у будь якого одног продавця. Я, до речі, придумав чудову аналогією: це як рахувати продажі по всіх основних українських базарах одночасно: одеський "сьомий кілометр", чернівецька "калинка", київські "озерки", як там в Хмельницькому їх базар називається... Ніби, все те ж саме, але якщо подивитися на кожне конкретний контейнер/кіоск -- дисперсія зашкалить
no subject
Date: 2023-08-31 10:55 pm (UTC)no subject
Date: 2023-08-31 11:50 pm (UTC)Але то пусте: ми можемо погоджуватися про те, які там механізми і хто пише які алгоритми, в даному випадку то байдуже. Я дивлюся на реальні продажі реальних продавців і бачу, що і наскільки продалося. Якщо факти суперечать механізмам "як воно може бути", то це не значить, що так бути не може, це значить, що може бути і інакше. Ви написали: "Відносна зміна продажів між місяцями, насправді досить мала в стабільному світі" Так от, або в США останній рік стабільно нестабільний, або ми по-різному розуміємо, що таке "мала відносна зміна" Серед усіх наіменувань (так, як я їх визначив: магазин плюс артикул) товарів, у вікно плюс-мінус 25% від минулого місяця на наступний місяць попадає лише кожен сьомий, рівно 15%. Якщо відсікти геть дрібні товари з минуломісячними продажами менше $10, то виходить більше, 21%
А вже які там алгоритми вибору, хто їх писав, і як воно все працює -- хай буде по вашому. .
no subject
Date: 2023-09-01 12:08 am (UTC)Та ви вже самі себе заплутали. Лише вчора говорили, що ви дивитесь в статистику ДО ТОГО як продавець щось побачив, отже продажу ще не було.
Це просто несолідно, якось визначиться, ви за розумних чи за красивих.
Факти механизмам не суперечать. Є штук 5 статистичних розподілень, на всі випадки життя, але графіки красиво виглядають лише коли вибірка досить велика і коли нема спотворень розподілення алгоритмом чи ще чимось.
Якщо ж принципово вибирається якась маленька вибірка, це довгий хвіст, там все що завгодно може бути.
І я вже навів приклади спотворюючих механізмів. Фактично, якщо використати якісь технології витягування даних з шумів, то ви побачите оті механізми збільшеними.
no subject
Date: 2023-09-01 03:52 am (UTC)???
Ми переловлюємо сигнал до того, як його побчив продавець. "отже продажу не було" -- це уже домисли. Чого б вон було статистикою продажів, якщо подажу не було? Згадайте, до чого це була відповідь: до того, що продавці підшаманюють звітність. От я і пишу: ми знаємо про продаж раніше, ніж продавець, він звітність отримує від нас, або у себе в статиці на нашому порталі, або, для великих продавців, на власному сервері, який цю інформацію отримав від нас через відповідні API -- швидко, може, навіть, менше секунди, але за визначенням пізніше за нас.Тому, що би там продавці зі звітністю не шаманили, ми знаємо правду.
Словом, тойво, не треба придумувати свої інтерпретації і з ними ж боротися, це називається "опудало"
При чому тут п'ять розподілів на всі випадки життя. Там все не від розподілів залежить, мені ichtuss мусив у це пальцем ткнути, бо вчора не доходило, але спотворюючі механізми тут ні при чому. Банальний наслідок того, що значна частина найменувань має продажі в одиницях штук на місяць, от і вся загадка. Я вчора пригальмував, але, дивлячись на вас -- не я один :)
no subject
Date: 2023-09-01 12:50 pm (UTC)Може ви й бугалтерію за його здаєте і податки сплачуєте?
> швидко, може, навіть, менше секунди, але за визначенням пізніше за нас
Якщо ви за його звітність в податкову подаєте, то я б погодився. То подаєте? Чи ви тільки з оцих цифр висновки робите?
no subject
Date: 2023-09-01 03:57 pm (UTC)Якби я міг сказати, де саме я працюю, даючи більше конкретики, було би простіше, але вже дав достатньо натяків, яка це фірма, але прямим текстом сказати не можу, бо, буду щирий, побоююся. Якщо вам здається, що я тут щось напридумав чи перекрутив -- пропоную відкласти сварку на після перемоги, бо краще на рівні натяків я розказати не вмію, а коли на мене несправедливо погано думають -- воно забирає душевні сили. Краще я ті душевні сили потрачу на щось корисне для всіх нас
no subject
Date: 2023-09-01 07:43 pm (UTC)З чого ви вирішили що хтось на вас погано думає?
Все що ви показали, абсолютно нормальна поведінка людини що боїться. Інше питання, що це норма для совка, аж так боятись, в світі такого нема, але ок.
І можете не виправдовуватись, маєте повне право просто сказати що не можете надати подробиць, цього абсолютно достатньо.
no subject
Date: 2023-09-01 07:51 pm (UTC)Я уже якось писав, як не в постах, то в коментах, що моє нинішнє оточення в плані комбінації ідеологізації і контролю за всім і всіма, відчувається, як совок, я його добре застав, незалежність уже в університеті зустрів. З задоволенням би кинув це місце і поглядаю набік, але поки що терплю з меркантильних причин.