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

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

 
Добавить ответ в эту темуОткрыть тему
> Вопрос по анализу данных
naustro
сообщение 3.03.2014 - 16:25
Сообщение #1





Группа: Пользователи
Сообщений: 1
Регистрация: 3.03.2014
Из: Новосибирск
Пользователь №: 26118



Уважаемые господа, можно ли обратиться к Вам за помощью?
Имеется база данных, основанная на анкетировании более 1500 человек, в которой категориально (да - нет) отражены такие симптомы как головные боли, боли в пояснице, боли в грудной клетке и пр. (более 30), на их основе вычисленный индекс состояния здоровья (непрерывная величина от 0 до 1). Для каждого случая естественно записаны предикты, такие как населенный пункт, возраст (или возрастная группа), пол, профессия, привычки, группа риска (на основе воздействия химических загрязнителей поллютантов - 3 группы) и пр.
Стоит задача выявить предикторы вызывающие значимое повышение отношение шансов наблюдаемых симптомов, а также оценить комплексное влияние этих факторов (предикторов).

Попытка провести данный анализ методом логистической регрессии с помощью одноименного модуля epi info 2000 (стандартная программа используемая в эпидемиалогии и лежащая в свободном доступе) дает неплохие результаты при
учете только одного из перечислденных факторов. При учете нескольких взаимодействующих факторов, получаем
неподдающиеся интерпретации результаты, что может быть вызвано однако сильной взаимосвязью предикторов, которые возможно необходимо минимизировать (что не хотелось бы, из-за потери части информации).

В связи с этим хотелось бы обратиться к Вам с вопросом, может имеет смысл воспользоваться каким-нибудь другим методом анализа?

Будем рады любому ответу...


Signature
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
nokh
сообщение 3.03.2014 - 17:57
Сообщение #2





Группа: Пользователи
Сообщений: 1202
Регистрация: 13.01.2008
Из: Челябинск
Пользователь №: 4704



Цитата(naustro @ 3.03.2014 - 19:25) *
Уважаемые господа, можно ли обратиться к Вам за помощью?
Имеется база данных, основанная на анкетировании более 1500 человек, в которой категориально (да - нет) отражены такие симптомы как головные боли, боли в пояснице, боли в грудной клетке и пр. (более 30), на их основе вычисленный индекс состояния здоровья (непрерывная величина от 0 до 1). Для каждого случая естественно записаны предикты, такие как населенный пункт, возраст (или возрастная группа), пол, профессия, привычки, группа риска (на основе воздействия химических загрязнителей поллютантов - 3 группы) и пр.
Стоит задача выявить предикторы вызывающие значимое повышение отношение шансов наблюдаемых симптомов, а также оценить комплексное влияние этих факторов (предикторов).

Попытка провести данный анализ методом логистической регрессии с помощью одноименного модуля epi info 2000 (стандартная программа используемая в эпидемиалогии и лежащая в свободном доступе) дает неплохие результаты при
учете только одного из перечислденных факторов. При учете нескольких взаимодействующих факторов, получаем
неподдающиеся интерпретации результаты, что может быть вызвано однако сильной взаимосвязью предикторов, которые возможно необходимо минимизировать (что не хотелось бы, из-за потери части информации).

В связи с этим хотелось бы обратиться к Вам с вопросом, может имеет смысл воспользоваться каким-нибудь другим методом анализа?

Будем рады любому ответу...

Данных немало, можно пробовать разные подходы. Конкретика зависит от того, как вы собираетесь пользоваться разработанным на основе анализа инструментом, что прогнозировать, на каком этапе и как группировать симптомы и т.п.
(1) Самый "тупой" подход, но полезный для прочувствования материала: построить 30 множественных регрессий (без взаимодействий) - по одной на каждый симптом и составить таблицу (30 х N предикторов), в которой плюсами отметить ячейки со значимым положительным влиянием предиктора, минусом - со значимым отрицательным, а 0 - отсутствие значимого влияния (+ цветами ячейки подкрасить). Такая таблица хорошо поддаётся осмыслению и поможет составить план на дальнейшие анализы материала. Ну, например, сразу будут видны предикторы, вложившиеся сразу в несколько симптомов, вложившиеся в 1-2 и не вложившиеся никуда. Выявятся основные факторы риска, с которыми можно работать глубже: комбинируя, взаимодействуя и т.п. Полезно и симптомы осмыслить: все ли информативны?
(2) Многомерный анализ. Здесь хорошо подойдёт множественный анализ соответствий (Canonical correspondence analysis). В отличие от обычного анализа соответствий он позволяет анализировать не всю изменчивость (инерцию) многомерного пространства данных, а лишь ту её часть, которая задаётся пространством предикторов. Можно не углубляться слишком, а просто ограничиться графическим анализом нескольких первых измерений на ординационных диаграммах. Будет видно, какие группы симптомов выстраиваются в направлении векторов каких предикторов или их групп. Это даст возможность обозначить наиболее сильные в наборе данных связи (групп) симптомов с предикторами и их сочетаниям. Далее эти связи можно проверять логлинейным анализом или малым числом конкретных логистических регрессий. Вместо канонич. анализа соответствий можно использовать анализ главных координат и/или многомерное шкалирование (здесь есть терминологические невязки) и выявить наболее плотные кластеры симптомов (например, с использованием коэффициентов сходства Жаккара - отличная мера близости для альтернативных данных), дать им медицинские обозначения, а далее моделировать риски для таких групп симптомов...
(3) Если важна точность прогноза в ущерб пониманию, можно поиграться с нейронными сетями - это большая и специфическая область со своими подводными камнями и наработками...
Короче, нужно на практике пробовать, что лучше подойдёт именно для вашей цели исследования.

