Маркировка-это присвоение некие абстрактных объектов (меток, фишек) в позиции N-схемы, причем количество меток, соответственно каждой позиции, может меняться

В графическом представлении сетей переходы изображаются "барьерами", а места – кружками. Условия-места и события-переходы связаны отношением непосредственной зависимости, которое изображается с помощью направленных дуг, ведущих из мест в переходы и из переходов в места. Места, из которых выходят дуги, направленные к данному переходу, называются его входными местами. Места, в которые входят дуги, исходящие из данного перехода, называются его выходными местами.

Существуют различные виды СП: временные, стохастические, функциональные, цветные, ингибиторные. Рассмотрим более подробно:

Временная сеть Петри — переходы обладают весом, определяющим продолжительность срабатывания (задержку).

Стохастическая сеть Петри — задержки являются случайными величинами.

Функциональная сеть Петри — задержки определяются как функции некоторых аргументов, например, количества меток в каких-либо позициях, состояния некоторых переходов.

Цветная сеть Петри — метки могут быть различных типов, обозначаемых цветами. Каждому маркеру присваивается параметр, обозначенный цветом в сети.

Ингибиторная сеть Петри — возможны ингибиторные дуги, запрещающие срабатывания перехода, если во входной позиции, связанной с переходом ингибиторной дугой, находится метка.

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

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

 

1.3.3 Нейросетевое моделирование систем

1.3.3.1 Основные понятия нейросетевой модели

 

Искусственные нейронные сети (ИНС) строятся по принципам организации и функционирования их биологических аналогов. Они способны решать широкий круг задач распознавания образов, идентификации, прогнозирования, оптимизации, управления сложными объектами. Основные проблемы, которые решает искусственная нейронная сеть- это классификация образов. Задача состоит в указании принадлежности входного образа, представленного вектором признаков, одному или нескольким предварительно определенным классам. К известным приложениям относятся распознавание букв, распознавание речи, классификация сигнала электрокардиограммы, классификация клеток крови.

При решении задачи кластеризации, которая известна также как классификация образов без учителя, отсутствует обучающая выборка с образцами классов. Алгоритм кластеризации основан на подобии образов и размещает близкие образы в один кластер. Известны случаи применения кластеризации для извлечения знаний, сжатия данных и исследования свойств данных.

Аппроксимация функций. Предположим, что имеется обучающая выборка ( ), которая генерируется неизвестной функцией, искаженной шумом. Задача аппроксимации состоит в нахождении оценки этой функции.

Предсказание (прогноз). Пусть заданы N дискретных отсчетов в последовательные моменты времени . Задача состоит в предсказании значения в момент . Прогнозы имеют значительное влияние на принятие решений в бизнесе, науке и технике.

Оптимизация. Задачей оптимизации является нахождение решения, которое удовлетворяет системе ограничений и максимизирует или минимизирует целевую функцию

Каждый нейрон характеризуется своим текущим состоянием по аналогии с нервными клетками головного мозга, которые могут быть возбуждены или заторможены. Он обладает группой синапсов – однонаправленных входных связей, соединенных с выходами других нейронов, а также имеет аксон – выходную связь данного нейрона, с которой сигнал (возбуждения или торможения) поступает на синапсы следующих нейронов. Общий вид искусственного нейрона приведен на рисунке 1.3.

 

 

Рисунок 1.3 – Модель искусственного нейрона

 

Искусственный нейрон в первом приближении имитирует свойства биологического нейрона. Множество входных сигналов, обозначенных поступает на искусственный нейрон. Эти входные сигналы, в совокупности обозначаемые вектором Х, соответствуют сигналам приходящим в синапсы биологического нейрона. Каждый синапс характеризуется величиной синаптической связи или ее весом .

Каждый сигнал умножается на соответствующий вес и поступает на суммирующий блок. Каждый вес соответствует «силе» одной биологической синаптической связи. (Множество весов в совокупности обозначаются вектором W). Суммирующий блок, соответствующий телу биологического элемента, складывает взвешенные входы алгебраически, создавая величину S. Таким образом, текущее состояние нейрона определяется как взвешенная сумма его входов:

 

. (1.1)

 

Выход нейрона есть функция его состояния:

 

, (1.2)

 

где f – активационная функция, моделирующая нелинейную передаточную характеристику биологического нейрона и представляющая нейронной сети большие возможности.

 

1.3.3.2 Свойства нейросетей

 

Нейронная сеть представляет собой совокупность нейроподобных элементов, определенным образом соединенных друг с другом и с внешней средой с помощью связей, определяемых весовыми коэффициентами. В зависимости от функций, выполняемых нейронами в сети, можно выделить три их типа:

1) входные нейроны, на которые подается вектор, кодирующий входное воздействие или образ внешней среды, в них обычно не осуществляется вычислительных процедур, а информация передается путем изменения активации;

2) выходные нейроны, выходные значения которых представляют выходы нейронной сети; преобразования в них осуществляются по выражениям (1.1), (1.2). Несут важную функцию приведения значения выхода сети в требуемый промежуток (осуществляется это с помощью функции активации);

3) промежуточные нейроны, составляющие основу нейронных сетей, преобразования в которых выполняются также по выражениям (1.1), (1.2).

В большинстве нейронных моделей тип нейрона связан с его расположением в сети. Если нейрон имеет только выходные связи, то это входной нейрон, если наоборот – выходной нейрон. Однако возможен случай, когда выход топологически внутреннего нейрона рассматривается как часть выхода сети. В процессе функционирования сети осуществляется преобразование входного вектора в выходной, некоторая переработка информации. Конкретный вид выполняемого сетью преобразования данных обусловливается не только характеристиками нейроподобных элементов, но и особенностями ее архитектуры, а именно топологией межнейронных связей, выбором определенных подмножеств нейроподобных элементов для ввода и вывода информации, способами обучения сети, наличием или отсутствием конкуренции между нейронами, направлением и способами управления и синхронизации передачи информации между нейронами.

 

1.3.3.3 Классификация нейронных сетей

 

С точки зрения топологии можно выделить три основных типа нейронных сетей:

1) полносвязные;

2) многослойные или слоистые ;

3) слабосвязные (с локальными связями.

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

В многослойных нейронных сетях нейроны объединяются в слои. Слой содержит совокупность нейронов с едиными входными сигналами. Число нейронов в слое может быть любым и не зависит от количества нейронов в других слоях. В общем случае сеть состоит из Q слоев, пронумерованных слева направо. Внешние входные сигналы подаются на входы нейронов входного слоя (его часто нумеруют как нулевой), а выходами сети являются выходные сигналы последнего слоя. Кроме входного и выходного слоев в многослойной нейронной сети есть один или несколько скрытых слоев. Связи от выходов нейронов некоторого слоя q к входам нейронов следующего слоя (q+1) называются последовательными. Внутри одного слоя используется одна и та же функция активации.

В свою очередь, среди многослойных нейронных сетей выделяют следующие типы:

1) Монотонные. Это частный случай слоистых сетей с дополнительными условиями на связи и нейроны. Каждый слой, кроме последнего (выходного), разбит на два блока: возбуждающий и тормозящий. Связи между блоками тоже разделяются на тормозящие и возбуждающие. Если от нейронов блока А к нейронам блока В ведут только возбуждающие связи, то это означает, что любой выходной сигнал блока является монотонной неубывающей функцией любого выходного сигнала блока А. Если же эти связи только тормозящие, то любой выходной сигнал блока В является невозрастающей функцией любого выходного сигнала блока А. Для нейронов монотонных сетей необходима монотонная зависимость выходного сигнала нейрона от параметров входных сигналов.

2) Сети без обратных связей. В таких сетях нейроны входного слоя получают входные сигналы, преобразуют их и передают нейронам первого скрытого слоя, и так далее вплоть до выходного, который выдает сигналы для интерпретатора и пользователя. Если не оговорено противное, то каждый выходной сигнал q-го слоя подастся на вход всех нейронов (q+1)-го слоя; однако возможен вариант соединения q-гo слоя с произвольным (q+p)-м слоем.

Среди многослойных сетей без обратных связей различают полносвязные (выход каждого нейрона q-гo слоя связан с входом каждого нейрона (q+1)-го слоя) и частично полносвязные. Классическим вариантом слоистых сетей являются полносвязные сети прямого распространения.

3) Сети с обратными связями. В сетях с обратными связями информация с последующих слоев передается на предыдущие. Среди них, в свою очередь, выделяют следующие:

· слоисто-циклические, отличающиеся тем, что слои замкнуты в кольцо: последний слой передает свои выходные сигналы первому; все слои равноправны и могут как получать входные сигналы, так и выдавать выходные;

· слоисто-полносвязанные состоят из слоев, каждый из которых представляет собой полносвязную сеть, а сигналы передаются как от слоя к слою, так и внутри слоя; в каждом слое цикл работы распадается на три части: прием сигналов с предыдущего слоя, обмен сигналами внутри слоя, выработка выходного сигнала и передача к последующему слою;

· полносвязанно-слоистые, по своей структуре аналогичные слоисто-полносвязанным, но функционирующие по-другому: в них не разделяются фазы обмена внутри слоя и передачи следующему, на каждом такте нейроны всех слоев принимают сигналы от нейронов как своего слоя, так и последующих.

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

Существуют бинарные и аналоговые сети. Первые из них оперируют только двоичными сигналами, и выход каждого нейрона может принимать значение либо логического ноля (заторможенное состояние), либо логической единицы (возбужденное состояние). Еще одна классификация делит нейронные сети на синхронные и асинхронные. В первом случае в каждый момент времени лишь один нейрон меняет свое состояние, во втором – состояние меняется сразу у целой группы нейронов, как правило, у всего слоя. Алгоритмически ход времени в нейронных сетях задается итерационным выполнением однотипных действий над нейронами.

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

Однослойные искусственные нейронные сети- это простейшая сеть состоит из группы нейронов, образующих слой, как показано в правой части рисунка 1.4. Вершины-круги слева служат лишь для распределения входных сигналов. Они не выполняют каких-либо вычислений, и поэтому не будут считаться слоем. По этой причине они обозначены кругами, чтобы отличать их от вычисляющих нейронов, обозначенных квадратами. Каждый элемент из множества входов Х отдельным весом соединен с каждым искусственным нейроном. А каждый нейрон выдает взвешенную сумму входов в сеть. В искусственных и биологических сетях многие соединения могут отсутствовать, все соединения показаны в целях общности. Могут иметь место также соединения между выходами и входами элементов в слое. Удобно считать веса элементами матрицы W. Матрица имеет n строк и m столбцов, где n – число входов, а m – число нейронов. Например, – это вес, связывающий второй вход с третьим нейроном.

 

 

Рисунок 1.4 – Простейшая однослойная нейронная сеть

 

Многослойные искусственные нейронные сети

 

Более крупные и сложные нейронные сети обладают, как правило, и большими вычислительными возможностями. Хотя созданы сети всех конфигураций, какие только можно себе представить, послойная организация нейронов копирует слоистые структуры определенных отделов мозга.

Оказалось, что такие многослойные сети обладают большими возможностями, чем однослойные, и в последние годы были разработаны многообразные алгоритмы для их обучения. Многослойные сети могут образовываться каскадами слоев. Выход одного слоя является входом для последующего слоя. Подобная сеть показана на рисунке 1.5.

