Част 1: Иконометричен подход

Тази поредица разглежда моята магистърска дисертация, която беше не само първият ми проект за машинно обучение от край до край, но също така беше и мост между моето иконометрично и машинно обучение. Така че има много място за подобряване, но исках да го запиша като архив, преди напълно да забравя какво съм написал (вече минаха повече от 1,5 години). Ако желаете да погледнете, пълният текст е достъпен на ResearchGate. Тази история обяснява как иконометричният подход може да предскаже поведението на фирмите при коригиране на цените, последвано от Част 2 — Подходът на машинното обучение.

Съдържание

  1. Кратко въведение в механизма за коригиране на цената
  2. Описание на данните
  3. Иконометричен подход (+ малко ML)
  4. Резултати
  5. Следващи стъпки

Кратко въведение в механизма за коригиране на цената

Този проект търси начин за прогнозиране на времето за корекция на цената. Има 3 основни теории. ценообразуване в зависимост от времето, ценообразуване в зависимост от състоянието и смес от тези две теории. Зависимият от времето модел на ценообразуване твърди, че буквално основният фактор за промяна на цените е времето, а зависимият от състоянието модел на ценообразуване обяснява, че промяната на цената се случва, когато текущата цена е извън оптималната цена, а очакваната печалба е положителна, когато фирмата коригира цена, включително разходи за меню (разходи за корекция).

Когато научих за тези теории, си помислих, че това е типичен проблем с машинното обучение, тъй като те звучат като предсказуеми чрез изучаване на исторически модел на корекция на цените, особено това е онлайн супермаркет, където цената на корекцията е доста по-евтина, отколкото в „офлайн“ супермаркет. Така ми хрумна идеята за тази дисертация.

Описание на данните

Тази дисертация използва набора от данни от Cavallo (2018) [1]. Този набор от данни включва цените на продуктите на онлайн супермаркетите в Америка и някои страни от Южна Америка. Данните са събрани от октомври 2007 г. до август 2010 г. и има общо около 40 милиона наблюдения. Ето данни, някои от визуализациите и инженеринг на функции. За почистване на данни, инженеринг на функции и иконометрични изследвания използвах R и писах на Python за частта ML.

Първо, нека да разгледаме структурата на данните. В набора от данни има 15 колони, но има някои дублирани колони. Използвах ID, дата, пълна цена и категория от оригиналния набор от данни в моята дисертация.

За да проведем (контролирано) изследване на машинно обучение/иконометрия (регресия), трябва да зададем целева променлива. В моя случай, тъй като бих искал да знам дали можем да предвидим „кога цената на артикула ще бъде коригирана“, затова създадох двоична променлива, която показва, че цената е коригирана или е останала същата като предишния ден, като следвам.

