ЛУка
Интересующийся
Offline
|
|
« : 02-04-2011 08:17 » |
|
Помогите разобраться с написанием программы,которая должна распознавать текст истории болезни и выводить диагноз....
|
|
|
Записан
|
|
|
|
Вад
|
|
« Ответ #1 : 02-04-2011 08:36 » |
|
Поскольку тема заведена в WinAPI & Visual C++, я так понимаю, главная проблема - запрограммировать интерфейс? Если нет, то что?
Пока непонятно, что сделано и что не получается сделать, помочь будет затруднительно, если телепаты не подтянутся.
|
|
|
Записан
|
|
|
|
ЛУка
Интересующийся
Offline
|
|
« Ответ #2 : 02-04-2011 08:53 » |
|
у меня 100 000 вопросов наверное!!! вообще мне не понятно даже как написать алгоритм хотя бы.....я понимаю,что где-то должно быть прописано, что если, к примеру, "насморк, боли в горле", то "ОРВИ" и т.д. Наверное, чтобы с файла считывало или ввести текстовые переменные: если а=боль в горле, то b=ангина.ну вот как сделать что бы еще печатный текст распознавало.....хотя про печатный текст можно потом и отдельно
|
|
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #3 : 02-04-2011 10:54 » |
|
ЛУка, совершенно правильно думаешь. C++ тут ни при чём. Сначала нужно решить общие вопросы: форматы входных и выходных данных, алгоритм.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Dale
|
|
« Ответ #4 : 02-04-2011 11:15 » |
|
Попробуйте сначала поискать литературу по экспертным системам, ее достаточно много. Эту задачу уже давно пытались решить.
|
|
|
Записан
|
Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.
Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard
Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
|
|
|
zubr
Гость
|
|
« Ответ #5 : 02-04-2011 11:29 » |
|
Имхо, что то серьезное для реальной диагностики заболеваний сделать нереально. Потому как множество похожих симптомов может быть при совершенно различных заболеваниях и врачу надо для постановки правильного диагноза учитывать очень много факторов. Единственное, что можно, имхо, сделать - это обучающуюся систему, которая из уже имеющихся наборов симптомов и других признаков (к примеру цвет кожных покровов, наличие сыпей и т. п.) выбирает из своей БД диагноз, совпадающий по максимальному количеству симптомов и признаков и выдает результат в виде - вероятность такого то диагноза - 70% (процент по количеству совпавших симптомов и признаков). 1. Программа может представлять собой БД + аналитический модуль + интерфейс. 2. Интерфейс должен представлять собой множество выпадающих списков, с помощью которых оператор будет выбирать нужный симптом или признак. Если нужного симптома или признака нет, то должна быть возможность ввести его вручную, причем это должно сохраниться в БД. 3. Обучение программы может представлять собой ввод симптомов и признаков и соответствующий им правильный диагноз. Если, к примеру, программа не может определить диагноз или выдает малый процент совпадений, то оператор вводит правильный диагноз, с целью сохранения в БД для последующего использования.
|
|
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #6 : 02-04-2011 13:29 » |
|
Речь ещё шла об истории болезни. Так, если человек уже болел какой-нибудь ветрянкой, то вероятность повторого заболевания резко понижается, ибо у организма вырабатывается иммунитет. Это тоже надо учитывать помимо симптомов.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Вад
|
|
« Ответ #7 : 02-04-2011 16:31 » |
|
ЛУка, наверное, следует уточнить: каков контекст решаемой задачи? Это какая-то учебная задача (курсовая, диплом), собственное исследование, что-то третье? То есть, насколько игрушечным должен быть результат и какова более общая цель всей работы? (ведь понятно, что мощную экспертную систему вот так сразу новичок вряд ли создаст)
|
|
|
Записан
|
|
|
|
ЛУка
Интересующийся
Offline
|
|
« Ответ #8 : 02-04-2011 19:24 » |
|
Это контрольно-курсовая работа,вообще на тему распознавание текста,поэтому программа и должна сначала распознать текст напечатанный и только потом поставить диагноз....я понятия не имею как программа должна распознавать текст напечатанный,в си++ я МЕГАновичок....
|
|
|
Записан
|
|
|
|
Вад
|
|
« Ответ #9 : 02-04-2011 19:38 » |
|
Теперь давай разберёмся с тем, что понимается под распознаванием напечатанного текста. Имеется в виду, что текст вводится с клавиатуры, или каким-то образом сканируется? Что именно требуется сделать: выделить в тексте какие-то смысловые единицы (симптомы), или что-то ещё?
И, в целом, есть какое-то развёрнутое задание, где излагалось бы, что именно требуется сделать?
|
|
|
Записан
|
|
|
|
ЛУка
Интересующийся
Offline
|
|
« Ответ #10 : 03-04-2011 07:25 » |
|
под распознаванием образов понимается, что из тескста либо напечатанного,либо вводимого,будут выбираться слова,которые нужные программе и распознаваться,а затем уже использоваться программой далее и выдавать диагноз,это как я поняла....
Добавлено через 1 минуту и 21 секунду: а задание прям так и звучит "Постановка диагноза по истории болезни(симптомам)"
|
|
« Последнее редактирование: 03-04-2011 07:27 от ЛУка »
|
Записан
|
|
|
|
Вад
|
|
« Ответ #11 : 03-04-2011 07:56 » |
|
ЛУка, это не развёрнутое задание, это лишь общая постановка задачи, никак не описывающая входные данные. Пока из твоих слов я понял (и, возможно, неправильно), что если твоя программа просто прочитает текстовый файл с историей болезни, то на выходе она должна будет выдать диагноз (набор слов). И все остальные случаи, так или иначе, сводятся к этому. И пока непонятно, что же ты знаешь, и чего не знаешь, есть ли у тебя руководитель, и если да - то чему учили, и как так вышло, что ты в C++ новичок, а у тебя сразу комплексная задача стоит: тут и обработка входных данных, и простая, но, тем не менее, экспертная система. Поэтому пока что приходится нам тебе вопросы задавать В общем, давай, ты подробнее расскажешь о том, как и почему у тебя эта задача стоит, выложишь все детали, и будем разбираться.
|
|
|
Записан
|
|
|
|
ЛУка
Интересующийся
Offline
|
|
« Ответ #12 : 03-04-2011 08:38 » |
|
ААаа,ну знаю я мало,так как только на первом курсе учусь,а во 2 семестре нам выдали контрольно-курсовую работу по системам искусственного интеллекта , моя тема так и звучит,и входных данных просто напросто нет(((((ты правильно понял,что программа должна читать файл и под конец выдавать диагноз.Руководитель учит просто СИ++((((я даже не знаю что еще могу сказать по этому поводу,просто я пока сама в растерянности и не знаю с какой стороны подойти к этой задаче....
|
|
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #13 : 03-04-2011 09:14 » |
|
ЛУка, а вуз какой, какая специальность и как называется предмет? Впервые слышу, чтобы на первом курсе давали курсовик по ИИ. Может ты что-то не так поняла, и всё на самом деле проще? .Руководитель учит просто СИ++(((( Вот это скверно. Учить нужно концепциям программирования на примере C++, а не самому C++.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
ЛУка
Интересующийся
Offline
|
|
« Ответ #14 : 03-04-2011 10:55 » |
|
Специальность комплексное обеспечение защиты информации и автоматизированных сетей,просто в 1 семестре начали изучать си ++,во втором начался предмет искусственный интеллект,вот и задали сразу(((
|
|
|
Записан
|
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #15 : 03-04-2011 11:42 » |
|
ЛУка, интересный учебный план... Ну да ладно.
Выходит, что тебе нужно самой придумать, что такое "история болезни" - каков её формат. И, наверно, это надо будет согласовать с преподавателем - чтобы он подтвердил, что ты движешься в правильном направлении.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
ЛУка
Интересующийся
Offline
|
|
« Ответ #16 : 03-04-2011 12:04 » |
|
ну в принципе да, я сама придумываю,а я понимаю,что будет достаточно ввести 10 диагнозов,ну симптомов побольше разных и все.....
|
|
|
Записан
|
|
|
|
|