Многослойные сети не могут привести к увеличению вычислительной мощности по сравнению с однослойной сетью лишь в том случае, если активационная функция между слоями не будет линейной. Вычисление выхода слоя заключается в умножении входного вектора на первую весовую матрицу с последующим умножением (если отсутствует нелинейная активационная функция) результирующего вектора на вторую весовую матрицу. Так как умножение матриц ассоциативно, то двухслойная линейная сеть эквивалентна одному слою с весовой матрицей, равной произведению двух весовых матриц. Следовательно, любая многослойная линейная сеть может быть заменена эквивалентной однослойной сетью.

 

 

Рисунок 1.5 – Пример многослойной нейронной сети

 

1.3.3.4 Обучение искусственных нейронных сетей

 

Сеть обучается, чтобы для некоторого множества входов давать требуемое (или, по крайней мере, сообразное с ним) множество выходов. Каждое такое входное (или выходное) множество рассматривается как вектор. Обучение осуществляется путем последовательного предъявления входных векторов с одновременной подстройкой весов в соответствии с определенной процедурой. В процессе обучения веса сети постепенно становятся такими, чтобы каждый входной вектор вырабатывал выходной вектор. Различают алгоритмы обучения с учителем и без учителя.

Обучение с учителем предполагает, что для каждого входного вектора существует целевой вектор, представляющий собой требуемый выход. Вместе они называются обучающей парой. Обычно сеть обучается на некотором числе таких обучающих пар. Предъявляется выходной вектор, вычисляется выход сети и сравнивается с соответствующим целевым вектором, разность (ошибка) с помощью обратной связи подается в сеть, и веса изменяются в соответствии с алгоритмом, стремящимся минимизировать ошибку. Векторы обучающего множества предъявляются последовательно, вычисляются ошибки, и веса подстраиваются для каждого вектора до тех пор, пока ошибка по всему обучающему массиву не достигнет приемлемо низкого уровня.

Обучение без учителя не нуждается в целевом векторе для выходов и, следовательно, не требует сравнения с предопределенными идеальными ответами. Обучающее множество состоит лишь из входных векторов. Обучающий алгоритм подстраивает веса сети так, чтобы получались согласованные выходные векторы, то есть, чтобы предъявление достаточно близких входных векторов давало одинаковые выходы. Процесс обучения, следовательно, выделяет статистические свойства обучающего множества и группирует сходные векторы в классы. Предъявление на вход вектора из данного класса даст определенный выходной вектор, но до обучения невозможно предсказать, какой выход будет производиться данным классом входных векторов. Следовательно, выходы подобной сети должны трансформироваться в некоторую понятную форму, обусловленную процессом обучения.

Одной из первых искусственных сетей, способных к перцепции (восприятию)

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

Рассмотрим процедуру обучения персептрона, состоящего только из одного нейрона (рисунок 1.6).

 

 

Рисунок 1.6 – Однонейронный персептрон с n входами

 

Будем считать, что персептрон имеет дополнительный вход , который всегда равен 1. В таком случае, пороговое смещение и

 

 

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

Обучение персептрона – это обучение с учителем, то есть должен существовать набор векторов , называемый обучающей выборкой. Здесь – примеры входных образов, для которых заранее известна их принадлежность к одному из двух данных классов.

Персептрон называют обученным на данной обучающей выборке, если при подаче на вход каждого вектора на выходе всякий раз получается соответствующее значение . Предложенный Ф. Розенблатом метод обучения состоит в итерационной подстройке весовых коэффициентов , последовательно уменьшающей выходные ошибки.

Алгоритм включает несколько шагов.

Шаг 0. Проинициализировать весовые коэффициенты небольшими случайными значениями.

Шаг 1. Подать на вход персептрона один из обучающих векторов и вычислить выход y.

Шаг 2. Если выход правильный , перейти на шаг 4. Иначе вычислить ошибку – разницу между верным и полученным значениями выхода: .

Шаг 3. Весовые коэффициенты модифицируются по следующей формуле: . Здесь t и t+1 – номера соответственно текущей и следующей итераций; ν – коэффициент скорости обучения, ( ); – i-я компонента входного вектора .

Шаг 4. Шаги 1–3 повторяются для всех обучающих векторов. Один цикл последовательного предъявления всей выборки называется эпохой. Обучение завершается по истечении нескольких эпох, когда сеть перестанет ошибаться.

Замечание 1. Коэффициент скорости обучения ν является параметром данного алгоритма. Как правило, его выбирают из диапазона [0.5, 0.7]. В некоторых случаях (при большом объеме обучающей выборки) целесообразно постепенно уменьшать значение ν, начиная, например, с 1.

Замечание 2. Используемая на шаге 3 формула модифицирует только весовые коэффициенты, отвечающие ненулевым значениям входов , поскольку только они влияли на величину , а, следовательно, и на значение у.

Алгоритм бучения однослойного персептрона очень прост. Однако долгие годы не удавалось обобщить этот алгоритм на случай многослойных сетей, что спровоцировало в научных кругах значительный спад интереса к нейронным сетям. Только в 1986 году Румельхарт разработал эффективный алгоритм корректировки весов, названный алгоритмом обратного распространения ошибок.

Нейронные сети обратного распространения – это современный инструмент поиска закономерностей, прогнозирования, качественного анализа. Такое название – сети обратного распространения – они получили из-за используемого алгоритма обучения, в котором ошибка распространяется от выходного слоя к входному, то есть в направлении, противоположном направлению распространения сигнала при нормальном функционировании сети.

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

В большинстве практических приложений оказывается достаточно рассмотрения двухслойной нейронной сети, имеющей входной (скрытый) слой нейронов и выходной слой (рисунок 1.6).

 

 

