Лабораторна робота №6, Медична діагностика
Код роботи: 2490
Вид роботи: Лабораторна робота
Предмет: Штучний інтелект
Тема: №6, Медична діагностика
Кількість сторінок: 7
Дата виконання: 2017
Мова написання: українська
Ціна: 250 грн
Мета: надати можливість навчити персептрон ставити діагнози простудних захворювань.
Хід роботи
1. Ознайомитися та вивчити теоретичний матеріал.
Теоретичний матеріал
В засобах інформації та науковій літературі є повідомлення про вдалий досвід застосування нейронних мереж для медичної діагностики. Розглянемо, як будуються і навчаються такі мережі.
Розглянемо, як лікар ставить діагноз хвороби пацієнта. Перш за все він з'ясовує і записує ім'я, вік, стать, місце роботи, потім, як правило, вимірює тиск, проводить зовнішній огляд, вислуховує скарги хворого, знайомиться з історією його хвороби, результатами аналізів, вивчає електрокардіограму. В результаті у лікаря накопичується від 20 до 100 і більше параметрів, шо характеризують пацієнта і його стан здоров'я. Це і є вихідні параметри, обробивши які за допомогою своїх медичних знань і досвіду, лікар робить висновок про захворювання пацієнта - ставить діагноз його хвороби.
Поставивши собі за мету змоделювати діяльність лікаря за допомогою персептрона. ми. насамперед, повинні визначитися з вхідним вектором X і вихідним вектором D, задавши їх розмірності, і домовитися про вміст кожного компонента. В векторі X логічно передбачити параметри, які лікар з'ясовує у хворого. Наприклад, в якості компоненти x1 можна задати дату народження, в якості х2 - закодувати стать (наприклад, нулем або одиницею), в якості x3 - вагу хворого, х4 - артеріальний тиск. x5 - температуру тіла і т.д. Не зайве врахувати також колір очей, колір волосся, знак зодіаку та інші дані, що визначають особливості організму і, отже, впливають на ймовірність виникнення тих чи інших захворювань.
В вихідному векторі D слід закодувати всі можливі діагнози хвороб, які здатний виявити лікар.
Природно, шо розмірність вектора D можна істотно знизити, якщо моделювати лікаря, шо спеціалізується у вузькій галузі медицини.
Так. якщо ми вибрали лікаря-кардіолога. то у векторі D слід кодувати тільки кардіологічні захворювання. Наприклад, можна прийняти d1 = 1, якщо у хворого інфаркт, і d1 =0. якщо інфаркту немає. Аналогічно за допомогою d2 можна закодувати наявність або відсутність пороку серця. d3 - ішемічної хвороби серця і т.д.
Таким чином, вихідний вектор персептрона D складатиметься з множини нулів і однієї або декількох одиниць (якщо хвороб декілька).
Однак діагнози хвороб краще кодувати по п’яти-, десяти- чи стобальною шкалою. Тоді на етапі підготовки навчальної множини прикладів за допомогою балів можна буде враховувати ступінь впевненості лікаря в правильності його діагнозу або ступінь розвиненості захворювання, а на етапі експлуатації - ймовірність правильної відповіді персептрона. Наприклад, якщо лікар підозрює, шо у хворого інфаркт міокарда, знає, шо у хворого немає пороку серця і впевнений, шо хворий страждає на ішемічну хворобу серця, то він може вказати: d1 =20%, d2 =0%, d3 =100%.
Далі слід підготувати множину навчальних прикладів. Зазначимо, шо якість нейромережевої діагностичної системи безпосередньо залежить від кваліфікації практикуючого лікаря, на прикладах роботи якого вона навчилася. Справа в тому, шо нейронна мережа успадковує від лікаря не тільки його знання, але і прогалини в його медичній освіті. Зрозуміло, шо вона буде допускати ті ж самі лікарські помилки, які допускає лікар. Тому для забезпечення високої якості діагностики нейронну мережу слід навчати на прикладах роботи висококваліфікованого лікаря або навіть на результатах роботи лікарського консиліуму. А якщо до роботи з навчання нейронної мережі залучити ще и патологоанатома, шо виключає помилки лікарської діагностики, то будуть усі підстави сподіватися, шо навчена таким способом нейромережа за якістю діагнозів, шо ставляться, перевершить звичайних лікарів. В цьому випадку нейронна мережа може виявити і закласти в модель такі закономірності людського організму, які сучасній медицині взагалі невідомі.
Отже, в результаті тривалої роботи колективу фахівців-медиків і програмістів буде накопичено множин}' навчальних прикладів, шо складається з множини пар векторів Хq і Dq (q =1, 2, Q). Тепер завдання полягає в тому, щоб спроектувати персептрон і шляхом навчання передати йому знання і досвід, шо міститься у множині навчальних прикладів. Як метод навчання персептрона можна використовувати розглянутий раніше алгоритм зворотного поширення помилки.
В результаті персептрон повинен навчитися відображати будь-який вектор навчальної множини Хq на вектор Уq. шо співпадає (або майже збігається) з вектором Dq. Крім того, при появі нового пацієнта, шо характеризується новим вхідним вектором X. персептрон повинен обчислити для нього новий вектор 7. шо містить правильний діагноз, поставлений персептроном вже без допомоги лікаря-експерта. Іншими словами, персептрон повинен вміти узагальнювати переданий йому досвід на нові приклади предметної області - ставити діагнози хвороб новим пацієнтам, які не зустрічала раніше.
На закінчення ще раз вкажемо причини, на підставі яких можна очікувати, шо штучний лікар перевершить натурального.
По-перше, якість роботи штучного лікаря завжди стабільна і не залежить від його настрою і стану здоров'я. По-друге, і це головне, нейронна мережа здатна витягувати і застосовувати знання, які сучасній медицині невідомі. Тому є всі підстави очікувати, шо завдяки застосуванню методів штучного інтелекту в майбутньому недосконалість сучасної медицини буде в значній мірі ліквідована.
Серйозні ІТ-фірми, шо займаються розробкою прикладного програмного забезпечення, перш ніж взятися за створення якого-небудь нового програмного продукту, спочатку роблять його демонстраційний прототип. Мета створення демонстраційного прототипу - переконатися самим і переконати потенційних замовників майбутнього програмного продукту в життєздатності ідей, які будуть закладені в його основу. Те, що Ви зробите. - це і буде демонстраційним прототипом інтелектуальної системи медичної діагностики. Цей прототип переконує нас, що він здатний навчатися медичним знанням і здатний правильно використовувати ці знання при постановці діагнозів новим пацієнтам, яких не було в множині навчальних прикладів.
При виконанні обох лабораторних робіт Ви самі обираєте кілька симптомів, які. на Вашу думку, слід брати до уваги при встановленні діагнозу. Обрані симптоми Ви відзначаєте галочками. При цьому автоматично проектується нейронна мережа - персептрон. шо має рівно стільки входів, скільки симптомів Ви вибрали. Структура мережі показується в правій нижній частині робочого вікна (рис. 1, 2).
Рис. 1 - Робоче вікно лабораторної роботи №6
2. Завантажити файл LR6.exe. Навчити персептрон визначати, хворий або не хворий пацієнт тільки одним-єдиним захворюванням - грипом.
3. Зробити покроковий звіт з обов'язковими скрінами і висновками.
4. Вислати на ел. почту файл.