Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: [C++] Учебная задача: экспертная система  (Прочитано 19081 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ЛУка
Интересующийся

ru
Offline Offline

« : 02-04-2011 08:17 » 

Помогите разобраться с написанием программы,которая должна распознавать текст истории болезни и выводить диагноз....
 
Записан
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 02-04-2011 08:36 » 

Поскольку тема заведена в WinAPI & Visual C++, я так понимаю, главная проблема - запрограммировать интерфейс? Если нет, то что?

Пока непонятно, что сделано и что не получается сделать, помочь будет затруднительно, если телепаты не подтянутся.
Записан
ЛУка
Интересующийся

ru
Offline Offline

« Ответ #2 : 02-04-2011 08:53 » 

у меня 100 000 вопросов наверное!!!
вообще мне не понятно даже как написать алгоритм хотя бы.....я понимаю,что где-то должно быть прописано, что если, к примеру, "насморк, боли в горле", то "ОРВИ" и т.д. Наверное, чтобы с файла считывало или ввести текстовые переменные: если а=боль в горле, то b=ангина.ну вот как сделать что бы еще печатный текст распознавало.....хотя про печатный текст можно потом и отдельно
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 02-04-2011 10:54 » 

ЛУка, совершенно правильно думаешь. C++ тут ни при чём. Сначала нужно решить общие вопросы: форматы входных и выходных данных, алгоритм.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Dale
Блюзмен
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 02-04-2011 11:15 » 

Попробуйте сначала поискать литературу по экспертным системам, ее достаточно много. Эту задачу уже давно пытались решить.
Записан

Всего лишь неделя кодирования с последующей неделей отладки могут сэкономить целый час, потраченный на планирование программы. - Дж. Коплин.

Ходить по воде и разрабатывать программное обеспечение по спецификациям очень просто, когда и то, и другое заморожено. - Edward V. Berard

Любые проблемы в информатике решаются добавлением еще одного уровня косвенности – кроме, разумеется, проблемы переизбытка уровней косвенности. — Дэвид Уилер.
zubr
Гость
« Ответ #5 : 02-04-2011 11:29 » 

Имхо, что то серьезное для реальной диагностики заболеваний сделать нереально. Потому как множество похожих симптомов может быть при совершенно различных заболеваниях и врачу надо для постановки правильного диагноза учитывать очень много факторов.
Единственное, что можно, имхо, сделать - это обучающуюся систему, которая из уже имеющихся наборов симптомов и других признаков (к примеру цвет кожных покровов, наличие сыпей и т. п.) выбирает из своей БД диагноз, совпадающий по максимальному количеству симптомов и признаков и выдает результат в виде - вероятность такого то диагноза - 70% (процент по количеству совпавших симптомов и признаков).
1. Программа может представлять собой БД + аналитический модуль + интерфейс.
2. Интерфейс должен представлять собой множество выпадающих списков, с помощью которых оператор будет выбирать нужный симптом или признак. Если нужного симптома или признака нет, то должна быть возможность ввести его вручную, причем это должно сохраниться в БД.
3. Обучение программы может представлять собой ввод симптомов и признаков и соответствующий им правильный диагноз. Если, к примеру, программа не может определить диагноз или выдает малый процент совпадений, то оператор вводит правильный диагноз, с целью сохранения в БД для последующего использования.
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #6 : 02-04-2011 13:29 » 

Речь ещё шла об истории болезни. Так, если человек уже болел какой-нибудь ветрянкой, то вероятность повторого заболевания резко понижается, ибо у организма вырабатывается иммунитет. Это тоже надо учитывать помимо симптомов.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #7 : 02-04-2011 16:31 » 

ЛУка, наверное, следует уточнить: каков контекст решаемой задачи? Это какая-то учебная задача (курсовая, диплом), собственное исследование, что-то третье? То есть, насколько игрушечным должен быть результат и какова более общая цель всей работы? (ведь понятно, что мощную экспертную систему вот так сразу новичок вряд ли создаст)
Записан
ЛУка
Интересующийся

ru
Offline Offline

« Ответ #8 : 02-04-2011 19:24 » 

Это контрольно-курсовая работа,вообще на тему распознавание текста,поэтому программа и должна сначала распознать текст напечатанный и только потом поставить диагноз....я понятия не имею как программа должна распознавать текст напечатанный,в си++ я МЕГАновичок....
Записан
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #9 : 02-04-2011 19:38 » 

Теперь давай разберёмся с тем, что понимается под распознаванием напечатанного текста. Имеется в виду, что текст вводится с клавиатуры, или каким-то образом сканируется? Что именно требуется сделать: выделить в тексте какие-то смысловые единицы (симптомы), или что-то ещё?

И, в целом, есть какое-то развёрнутое задание, где излагалось бы, что именно требуется сделать?
Записан
ЛУка
Интересующийся

ru
Offline Offline

« Ответ #10 : 03-04-2011 07:25 » 

под распознаванием образов понимается, что из тескста либо напечатанного,либо вводимого,будут выбираться слова,которые нужные программе и распознаваться,а затем уже использоваться программой далее и выдавать диагноз,это как я поняла....

Добавлено через 1 минуту и 21 секунду:
а задание прям так и звучит "Постановка диагноза по истории болезни(симптомам)"
« Последнее редактирование: 03-04-2011 07:27 от ЛУка » Записан
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #11 : 03-04-2011 07:56 » new

ЛУка, это не развёрнутое задание, это лишь общая постановка задачи, никак не описывающая входные данные.

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

И пока непонятно, что же ты знаешь, и чего не знаешь, есть ли у тебя руководитель, и если да - то чему учили, и как так вышло, что ты в C++ новичок, а у тебя сразу комплексная задача стоит: тут и обработка входных данных, и простая, но, тем не менее, экспертная система. Поэтому пока что приходится нам тебе вопросы задавать Улыбаюсь

В общем, давай, ты подробнее расскажешь о том, как и почему у тебя эта задача стоит, выложишь все детали, и будем разбираться.
Записан
ЛУка
Интересующийся

ru
Offline Offline

« Ответ #12 : 03-04-2011 08:38 » 

ААаа,ну знаю я мало,так как только на первом курсе учусь,а во 2 семестре нам выдали контрольно-курсовую работу по системам искусственного интеллекта , моя тема так и звучит,и входных данных просто напросто нет(((((ты правильно понял,что программа должна читать файл и под конец выдавать диагноз.Руководитель учит просто СИ++((((я даже не знаю что еще могу сказать по этому поводу,просто я пока сама в растерянности и не знаю с какой стороны подойти к этой задаче....
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #13 : 03-04-2011 09:14 » 

ЛУка, а вуз какой, какая специальность и как называется предмет? Впервые слышу, чтобы на первом курсе давали курсовик по ИИ. Может ты что-то не так поняла, и всё на самом деле проще?

Цитата: ЛУка
.Руководитель учит просто СИ++((((
Вот это скверно. Учить нужно концепциям программирования на примере C++, а не самому C++.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
ЛУка
Интересующийся

ru
Offline Offline

« Ответ #14 : 03-04-2011 10:55 » 

Специальность комплексное обеспечение защиты информации и  автоматизированных сетей,просто в 1 семестре начали изучать си ++,во втором начался предмет искусственный интеллект,вот и задали сразу(((
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #15 : 03-04-2011 11:42 » 

ЛУка, интересный учебный план... Ну да ладно.

Выходит, что тебе нужно самой придумать, что такое "история болезни" - каков её формат. И, наверно, это надо будет согласовать с преподавателем - чтобы он подтвердил, что ты движешься в правильном направлении.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
ЛУка
Интересующийся

ru
Offline Offline

« Ответ #16 : 03-04-2011 12:04 » 

ну в принципе да, я сама придумываю,а я понимаю,что будет достаточно ввести 10 диагнозов,ну симптомов побольше разных и все.....
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines