![]() |
|
![]() ![]() ![]() |
|
maks1313 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 10.3.2013 Репутация: нет Всего: нет |
Нужно написать программу, тема: диагностика степени адаптации организма.
Входные данные: показатели состояния пациента во время проведенных сеансов. Нужно сделать диагностику эффективности проводимых процедур лечения пациентов и потом, желательно, добавить, чтобы программа выдавала рекомендации по данным пациента и еще до прохождения им лечения, тоесть это, на сколько я понимаю по накопленным данным предыдущих пациентов. Вопрос в том как это лучше всего реализовать, какими методами? это должна быть экспертная система? или можно обойтись статистическими методами? но какими? может у кого-то есть опыт в таких задачах... помогите, пожалуйста, советом, укажите направление куда двигаться? как это легче и проще реализовать из всех возможных способов |
|||
|
||||
nworm |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 502 Регистрация: 22.10.2005 Репутация: 4 Всего: 8 |
Это должна быть экспертная система.
Проще всего найти что-то отдалённо напоминающее Вашу задачу и купить готовую программу. Но далеко не факт, что это лучший путь. |
|||
|
||||
maks1313 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 10.3.2013 Репутация: нет Всего: нет |
спасибо за ответ...
про готовую программу я и сам уже думал. буду двигаться в направлении ЭС |
|||
|
||||
_Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
Я пытался сделать экспертную систему аналогичного типа. Столкнулся с общемедицинской проблемой - недостаточное количество данных для надежной статобработки. Все пациенты разные. Чтобы учитывать разницу, нужно учитывать чертову уйму параметров. А каждым новым параметром размер необходимой базы данных растет и куда-как быстрее, чем линейно.
-------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
nworm |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 502 Регистрация: 22.10.2005 Репутация: 4 Всего: 8 |
Это большая, очень интересная задача. Многие любят её. У одного моего знакомого родители несколько лет занимались.
|
|||
|
||||
_Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
nworm, сколь я понял, если врач не сможет выделить небольшое количество основных параметров, программист может заниматься всю жизнь в свое удовольствие.
![]() Я бы сказал, что для более-менее приличного результата число обследованных пациентов должно быть на порядок больше числа параметров. Если же (как это обычно в медицинской статистике) пациенты обследуются не полностью (т.е. каждый пациент обследован по каким-то параметрам, но не по всему списку), то и этого количества не хватит. -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
mrgloom |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 8.6.2011 Репутация: нет Всего: нет |
а откуда вы знаете сколько параметров у модели? они же получаются как бы скрытыми.
п.с. почему обычно пишут ЭС на каких нибудь lisp'ах, почему нельзя написать просто на большой количестве if'ов? |
|||
|
||||
_Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
Из долгих лет общения с медиками. И жил с ними, и работал ![]() Можно, конечно, на входе подавать один параметр "скушал аспирин"/"не скушал аспирин", а на выходе считать статистику "как бы выздоровел"/"как бы умер". Но что толку от такой модели? Улыбнуло ![]() -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
mrgloom |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 8.6.2011 Репутация: нет Всего: нет |
имелось ввиду, что на вход мы можем подавать много параметров, у самой модели свои параметры которые как то связаны с входными, а на выходе умер\не умер.
ну я конечно подозреваю, что там есть какой то "решатель" , а на if'ах будет не так гибко, но всё же тут например http://ru.wikipedia.org/wiki/CLIPS правило: если-тогда . |
||||
|
|||||
_Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
Так я о том и говорю. Чем больше параметров - не важно на входе или на выходе - тем большая должна быть база данных. Когда-то видел правило, что для более-менее достоверного определения характеристик функции, число экспериментов должно быть не меньше квадрата числа параметров (точную формулировку, к сожалению, не помню). Когда пытался писать такую экспертную систему, оказалось, что и этого мало, поскольку больной - не эксериментальный мышак, у которого можно померить все что хочешь. Один больной температуру померил и рентген сделал, а анализ, извините, мочи забыл сдать. Другой только анализ мочи принес. У тетьего вообще кроме как на устный рассказ о болячках ни на что времени не хватило. Четвертый умер не успев обследоваться до конца. Ни одного больного не обследовано по всем параметрам модели. Понятное дело, нейронные сети именно для таких "дырявых" баз и нужны. Но дыры-то эти компенсируются именно размером базы и ни чем иным. ИМХО реально только написать что-то для болезней/состояний, для которых врачи могут определить ограниченное количество входных параметров. Ну, типа, вес клиента + этаж + степень опьянения = сколько ног будет сломано при падении). Остальное - задачи научно-фантастические. -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
mrgloom |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 8.6.2011 Репутация: нет Всего: нет |
так по-моему задачи машинного обучения(типа нейросети) отличаются как раз от ЭС, т.е. тут именно идёт вывод из правил и тут как раз не обязательно иметь большую выборку.
Это сообщение отредактировал(а) mrgloom - 18.3.2013, 10:19 |
|||
|
||||
_Y_ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1651 Регистрация: 27.11.2006 Репутация: 8 Всего: 34 |
mrgloom, именно нейросетями и пробовал. Нейросеть, понятное дело, строится по выборке весьма скромной. Но достоверность такой сети плюс-минус трамвайная остановка.
Впрочем, очень ярко выраженные правила можно найти и по маленькой выборке. Но, думаю, что вероятность найти что-то новое по маленьким выборкам будет очень низкой. Ну кого удивит найденное с помощью нейросети правило "слопал аспирин" - "снизилась температура"? -------------------- Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:) |
|||
|
||||
Mirkes |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 586 Регистрация: 18.8.2011 Где: Красноярск Репутация: 4 Всего: 17 |
Пара мелких советов/ответов
1. Размер базы для приличной статистики должен быть 2^n от числа параметров. Причем речь идет очисле полных записей. 2. Что делать, если записей много меньше (а в медицине в лучшем цлучае 10n:) Ответ простой - сокращать число параметров. На эту тему есть куча методик, начиная с метода главных компонент. 3. Нейронные цети это лишь один из вариантов непараметрической статистики, следовательно ограничений по количеству записей длз них никто не отменял ![]() -------------------- Mirkes |
|||
|
||||
mrgloom |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 8.6.2011 Репутация: нет Всего: нет |
Так всё таки ЭС отличается от машинного обучения\статистических методов?
|
|||
|
||||
Mirkes |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 586 Регистрация: 18.8.2011 Где: Красноярск Репутация: 4 Всего: 17 |
Конечно отличается.
В случае со статистикой любого вида (включая нейронные сети и все другие методы машинного обучения) ответственность за качество работы лежит на исполнителе (как правило на программисте). В случае с экспертной системой ответственность по большей части лежит на экспертах, которые формулируют правила. Это ключевое различие. Оттуда совершенно разный подход к тестированию и т.д. -------------------- Mirkes |
|||
|
||||
mrgloom |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 829 Регистрация: 8.6.2011 Репутация: нет Всего: нет |
как то вы странно определили различие.
я вообще не до конца понимаю что такое ЭС. как я понимаю там есть просто набор правил-суждений и есть решатель, который делает логический вывод из этих правил. но они вроде могут и "с числами работать" только я не понимаю на каком уровне. |
|||
|
||||
Mirkes |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 586 Регистрация: 18.8.2011 Где: Красноярск Репутация: 4 Всего: 17 |
могут они с числами работать. Например "если А+В>С то"
По сути и ЭС и статистика реализуют приблизительно одно и тоже. Но в ЭС вам ЭКСПЕРТ дает правила, а в статистических методах ВЫ эти правила "извлекаете из установленных закономерностей". При этом ВЫ должны статистически подтвердить правильность выводов (т-тест, хи-квадрат и т.п.), что фактически невозможно при малых объемах базы. -------------------- Mirkes |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |