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

УДК 681.325.54

С. В. Челебаев, канд. техн. наук, доцент,

ФГБОУ ВПО «Рязанский государственный радиотехнический университет»

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

Ключевые слова: временной интервал, нейронная сеть, спирометр, частота, цифровой код. Key words: time slot, neural network, lung-tester, frequency, digital code.

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

Введение

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

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

1 Исследование выполнено при поддержке Министерства образования и науки Российской Федерации, соглашение 14.B37.21.0175 «Метод и инструментальные средства оценки функционального состояния систем организма».

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

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

Выбор нейронной сети для построения структуры преобразователя

Однослойные и двухслойные персептронные сети применимы для построения преобразователей частоты в унитарный код [5]. Для преобразователей

«частота — позиционный код» могут быть использованы трехслойные персептронные сети.

Для построения функционального преобразователя информации «частота — позиционный код» предлагается решение на основе структуры трехслойной рекуррентной сети [6]. Структурная организация рекуррентного преобразователя ИНС х ^ у-р, где х — преобразуемая величина, представленная в виде частоты fx; у-р — выходной код, уУр = РтРт...(рис. 1), который базируется на принципе вычисления двоичного позиционного кода ур [НТ0] = РтРт_1 ... Р1, где Н — номер такта преобразования; Т0 — длительность такта; Рт — старший разряд результирующего кода; Рт _ 1 — следующий за старшим разряд результирующего кода; Р1 — младший разряд результирующего кода в момент времени НТ0 на основе его значения ур [(Н _ 1)Т) ] в предыдущем (Н - 1)-м такте длительностью Т0 и значений преобразуемой переменной Х1 = х и эталона Х2 = Ахо , поэтому ур [НТ0 ] = f (ур [(Н _ 1)Т0], Х1, Х2). Перед преобразованием код ур [0] должен быть установлен в начальное значение, зависящее от вида функциональной зависимости, которая реализуется преобразователем. Для линейной операции у-р = тХх, где тх — масштаб преобразования, значение у-р [0] = = Рт ... Р2Р1 = 0. Далее рассматриваются этапы синтеза преобразователя ИНС на основе трехслойной рекуррентной сети.

Выбор архитектуры сети

В основу построения модели преобразователя х ^ ур с позиционным кодированием у-р положена трехслойная рекуррентная сеть с однотактной задержкой Т0 ее выходных сигналов в цепи обратной связи к нейронам второго слоя (см. рис. 1). Матричное описание такой сети имеет вид:

£(1) [НТ0 ] = ^(1) (Ж(1)ТХ[НТ0 ]); £(2) [НТ0 ] = ^(2) (ж(2)Т£(1)Т' [НТ0 ]); £(3) [НТ0 ] = ^(3) (ж(3)Т£(2)Т [НТ0 ]),

где Х[Н^] — вектор входных сигналов для распределительного слоя, X[НТ0] = [[НТ0], ..., хм [НТ0]]; £(1)[НТ0] — вектор входных сигналов для второго слоя, состоящий из выходных сигналов первого слоя, а также выходных сигналов третьего слоя, замкнутых на вход первого слоя через обратную связь,

2(1у [НТ0 ] = [41* [НТ)],га, [НТ0 ], ^ [(Н _ 1)Т0 ],

..., 43)[(Н _ 1)Т0]]; £(1) [НТ0] = [г11)[НТ0], ... ,

0^)[НТ0]], где ^11) — выход 1 первого нейрона первого слоя, и £(2) [НТ0 ] = [г12) [НТ0 ], ., г^ [НТ0 ]] — вектора собственно выходных сигналов первого и второго слоев сети.

Слой 0

Слой 1

Слой 2

Слой 3

Выход

*

ур Р1

' Р2

Вход

х

Рис. 1

Рис. 1. Структура преобразователя, х -

ун на основе трехслойной рекуррентной сети инаптической связ 1-й нейрон к-го слоя

С учетом запоминающих элементов для выходных сигналов г(3) аналитическое описание рассматриваемой сети получается:

( ц2 А

г(3)[М0] = Е(3) иШ^^Т,]

I ш=1

, г = [1, К ];

