Функції витрат для контекстних бандитів


14

Я використовую vowpal wabbit для вирішення контекстно-бандитської проблеми . Я показую рекламу користувачам, і я маю досить небагато інформації про контекст, у якому відображається реклама (наприклад, хто такий користувач, на якому веб-сайті вони перебувають тощо). Це, здається, є досить класичною контекстуальною бандитською проблемою, як описав Джон Ленгфорд .

У моїй ситуації є 2 основні відповіді, які користувач може мати на оголошення: натискання (можливо, кілька разів) або не натискання. У мене є близько 1000 оголошень, між якими я можу вибрати. Vowpal Wabbit вимагає змінної цілі у вигляді action:cost:probabilityдля кожного контексту. У моєму випадку actionі probabilityїх легко зрозуміти: чи actionє оголошення, яке я вибрав для показу, іprobability є ймовірність обрати це оголошення, враховуючи мою діючу політику щодо показу оголошень.

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

Деякі ідеї у мене були:

  1. вартість = -1 * знак (кліки) + 0 * (не натиснуто)
  2. вартість = -1 * кліків + 0 * (не натиснуто)
  3. вартість = -1 * знак (кліки) + 0,01 * (не натиснуто)
  4. вартість = -1 * кліків + 0,01 * (не натиснуто)

У випадку вектора дії (0, 1, 5, 0)витрати на ці 4 функції будуть:

  1. (0, -1, -1, 0)
  2. (0, -1, -5, 0)
  3. (0.01, -1, -1, 0.01)
  4. (0.01, -1, -5, 0.01)

Очевидно, що існує багато інших способів представити це, clicks=goodі no clicks=bad.взагалі, як я можу моделювати витрати на контекстуальні проблеми з бандитами у ваббі vowpal? Чи добре представляти вигоди як негативні витрати, або я повинен змінити масштаб все, щоб усі витрати були позитивними? Чи нормально, щоб відносно нейтральні дії мали нульову вартість, або я повинен дати їм невелику позитивну вартість, щоб підштовхнути модель до позитивних дій?


1
Мене бентежить "можливі дві дії: користувач може натиснути на оголошення або користувач не може натиснути на нього". Якщо ви намагаєтеся вирішити, яке оголошення потрібно показувати, чи не повинні реклами діяти?
альт

1
@alto: Я думаю, що слід сказати, що "є 2 можливих відповіді, які ми можемо записати для користувача". Це має більше сенсу?
Зак

Я не впевнений, що це насправді є контекстною бандитською проблемою, тому що я не впевнений, яка ваша мета тут. Вирішення контекстуальної бандитської проблеми "намагається оптимізувати політику, яка вибирає дії з мінімальними витратами для спостережуваних контекстів". Ви намагаєтеся розібратися, скільки оголошень для показу? Намагаєтеся моделювати поведінку споживачів? Щось ще?
shadowtalker

1
@ssdecontrol Я намагаюся зрозуміти, яке оголошення потрібно показувати, враховуючи контекст. Це часто використовувана прикладна проблема для контекстних бандитів, але я отримую дуже погані результати від контекстуального бандитського вирішувача vowpal-wabbit. Мені було цікаво, чи, можливо, є інший спосіб, який я повинен визначати "вартість" кліку чи не натискання на оголошення.
Зак

1
@nik Я ніколи не зрозумів цього, а замість цього поїхав із звичайною багатокласовою моделлю від VW.
Зак

Відповіді:


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.