Від Байєсівських мереж до Нейронних мереж: як багатоваріантну регресію можна перенести в мережу з декількома виходами


20

Я маю справу з Баєсовою ієрархічною лінійною моделлю , тут мережа описує її.

Графічна модель, що описує проблему

Y являє собою щоденний продаж товару в супермаркеті (спостерігається).

X - відома матриця регресорів, що включає ціни, акції, день тижня, погоду, свята.

1S - невідомий латентний рівень запасів кожного товару, який викликає найбільшу кількість проблем і який я вважаю вектором бінарних змінних, по одному для кожного продукту з вказівкою про запас і, таким чином, недоступністю товару. Навіть якщо теоретично невідомо, я оцінював це за допомогою HMM для кожного продукту, тому його слід вважати як X. Я просто вирішив відтінити його для належного формалізму.1

η - параметр змішаного ефекту для будь-якого окремого продукту, де розглянуті змішані ефекти - ціна товару, акції та запас.

b 1 b 2β - вектор фіксованих коефіцієнтів регресії, а і - вектори коефіцієнта змішаних ефектів. Одна група вказує на бренд, а інша вказує на аромат (це приклад, насправді у мене багато груп, але я тут повідомляю лише 2 для наочності)b1b2

Σ b 1 Σ b 2Ση , і це гіперпараметри над змішаними ефектами.Σb1Σb2

Оскільки у мене є дані про кількість, скажімо, що я розглядаю продажі кожного продукту так, як Пуассон розподіляється умовно на регресорах (навіть якщо для деяких продуктів лінійне наближення має місце, а для інших - нульова завищена модель). У такому випадку я маю на увазі продукт ( це лише для того, хто зацікавлений у самій байєсівській моделі, перейдіть до питання, якщо вам це нецікаво чи не тривіально :) ):Y

ΣηIW(α0,γ0)

Σb1IW(α1,γ1)

α 0 , γ 0 , α 1 , γ 1 , α 2 , γ 2Σb2IW(α2,γ2) , .α0,γ0,α1,γ1,α2,γ2

ηN(0,Ση)

b1N(0,Σb1)

b2N(0,Σb2)

Σ ββN(0,Σβ) , відомі.Σβ

λtijk=βXti+ηiXppsti+b1jZtj+b2kZtk ,

YtijkPoi(exp(λtijk))

j 1 , , m 1 k 1 , , m 2i1,,N , ,j1,,m1k1,,m2

X p p s i I W Z i Z i = X i σ i j i jZi матриця змішаних ефектів для 2 груп, зазначенням ціни, просування та запасу продукту, що розглядається. вказує зворотні розподіли Вішарта, зазвичай використовувані для коваріаційних матриць нормальних багатоваріантних пріорів. Але тут це не важливо. Прикладом можливого може бути матриця всіх цін, або ми можемо навіть сказати . Що стосується пріорів для матриці дисперсії та коваріації зі змішаними ефектами, я б просто спробував зберегти кореляцію між записами, щоб був позитивним, якщо і є продуктами однієї марки або будь-якої з той самий аромат. XppsiIWZiZi=Xiσijij

Інтуїція, що стоїть за цією моделлю, полягала б у тому, що продажі даного товару залежать від його ціни, його доступності чи ні, а також від цін на всі інші товари та запаси всіх інших товарів. Оскільки я не хочу мати однакову модель (читати: однакова крива регресії) для всіх коефіцієнтів, я ввів змішані ефекти, які експлуатують деякі групи, які я маю в своїх даних, шляхом обміну параметрами.

Мої запитання:

  1. Чи є спосіб перенести цю модель в архітектуру нейронної мережі? Я знаю, що існує багато питань, які шукають взаємозв'язок між байєсівською мережею, марківськими випадковими полями, баєсовою ієрархічною моделлю та нейронними мережами, але я не знайшов нічого, що переходить від байєсівської ієрархічної моделі до нейронних мереж. Я задаю питання щодо нейронних мереж, оскільки, маючи велику розмірність своєї проблеми (врахуйте, що у мене 340 продуктів), оцінка параметрів через MCMC займає тижні (я спробував лише 20 продуктів, що працюють у паралельних ланцюгах у runJags, і це зайняло дні часу) . Але я не хочу ходити випадково і просто надавати дані нейронній мережі як чорний ящик. Я хотів би використовувати структуру залежності / незалежності моєї мережі.

Тут я просто замальовував нейронну мережу. Як бачите, регресори ( та вказують відповідно ціну та запас продукту ) вгорі приписані до прихованого шару, як і ті специфічні для товару (Тут я розглянув ціни та запаси). S i i PiSii(Сині та чорні краї не мають особливого значення. Це було лише для того, щоб зробити фігуру більш чіткою). Крім того, та можуть бути сильно корельованими, тоді якY 1 Y 2 Y 3Y1Y2Y3може бути зовсім іншим продуктом (подумайте про два апельсинові соки та червоне вино), але я не використовую цю інформацію в нейронних мережах. Цікаво, чи використовується інформація про групування лише для вагової ініціалізації чи чи можна підлаштувати мережу до проблеми.

ляльковий приклад нейронної сітки

Редагувати, моя ідея:

Можлива ініціалізація?

Моя ідея була б приблизно такою: як і раніше, і є корельованими продуктами, тоді як - абсолютно інша. Знаючи це апріорі, я роблю 2 речі:Y 2 Y 3Y1Y2Y3

  1. Я попередньо виділяю деякі нейрони в прихованому шарі до будь-якої групи, в якій я маю, в цьому випадку у мене є 2 групи {( ), ( )}.Y 3Y1,Y2Y3
  2. Я ініціалізую великі ваги між входами та виділеними вузлами (жирними краями), і, звичайно, будую інші приховані вузли, щоб зафіксувати решту «випадковостей» у даних.