Сообщение отредактировал nokh - 3.03.2014 - 18:36
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
anserovtv
сообщение 4.03.2014 - 08:29
Сообщение #3





Группа: Пользователи
Сообщений: 219
Регистрация: 4.06.2013
Из: Тверь
Пользователь №: 24927



Прежде чем собирать данные, нужно знать. какими методами они будут обрабатываться!!!!
Вы и задачу формулируете невнятно.
Согласен с некоторыми предложениями в предыдущем сообщении: логлинейный анализ таблиц сопряженности,
многомерное шкалирование по матрице расстояний между переменными с обычной или специальной метрикой.
У меня такое ощущение. что в ваших данных (при большом объеме) информации не очень много.
Я бы начал с проверки качества данных:
анализ пригодности теста с настройками...,
кластерный анализ переменных со специальной метрикой,
анализ множественных ответов с наборами...,
поиск дубликатов и противоречий.
Если качество данных хорошее, то можно применить разные методы.
Я бы начал с поиска ассоциативных правил условия -следствия. Это - огромная работа!
Уверен почти на 100%, что если ассоциативные правила не будут обнаружены.
то ничего особо ценного в ваших данных нет.

Сообщение отредактировал anserovtv - 4.03.2014 - 08:39
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
p2004r
сообщение 4.03.2014 - 16:37
Сообщение #4





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



Цитата(naustro @ 3.03.2014 - 16:25) *
Попытка провести данный анализ методом логистической регрессии с помощью одноименного модуля epi info 2000 (стандартная программа используемая в эпидемиалогии и лежащая в свободном доступе) дает неплохие результаты при
учете только одного из перечислденных факторов. При учете нескольких взаимодействующих факторов, получаем
неподдающиеся интерпретации результаты, что может быть вызвано однако сильной взаимосвязью предикторов, которые возможно необходимо минимизировать (что не хотелось бы, из-за потери части информации).

В связи с этим хотелось бы обратиться к Вам с вопросом, может имеет смысл воспользоваться каким-нибудь другим методом анализа?

Будем рады любому ответу...


1) Это дежурный вопрос. Вот так по каждой зависимой величине пройдясь можно получить что на что влияет со всеми взаимодействиями
http://forum.disser.ru/index.php?showtopic=3424

Для оценки предсказания сочетания зависимых величин можно генерить эти сочетания, и искать значимые предикторы описанным выше способом. Это экстенсивный подход (ввиду маленького объема данных он вполне подойдет).

2) В Вашей постановке наиболее духу задачи отвечают канонические корреляции. Но их надо уметь описать.

3) Что бы убрать мультиколлинеарность предикторов достаточно провести pca с последующим varimax вращением всех выделенных компонент. Большинство предикторов останутся в "интерпретируемом состоянии".


Signature
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
nokh
сообщение 4.03.2014 - 17:43
Сообщение #5





Группа: Пользователи
Сообщений: 1202
Регистрация: 13.01.2008
Из: Челябинск
Пользователь №: 4704



Цитата(p2004r @ 4.03.2014 - 19:37) *
2) В Вашей постановке наиболее духу задачи отвечают канонические корреляции. Но их надо уметь описать.

До 1), пока не дорос smile.gif , а вот с 2) не согласен. Раз есть предикторы, значит не "корреляции", а регрессия. Т.к. интересует не полная связь, а лишь та её часть, которая обусловлена действием предикторов, - на решение накладывается это ограничение, поэтому часто такие ординационные техники называются "соnstrained ordination". В случае нормального распределения зависимых переменных это - анализ избыточности (Redundancy analysis), а в случае зависимых переменных, представленных бинарными данными (случай топикстартера) - канонический анализ соответствий (Canonical correspondence analysis). В сообщении выше я забыл в переводе написать "канонический", но один хрен, по-русски про него толком не нагуглить, а англ. варианте написал правильно. Хотя лично мне он не очень нравится по силе обобщения редуцированных данных (в семействе многомерных техник можно накомбинировать лучше), но это - классика.
Цитата(p2004r @ 4.03.2014 - 19:37) *
3) Что бы убрать мультиколлинеарность предикторов достаточно провести pca с последующим varimax вращением всех выделенных компонент. Большинство предикторов останутся в "интерпретируемом состоянии".

