Как визуализировать байесовскую доброту, пригодную для логистической регрессии


10

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

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

На этом графике показаны 10 000 образцов + наблюдаемая исходная точка (слева можно разглядеть красную линию: да, это наблюдение). Проблема в том, что этот график вряд ли информативен, и у меня будет 23 из них, по одному на каждую точку данных.

Есть ли лучший способ визуализировать 23 точки данных плюс задние образцы.


Еще одна попытка:

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


Еще одна попытка на основе бумаги здесь

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


1
Смотрите здесь пример, где работает вышеупомянутый метод data-vis.
Cam.Davidson.Pilon

Это много пустого пространства ИМО! У вас действительно есть только 3 значения (ниже 0,5, выше 0,5 и наблюдения) или это просто артефакт из приведенного вами примера?
Энди W

На самом деле все хуже: у меня 8500 0 и 1500 1. График просто выдвигает эти значения, чтобы создать связанную гистограмму. Но я согласен: много потерянного пространства. Действительно, для каждой точки данных я могу уменьшить ее до пропорции (например, 8500/10000) и наблюдения (либо 0, либо 1)
Cam.Davidson.Pilon

Итак, у вас есть 23 точки данных, а сколько предикторов? И является ли ваше апостериорное предиктивное искажение для новых точек данных или для 23, которые вы использовали, чтобы соответствовать модели?
вероятностная

Ваш обновленный сюжет близок к тому, что я собирался предложить. Что представляет собой ось X, хотя? Похоже, у вас есть некоторые наложенные очки, которые с 23 только кажутся ненужными.
Энди В.

Ответы:


5

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

Точечный участок

Единственная реальная вещь, которую здесь не нужно (это, возможно, не поведение по умолчанию):

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

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

Этот совет распространяется и на постоянные наблюдения. Вы можете раскрасить / сформировать точки в зависимости от того, является ли остаток отрицательным или положительным, а затем изменить размер точки в соответствии с абсолютным (или квадратом) остатком. Это ИМО не нужно здесь, хотя из-за простоты наблюдаемых значений.


1
Мне нравится это решение и контент, я просто жду других заявок. Спасибо Энди.
Cam.Davidson.Pilon

1
@ Cam.Davidson.Pilon - Я жду и других заявок! Поскольку ваша модель имеет только один предиктор - сортировка по прогнозируемой доле дефектов будет синонимична сортировке по температуре (при условии монотонного эффекта - как это показано на вашем графике). Возможно, кто-то найдет другое решение, которое эффективно позволяет увидеть как прогнозируемую пропорцию, так и исходную температуру (или что-то совершенно другое). Этот дисплей хорош для просмотра плохих прогнозов, но не очень хорош для таких вещей, как просмотр нелинейных эффектов.
Энди 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, и вы строите график функции). Посмотрите некоторые примеры подобных графиков для логистической регрессии в ссылках, которые я даю на этот ответ .
Энди 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.