Заздалегідь дякую за допомогу


@Tomasso Guerrini тут можлива відповідь для вас: stats.stackexchange.com/questions/4498/…
Антон Данилов

дякую @AntonDanilov, на жаль, прийнята відповідь говорить: "Хоча нейронні мережі мають" графіки ", вони, як правило, не кодують інформацію про залежність, а вузли не представляють випадкових змінних": /
Tommaso Guerrini

1
Ви пробували Стен , чи це неможливо для вашої проблеми? Гамільтонівський Монте-Карло може бути на порядок швидшим, ніж вибірки Гіббса, і добре масштабує сотні (а то й тисячі) змінних.
lacerbi

1
Чи намагалися ви поставити те саме питання (ів), що їх стосується списку розсилки користувачів Stan ? Вони, як правило, надзвичайно корисні з технічних аспектів, щоб зробити модельну роботу. Наприклад, можливо, що проблеми у вашому випадку можна вирішити за допомогою кращої параметризації. ( Гамільтонський Монте-Карло повинен змішуватися набагато швидше, ніж вибірки Гіббса.)
lacerbi

1
Напевно, краще сказати, що я спамував цей список розсилки .. Дуже дякую Луїджі .. До речі, я опинився в тій ситуації, коли мені більше немає часу, щоб розібратися в проблемах, як слід, оскільки у мене вступний термін. Схоже, STAN - це чудовий інструмент, але крива навчання трохи крута, щоб реально реалізувати свої неймовірні показники (на сьогоднішній день я зрозумів її прискорення wrt JAGS)
Tommaso Guerrini

Відповіді:


1

Для запису я не розглядаю це як відповідь, а просто довгий коментар! PDE (рівняння тепла), яке використовується для моделювання потоку тепла через металевий стрижень, також може використовуватися для моделювання варіантів ціноутворення. Ніхто, про кого я знаю, ніколи не намагався запропонувати зв’язок між ціноутворенням варіантів та потоком тепла як такий. Я думаю, що цитата із посилання Данилова говорить те саме. І Байєсові графіки, і Нейрові мережі використовують мову графіків, щоб виразити співвідношення між різними внутрішніми фрагментами. Однак графіки Байєса розповідають про кореляційну структуру вхідних змінних, а графік нейронної мережі говорить про те, як побудувати функцію прогнозування з вхідних змінних. Це дуже різні речі.
Різні методи, які використовуються в DL, намагаються "обрати" найважливіші змінні, але це емпірична проблема. Він також не розповідає жодної про структуру кореляції ні всього набору змінних, ні решти змінних. Це просто говорить про те, що збережені змінні стануть найкращими для прогнозування. Наприклад, якщо дивитись на нейронні мережі, то буде поведено до німецького набору даних про кредити, який має, якщо я правильно пригадую, 2000 точок даних та 5 залежних змінних. За допомогою проб і помилок, я думаю, ви виявите, що сітка з лише 1 прихованим шаром та використанням лише двох змінних дає найкращі результати для прогнозування. Однак це можна виявити лише побудувавши всі моделі та протестуючи їх на незалежному наборі тестування.


Я не можу порівняти вас із застосуванням однієї і тієї ж моделі на різних даних: тут дані однакові, а моделі різні, не навпаки. Крім того, я не намагаюся зробити висновок про кореляційну структуру моїх змінних за допомогою нейронної сітки, що вже добре досягається завдяки байєсівському висновку плакатів. Граф був просто картина , що відбувається в ієрархічній моделі, так що я не розумію «мова графів» речі (Тим НЕ менше , я , можливо, увів в оману вас з назвою, але мені потрібно було помітне один: D)
Томмазо GUERRINI

І, можливо, я не розумію вашого питання. Я все ще думаю, що справа полягає в тому, що спосіб створення країв у двох структурах графа не має нічого спільного. Можна було б просто визначити нейронну сітку із заданим набором ребер та ваг, але немає підстав думати, що така сітка буде або точною, або корисною. Основою створення нейронної мережі є використання чогось подібного для зворотного розповсюдження, щоб дані визначали «правильні» ваги.
Мех

"Графік повинен був просто зобразити те, що відбувається в ієрархічній моделі". Ми погоджуємось, що в одному випадку ми визначаємо структуру коваріації, і модель дуже добре інтерпретується астеріорі, тоді як в іншому ми дозволяємо градієнтному спуску виконувати роботу, і навіть якщо не інтерпретується, це зазвичай (як у моєму випадку) призводить до хороших показників. Моє запитання: чи є спосіб дотримати інтерпретацію, не втрачаючи при цьому прогнозування продуктивності? Ось чому я запитав це на стеці, і тому я пропоную цю ідею в редагуванні, я шукаю ідеї. Сподіваюся, тепер вам це зрозуміло.
Томмазо Герріні

Не можна довести негатив, тому я не можу остаточно сказати, що немає зв'язку між графами Байесівських мереж та графіками нейронних мереж. Я можу сказати, що я не знаю про такий зв'язок і що я глибоко скептично ставлюсь до будь-якого зв'язку. Хоча можна використовувати структуру графіків байєсівської мережі, щоб надати структуру графа нейронної мережі, з точки зору нейронної мережі це не здається розумним. Наразі у мене немає часу опрацювати деталі, але, як продуманий експеримент, уявіть набір даних, де незалежні змінні були всі статистично
мені

y=xi+zizi=A×σ1(xi)σziприблизно дорівнює нулю. Але вони повинні бути частиною будь-якої хорошої моделі.
meh
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.