# making price adjustment variable
library(dplyr)
df <- df %>% mutate(target = ifelse(id == lag(id) & fullprice != lag(fullprice),1,0) 

След това създаде някои от тези основни функции, като ден от седмицата, месец от годината, дни от последната корекция на цената и т.н., главно зависещи от времето функции. Следва разпределение на целеви променливи в някои от тези функции.

Това са някои от визуализациите на вероятността от корекция на цените спрямо категоричните характеристики. Червените линии показват средната стойност на функцията в графиките. Човек може да различи някои модели от тези визуализации, например цената на артикул е по-вероятно да бъде коригирана в понеделник, петък и събота през седмицата, което е в съответствие с нашата интуиция (понеделник е началото на седмицата, а петък и събота са началото на уикенда).

В този набор от данни има класов дисбаланс. Цените бяха коригирани само в 3,8% от случаите. Това трябва да се третира по подходящ начин, тъй като линейните модели предполагат, че целевата променлива е равномерно разпределена, в противен случай моделът не би могъл да предвиди добре.

Иконометричен подход (+ малко ML)

Основният фокус на иконометричния анализ е да се намери причинно-следствената връзка между зависимите променливи и независимата променлива. Често статистическите заключения са основен интерес в тази дисциплина. Също така иконометричните изследвания се занимават със сравнително малки набори от данни и моделът трябва да е по-опростен, докато анализът на машинното обучение използва по-големи набори от данни и моделът често е по-сложен, за да подобри своята сила за прогнозиране.

Тази дисертация използва логистична регресия за прогнозиране на корекцията на цените като модел за сравнение. За да разбере кои са най-важните характеристики, за да се обясни поведението на фирмата при корекция на цените, тази дисертация използва алгоритми за избор на характеристики (LASOO и Elastic net) за сравнение. Еластичната мрежа е линейна комбинация от L1 и L2 регресионни модели, която преодолява недостатъците на LASSO и Ridge регресията. Това прави еластична мрежа за отчитане на корелацията между предикторите. Също така еластичната мрежа има по-малко строго ограничение, поради което по-малко коефициенти се свиват до нула в сравнение с LASSO (за тези регресионни модели, Savan Nahar има страхотна публикация).

Както споменах по-горе, има сериозен класов дисбаланс в този набор от данни. Има няколко начина да се справите с това, като методите за повторно вземане на проби, които използвах в частта за ML. Тази дисертация в иконометричната част използва наказателната логистична регресия на Фърт, която може да включва небалансирания набор от данни. Моделът е изразен по-долу.

където |I(β)| е информационна матрица, оценена на β. Тъй като този модел включва компонент на свиване, коефициентите обикновено са по-малки като абсолютна стойност в сравнение с тези в нормална логистична регресия. Тази дисертация използва „logistfпакет за изчислението. Тази дисертация също така тества дали характеристиките са информативни чрез прилагане на теста на Wald. Като ограничение на паметта, иконометричните изследвания бяха проведени чрез използване на седмични данни, които бяха обобщени от ежедневни данни.

Резултати

Ето някои резултати от референтната логистична регресия. В скобите по-долу коефициентите показват стандартните грешки. ∗∗∗ означава значимост при 0%, ∗∗ при 0,1%, и ∗ при 5%, . на 10%.

Тестът на Wald е значим при 0%, което означава, че всички функции са информативни в този модел. Променливата за продължителност (дни от последната корекция) е отрицателна. Това показва, че е по-малко вероятно да се случи промяна на цената за всеки допълнителен ден, но влиянието на допълнителната седмица е малко. Коефициентите на ценовата променлива са доста близки до нула, но са отрицателни. От този резултат може да се анализира, че независимо колко скъп е продуктът, самата цена има доста малко влияние върху корекцията на цената. Този резултат е противоречив, тъй като обикновено по-скъпите продукти имат еластично търсене, което означава, че потребителите са по-чувствителни към скъпите продукти. Фирмите трябва да вземат предвид търсенето за максимизиране на печалбата, което показва, че фирмата трябва да бъде по-внимателна към определянето на цената на скъп продукт. Въпреки това, този резултат показва, че цената е сравнително по-малко влияние за оценка на промените в цената.

Сега тази дисертация използва LASSO и Elastic net, за да избере някои от най-важните характеристики. Като характеристика на LASSO, той сви коефициентите си до нула повече от еластичната мрежа. След избрани функции приложих наказателна логистична регресия на Firth с тези функции. Следват резултатите от тях.

Моделите дават доста сходни резултати с референтния логистичен регресионен модел. Тестовете на Wald са значими при 0% и за двата модела. И двата модела откриват, че ценовата променлива има малка сила да предвиди корекция на цената. Също така променливата за продължителност показва отрицателен, но малък ефект върху корекцията на цената за допълнителен ден. Въпреки че имат по-малка сила на прогнозиране, LASSO и еластичната мрежа показват, че тези две променливи са най-важните променливи в моделите. Второ, това проучване потвърждава, че има няколко категории продукти, които имат гъвкава ценова настройка, а други са непостоянни.

Следващи стъпки

Тази дисертация/публикация в блог изследва поведението на фирмите при коригиране на цените чрез използване на иконометричен подход (+ малко ML). Поведението на фирмата за коригиране на цените често е свързано с процента на инфлация, поради което следващата итерация може да включва тази информация за икономическия индекс като функция, така че моделът да може да включва и функцията на модела, зависим от състоянието. Освен това, ако имената на категориите са налични, може да се проучи подробен категориален анализ. Например, създаване на подизвадка въз основа на нейните подобни категории и може да се наблюдава как промяната в цената на други продукти се отразява на продукт. Също така изследването на влиянието на добавките и заместителите би било доста интересно. Освен това се посочва, че наказаната логистична регресия на Firth все още има отклонение, а Elgmati et al. (2015)[2]; Puhr и др. (2017)[3] предлага коригиране на санкционираната логистична регресия на Firth, за да има безпристрастен оценител. Може да е интересно да се използва коригирана наказателна логистична регресия на Firth.

Увийте

В този пост,

  • накратко представи поведението на фирмите при коригиране на цените
  • премина през дадения набор от данни, включително някои визуализации
  • показа традиционен иконометричен подход и смес от машинно обучение и иконометричен подход (еластична мрежа и санкционирана логистична регресия на Firth)
  • прегледа резултатите и последиците

В следващата история ще разгледам как проведох проучване за машинно обучение по тази тема, включително борба с небалансирания набор от данни и избор на подходящи показатели за оценка.

Ако сте намерили историята за полезна, моля, щракнете върху бутона 👍 :) Освен това, ако имате някакви въпроси, отзиви или буквално каквото и да било, не се колебайте да оставите коментар по-долу. Наистина бих го оценил. Също така можете да ме намерите в LinkedIn.

Препратки

[1] Cavallo (2018) „Изчерпани данни и лепкави цени“. Преглед на икономиката и статистиката, бр. 100, p.105–119

[2] Elgmati, E., Fiaccone, R.L., Henderson, R. и Matthews, J.N. (2015). Наказателна логистична регресия и динамично прогнозиране за данни за повтарящи се събития в дискретно време. Анализ на данните за целия живот, 21 (4): 542–560.

[3] Puhr, R., Heinze, G., Nold, M., Lusa, L. и Geroldinger, A. (2017). Логистичната регресия на Фърт с редки събития: точни оценки и прогнози за ефекта? Статистика в медицината, 36 (14): 2302–2317.