+Е

42>[мо]=е(2) (х и,^ ^[нт,]"

I, г=1

( К+ц А

„

г™ [(н - 1)Т)]

г, Ш г-ц

, ш = [1,

Чг=1+^1

г™ [НТо ] = Е(1) (иЦ [НТо ]^11) [(Н - 1)То]

+и,

[НТ0]х2, х), г = 1,

г

где х- и г\ ' — входные и выходные сигналы сети соответственно; Е(2) — пороговая функции активации вида для второго слоя (см. формулу (5)); Ц1 — число нейронов первого слоя; г(2) — выход г-го нейрона второго слоя; Ц2 — число нейронов второго слоя); гг1) — дать расшифровку; — выход суммирующего устройства первого нейрона первого слоя; х — аналоговая величина, задающая значение переменного порога для нейрона первого слоя; К — число нейронов НУ(3) выходного слоя сети; Е(1) — пороговая функция активации для первого слоя сети с переменным значением порога вида:

Е(1) ((1) ]) = |1(^г), если [Ч] ^ х;

0 иначе,

где ti — время появления импульса с периодом Т,; Е(2) и Е(3) — пороговые функции активации вида для второго и третьего слоев:

Е(I) («(1) ) = |1, если ) >9(1); [0 иначе,

I — номер слоя; 6(1) — значение порога г-го нейрона 1-го слоя; «](1) ] — значения суммы на входе порогового элемента нейрона в дискретные моменты времени (такты), ti = гТ, .

Определение базовой конфигурации структуры преобразователя как аппроксимирующей сети

При фиксированном размещении разрядов Рг в представлении позиционного кода Ум = Рт ."Р1

матрица Z(3) = (г13),

г

гК3)

выходных сиг-

налов ИНС-преобразователя учитывает местоположение значений разрядов г(3) = Рг ( К = т), где т — число разрядов выходного кода ум. Поэтому Z(3) = YN отражает результат в виде упорядоченной последовательности значений разрядов Рг:

^ =(Р1, Р2, •••, Рт) или УМ =РтРт-1 - Р1.

В качестве выходных сигналов рассматриваемой сети (см. рисунок) выступают значения разрядов

Рг (г = 1, 2, ..., т ), формируемые нейронами НУ(3) выходного слоя, число которых Ц3 = т.

При преобразовании х ^ уМ в качестве входного сигнала сети выступает аналоговая величина х, а также дискрет преобразования Ах, = хтах / 2т, где хтах — максимальное значение преобразуемой

величины, и значения суммы «|(1) на входе порогового элемента нейрона первого слоя. Поэтому число нейронов ц, ее входного слоя равно 2. Для него матрица X имеет вид

X[НТ, ] = « [

Выходным сигналом единственного нейрона первого скрытого слоя является переменная у* [НТ, ], представленная в виде число-импульсного кода:

г11) = у1 [НТ, ] = а, Т ]а, [2Т, ]...а, [(к - 1)Т, ], где а, — последовательность значений число-импульсного кода у* [НТ, ]. Для его получения используется пороговая импульсная функция активации (4).

Количество Ц2 нейронов второго скрытого слоя определяется на этапе обучения сети. Операцию преобразования число-импульсного эквивалента у* [НТ, ], заданного последовательностью единиц а, [НТ, ], в цифровые двоичные значения г(2) = {,, 1} осуществляют нейроны НУ(2) второго скрытого

тз

слоя. В связи с этим выходные сигналы гш и гг

шг

нейронов второго скрытого и выходного слоев представляются в виде двоичных значений разрядов

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

С учетом количества ц, = 2, М-1 = 1 и Ц3 = т нейронов, составляющих входной и первый скрытый и выходной слои соответственно, трехслойная рекуррентная сеть, реализующая операцию преобразования х ^ ум , описывается на основе совокупности зависимостей (1)—(6) в виде системы

Рг [НТ,] = Е

