Microsoft Word Master thesis of Petar Kormushev in Medical Informatics doc



Pdf просмотр
страница39/41
Дата17.04.2022
Размер2.9 Mb.
#114126
ТипДиплом
1   ...   33   34   35   36   37   38   39   40   41
Kormushev MSc thesis Bio 2006
Свързани:
1601561030 Dobrinka Bogdanova
Attribute / NominalAttribute / ContinuousAttribute
Attribute е абстрактен клас, който определя общата функционалност за всички атрибути. Останалите два класа наследяват Attribute. Така се позволява на Metadata да
работи полиморфно със списък от атрибути с проиволен тип. При зададени конкретни данни, обектите от тип ContinuousAttribute поддържат статистическа информация за средната стойност на атрибута и стандартното отклонение. Съответно, обектите от тип
NominalAttribute поддържат информация за разпределението на данните по всяка номинална стойност, както и за диаметрите на клъстерите, при условие, че атрибута указва номер на клъстер. Тези статистики се изчисляват от обекта Database, при поискване от потребителя.


71
Възможности за бъдещо развитие
В съответствие с целта на дипломната работа, успешно бяха създадени два инструмента за конструиране и визуализиране на извадки от медицински бази от данни.
В уводната част направихме кратко въведение в предметната област и показахме необходимостта от визуализация на голям обем многомерни медицински данни.
Описахме задачите на дисциплината ИЗД и уточнихме мястото, което настоящата разработка заема в него. В края на въведението дефинирахме точно и ясно целта на дипломната работа.
В хода на проектирането направихме анализ на изискванията към Конструктора и проектирахме конкретни стъпки за създаване на извадки от големи бази от данни. След това направихме описание на алгоритъма FastMap за намаляване размерността на данни и на негова база проектирахме инструмента Визуализатор.
В частта за реализация обосновахме избора на средства за написване на двата инструмента, описахме реализирания потребителски интерфейс и посочихме функционалността на основните класове.
Текущата реализация на Конструктора е напълно функционираща и чрез нея с лекота могат да се създават сложни SQL заявки. Реализирани са абсолютно всички описани в изложението стъпки, както и някои допълнителни, създадени за по-лесно приспособяване на инструмента към схемата на базата от данни. За доработването на функционалността и изчистването на потребителския интерфейс съм задължен на хилядите абонати на медицински софтуер „Хипократ”. Това е може би най- разпространеният медицински софтуер в България, с който ежедневно работят над 2000 общопрактикуващи лекари и специалисти. Конструкторът успешно беше интегриран в програма „Хипократ” и вече повече от 1 година потребителите на програмата го използват за създаване на гъвкави извадки от своите бази с медицински данни.
Благодарение на отправените от потребителите предложения, критики и препоръки към
Конструктора той има толкова завършен вид в момента. Извън границите на проектираната функционалност, към Конструктора бяха добавени допълнителни функции за улеснение на потребителите, като например възможността за записване на конструирани условия и повторното им готово използване под формата на „Готови справки”. Тази функционалност е една от най-приятните за потребителите възможности за пестене на време в ежедневната им работа.
Също така, един от най-големите медицински центрове в България (ДКЦ-2 в Плевен), който работи с програма „Хипократ”, предостави огормната си по обем база с медицинска информация за тестване на двата инструмента и допълнителното им оптимизиране за работа с голям обем данни. Точно тези тестове доведоха до идеята за допълнителна обработка и индексиране на данните преди пускане на FastMap алгоритъма. Разбира се, личната информация от тяхната база беше старателно премахната, за да не могат да се идентифицират отделни пациенти.


72
Текущата реализация на Визуализатора също е напълно функционираща и с нея удобно се визуализират не само медицински извадки, но и произволни извадки с данни.
Допълнително реализираните операции за манипулиране на обектите от визуализацията придават изключително полезна интерактивност на инструмента и му помагат наистина да се превърне във визуално средство за извличане на закономерности от данните.
За разлика от Конструктора, Визуализаторът не е чак толкова добре изтестван от потребители и това определя до голяма степен по-слабото му развитие извън границите на проектираната функционалност. Основен недостатък в текущата реализация е липсата на адекватна обработка на липсващите стойности в извадката. В момента програмата не обработва липсващите стойности на атрибутите, а просто пропуска редовете с тях. Добре би било да се реализират някои от описаните при проектиране на
Визуализатора подходи за справяне с липсващите стойности. Това би имало голямо значение най-вече за такива извадки, в които процентът на редовете с липсващи стойности е значителен.
Друга възможност за подобряване на текущата реализация е добавяне на още метрики за разстояния. В момента напълно реализирани са функциите за разстояние между номинални и непрекъснати атрибути. Това на практика е достатъчно за визуализация на всяка произволна извадка, но не може да осигури достатъчно добри резултати при визуализиране например на наредени номинални атрибути. Например номиналните стойности {„малко”, „средно”, „голямо”} ще се считат за еднакво раздалечени една от друга точно както и номиналните стойности {„бяло”, „зелено”, „червено”}, въпреки че за първите съществува наредба, според която “малко” трябва да е по-близо до „средно”, отколкото до „голямо”. В подобни случаи е удачно да се използват методи от размитата логика (fuzzy logic), които да определят сходството на една величина със стойности от типа на „малко” и „голямо”.
По време на разработването на Визуализатора възникна идея за създаване на специфична мярка за разстояние между медицински диагнози. Наскоро в България беше въведена в употреба 10-та ревизия на Международната Класификация на
Болестите (МКБ-10). Това представлява една унифицирана световна номенклатура, която съпоставя на всяка болест един уникален идентификационен код. Пример за такъв код е „M51”, който съответства на „Болест на междупрешленните дискове”. За максимална полза от Визуализатора при работа с такива диагнози, добре би било да се разработи специална функция за разстояние между две диагнози, кодирани по МКБ-10.
Така програмата ще знае, че М51 е по-близо до болестта „Ревматоиден артрит”, отколкото до болестта „Психично разстройство”. Това, разбира се, може да стане само в тясно сътрудничество с медицински експерти и за съжаление не е реализирано в момента.
Едно ограничение на текущата реализация на Визуализатора е фактът, че той може да показва само двумерни представяния на данните. Този недостатък не е наложен от
FastMap алгоритъма, а по-скоро от използваната библиотека Drawing2D за визуализация. Едно възможно бъдещо разширение на Визуализатора би било в посока визуализация на тримерни данни чрез използване на платформа като DirectX или
OpenGL. Това, разбира се, ще доведе до множество проблеми с начина на придвижване в 3D пространството и начина на избиране на обекти, което за момента доста удобно е реализирано в 2D пространството.


73
Може да се мисли в бъдеще и за интеграция на двата инструмента с други програми за
ИЗД. Реализираният файлов формат за обмен на данни и мета-данни осигурява добра възможност за това. Например, възможно е да се комбинира Конструкторът с инструмент за клъстеризиране на медицински данни, които след това да бъдат визуализирани и да се оцени качеството на клъстеризация от статистическите данни във Визуализатора. Пример за подобен инструмент за клъстеризиране е така нареченият DRG групер (Diagnostically Related Groups), който НЗОК (Националната
Здравно-осигурителна Каса на България) използва за групиране на диагнозите при определяне на държавното подпомагане към болниците за различните клинични пътеки.


74


Сподели с приятели:
1   ...   33   34   35   36   37   38   39   40   41




©obuch.info 2024
отнасят до администрацията

    Начална страница