Як візуалізувати байєсовську користь пристосованості для логістичної регресії


10

Для проблеми байєсівської логістичної регресії я створив задній прогнозний розподіл. Я беру вибірку з прогнозного розподілу і отримую тисячі зразків (0,1) за кожне маю спостереження. Візуалізація корисності придатності є менш ніж цікавою, наприклад:

введіть тут опис зображення

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

Чи є кращий спосіб візуалізації 23 точок даних, а також задні зразки.


Ще одна спроба:

введіть тут опис зображення


Ще одна спроба на основі паперу тут

введіть тут опис зображення


1
Тут див. Приклад, де працює вищезазначена методика передачі даних.
Cam.Davidson.Pilon

Це багато витраченого простору IMO! Ви дійсно маєте лише 3 значення (нижче 0,5, вище 0,5 та спостереження) чи це лише артефакт прикладу, який ви навели?
Andy W

Насправді це гірше: у мене 8500 0 і 1500 1. Графік просто підштовхує ці значення, щоб зробити зв'язану гістограму. Але я згоден: багато витраченого місця. Дійсно, для кожної точки даних я можу зменшити її до пропорції (ex 8500/10000) та спостереження (або 0, або 1)
Cam.Davidson.Pilon

Отже, у вас є 23 точки даних, а скільки прогнозів? І чи є ваше заднє передбачуване перекручування для нових точок даних або для 23-х, які ви використовували, щоб відповідати моделі?
ймовірністьлогічний

Ваш оновлений сюжет близький до того, що я збирався запропонувати. Що собою являє вісь x? Здається, у вас є кілька нав'язливих пунктів - що лише з 23 видається непотрібним.
Andy W

Відповіді:


5

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

Крапка

Єдине справжнє, що тут не є (можливо, це не поведінка за замовчуванням):

  • Я використовував надлишкові кодування, форму та колір, щоб розмежувати між спостережуваними значеннями відсутність дефектів та дефектів. З такою простою інформацією ставити крапку на графіку не потрібно. Крім того, у вас є проблема, коли точка знаходиться поблизу середніх значень, потрібно більше переглянути, щоб побачити, чи спостережуване значення дорівнює нулю або одиниці.
  • Я сортував графіку відповідно до спостережуваної пропорції.

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

Ця порада поширюється і на постійні спостереження. Ви можете розфарбувати / сформувати точки відповідно до того, чи є залишок від’ємним чи позитивним, а потім розмістити крапку за абсолютною (або у квадраті) залишковою. ІМО тут не потрібен, хоча через простоту спостережуваних значень.


1
Мені подобається це рішення та зміст, я просто чекаю на інші подання. Дякую Енді.
Cam.Davidson.Pilon

1
@ Cam.Davidson.Pilon - Я чекаю і на інші подання! Оскільки у вашої моделі є лише один предиктор - сортування за передбачуваною часткою дефектів було б синонімом сортування за температурою (припускаючи монотонний ефект - як це відображається на графіку). Можливо, хтось прийде разом, хоча з іншим рішенням, яке ефективно дозволяє бачити як передбачувану пропорцію, так і початкову температуру (або щось зовсім інше). Цей дисплей хороший для бачення поганих прогнозів, але не дуже гарний для таких речей, як бачення нелінійних ефектів.
Andy W

1
Я радий нагородити вас нагородою. Сортування - це ключ до його презентації, і те, що я буду використовувати, пов'язаний з попереднім дописом. Дякую!
Cam.Davidson.Pilon

4

Звичайний спосіб візуалізації придатності байєсівської логістичної регресійної моделі з одним предиктором - побудувати графік прогнозного розподілу разом із відповідними пропорціями. (Будь ласка, повідомте мене, якщо я зрозумів ваше запитання)

Приклад використання популярного набору даних Bliss.

введіть тут опис зображення

Код нижче в R:

library(mcmc)

# Beetle data

ni = c(59, 60, 62, 56, 63, 59, 62, 60) # Number of individuals
no = c(6, 13, 18, 28, 52, 53, 61, 60) # Observed successes
dose = c(1.6907, 1.7242, 1.7552, 1.7842, 1.8113, 1.8369, 1.8610, 1.8839) # dose

dat = cbind(dose,ni,no)

ns = length(dat[,1])

# Log-posterior using a uniform prior on the parameters

logpost = function(par){
var = dat[,3]*log(plogis(par[1]+par[2]*dat[,1])) + (dat[,2]-dat[,3])*log(1-plogis(par[1]+par[2]*dat[,1]))

if( par[1]>-100000 ) return( sum(var) )
else return(-Inf)
}

# Metropolis-Hastings
N = 60000

samp <- metrop(logpost, scale = .35, initial = c(-60,33), nbatch = N)

samp$accept

burnin = 10000
thinning = 50

ind = seq(burnin,N,thinning)

mu1p =   samp$batch[ , 1][ind]

mu2p =   samp$batch[ , 2][ind]


# Visual tool

points = no/ni
# Predictive dose-response curve
DRL <- function(d) return(mean(plogis(mu1p+mu2p*d)))
DRLV = Vectorize(DRL)

v <- seq(1.55,2,length.out=55)
FL = DRLV(v)

plot(v,FL,type="l",xlab="dose",ylab="response")
points(dose,points,lwd=2)

Я не хлопець R, ви можете надати сюжет / вихід?
Cam.Davidson.Pilon

@ Cam.Davidson.Pilon Вибачте, моя репутація не дозволяє мені включати сюжети. Але ідея полягає у побудові всієї кривої дози та відповіді разом із спостережуваними пропорціями.
Черберіс

Я додав картинку. Ви припускаєте іншу структуру даних, в яких ОП безпосередньо не поширюються на ваш приклад. Дані Ор був б, якби ваші ni = 23і no = 7кожен з 23 людей мають різні dose. Ви можете зробити аналогічний графік для даних ОП, (точки розміщуються на 0 або 1 на осі Y, і ви побудуєте функцію). Дивіться кілька прикладів подібних сюжетів для логістичної регресії в посиланнях, які я даю на цю відповідь .
Andy W

@AndyW Дякую за це і за роз’яснення.
Черберіс

@AndyW ах папери, на які ви посилаєтесь, дуже корисні! Мені доведеться детальніше ознайомитися з тими, щоб побачити, чи можу я їх застосувати.
Cam.Davidson.Pilon

3

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

Імітація проти спостережених відмов кільця

Код знайдений тут .


Цікаво - чи можете ви запропонувати будь-які аргументи щодо того, для чого використовувати цю техніку? Дякую, що поділились!
Cam.Davidson.Pilon

Це ймовірнісний, а не детермінований результат. Тому я шукав уявлення, яке передає кілька речей: 1) коло спостережуваних та прогнозованих подій; 2: розподіл ймовірності передбачуваних відмов; 3) розподіл ймовірності передбачуваних невдач; і 4) діапазони, де вірогідність відмови є більш ймовірними, невдача - і діапазони, де ймовірності відмов і невдачі перекриваються. Цей графік показує, що це все, що я моїм очам.
user35216

Ще кілька доповнень / уточнень: 1) температурний діапазон спостережуваних та прогнозованих подій; 5) фактичні спостережувані збої та невдачі
user35216
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.