Научная статья на тему 'Нейросетевая фильтрация в джоульметрических системах оценки состояния биологических объектов'

Нейросетевая фильтрация в джоульметрических системах оценки состояния биологических объектов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
141
36
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Геращенко С. И., Геращенко С. М., Мартынов И. Ю.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Нейросетевая фильтрация в джоульметрических системах оценки состояния биологических объектов»

Геращенко С.И., Геращенко С.М., Мартынов И.Ю. НЕЙРОСЕТЕВАЯ ФИЛЬТРАЦИЯ В ДЖОУЛЬМЕТРИЧЕСКИХ СИСТЕМАХ ОЦЕНКИ СОСТОЯНИЯ БИОЛОГИЧЕСКИХ ОБЪЕКТОВ

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

Принцип работы метода нейросетевой фильтрации основан на аппроксимационных способностях нейросетей [1]. Обучая нейросеть исходными данными зашумленного сигнала, и преодолевая явления недообуче-ния и переобучения нейросети, на выходе ее получаем отфильтрованный сигнал. Для преодоления указанных явлений работы нейросети необходимо решить проблему выбора ее структуры. Решение этого вопроса актуально, поскольку задачу приходится решать, за исключением , за исключением некоторых частных случаев, вычислительными методами, теоретические же решения отсутствуют из-за специфичности и огромного многообразия прикладных задач и различных нейросетевых структур. В данной статье приводятся 2 вычислительных метода решения данной проблемы.

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

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

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

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

Другое явление при обучении нейросети - недообучение. Нейросеть обучается, чтобы подогнать к исходным данным кривую (модель) и получить таким образом объяснение для имеющейся зависимости. Если нейросеть является слишком простой для решения поставленной задачи, то она является недостаточно гибким средством для моделирования имеющейся зависимости, и теряет при этом какие-то нелинейные связи в модели данных.

Для борьбы с явлениями недо/переобучения используются различные методы. Принцип действия одного из наиболее популярных методов состоит в использовании механизма контрольной кросс-проверки. Резервируется часть обучающих наблюдений, они не используются в обучении, но по мере работы алгоритма, они используются для независимого контроля результата. В самом начале работы ошибка сети на обучающем и контрольном множестве будет одинаковой (если разбиение было однородным). По мере того, как сеть обучается, ошибка обучения убывает, и, пока обучение уменьшает функцию ошибок, ошибка на контрольном множестве также будет убывать. Если же контрольная ошибка перестала убывать или даже стала расти, это указывает на то, что сеть начала слишком близко аппроксимировать данные и обучение следует остановить, возникло переобучение. Если же сеть, наоборот, была взята недостаточно сложной для того, чтобы моделировать имеющуюся зависимость, то переобучения, скорее всего, не произойдет, и обе ошибки - обучения и проверки - не достигнут достаточного уровня малости. Чтобы придать окончательной модели должную надежность, когда объем обучающих данных это позволяет, поступают так: резервируют еще одно - тестовое множество наблюдений. Итоговая модель тестируется на данных из этого множества, чтобы убедиться, что результаты, достигнутые на обучающем и контрольном множествах реальны, а не являются артефактами процесса обучения [2].

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

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

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

05Д Напряжение (вольт)

Исходный сигнал Сигнал, моделированный нейросетью

Рисунок 1 Явление переобучения

называемая просто корреляцией) определяет степень, с которой значения двух переменных линейно зависимы друг от друга. Значение коэффициента корреляции не зависит от масштаба измерения. Коэффициенты корреляции изменяются в пределах от -1.00 до +1.00. Для нашего случая важно значение 0.00, что означает отсутствие корреляции. Так же для оценки корреляции хорошо подходит угловой (регрессионный) коэффициент Ь в уравнении регрессии У=а+Ь*Х. Коэффициенты уравнения вычисляются методом наименьших квадратов, а использование квадратов расстояний приводит к тому, что оценки параметров прямой сильно реагируют на выбросы.

Рисунок 2 График шума и разницы между моделированным сигналом и сигналом на выходе нейросети

Для отбраковки плохих наблюдательных данных (нетипичных, резко выделяющихся наблюдений) используем количественный метод - исключаем значения, которые выходят за границы 3-х стандартных отклонений вокруг выборочного среднего. Если случайная величина X распределена нормально (с параметрами а и а), то практически достоверно, что абсолютная величина её отклонения от математического ожидания

