Mam do czynienia z bayesowskim hierarchicznym modelem liniowym , tutaj sieć go opisująca.
oznacza dzienną sprzedaż produktu w supermarkecie (zaobserwowano).
jest znaną matrycą regresorów, w tym cen, promocji, dnia tygodnia, pogody i świąt.
to nieznany ukryty poziom zapasów każdego produktu, który powoduje najwięcej problemów i który uważam za wektor zmiennych binarnych, po jednym dla każdego produktu z wskazującym na zapasy, a więc niedostępność produktu. Nawet jeśli teoretycznie nie jestem znany, oszacowałem to za pomocą HMM dla każdego produktu, więc należy to uznać za znane jako X. Właśnie zdecydowałem się odhaczyć go dla właściwego formalizmu.
jest parametrem mieszanego efektu dla każdego pojedynczego produktu, w którym uwzględniane są mieszane efekty: cena produktu, promocje i wyprzedaż.
b 1 jest wektorem stałych współczynników regresji, podczas gdy i są wektorami współczynnika efektów mieszanych. Jedna grupa wskazuje markę, a druga smak (jest to przykład, w rzeczywistości mam wiele grup, ale tutaj zgłaszam tylko 2 dla jasności).
Σ b 1 , i są hiperparametrami w stosunku do efektów mieszanych.
Ponieważ mam dane zliczania, powiedzmy, że każdą sprzedaż produktu traktuję jako dystrybucję Poissona zależną od regresorów (nawet jeśli dla niektórych produktów obowiązuje przybliżenie liniowe, a dla innych model z napompowaniem zerowym jest lepszy). W takim przypadku miałbym produkt ( tylko dla tych, którzy są zainteresowani samym modelem bayesowskim, przejdź do pytania, jeśli uznasz go za nieciekawy lub nietrywialny :) ):
α 0 , γ 0 , α 1 , γ 1 , znane.
Σ β , znany.
,
j ∈ 1 , … , m 1 k ∈ , ,
Macierz efektów mieszanych dla 2 grup, wskazująca cenę, promocję i zapasy rozpatrywanego produktu. wskazuje na odwrotne rozkłady Wishart, zwykle stosowane w macierzach kowariancji normalnych pierwiastków wielowymiarowych. Ale to nie jest ważne tutaj. Przykładem możliwej może być matryca wszystkich cen, lub możemy nawet powiedzieć . Jeśli chodzi o priorytety dla macierzy mieszanych efektów wariancji-kowariancji, po prostu starałbym się zachować korelację między wpisami, aby byłby dodatni, gdyby i były produktami tej samej marki lub któregoś z ten sam smak.
Intuicja tego modelu polegałaby na tym, że sprzedaż danego produktu zależy od jego ceny, jego dostępności lub nie, ale także od cen wszystkich innych produktów i zapasów wszystkich innych produktów. Ponieważ nie chcę mieć tego samego modelu (czytaj: ta sama krzywa regresji) dla wszystkich współczynników, wprowadziłem mieszane efekty, które wykorzystują niektóre grupy, które mam w moich danych, poprzez współdzielenie parametrów.
Moje pytania to:
- Czy istnieje sposób na przeniesienie tego modelu do architektury sieci neuronowej? Wiem, że istnieje wiele pytań dotyczących związków między siecią bayesowską, losowymi polami markowa, bayesowskimi modelami hierarchicznymi i sieciami neuronowymi, ale nie znalazłem niczego, co przechodzi od bayesowskiego modelu hierarchicznego do sieci neuronowych. Zadaję pytanie o sieci neuronowe, ponieważ mając dużą wymiarowość mojego problemu (uważam, że mam 340 produktów), oszacowanie parametrów przez MCMC zajmuje tygodnie (próbowałem tylko dla 20 produktów z równoległymi łańcuchami w runJags i zajęło to dni) . Ale nie chcę wybierać losowo i po prostu przekazywać dane do sieci neuronowej jako czarna skrzynka. Chciałbym wykorzystać strukturę zależności / niezależności mojej sieci.
Tutaj właśnie naszkicowałem sieć neuronową. Jak widać, regresory ( i wskazują odpowiednio cenę i zapasy produktu ) u góry są wprowadzane do ukrytej warstwy, podobnie jak te specyficzne dla produktu (tutaj rozważałem ceny i zapasy). (Niebieskie i czarne krawędzie nie mają szczególnego znaczenia, chodziło tylko o to, aby rysunek był wyraźniejszy). Ponadto i mogą być silnie skorelowane podczasmoże być zupełnie innym produktem (pomyśl o 2 sokach pomarańczowych i czerwonym winie), ale nie używam tych informacji w sieciach neuronowych. Zastanawiam się, czy informacje o grupowaniu są wykorzystywane tylko do inicjalizacji wagi, czy też można dostosować sieć do problemu.
Edytuj, mój pomysł:
Mój pomysł byłby taki: jak poprzednio, i są produktami skorelowanymi, podczas gdy jest zupełnie inny. Wiedząc o tym a priori, robię 2 rzeczy:
- niektóre neurony w ukrytej warstwie do dowolnej grupy, którą mam, w tym przypadku mam 2 grupy {( ), ( )}.
- Inicjuję wysokie wagi między wejściami a przydzielonymi węzłami (pogrubione krawędzie) i oczywiście buduję inne ukryte węzły, aby uchwycić pozostałą „losowość” danych.
Z góry dziękuję za Twoją pomoc