Форум врачей-аспирантов

Здравствуйте, гость ( Вход | Регистрация )

 
Добавить ответ в эту темуОткрыть тему
> Шкала по модели логистической регрессии
Tatyana_
сообщение 4.05.2007 - 09:21
Сообщение #1





Группа: Пользователи
Сообщений: 4
Регистрация: 4.05.2007
Пользователь №: 4082



Здравствуйте! Подскажите, пожалуйста, как, имея построенную модель логистической регрессии, построить шкалу разбивки пациентов на группы относительно риска наличия заболевания? Например, у меня есть признаки: индекс массы тела, возраст, наличие камней и т.д. Данные бинарные и непрерывные. По этим данным получила модель, которая позволяет классифицировать пациентов, но хотелось бы для каждого нового пациента не подставлять конкретные значения в уравнение логистической регрессии, а просто смотреть, ага возраст от 18 до 30, приписываем пациенту 3 балла, > 60 - 6 баллов, и так по каждому признаку. А потом по полученной сумме баллов определять риск наличия заболевания.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 8.05.2007 - 16:42
Сообщение #2





Группа: Пользователи
Сообщений: 1114
Регистрация: 10.04.2007
Пользователь №: 4040



Если возможно, опишите подробнее модель.


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Tatyana_
сообщение 8.05.2007 - 20:46
Сообщение #3





Группа: Пользователи
Сообщений: 4
Регистрация: 4.05.2007
Пользователь №: 4082



Модель следующая:
ВероятностьНаличияЗаболевания = 1 / (1 + exp(-(а0+а1*х1+а2*х2+а3*х3+...+а7*х7))), где вероятность наличия заболевания меняется от 0 до 1, если значение вероятности больше некоторой порговой величины, то принимаем гипотезу о наличии заболевания.
х1,...,х7 - признаки: возраст, индекс массы тела, размеры печени и т.д.
а1,...,а7 - коэффициенты, определяющие вклад каждого признака в построенную модель
Таким образом, приходит новый пациент, мы подставляем все значения х1,...,х7 в данное уравнение и получаем вероятность наличия заболевания. Но хотелось бы упростить процесс подсчета, введя вспомогательную шкалу. В статьях встречала, что на базе модели логистической регрессии строится дискриминантная шкала, но как это делается, к сожалению, не могу нигде найти. Может, порекомендуете, где почитать?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
плав
сообщение 9.05.2007 - 13:13
Сообщение #4





Группа: Пользователи
Сообщений: 1013
Регистрация: 4.10.2006
Пользователь №: 1933



1) Подставляя значения в приведенную формулу Вы получаете не вероятности наличия заболевания а некую величину, ей пропорциональную. Соответственно, используя эту формулу Вы можете только сделать шкалу классификации (т.е. пациент скорее всего боле, пациент, скорее всего, здоров). Если это Вас устраивает, сделайте вначала шкалу, как Вы описали в первом посте (т.е. перекодируйте возраст, пол, размеры печени, индекс массы тела в баллы). Затем сделайте логистическую регрессию - полученные коэффициенты умножьте на значения баллов и получите нужные значения, которые можно суммировать (т.е. коэффициент для возраста 40-49 а=2, баллы для этой группы Вы сделали 1, соответственно для возраста 40-49 - прибавить 2*1 = 2 балла). Далее надо найти точку разделения (какая дает наилучшее разделение одной и другой групп и для нее определить пограничное значение баллов). Например, точка разделения была y=0,5. Соответственно, пограничное значение ln(1/y-1)=0. Однако, подобная шкала потребует добавления постоянного количества баллов после расчетов (а0). Если а0=1, то пограничное значение будет равно 1 (обратите только внимание на знаки, я исходил из формулы, написанной Вами, ряд программ не вставляют автоматом минус перед скобкой в выражении (а0+а1*х1+...)). Тогда, если сумма больше 1, пациент скорее здоров, если меньше - скорее болен.
2) если нужна именно вероятность - надо делать пуассоновскую регрессию. Подготовка данных примерно та же, что и в случае логистической. однако надо иметь по одной переменной для каждой группы (т.е. age40 - для возраста 40-49 лет, age50 для 50-59 и т.д. Все переменные будут иметь значения 0 или 1). Детали по использованию регрессии в разных системах http://www.indiana.edu/~statmath/stat/all/count/count2.html, обсуждение сравнения разных методов http://www.biomedcentral.com/1471-2288/3/21. Хорошие примеры того, как рассчитать относительные риски с помощью SAS приведены в статье http://aje.oxfordjournals.org/cgi/content/full/162/3/199 (или тут http://www.ats.ucla.edu/STAT/SAS/faq/relative_risk.htm). Зная RR можно легко оценить вероятность наличия заболевания в любой группе, если известна распространенность в контроле (исходной группе). На самом деле, постоянный член уравнения (intercept) в модели и есть распространенность (точнее распространенность - вероятность наличия заболевания - равна exp(intercept)) в нулевой группе.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Tatyana_
сообщение 9.05.2007 - 22:37
Сообщение #5