( Ц2

,,

: иш:'ггш

[НТ,] , г = [1, т],

г

+Е

г

( т+1

[НТ,] = Е

: и

V г=2 )

а, [НТ, ] =

= Е

где Е(2) и Е(3) — пороговые функции активации вида (5), а Е(1) — вида (4).

Совокупность (7)—(9) в матричной форме для всех разрядов кода ум примет вид

Z(1) [hT0 ] = F(1) (W(1)TX[hT0 ]); Z(2) [hT0 ] = F(1) ((2)TZ(1)T' [hT0 ]); yN [hT0 ] = F(3) (w(3)TZ(2)T [hT0 ]),

где Ж(1)Т, Ж(2)Т и Ж(3)Т — транспонированные матрицы весовых коэффициентов между слоями сети; X [М0] — матрица-строка (6); Ур [М0] = = (([НТ0 ], Р2 [НТ0 ], ., Рт [НТ0 ]) —матрица-столбец, состоящая из значений разрядов, образующих результат преобразования ур ; £(1)Т' [НТ0 ] — матрица, состоящая из выходного сигнала нейрона первого слоя и задержанных на такт выходных сигналов третьего слоя сети; £(22)Т[НТ (] — транспонированная матрица выходов нейронов второго слоя.

Для предлагаемой структуры (см. рисунок) время преобразования Тпр, затрачиваемое на формирование результата ур, определяется исходя из циклического характера преобразования х ^ уп [НТ0 ] согласно зависимости

2m

T = V T

пр ¿j пр '

i=1

где Т1Лр) — время формирования одной единицы «0 [НТ0 ] кода у* [НТ0 ]. Зависимость, связывающая погрешность преобразования §пр с числом Ц3 нейронов НУ(3) выходного третьего слоя, имеет вид:

§пр = 1/ 2^3.

Обучение ИНС

Для обучения рекуррентной сети со скрытыми слоями, как правило, применяется алгоритм обратного распространения ошибки:

• в начальный момент времени £ = 1 все нейроны скрытых слоев устанавливаются в нулевое состояние, т. е. их выходные значения равняются нулю;

• входной образ подается на сеть и происходит прямое распространение его в нейронной сети;

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

• устанавливается £ = £ + 1, и осуществляется переход к шагу 2 [3].

Обучение рекуррентной сети производится до тех пор, пока суммарная среднеквадратичная ошибка

_ 41 )2 + 2 ( _ 42) )2 +2 (( _ г(3) )2

не станет меньше заданной допустимой едоп [3], где сР) — желаемое значение на выходе нейрона

НУР); р — номера нейронов; г = 1, g = 1,

Ь = 1, ц3 ).

Полученные в результате обучения сети весовые коэффициенты и>, например, для двухразрядного кода ур- , сформированные для операции линейного преобразования уп[НТ0] ^ у-р, представлены в виде матриц

-1 1 0

1 -1 0

W (2)T = 0 -1 1

-1 0 1

1 1 -1

; W (3)T =

1 1 0 0

0 0 0 111

.

Значения порогов для активационных функций р(2) ^ р(3) в результате обучения сети равны:

э12) = 1; е(22) = 1; е32) = 1; е<2) = 1; е(52) = 2; е13) =1; е23) =1.

Заключение

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

| Литература

1. Медицинские приборы. Разработка и применение / Под ред. С. В. Ревенко. М.: Медицинская книга, 2004. 523 с.

2. Аш Ж. Датчики измерительных систем: В 2 кн. / Пер. с франц. М.: Мир, 1992. Кн. 1. 480 с.

3. Головко В. А. Нейронные сети: обучение, организация и применение: Учеб. пособие для вузов / Общ. ред. А. И. Галушкина. М.: ИПРЖР, 2001. Кн. 4. 256 с.

4. Комарцова Л. Г., Максимов А. В. Нейрокомпьютеры. М.: Изд-во МГТУ им. Н. Э. Баумана, 2002. 320 с.

5. Локтюхин В. Н., Челебаев С. В. Нейросетевые преобразователи импульсно-аналоговой информации: организация, синтез, реализация / Под общ. ред. А. И. Галушкина. М.: Горячая линия — Телеком, 2008. 144 с.

6. Осовский С. Нейронные сети для обработки информации / Пер. с польск. И. Д. Рудинского. М.: Финансы и статистика, 2002. 344 с.