Нейросетевая экспертная система медицинской диагностики

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

er. Для запуска модуля Neural Networks необходимо воспользоваться одноименной командой основного меню системы STATISTICA - Statistics. (рисунок 7)

 

 

Рисунок 7. Запуск модуля Neural Networks

 

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

Одним из важнейших вопросов, до сих пор, не решенных современной наукой, является вопрос о структуре нейронный сети, которая была бы способна к воспроизведению искомой многомерной нелинейной зависимости. Да действительно, теорема Колмогорова о полноте, доказанная им еще 1957 году, утверждает, что нейронная сеть способна воспроизвести любую (очень важно - непрерывную) функцию. Однако она не прелагает исследователю рецепта по созданию такой сети. В 1988 году, ряд авторов обобщили теорему Колмогорова и показали, что любая непрерывная функция может быть аппроксимирована трехслойной нейронной сетью с одним скрытым слоем и алгоритмом обратного распространения ошибки с любой степенью точности. Таким образом, в нашем случае положительным аспектом является знание того, что сеть должна быть трехслойной, но опять-таки в распоряжении нет правил, устанавливающих зависимость между "любой степенью точности" и количеством нейронов на промежуточном, так называемом скрытом слое.

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

Модуль Neural Networks системы STATISTICA включает в себя уникальную процедуру, организующую поиск нужной конфигурации сети. Данный инструмент называется Intelligent Problem Solver. Воспользуемся этим инструментом и осуществим поиск нейронной сети, которая будет способна к решению нашей задачи.

 

Рисунок 8. Стартовая панель модуля Neural Networks

 

Во вкладке Quick (Быстрый) данного диалогового окна в разделе Problem Type ( Класс задач) предлагается осуществить выбор того класса задач, с которым мы столкнулись. Нашей целью является построение многомерной зависимости или, другими словами, многомерной нелинейной регрессии. Значит, в разделе Problem Type - Класс задач следует указать Regression (Регрессия).

Определившись с классом задач, необходимо указать переменные для проведения Анализа. Для того чтобы выбрать переменные, воспользуемся кнопкой Variables. При нажатии данной кнопки появляется диалоговое окно Select input (independent), output (dependent) and selector variables (Укажите входные (независимые), выходные (зависимые) и группирующие переменные). В данном диалоговом окне необходимо задать два списка переменных. Continuous outputs (Непрерывные выходящие), в нашем случае, - это переменные Приём в стационаре И-АПФ/АРА, Приём в стационаре БАБ, Приём в стационаре БКК, Приём в стационаре диуретиков и приём в стационае препаратов центрального действия . Continuous inputs (Непрерывные входящие), в нашем примере, - это с 1 по 61 исходный параметр.

 

Рисунок 9. Выбор переменных для анализа

 

В разделе Select analysis (Выбор анализа ) доступны две опции Intelligent Problem Solver и Custom Network Designer. Для автоматического подбора параметров нейронной сети требуется первая опция, которая устанавливается по умолчанию. Для продолжения Анализа необходимо нажать кнопку OK.

На следующем шаге появляется диалоговое окно настройки процедуры Intelligent Problem Solver.

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

В разделе Networks tested (Количество тестируемых сетей) укажем 100, Networks retained (Количество сохраненных сетей) - 10 (Рисунок 10)

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

 

Рисунок 10. Задание количества тестируемых сетей

 

Рисунок 11. Выбор архитектуры сети

 

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

 

Рисунок 12. Указание размеров обучающей, контрольной и тестовой выборок

 

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

Состояние алгоритма поиска отображается в диалоговом окне IPS Training In Progress (Процесс поиска сети).

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

 

3.2 Обработка результатов

 

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