Медицинская нейроинформатика
Представление обучающих данных
Следующий этап работы над проектом - разработка представления обучающих данных. Нейросети оперируют с информацией, представленной только в виде чисел. Числа подаются на входные синапсы нейросети; ответы, снимаемые с выходных нейронов, также представляют собой числа, поэтому для оценки примера заранее известный ответ также должен быть представлен в виде числа (чисел). Информация же, на основании которой нейросеть должна давать ответ, может быть самого разнообразного вида: термины, описывающие какие-либо ситуации, числа различного вида и величины, динамические ряды, массивы, графики, динамические кривые, двух- и трехмерные изображения и т.д. Поэтому возникает необходимость корректного представления этой информации в виде чисел, сохраняющих смысл и внутренние взаимосвязи в данных.
Существует огромное количество способов представления информации для различных целей.
Для работы нейронных сетей с медико-биологическими данными мы предлагаем по возможности полную классификацию данных, с которыми может столкнуться создатель медицинских экспертных систем, и оптимальные способы их представления в численном виде, учитывающие специфику работы нейросетевых систем. Однако это не готовые рецепты, поэтому в каждом конкретном случае все же требуется квалифицированное решение специалиста.
- Число с "плавающей точкой". Один из самых распространенных типов данных. Данные такого типа могут принимать любые значения, дробные или целые. Чаще всего они положительны, но могут быть и отрицательными. Немаловажно, что для работы нейронных сетей практически не имеет значение, подчиняется или нет вариационный ряд этих данных закону нормального распределения. Как правило, данные такого вида располагаются на каком-либо интервале с нечеткими границами. Примером может послужить большинство данных лабораторных анализов. Данные в виде чисел с "плавающей точкой" не требуют каких-либо перерасчетов и могут использоваться в готовом виде. Следует особо отметить, что способы кодирования таких показателей путем разбивки на интервалы и присвоения каждому интервалу порядкового номера нежелательны для нейронных сетей.
- Взаимоисключающие варианты. Один из наиболее сложных типов данных, требующих продуманного представления. Информация при этом представлена в виде одного и только одного варианта из заранее известного и ограниченного набора вариантов и не может принимать вид дробного числа. Простейшим примеров может служить пол человека - мужской или женский. Такая информация требует численного кодирования. В приведенном примере можно закодировать мужской пол как 1, женский - как 2 или наоборот. Однако далеко не всегда можно сделать такое простое и произвольное кодирование. Для обучения нейросетей подобную информацию логично подразделять на 3 основных подтипа.
- Неупорядоченные варианты - приведенный пример с полом человека. Их можно кодировать произвольным способом. Часто к этому типу относятся данные, представляемые всего двумя вариантами (да - нет, согласен - не согласен, болел - не болел и т.д.).
- Упорядоченные варианты. Такие данные находятся в определенных взаимосвязях друг с другом, которые могут быть выражены отношениями типа "больше", "меньше". Примером может служить степень тяжести заболевания ( I,II,III ). В любом случае варианты располагаются в определенном порядке - как правило, возрастания или убывания.
- Частично упорядоченные варианты. Способ упорядочивания не очевиден, однако его можно найти, если это необходимо для решения задачи.
- Совместимые варианты. Информация может быть представлена одним или одновременно несколькими вариантами из известного и ограниченного набора вариантов. Примером может являться наличие у обследуемого каких-либо заболеваний или заболеваний, перенесенных в детстве. В таких случаях имеется два различных подхода к кодированию данных.
- Если варианты неупорядоченные, наилучший (но, к сожалению, не всегда удобный) способ состоит в том, чтобы разбить признак на несколько признаков, количество которых равно количеству вариантов и каждый из них кодировать отдельно. Каждый подпризнак в таком случае делается самостоятельным признаком и подается на отдельный входной синапс нейросети.
- Если варианты упорядоченные, можно применить принцип битовой маски.
- Дата, время. Очень часто медицинские данные содержат даты различных событий в жизни обследуемых. Для численного представления временных точек необходимо в каждом признаке выбирать соответствующую точку отсчета и, отталкиваясь от нее, выражать временной интервал в удобных единицах (секунды, часы, сутки, годы). Например, если у больного указана дата возникновения какого-либо заболевания, удобнее перевести ее в возраст, который соответствовал этому событию. Сделав это для всех обследуемых, специалист приведет показатель к единой шкале. Если требуется другой подход, можно посчитать, сколько времени прошло с момента возникновения заболевания до момента настоящего обследования. В каждом случае предметный специалист должен выбрать способ представления, наиболее хорошо отражающий смысл параметра.
- Графики. Разработка способа представления графиков часто требует довольно большого времени.
- Наиболее простой, но не всегда возможный способ - дискретное разложение графика. Однако для подачи такой информации потребуется большее количество входных синапсов нейросети.
- Можно измерять на графике специально выбранные величины, отражающие наиболее важные характеристики явления. Например, для ЭКГ - это ширина и высота различных зубцов, наличие отрицательных зубцов (да, нет) и т.д. Такой способ может оказаться и экономнее, и эффективнее, однако требует хорошего знания изучаемого явления. Во многих случаях приходится прибегать к совмещению обоих методов, особенно в экспериментальных работах при изучении новых явлений с помощью нейросетей.
- Произвольные изображения. Для подачи изображения на нейросеть оно представляется в виде большого массива чисел (иногда состоящего из сотен тысяч элементов). Каждое число при этом отражает соответствующую точку изображения, разделенного на маленькие фрагменты. Чем больше фрагментов, тем точнее представление изображения, но тем больший массив для этого требуется. Стандартное графическое изображение компьютеров IBM AT 286 имеет размер 640*350 точек и может быть представлено массивом из 224000 чисел. Кодировка каждой точки может быть различной. Если изображение монохромное и не допускает полутонов, каждая точка может быть отображена значениями 0 (белая) или 1 (черная) или наоборот. Для хранения такого значения достаточно 1 бита информации, поэтому для представления всего изображения потребуется 28000 байт, что вполне приемлемо. Если же изображение цветное или имеет полутона, то каждая точка должна выражаться числом, разрядность которого достаточна для представления любого цвета или полутона.
После разработки списка обучающих параметров для каждой подзадачи и определения способа представления каждого параметра и ответа можно приступать к формированию обучающих выборок - сбора информации и помещения ее в базы данных.