Группа: Пользователи
Сообщений: 4
Регистрация: 4.05.2007
Пользователь №: 4082



Спасибо большое!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 10.05.2007 - 14:04
Сообщение #6





Группа: Пользователи
Сообщений: 1114
Регистрация: 10.04.2007
Пользователь №: 4040



Татьяна, если не секрет, какое качество классификации Вам удалось получить с помощью логистической регрессии?
Думаю, в Вашей задаче можно использовать одну из разновидностей дискриминантного анализа. Можно попробовать нейронные сети.
Вот источники:
Гайдышев И. Анализ и обработка данных: специальный справочник. - СПб: Питер, 2001.
Дюк В. Обработка данных на ПК в примерах. - СПб: Питер, 1997.
Факторный, дискриминантный и кластерный анализ / Дж.О. Ким, Ч.У. Мюллер, У.Р. Клекка и др. - М.: Финансы и статистика, 1989.
О логистической регрессии см. http://www.basegroup.ru/regression/logistic.htm.


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Tatyana_
сообщение 10.05.2007 - 23:17
Сообщение #7





Группа: Пользователи
Сообщений: 4
Регистрация: 4.05.2007
Пользователь №: 4082



Качество классификации чуть меньше 80%. Согласна, что нейронные сети могут качественно решать подобные задачи, но для этого необходимо правильно выбрать архитектуру сети, что бывает достаточно сложно. Кроме того, стояла задача именно построения шкалы. Может я, конечно, ошибаюсь, но вроде бы нейронная сетка не позволяет получить аналитический вид функции, с помощью которой проводится классификация и как тогда на ее основе строить шкалу? От дискриминантного анализа я далека, были правда мысли его использвать, но смутило ограничение, что данные должны быть нормально распределенными, а данные, к сожалению, не имеют нормального распределения и объем выборки пациентов не такой большой, чтобы пренебречь этим ограничением. Спасибо за советы! А изучение логит-регрессии я как раз и начинала с сайта basegroup smile.gif
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
плав
сообщение 11.05.2007 - 17:50
Сообщение #8





Группа: Пользователи
Сообщений: 1013
Регистрация: 4.10.2006
Пользователь №: 1933



Если задумываться о нейронных сетях или вообще каких-либо методах разработки данных (data mining) не следует забывать, что они очень дата-интенсивные. Для нейросетевого моделирования требуется не менее, чем по 10 наблюдений на каждую связь в сети для обучения сети. При этом все данные должны быть поделены на две группы - одна для обучения сети, вторая для проверки данных. Соответственно, для нейронной сети с одним скрытым слоем, четырьмя входными параметрами и тремя нейронами в скрытом слое потребуется, минимум, 300 наблюдений. Действительно, описать полученные результаты аналитическим образом не удастся, будет экспертная система a la "черный ящик". Проблема во многих опубликованных книгах в том, что они обходят стороной основную проблему data mining'а - подгонку модели под данные - при небольшом количестве наблюдений модель великолепно описывает имеющийся набор данных, однако дайте ей другой аналогичный набор данных - и она будет безбожно врать. Посему в медицинских научных статьях - где важно понимание того, что описывается - эти методики не находят большого распространения. Дискриминантный анализ в последнее время перестал быть популярным (как было, например лет 20 тому назад) именно по причине жестких ограничений накладываемых на рапределение данных и его место заняла логистическая регрессия. Единственный вопрос по поводу классификации, 80% это что - сумма (TP+TN)/(P+N) в наилучшей точки разделения? А какова вероятность случайной правильной классификации? (т.е. сотношение групп). В принципе, лучше определять точность классификации по площади под характеристической кривой (AUC ROC) или, на худой случай, по индексу Йодена в точке наилучшего разделения
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 

Добавить ответ в эту темуОткрыть тему