Задача машинного обучения в медицинской диагностике

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

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


Предметная область описана в статье.

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

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

Таким образом, математическая модель для предсказания вероятности смертности для наблюдения \mathbf x выглядит так:

p(\mathbf x)=\sigma\left(w_0+\sum_k\left[ w_k^+\max\{x_k-a_k,0\}+w_k^-\min\{x_k-a_k,0\} \right]\right).

Здесь a_k - пороги, w_k^+,w_k^- - веса модели, w_0 - свободный член, \sigma(z)=\frac{1}{1+e^{-z}}.

Указанные параметры являются неизвестными и подлежат определению из критерия минимальности целевой функции

J=-\frac{1}{n}\sum_i\left[ y^{(i)}\ln p(\mathbf x^{(i)}) + (1-y^{(i)})\ln (1 - p(\mathbf x^{(i)})) \right].

Здесь \mathbf x^{(i)} - i-е наблюдение, y^{(i)} - класс i-го наблюдения (0 или 1).

Для этой задачи готового решения нет, поэтому пишем свой оптимизатор на основе примера.

Определим целевую функцию, которая будет зависеть только от w_k^+,w_k^- и w_0 и которая равна значению J при наилучшем выборе a_k. Однако если выбирать a_k с помощью того же критерия оптимальности J, то придем к труднорешаемой задаче: все переменные a_k участвуют в функции J одновременно. Чтобы разделить их, введем другой, вспомогательный критерий для нахождения порогов. Применим метод наименьших квадратов для штрафной функции

f(a)=w_+^2\sum_{x_i>a}(x_i-a)^2(1-y_i) + w_-^2 \sum_{x_i < a} (x_i - a)^2 y_i.

Найдем минимум функции f, решив линейное уравнение f'(a)=0.

Итак, проделав эту процедуру для ряда значений каждого признака, находим пороги a_k. Далее вычисление оптимальных коэффициентов w_k^+,w_k^- сводится к вызову стандартного оптимизатора (Нелдера-Мида или BFGS) для полученной целевой функции.

Источник: https://habr.com/ru/articles/784162/


Интересные статьи

Интересные статьи

С вами Алексей Ложкинс, эксперт по анализу данных и машинному обучению в ПГК Диджитал. Мы разрабатываем цифровые продукты для логистической отрасли, в первую очередь, для ж/д перевозок.В кулуарах моск...
Добрый день! Я – Елена Поплоухина, руководитель группы тестирования в компании Usetech. В предыдущей статье я рассказывала про опыт построения обучения в группе тестирования на основе практики квартал...
В коммерческой разработке многие сценарии использования машинного обучения подразумевают мультитенантную архитектуру и требуют обучения отдельной модели для каждого клиен...
Машинное обучение плотно укоренилось в различных сферах деятельности людей: от распознавания речи до медицинской диагностики. Популярность этого подхода столь велика, что его пытаются использов...
Привет, Хабравчане! Отфильтровав для вас большое количество источников и подписок — собрал все наиболее значимые новости из мира машинного обучения и искусственного интеллекта за сентябрь. Не заб...