А какой смысл крутить вместе с шумом? Не встречал таких рекомендаций, дайте, пожалуйста, ссылку.

Сообщение отредактировал nokh - 4.03.2014 - 17:53
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 4.03.2014 - 22:11
Сообщение #6





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



1. Не такая уж это симпатичная идея - использовать модель бинарного отклика (ака логистическая регрессия, простейший бинарный классификатор) для моделирования некоторой непрерывной величины, которая едва ли напоминает сигмоид. Все, что будете иметь на выходе-это возможность с умным видом сказать, что, мол, пациент скорее жив, чем мертв. Только, чур, без обид.

Если очень хочется побаловаться с регрессионными техниками, можно попробовать искусственно этот самый индекс здоровья представить в виде градаций упорядоченной переменной (типа 0-0,5 "мертв", 0,5-0,7 - "негоден в мирное время, годен к нестроевой в военное время", 0,7-1,0 - "здоровье космонавта" и далее оценить модель множественного отклика (мультиномиальный логит).

2. Мультиколлинеарность (?) (интересно, а как поставили этот диагноз) - не всегда является абсолютным злом: просто статистические свойства оценок становятся хуже (н-р, теряется их эффективность). Простейший способ борьбы - разделить один коррелированный предиктор на другой и использовать эту конструкцию как самостоятельный предиктор, чуть более сложная техника - метод инструментальных переменных. Однако, выбор инструментов-головная боль та еще.
И в смысле оценивания таких регрессий с мультиколлинеарными матрицами вариаций-ковариаций регрессоров тоже не все плохо: есть гребневая ("ридж") регрессия, есть LASSO Тибширани. Словом, выкрутиться можно.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
p2004r
сообщение 5.03.2014 - 21:33
Сообщение #7





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



Цитата(nokh @ 4.03.2014 - 17:43) *
До 1), пока не дорос smile.gif , а вот с 2) не согласен. Раз есть предикторы, значит не "корреляции", а регрессия. Т.к. интересует не полная связь, а лишь та её часть, которая обусловлена действием предикторов, - на решение накладывается это ограничение, поэтому часто такие ординационные техники называются "соnstrained ordination". В случае нормального распределения зависимых переменных это - анализ избыточности (Redundancy analysis), а в случае зависимых переменных, представленных бинарными данными (случай топикстартера) - канонический анализ соответствий (Canonical correspondence analysis). В сообщении выше я забыл в переводе написать "канонический", но один хрен, по-русски про него толком не нагуглить, а англ. варианте написал правильно. Хотя лично мне он не очень нравится по силе обобщения редуцированных данных (в семействе многомерных техник можно накомбинировать лучше), но это - классика.

А какой смысл крутить вместе с шумом? Не встречал таких рекомендаций, дайте, пожалуйста, ссылку.


1) Что значит "не дорос" ? smile.gif Там простой перебор фактически идёт.

2) Как есть именно "предикторы", так есть именно "зависимые". Множественное число означает, что предсказать хотят вектор, а не один элемент вектора. По хорошему это http://en.wikipedia.org/wiki/Structured_prediction . Кстати! library(bnlearn) в данном случае вполне себе средство выбора для топикстартера.

Из традиционного анализа это всё что Каноническое. Поскольку вся многомерка это _чистая_ геометрия, на которую все рассуждения типа "берем нормальные распределения для участвующих в анализе данных и на их примере доказываем что то полезное" не накладывают никаких ограничений. Ну самое большее какие то статкритерии выведены... но к чему они там, где надо просто "глазами" смотреть? Нет таких критериев которые заменяют глаза в многомерной статистике. Исходные точки в многомерном пространстве остаются теми же точками просто в другой системе координат.

3) Шума никакого нет, есть побочное следствие способа выбора исходной ортогональной системы координат выражающееся в выделении максимума вариации при проведении очередной оси. А варимакс вращение сохраняет ортогональность, но перераспределяет вариацию. Применять ортогонализацию переменных отправляемых в логистическую регрессию не советует только ленивый smile.gif Более того требование к предикторам оной и заключается в отсутствии взаимосвязи --- иначе вычисление коэффициентов становится численно не устойчивым. Все при этом дружно стонут о пропадающей возможности интерпретировать смысл коэффициентов.

Дополнительно применить варимакс вращение без сокращения числа переменных после ортогонализации вполне себе логически вытекающий прием (который никак не влияет, а всего лишь дополняет давно обоснованную рекомендацию ортогонализации) позволяющий "потерять смысл" только для совсем "клинических случаев" взаимозависимости предикторов. Можете на меня сослаться если что smile.gif


Signature
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 6.03.2014 - 12:01
Сообщение #8





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



А вот еще отлично ортогонализует вектора процедура Грама-Шмидта.
Очень рекомендуется для таких предикторов как "пол", "профессия", "привычки", "место жительства". Просто отдельное удовольствие.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 

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