Рисунок 1.6 – Нейронная сеть обратного распространения

 

Алгоритм обучения сети обратного распространения ошибки:

Шаг 1. Инициализация сети.

Весовым коэффициентам присваиваются малые случайные значения.

Шаг 2. Вычисление текущего выходного сигнала.

На вход сети подается один из образов обучающей выборки и определяются значения выходов всех нейронов нейросети.

Шаг 3. Настройка синаптических весов.

Шаг 4. Шаги 2–3 повторяются для всех обучающих векторов. Обучение завершается по достижении для каждого из обучающих образов значения функции ошибки, не превосходящего параметр точности обучения или после максимально допустимого числа итераций.

В выпускной квалификационной работе для разработки модели, обеспечивающей повышение эффективности процесса диагностики острого панкреатита, будет использовано нейросетевое моделирование и сети Петри. Для этого была сформирована выборка, состоящая из 71 истории болезни пациентов с острым панкреатитом, из них 22 – тяжёлой формы, 33 – нетяжёлой формы, 16-другая патология. Данные были взяты из лечебно-диагностического центра города Алексеевки Белгородской области.

 

1.4 Клинические характеристики больных с острым панкреатитом

 

В результате обследования 71 пациента в возрасте от 23 до 78 года, у 55 из них был выявлен острый панкреатит различной формы тяжести (нетяжелой – у 33 человек, тяжелой – у 22 человек, у - 16 человек была выявлена другая патология.

 

 

- нетяжелая форма; - тяжелая форма; - друрая патология

 

Рисунок 1.7 – Зависимость заболевания от возрастной группы

 

В результате анализ зависимости течения заболевания от возрастной группы пациентов получается, что частота заболевания приходится на среднюю возрастную группу пациентов (рисунок 1.7). Также можно заметить, что женщины в возрасте от 20 до 45 лет болеют чаще острым панкреатитом (рисунок 1.8), чем мужчины этой же возрастной категории (рисунок 1.9), а в возрасте от 46 до 60 лет количество болеющих мужчин острым панкреатитом резко увеличивается. Можно предположить, что мужчины более склонны к употреблению алкоголя, что приводит к данным последствиям.

 

 

Рисунок 1.8 – Зависимость заболевания острый панкреатит в группе женщин

 

 

Рисунок 1.9 – Зависимость заболевания острый панкреатит по группе мужчин

 

Сводные данные по клиническим характеристикам острого панкреатита представлены на рисунке 1.10.

 

 

1 – интенсивные опоясывающие боли; 2 – многократная рвота;

3 – симптомы Каменчика и Мейробсона; 4 – симптом Керте; 5 – симптом Бонде;

6 – цианоз кожи; 7 – эритематозные кожные узелки; 8 – тахикардия/тахипное;

9 – алкогольный анамнез.

 

Рисунок 1.10 – Значимость симптомов при различных формах острого панкреатита

Как видно из рисунка 1.10 наиболее выраженным признаком острого панкреатита являются интенсивные боли опоясывающего характера, а наиболее информативными является триада симптомов (Керте, Каменчика и Мейробсона, Бонде), т. к. они характерны и для тяжелой, и для нетяжелой формы острого панкреатита. Но для тяжелой формы данные симптомы более выражены. Симптомы тахикардии и тахипное характерны для трех клинических форм. Так же из гистограммы видно, что алкогольный анамнез довольно показателен при постановке диагноза острый панкреатит.

Сводные данные по клиническим исследованиям крови и мочи представлены на рисунке 1.11.

 

 

Рисунок 1.11 – Клинические проявления при различных формах острого панкреатита

 

Из рисунка 1.11 видно, что наиболее информативными и выраженными клиническими проявлениями являются два показателя – это повышенное содержание амилазы в крови и в моче, причем следует отметить, что данные показатели тем выше, чем сильнее тяжесть протыкаемого процесса. Показатель лейкоцитов является часто встречаемым признаком, но его информативность не значительна, так как данный показатель присутствует при любом воспалительном процессе, протекающем в организме человека.

На рисунке 1.12 представлена диаграмма УЗИ признаков острого панкреатита при различных формах заболевания.

 

 

Рисунок 1.12 – УЗИ признаки острого панкреатита при различных формах заболевания

 

Проведя анализ диаграммы УЗИ признаков острого панкреатита, можно сказать, что некоторые признаки такие, как наличие свободной жидкости в брюшной полости, пониженная эхогенность и отек панкреотических тканей, характерены только для тяжелой формы острого панкреатита. Что играет немаловажную роль при дальнейшем выборе тактики лечения. Остальные показания характерны для тяжелой и нетяжелой формы панкреатита.

 

 


2 Разработка моделей для постановки диагноза острый панкреатит

2.1 Алгоритм имитационного моделирования процесса диагностики острого панкреатита

 

На основании данных, изложенных в первой главе, методов исследования (рисунок1.2) разработана сетевая имитационная модель диагностики острого панкреатита, которая представлена на рисунке 2.1. Функциональное назначение условия срабатывания переходов указаны в таблице 2.1

 

Таблица 2.1 – Функциональные значения условий переходов

Наименование события Функциональное значение позиции (события)
b 0 Начало процесса диагностики
b 1 Исследования клинических признаков заболевания острого панкреатита
b 2 Исследования лабораторных признаков заболевания
b 3 Обзорная рентгенография
b 4 Ультразвуковые исследования (УЗИ)
b 5 Фиброгастродуаденоскопия (ФГС)
b 6 Спиральная компьютерная томография (КТ)
b 7 Магниторезонансная томография (МРТ)
b 8 Лапароскопия
b 9 Анализ данных и постановка диагноза

 

 

Рисунок 2.1 – Имитационная модель для

диагностики острого панкреатита

 

Динамические свойства сети Петри описываются с помощью маркировки М. Маркировка М- это присвоение неких абстрактных объектов, называемых метками позициям N – схемы, причем количество меток, соответствующее каждой позиции, может меняться.

Таким образом, маркированная сеть процесса диагностики заболевания острый панкреатит будет описана в виде пятерки элементов <B, D, I, O, M>, где

· B – это конечное число символов-позиций;

· D – переходы;

· I – входная функция;

O – выходная функция.

B = < b0, b1, b2, b3, b4, b5, b6, b7, b8, b9>,

D = <d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, d11, d12, d13, d14, d15 ,d16, d17>

В таблице 2.2 представлены входы и выходы переходов.

 

Таблица 2.2 – Входные и выходные позиции переходов

Входные позиции Выходные позиции Входные позиции Выходные позиции
I(d1) = {b0}, O(d1) = {b1,b2}, I(d10) = {b6}, O(d10) = {b8},
I(d2) = {b1, b2}, O(d2) = {b4}, I(d11) = {b4}, O(d11) = {b9},
I(d3) = {b1, b2 }, O(d3) = {b3}, I(d12) = {b5}, O(d12) = {b9},
I(d4) = {b4}, O(d4) = {b4}, I(d13) = {b5}, O(d13) = {b8}.
I(d5) = {b4}, O(d5) = {b7}, I(d14) = {b7}, O(d14) = {b8},
I(d6) = {b4}, O(d6) = {b5}, I(d15) = {b8}, O(d15) = {b9}
I(d7) = {b5}, O(d7) = {b6}, I(d16) = {b8}, O(d16) = {b9}
I(d8) = {b5}, O(d8) = {b7}, I(d17) = {b7}, O(d17) = {b9}
I(d9) = {b6}, O(d9) = {b7},    

 

Начальная маркировка имитационной модели M1 = {1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, в графическом виде представлена на рисунке 2.2. При такой разметке сети единственным готовым к срабатыванию переход является d1. Срабатывание перехода приводит к смене разметки M1d1 M2, где M2= {0, 1, 1, 0, 0, 0, 0, 0, 0, 0}.

 

 

Рисунок 2.2 – Начальная маркировка Сети Петри для диагностики острого панкреатита

 

После срабатывания перехода d1 может сработать переход d2 или d3. Срабатывание перехода d2 приведёт к новой разметке M32 = {0, 0, 0, 0, 1, 0, 0, 0, 0, 0}. При срабатывании в первую очередь перехода d3 маркировка M33 будет следующей M33 = {0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, после чего может сработать только один переход d4, который приводит к разметке M4 = {0, 0, 0, 0, 1, 0, 0, 0, 0, 0}. Аналогично разметка M31. В такой ситуации могут срабатывать переходы d5 или d6,или d7 или d11.

В зависимости от того какой переход в первую очередь сработает получаем маркировку M55 = {0, 0, 0, 0, 0, 0, 0, 1, 0, 0} или M56 = {0, 0, 0, 0, 0, 1, 0, 0, 0, 0}или. M57 = {0, 0, 0, 0, 0, 1, 0, 0, 0, 0}, или M511 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 1}.

Работа сети организовано таким образом, что какой бы переход не срабатывал в результате получается маркировка Mn = {0, 0, 0, 0, 0, 0, 0, 1}. То есть последним событием будет постановка диагноза острого панкреатита (позиция b9). Графическое представление этого события изображено на рисунке 2.6.

 

 

Рисунок 2.6 – Сетевая модель диагностики острого панкреатита

 

Разработанная сеть Петри достижима, безопасна, так как она 1 – ограничена, достижима. Все переходы L1 – активны (потенциально запускаемые), так как существует последовательности запусков в маркированной СП, начинающиеся с маркировки М0. СП необратима, так ка она не может вернуться к начальной маркировке (состоянию), покрываема и неустойчива.

Правила функционировании, разработанной СП, позволяют отслеживать состояние диагностики пациента с подозрением на острый панкреатит и генерировать варианты управления посредством имитации.

 

2.2 Оценка состояния пациентов с заболеваниями острого панкреатита на основе нейросетевого моделирования

 

Для построения нейронных сетей для диагностики острого панкреата тяжелой, нетяжелой формы и другой патологии, был построен ансамбль нейросетей, состоящий из 17 моделей. Для построения использовался пакет STATISTICA 10 и алгоритм обучения с обратным распознаванием ошибки. Сети обучались на 56 примерах, 9 примеров было выделено в качестве тестовых, из них 3 – острый панкреатит тяжелой формы, 4 – острый панкреатит нетяжелой формы, 2 – другая патология, и 6 в качестве контрольных, из них 2– острый панкреатит тяжелой формы, 3 – острый панкреатит нетяжелой формы, 1 – другая патология.

Входами сетей являются вектора классификационных признаков заболеваний острого панкреатита: алкогольный анамнез, интенсивные опоясывающие боли, многократная рвота, симптом Мэйо-Робсона, симптом Карте, симптом Бонде, цианоз кожи, тахикардия/артериальная гипотензия, эритематозные кожные узелки, содержание Са, активность амилазы в крови, содержание лейкоцитов, активность амилазы в моче, повышение билирубина, нечеткие контуры, наличие свободной жидкости в брюшной полости, отек панкреатических тканей, Х18 – Х20 – размеры поджелудочной железы (тело, головка, хвост соответственно), Х21 – Х23 - эхогенность.

Сети имеют 3 выхода, соответствующих классу заболеваний: острый панкреатит тяжелой формы, нетяжелой формы и другая патология.

Как уже отмечалось было построено 17 моделей. Обучение проводилось в следующих режимах:

НС№ 1 – равномерное упрощение сети: сокращение числа входных сигналов (4), а также сокращение числа нейронов в первом скрытом слое (4);

НС№ 2 – равномерное упрощение сети: сокращение числа входных сигналов (4) и сокращение числа нейронов в первом скрытом слое(4), а также удаление синапсов (17);

НС№ 3 – сокращение числа нейронов в первом скрытом слое (3), а также удаление синапсов (20);

НС№ 4 – сокращение числа нейронов в первом скрытом слое (3);

НС№ 5 – равномерное упрощение сети: сокращение числа входных сигналов (8), сокращение числа нейронов в первом скрытом слое (3);

ИНС№ 6 – равномерное упрощение сети: сокращение числа входных сигналов (8), сокращение числа нейронов в первом скрытом слое (3), а также удаление синапсов (16);

НС№ 7 – равномерное упрощение сети: сокращение числа входных сигналов (4), а также сокращение числа нейронов в первом скрытом слое (1) и сокращение числа нейронов во втором скрытом слое (1);

НС№ 8 – равномерное упрощение сети: равномерное упрощение сети: сокращение числа входных сигналов (9) и сокращение числа нейронов во втором скрытом слое (1), а также удаление синапсов (13);

НС№ 9 – равномерное упрощение сети: сокращение числа входных сигналов (7), а также сокращение числа нейронов в первом скрытом слое (3);

НС№ 10 – равномерное упрощение сети: сокращение числа входных сигналов (11), а также сокращение числа нейронов в первом скрытом слое (4);

НС№11 – модель на основе многослойного персептрона с 3 входами и двумя промежуточными слоями. Упрощение сети: сокращение числа нейронов в первом скрытом слое (2);

ИНС 12 – равномерное упрощение сети: сокращение числа входных сигналов (10) и сокращение числа нейронов в первом скрытом слое (6);

НС №13 – число входных сигналов 23 число нейронов в скрытом слое12.

НС№ 14 – равномерное упрощение сети: сокращение числа входных сигналов (20), а также сокращение числа нейронов в первом скрытом слое (1) и сокращение числа нейронов во втором скрытом слое(3)

НС№ 15 – сокращение числа входных сигналов (7);

НС№ 16- сокращение числа входных сигналов(7), а также удаление синапсов (18);

НС№ 17 – равномерное упрощение сети: сокращение числа входных сигналов (5), а также сокращение числа нейронов в первом скрытом слое (4).

Результаты моделирования представлены в таблице 2.2.

Анализируя полученные результаты, мы пришли к выводу, что наилучшей является НС№11и НС№13, т. к. обладают наибольшей достоверностью постановки диагноза


Таблица 2.2 – Сравнительная характеристика эффективности разработанных ИНС

№ сети Правильно распознанные примеры в тестовой выборке Правильно распознанные примеры в контрольной выборке Число скрытых слоев Кол-во удаленных входов (из 23) Кол-во удаленных нейронов 1 скрытого слоя (из 12) Кол-во удаленных нейронов 2 скрытого слоя (из 8) Кол-во удаленных синапсов Прогноз сети, %
Кол-во % Кол-во %
- 0 из 176 63,23
- 17 из 176 63,21
- 20 из 234 63,25
- 0 из 234 63,12
0 из 162 31,42
16 из 162 63,32
0 из 242 44,12
13 из 242 56,35
- 0 из 171 69,6
- 0 из 120 56,35
0 из 334 75,23
- 0 из 96 56,43
- 0 из 312 87,5

Продолжение таблицы 2.2 на странице 47

Продолжение таблицы 2.2

№ сети Правильно распознанные примеры в тестовой выборке Правильно распознанные примеры в контрольной выборке Число скрытых слоев Кол-во удаленных входов (из 23) Кол-во удаленных нейронов 1 скрытого слоя (из 12) Кол-во удаленных нейронов 2 скрытого слоя (из 8) Кол-во удаленных синапсов Прогноз сети, %
Кол-во % Кол-во %
0 из 66 63,12
- 0 из 228 63,23
- 18 из 228 44,29
- 0 из 168 56,37

 

Таким образом, для классификации заболеваний острого панкреатита были выбраны две нейронные сети на базе многослойного персептрона. Архитектура выбранны нейронных сетей представлены на рисунке 2.7 и рисунке 2.8. где

F1.1, F2.1 – острый панкреатит тяжелой формы;

F1.2, F2.2 – острый панкреатит нетяжелой формы;

F1.3, F2.3 – пациент болен другой патологией.

X1-X23-клинические, лабораторные и УЗИ признаки, а именно:

Х1 – алкогольный анамнез, Х2 – интенсивные опоясывающие боли, Х3 – многократная рвота, Х4 – симптом Мэйо-Робсона, Х5 – симптом Карте, Х6- симптом Бонде, Х7-цианоз кожи, Х8-тахикардия/артериальная гипотензия, Х9-эритематозные кожные узелки, Х10-содержание Са, Х11 – активность амилазы в крови, Х12 – содержание лейкоцитов, Х13 – активность амилазы в моче, Х14 – повышение билирубина, Х15 – нечеткие контуры, Х16 – наличие свободной жидкости в брюшной полости,Х17 – отек панкреатических тканей, Х18-Х20- размеры поджелудочной железы (тело, головка, хвост соответственно), Х21 – эхогенность в норме, Х22 – эхогенность повышена, Х23 – эхогенность понижена.

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

 

Рисунок 2.7 – Архитектура нейронной сети №11

 

 

 

Рисунок 2.8 – Архитектура нейронной сети №13

 

Анализ НС№13 показал, что достоверность постановки диагноза для острого панкреатита тяжелой формы равна 100%, для нетяжелой формы 71,43%, а для другой патологии 50%.Аналогичный анализ НС11 показал, что достоверность постановки диагноза острый панкреатит тяжелой формы равен 80%, нетяжелой формы 100%, другая патология 75%.

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

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

 

Таблица 2.3- Прогнозирование заболеваний острого панкреатита по модели многослойного персептрона

Нейронная сеть Выходы Количество примеров в тестовом множестве Количество распознанных примеров в тестовом множестве Количество примеров в контрольном множестве Количество распознанных примеров в контрольном множестве
Кол-во % Кол-во %
НС№13 F1.1
F1.2 75,23 71,43
F1.3
НС№11 F2.1 66,7
F2.2
F2.3

 

Фрагмент математической модели НС№11

Скрытый слой:

Y1.1= 0,413*X1 – 0,892*X2 + 0,391*X3 – 1,176*X4 + 0,978*X5 +0,281*X6 + 0,031*X7 + 1,118*X8 + 0,217*X9 – 1,207*X10 – 0,105*X11 + 1,211*X12 + 0,279*X13 + 0,153*X14 – 0,081*X15 – 1,133*X16 + 0,144*X17 + 0,554*X18 – 0,649*X19 + 0,176*X20 – 0,079*X21 – 1,252X22 – 0,451*X23 – 0,015;

Y2.12=0,087*X1 + 0,268*X2 + 0,023*X3 – 0,847*X4 – 1,731*X5 – 0,190*X6 + 0,324*X7 – 0,040*X8 – 0,779*X9 + 0,373*X10 – 0,653*X11 –0,237*X12 + 0,258*X1 + 0,113*X14 – 0,573*X15 + 0,623*X1 + 0,655*X17 + 0,062*X18 – 0,990*X19 + 0,615*X20 + 1,028*X21 + 0,175*X22 – 0,602*X23 – 0,11505.

 

Выходной слой:

F1.1= 0,293*Y1.1 +1,508*Y1.2 + 0,645*Y1.3 – 4,774*Y1.4 – 0,190*Y1.5 + 0,784*Y1.6 + 0,489*Y1.7 – 0,968*Y1.8 – 0,970* Y1.9 + 0,450*Y1.10 – 2,019*Y1.11 + 0,026*Y1.12 + 0,11826.

 

F1.2= 1,315*Y1.1 – 0,197* Y1.2 + 1,488*Y1.3 – 4,907*Y1.4 – 1,802*Y1.5 – 0,809*Y1.6 + 1,190*Y1.7 – 2,126*Y1.8 + 0,499*Y1.9 – 6,161*Y10 – 3,247*Y11 – 0,322*Y12+2,813;

 

F1.3= - 1,161* Y1.1+0,673* Y1.2+1,345* Y1.3-1,522* Y1.4 – 0,461* Y1.5 + 2,217* Y1.6 – 0,227*Y1.7 + 1,372* Y1.8 – 0,109Y1.9 + 6,520Y1.10 – 0,0,195*Y1.11 + 1,403* Y1.12 + 0,494.

 

Фрагмент математической модели НС№13

Скрытый слой 1:

Y2.1= 0,253*X1 + 0,984*X2 – 0,535*X3 – 0,368*X4 + 0,572*X5 – 0,589*X6 + 1,030*X7 – 0,761*X8 + 0,261*X9 – 0,083*X10 + 0,085*X11 + 0,114*X12 – 0,928*X13 + 0,860*X14 + 0,824*X15 – 0,909*X16 – 0,696*X17 + 0,638*X18 – 0,432*X19 + 0,377*X20 + 0,187*X21 + 0,789*X22 + 0,671X23 – 0.319.

Y2.10= - 0,706*X1 – 0,145*X2 + 0,737*X3+ 0,649*X4 + 0,589*X5 + 0,494*X6 + 0,897*X7 – 0,818*X8 + 0,552*X9 + 0,433*X10 + 0,870*X11 – 0,640*X12 + 0,349*X13 + 0,879*X14 + 0,386*X15 + 0,324*X16 + 0,378*X17 – 0,061*X18 – 0,592*X19 – 0,269*X20 – 0,135*X21 – 0,202*X22 + 0,095X23 – 1,323.

 

 

Скрытый слой 2:

Z2.1= - 1,022*Y1 + 1,348*Y2 – 1,271*Y3 + 1,668*Y4 – 0,667*Y5 – 0,023*Y6 + 0,876*Y7 + 1,215*Y8 + 0,498*Y9 – 0,438Y10 + 0,278.

Z2.8 = - 0,625*Y1 + 0,012*Y2 – 1,193*Y3 + 1,539*Y4 + 0,121*Y5 + 0,895*Y6 – 0,158*Y7 – 0,639*Y8 + 0,145*Y9 + 0,184 Y10 + 0,713

 

Выходной слой

 

F2.1 = -3,475*Z2.1 – 0,445*Z2.2 + 0,415*Z2.3 + 2,994*Z2.4 + 0,442*Z2.5 + 0,359*Z2.6 – 0,712*Z2.7 – 0,631*Z2.8 + 0,487;

 

F2.2= -1,774*Z2.1 + 1,054*Z2.2 – 2,476*Z2.3 + 3,293*Z2.4 – 1,252*Z2.5 – 2,034*Z2.6 – 3,083*Z2.7 – 2,462*Z2.8 + 1,524;

 

F2.3= - 0,829*Z2.1 + 0,616*Z2.2 + 3,671*Z2.3 + 0,477*Z2.4 + 1,993*Z2.5 – 0,614*Z2.6 + 3,372*Z2.7 – 0,184*Z2.8 + 1,219.

F1.1 , F2.1 – тяжёлая форма острого панкреатита ,

F1.2, F2.2 – нетяжёлая форма острого панкреатита,

F1.3, F2.3 – другая патология.

Разработанные нейросети позволяют достаточно точно прогнозировать новые наблюдения, которые использовались для разработки информационно-программного обеспечения для диагностики острого панкреатита.

 


3 Реализация моделей и алгоритмов при автоматизации управления процессом диагностики заболевания острый панкреатит

 

Для создания информационно-программного обеспечения для диагностики острого панкреатита была использована среда программирования IDE Borland Delphi 7.

Delphi – это комбинация нескольких важнейших технологий:

· Высокопроизводительный компилятор в машинный код;

· Объектно-ориентированная модель компонент;

· Визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;

· Масштабируемые средства для построения баз данных.

Структурная схема, созданной программы с использованием Delphi 7, представленная на рисунке 3.1. Взаимодействие функциональных блоков программы изображено на рисунке 3.2

Постановка диагноза осуществляется на основе клинических признаков, результатов лабораторных и ультразвукового исследования.

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

 

 


 

Рисунок 3.1 – Структурная схема системы диагностики острого панкреатита

 


 

Рисунок 3.2 – Взаимодействие функциональных блоков

 

UAbout – это модуль «О программе» Представляет пользователю данные о создателях и версии программы.

UBD – модуль, который содержит методы и особенности работы с базой данных.

UChoose – модуль, который и позволяет пользователю выбирать метод получения информации о пациентах: извлечь из базы данных, либо путем введения нового пациента в базу.

UMain – это модуль основной формы, в котором указываются данные пациента, клинические, лабораторные признаки и данные УЗИ. При нажатии на соответствующую кнопку происходит расчет с помощью нейронных сетей и вынесение результатов.

Модуль UClient позволяет вводить данные о новых пациентах на новой форме.

UData – модуль, который содержит информацию о классах, константах, массивах определенных данных, типах данных, использованных в приложении. Также в этом модуле описаны методы работы нейронных сетей и получение результатов.

Ufirst – это модуль приветствующей формы.

UResult – модуль, при помощи которого пользователю выводятся данные о пациенте, клинических и лабораторных признаков, данных УЗИ.

При запуске программы открывается главное окно, изображенное на рисунке 3.3, которое содержит стандартное главное меню с пунктами «О программе» , «Перейти к диагностике», «Закрыть»

 

 

Рисунок 3.3 – Главное окно программы

 

При нажатии кнопки «О программе» появляется окно,изобаженное на рисунке 3.4 ,с информацией о разработчиках.

 

 

Рисунок 3.4 – Окно «О программе»

 

При выборе кнопки «Перейти к диагностики» появляется окно, изображенное на рисунке 3.5, где предоставляется выбрать пациента.

 

 

Рисунок 3.5 – Выбор пациента

 

При нажатии кнопки «ввести нового пациента» открывается окно, изображенное на рисунке 3.6. После введения данных о пациенте производится их сохранение и переход к диагностике.

 

 

Рисунок 3.6 – Добавление нового пациента

 

В случае нажатия кнопки «получить пациента из бызы» открывается база, которая содержит данные о пациентах, их клинические и лабораторны признаки, данные узи( рисунок 3.7).

 

 

Рисунок 3.7 – База данных с пациентами

 

Когда полученные результаты исследования больного занесены в карту, путём нажатия на подпункты «Диагноз с использованием нейронной сети 1» и «Диагноз с использованием нейронной сети 2» ставятся диагнозы. Решающий диагноз можно получить воспользуясь кнопкой «Окончательный диагноз» (рисунок 3.8). Если недостаточно данных для постановки диагноза, появляется окно с рекомендациями, изображенное на рисунке 3.9. После постановки диагноза, при нажатии кнопки «печать результатов» можно получить все данные о больном в удобной форме и при необходимости распечатать.

 

 

Рисунок3.8- Диагностикаболезни

 

 

Рисунок 3.9 – Окно с рекомендациями

 

При необходимости, нажав на кнопку : «печать результатов» можно получить результат обследования в удобной форме, как изображено на рисунке3.10, и при необходимости распечатать.

 

 

Рисунок3.10 – Результаты обработки

 

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

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

 

4 Организационно-экономическая часть

4.1 Оценка целесообразности разработки программного продукта

 

Появление ЭВМ новых поколений позволило разрабатывать и создавать автоматизированные системы диагностики, профилактики и лечения, экспертные и консультационные системы, облегчающие лечащему врачу прием оптимальных решений при выборе методов диагностики и тактики лечения. В разделе решается задача технико-экономической оценки подсистемы диагностики острого панкреатита тяжело и нетяжелой формы, объективность которой повышается при применении компьютерных технологий.

В основе спроса на предлагаемую разработку лежит определение соответствия товара требованиям рынка, причем не только по техническим, информационным и организационным вопросам, но и по коммерческим условиям реализации.

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

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

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

 

4.2 Выбор и обоснование базовой модели

 

При определении базовой модели должна быть учтена сопоставимость сравниваемых разработок по следующим факторам:

- объем программных средств;

- сложность разработки;

- степень использования стандартных модулей, типовых программ;

- трудоемкость разработки программного продукта (ПП);

- фактор времени;

- уровень цен.

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

Выбор конкурента был произведен на основе сходства принципов функционирования и сфере применения (решаемые с их помощью задачи), основных принципов действия (определение входной и выходной информации). Товаром, отвечающим поставленным задачам, является программа диагностики острого панкреатита, созданная на кафедре САУМС Штыриной Д.И. в 20013 году.

К достоинствам разрабатываемой системы перед базовой можно отнести:

- обслуживание большего числа объектов;

- увеличение скорости обработки;



ости обработки;