не превосходит утроенного среднего квадратического отклонения, т.е. _Р(| X — а |< 3<г) «1 . В нашем случае такая "чистка" данных весьма необходима.

Итак, при использовании статистического метода, количественной мерой оценки может служить угловой (регрессионный) коэффициент Ь и значения статистики К2 . Назовем этом метод статистическим.

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

Известно, что если функция Ь = {у = / (х)} при х = х0 равна к (л:0) =

f ( х) в точке ^'' ( Хо)|

3

(1 + (/'(хо)2)2

х.

имеет

зторую производную f"(хQ) , кривизна

линии

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

Рисунок 3 Модель 31шиИпк для вычисление интегральной кривизны графика функции Итак, выбор оптимальной конфигурации нейросети состоит из следующих шагов:

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

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

значений для коэффициента Ь и статистики К2 от значения параметра настройки нейросети, а так же график интегральной кривизны.

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

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

распространением ошибок и радиально-базисная сеть.

Применение статистического метода для многослойной сети проводилось так: проводились исследования сетей структуры 1-Ы-1 с числом нейронов от 1 до 10, для того чтобы найти оптимальное число нейронов N в промежуточном слое. Обучение для каждой структуры нейросети проводилось по 100 раз. Приведем полученные графики зависимостей:

Рисунок 4 Суммарное значение линейного коэффициента уравнения регрессии Ь. Оптимальное значение - 6

нейронов

Рисунок 5 Суммарное значения К статистики. Оптимальное значение - 4 нейрона

120 г

—S— Суммарная интегральная кривизна

D В 10

число нейронов

Рисунок 6 Суммарное значение интегральной кривизны. Оптимальное значение - 4 нейрона

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

1.

На настройку радиально-базисных сетей с нулевой ошибкой влияет параметр влияния spread. Его необходимо выбрать так, чтобы активные области базисных функций перекрывались, покрывая весь диапазон входных значений. Чем больше его значение, тем более гладким получается кривая на выходе нейросети, однако, необходимо выбрать значение spread не настолько большим, чтобы нейронная сеть объявляла одинаково значимыми все значения входа [3]. Ввиду явной корреляции между значениями коэффициентов линейного уравнения регрессии b и значения статистики R2 для оценки оптимального параметра можно использовать одно из значений, например b. Обучение для каждой структуры нейросети проводилось по 10 0 раз, ниже полученные графики:

О 0.5 1 1.5 2 2.5 3

Параметр spread

Рисунок 7 Суммарное значение линейного коэффициента уравнения регрессии Ь. Значение spread=0,6

1000

2D0-----1----1-----1----1-----1-----1----

0.45 D.5 0.55 0.Б 0.65 0.7 D.75 0.3

Параметр spread

Рисунок 8 Суммарное значение интегральной кривизны. Значение spread=0,52

В результате применения статистического метода и метода оценки интегральной кривизны, обнаруживаем, что оптимальное значение параметра spread лежит в диапазоне от 0,52 до 0,6. Можно выбрать более простую сеть из этих двух, spread = 0,6.

Как видно из рисунка 7, у метода существует существенное ограничение - необходимо выбрать необходимый локальный минимум из нескольких имеющихся на графике зависимости суммарной интегральной кривизны, и на графиках, полученных статистическим методом. За пределами нужного локального минимума (локальный минимум A) кривая может вести себя непредсказуемо, и еще иметь несколько локальных минимумов (например, локальный минимум Б). Чтобы принять верное решение относительно выбора нужного локального минимума, можно руководствоваться следующим: это, как правило, самый левый локальный

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

Отсюда можно сделать вывод, что значения найденных параметров для определения оптимальной

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

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

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

ЛИТЕРАТУРА

1. Горбань А.Н., Дунин-Барковский В.Л., Кирдин А.Н. и др. Нейроинформатика. Новосибирск: Наука. Сибирское предприятие РАН, 1998. - 296с.

2. StatSoft, Inc. (2001). Электронный учебник по статистике. Москва, StatSoft. WEB : http://www.statsoft.ru/home/textbook/default.htm.

3. Потемкин В.Г., Медведев В.С. Нейронные сети. Matlab 6.- Изд-во: Диалог-МИФИ., 2002

i Надоели баннеры? Вы всегда можете отключить рекламу.