швидкого перетворення Фур’є ffiw та пошуку власних значень і векторів матриць EISPACK. Програма може успішно експлуатуватися на комп’ютерах під керуванням операційних систем Microsoft Windows 2000/XP/ 2003/Vista. Мінімальними апаратними вимогами є: процесор класу Intel Pentium III тактовою частотою 500 МГ ц; 96 МБ оперативної пам’яті; 200 МБ вільного місця на жорсткому диску; монітор SVGA і відеоадаптер з підтримкою розподільної здатності 1024x768.
Галузь застосування програми - підвищення якості зображень, отриманих за допомогою пристроїв ультразвукових досліджень або сейсмограм.
СПИСОК ЛІТЕРАТУРИ
1. Newman, P. The history of ultrasound / P. Newman, G. Rozycki // Surgical Clinics of North America. - 1998. -№ 2 (78). - P. 179-195.
2. Митьков, В. В. Практическое руководство по ультразвуковой диагностике. Общая ультразвуковая діагностика / В. В. Митьков. - М. : Видар, 2003. - 720 с.
3. Иванов, В. К. Теория линейных некорректных задач и ее приложения / В. К. Иванов, В. В. Васин, В. П. Танана. -М. : Наука, 1978. - 200 с.
4. Чайделрс, Д. Д. Кепстр и его применение при обработке данных / Д. Д. Чайделрс, Д. П. Скиннер, Р. Ч. Кемерайт // ТИИЭР. - 1977. - № 10. - C. 5-23.
5. Степаненко, А. А. Повышение чувствительности ультразвуковой диагностики на основе метода параметрического спектрального анализа второго порядка / А. А. Степаненко, А. М. Ахметшин // Клиническая информатика и телемедицина. - 2005. - Т.2, № 1. - С. 98-100.
6. Степаненко, А. А. Разложение суперпозиций неизвестных импульсных сигналов методом адаптивного спектрального анализа второго порядка / А. А. Степаненко,
А. М. Ахметшин // Искусственный интеллект. - 2005. -№ 3. - С. 610-618.
7. Степаненко, А. А. Анализ эхо-импульсных изображений слоистых структур: метод сигнального подпространства / А. А. Степаненко, А. М. Ахметшин // Радиоэлектроника, інформатика, управление. - 2004. - № 1. - С. 5-9.
8. O’Docherty, M. Object-Oriented Analysis and Design / M. O’Docherty. - Wiley & Sons, 2005. - 560 p.
9. Рыжиков, Ю. Современный Фортран / Ю. Рыжиков. -Минск : Корона Принт, 2007. - 288 с.
Стаття надійшла до редакції 14.04.2011.
Степаненко А. А., Пиза Д. М.
ПРОГРАММНЫЙ КОМПЛЕКС ДЛЯ АНАЛИЗА И ОБРАБОТКИ ЭХО-ИМПУЛЬСНЫХ ИЗОБРАЖЕНИЙ
На основе анализа методов обработки эхо-импульсных изображений были выявлены недостатки существующих подходов и предложены два новых метода. Разработанные методы и базирующаяся на них программная система позволяют повысить эффективность визуального анализа медицинских и сейсмических ультразвуковых изображений.
Ключевые слова: математическая модель, метод линейного предсказания, суперпозиция импульсного сигнала, спектр, эхоимпульсное изображение, модуль математических вычислений.
Stepanenko O. O., Piza D. M.
PROGRAM COMPLEX FOR ANALYSIS AND TREATMENT ECHO-PULSE IMAGES
On the basis of analysis of methods of processing of echo-pulse images the lacks of existent approaches were educed and two new methods are offered. Worked out methods and programmatic system which is based on them, allow to promote efficiency of visual analysis medical and seismic ultrasonic images.
Key words: mathematical model, method of linear prediction, superposition of impulsive signal, spectrum, echo-pulse images, module of mathematical calculations.
УДК 519.7:004.8
Шафроненко А. Ю.1, Волкова В. В.2, Бодянский Е. В.3
1 Стажер-исследователь Харьковского национального университета радиоэлектроники 2Старший преподаватель Харьковского национального университета радиоэлектроники 3Д-р техн. наук, профессор Харьковского национального университета радиоэлектроники
АДАПТИВНАЯ КЛАСТЕРИЗАЦИЯ ДАННЫХ С ПРОПУЩЕННЫМИ ЗНАЧЕНИЯМИ
Предложена адаптивная нейросетевая система, позволяющая решать задачу кластеризации данных с пропущенными значениями в on-line режиме с постоянной коррекцией восстанавливаемых элементов таблицы и центроидов кластеров. Введенная нейросистема характеризуется высоким быстродействием и простотой численной реализации.
Ключевые слова: адаптивная нейросетевая система, восстановление пропусков, кластеризация.
ВВЕДЕНИЕ сегодня существует множество подходов и алгоритмов:
Задача кластеризации данных является важным эле- от сугубо интуитивных и эвристических до строго мате-
ментом общей проблемы Data Mining, а для ее решения магических [1-9]. Вместе с тем, во многих задачах Data
© Шафроненко А. Ю., Волкова В. В., Бодянский Е. В., 2011
Mining, включая, естественно, кластеризацию, исходные таблицы данных «объект-свойство» могут содержать пустые клетки (пропуски), информация в которых по тем или иным причинам отсутствует. Задаче восстановления таких пропущенных наблюдений уделялось достаточное внимание [6, 10-12] , при том наиболее эффективными в данной ситуации оказались подходы, основанные на математическом аппарате мягких вычислений (вычислительного интеллекта) [13, 14], и, прежде всего, искусственных нейронных сетей [12, 15-17]. Вместе с тем, известные подходы к восстановлению пропусков и традиционные алгоритмы кластеризации работоспособны лишь в случаях, когда исходная таблица задана априорно и число ее строк или столбцов не изменяется в процессе обработки. В то же время существует достаточно широкий класс задач, когда данные поступают на обработку последовательно в on-line режиме, при этом заранее неизвестно, какой из обрабатываемых векторов-образов может содержать пропуски. При этом процессы восстановления данных и их кластеризации должны протекать одновременно в реальном времени.
ПОСТАНОВКА ЗАДАЧИ
Пусть задана исходная (Nxn) таблица N>1, п>1) «объект-свойство».
Таблица 1, содержащая информацию об N объектах, каждый из которых описывается (1 хп) - вектором-строкой признаков x. = (x;1,...,xip,...,x-,...,xin) , при этом предполагается, что NG строк могут иметь по одному пробелу, а Nf = N-Ng заполнены полностью. В процессе обработки таблицы необходимо заполнить пропуски и сформировать m кластеров. При этом требуется, чтобы восстановленные элементы были бы в определенном смысле «наиболее правдоподобны» или «близки» к априори неизвестным закономерностям, содержащимся в таблице, которые могут неизвестным образом изменяться в процессе обработки.
АДАПТИВНЫЙ АЛГОРИТМ ЗАПОЛНЕНИЯ ПРОПУСКОВ
Для начала представим таблицу 1 в виде (Nxn) - матрицы Х, в которой отсутствует один элемент xkj или в более общем случае отсутствуют NG элементов. Предполагается
T
[10], что между столбцами xj = (x^-,..., x.,..., x^,..., x^) существует линейная корреляция, с учетом которой и про-
Таблица 1.
1 .. p ... j ... n
1 X11 x1p ... x1j ... xin
i Xi1 Xip . xij ■■■ xin
k Xk1 ■ ■ xkp ■■■ xkj ■■■ xkn
N XN1 . XNp . xNj ... xNn
изводится восстановление пропуска с помощью уравнения линейной регрессии
xkj = wj0 + w j1xk1 + w j 2 xk 2 +
+wj,j-1xk,j+1 +... + wjnxkn = XkjWJ , (1)
T
где Wj = (wjo, Wj1,...,Wjn) - (n x 1) - вектор-столбец параметров, подлежащих определению; Xkj = (1,xk1,...,xk, j-1,xk, j+1,...,xkn) - (1xn) вектор-строка признаков k-того объекта без kj-того элемента и с единицей на первой позиции.
Вектор неизвестных параметров wj может быть найден с помощью стандартного метода наименьших квадратов, для чего из матрицы X следует исключить k-ю строку, j-й столбец, добавить слева столбец, образованный единицами, и на основе полученной ((N -1) х п) -матрицы X j рассчитать оценки параметров
wj = (XjXj)+xTXj , (2)
—* T
где X j = (x1 jx,j^ xk-1,j , xk+1,j ,■■■, xNj ) .
Если же пробелы имеются в Ng строках и в разных столбцах, из матрицы X исключаются все эти строки и на основании усеченной (Nf х п) матрицы п раз вычисляются векторы параметров wj (2) для всех
j = 1,2,. ., п . Далее с помощью уравнения (1) заполняются все пробелы полученными оценками x-.
Если же данные поступают на обработку последовательно строка за строкой, вместо оценки (2) может быть использован рекуррентный метод наименьших квадратов, который, однако, предлагает неизменность во времени всех связей, существующих в матрице данных. Экспоненциально же взвешенный рекуррентный метод наименьших квадратов может быть неустойчив при малых значениях параметра сглаживания.
В связи с этим для on-line анализа данных представляется целесообразным использование адаптивных алгоритмов обучения, имеющих как фильтрующие, так и следящие (для нестационарных ситуаций) свойства [18]. Если в процессе обработки массива данных было проанализировано и восстановлено N строк, то с приходом (N+1)-ro наблюдения оценки wj уточняются с помощью адаптивной рекуррентной процедуры
jwj (N +1) = wj(N) + rj-1(N +1)(xn+1,j -Xn— (N ))XTN+1,j,
I II II2 (3)
[г- (N +1) = arj (N) + |XN+1,j| , ( )
где 0 < a < 1 - параметр сглаживания, задающий компромисс между процессами фильтрации наблюдений и слежением за изменяющимися характеристиками данных.
Обработку информации в режиме последовательного поступления данных удобно организовать с помощью нейросетевой системы, основными элементами которой являются n-параллельно работающих адаптивных линейных ассоциаторов (ALA) [19], настраиваемых с помощью алгоритма (3). При этом, если в k-й момент времени на вход системы поступает вектор наблюдений xk = (xk1, xk 2,.., xkin) полный или с пропусками, на выходе появляется он же, если xk полный, или его оценка, если в xk содержались пробелы.
АДАПТИВНЫЙ АЛГОРИТМ КЛАСТЕРИЗАЦИИ
Для решения задачи кластеризации в on-line режиме целесообразно воспользоваться самоорганизующейся картой Т. Кохонена [20], имеющей простую архитектуру с прямой передачей информации и кроме нулевого рецепторного слоя содержащей единственный слой нейронов, чаще всего тех же адаптивних линейных ассоциаторов. Каждый нейрон связан с каждым рецептором нулевого слоя прямыми связями и со всеми остальными нейронами поперечными внутрислойными (латеральными) связями. Именно латеральные связи обеспечивают возбуждение одних нейронов и торможение других.
Благодаря такой организации сети, каждый нейрон-ALA получает всю информацию об анализируемом векторе-образе и генерирует на своем выходе соответствующий отклик, после чего между нейронами возникает конкуренция, в результате которой определяется единственный нейрон-победитель с максимальным выходным сигналом. Этот сигнал по латеральным связям обеспечивает возбуждение ближайших «соседей» победителя и подавление реакции далеко отстоящих нейронов. Таким образом в процессе конкурентного самообучения формируются группы нейронов, каждый из которых максимальным образом реагирует на образы «своих» кластеров-подобластей входного пространства сигналов.
Рассмотрим простейшую карту Кохонена, имеющую 1D топологию, п рецепторов и m (по числу возможных кластеров) нейронов, каждый из которых характеризуется собственным вектором синаптических весов
к
q = 1,2,
, определяющих центроид соответствую-
щего кластера.
Каждый нейрон сети в к-й момент времени получает на входы я-мерный входной вектор
^ к
зависящий от вектора синаптических весов ц>і (к -1),
настроенных по данным, полученным до момента k, на определенную область (кластер) входного пространства. Близкие в смысле используемой метрики входные векторы Xk и хг- могут возбуждать либо один и тот же
к к к
нейрон wq , либо два нейрона соседа wq и Wg+l или
^ и <-Ьд = ^..^т.
В основе алгоритма самоорганизации карты Кохонена лежат принципы конкурентного самообучения [19], при этом как и любая другая процедура настройки нейронной сети, работа алгоритма начинается с инициализации синаптических весов сети, которые обычно выбираются с помощью генератора случайных чисел, при этом для каждого из нейронов должно выполняться условие
wl^ (0)
= 1, l = 1,2,..., m.
(б)
Процедура самоорганизации реализуется в три основных этапа: конкуренции, кооперации и синаптической адаптации и начинается с анализа образа , посту-
пающего с рецепторного слоя на все нейроны сети. Для каждого из нейронов вычисляется расстояние
D(xk, wf (k -1)) = xk - wf (k -1)
(7)
при этом, если входные векторы предварительно пронормированы с помощью выражения (4) так, что
(8)
а в качестве расстояния (7) используется эвклидова метрика, то мерой расстояния между и wK (к -1) может
служить
D(~k, wfк (k -1)) = 2(1 - ~kT wj^ (k -1)) =
= 2(1 - cos(~k, wl^ (k -1))),
а мерой близости - скалярное произведение
(9)
-1 < x^wj^ (k -1) = cos(~k wf" (k-1)) < 1. (10)
xk =
xT
xk
(4)
Далее определяется нейрон-победитель, «ближайший» ко входному образу х^ такой, что
и генерирует на своем выходе сигнал
D(~k, wiк (k -1)) = min D(~k, wj^ (k -1)), (U)
^ x
ykl = wl (k -1) xk,
(5) после чего, временно опуская этап кооперации, можно
подстроить синаптические веса сети с помощью модифицированного правила самообучения
m
k
wqK (k) =
wK (k -1) + n(k)(xk - wK (k -1))
wK (k -1) + n(k)(xk - wK (k -1))
K
wq (k -1) в противном случае.
если q - й нейрон победил,
(12)
Несложно видеть, что процедура (12) реализует принцип «победитель получает все», при этом вектор синап-
к
тических весов Wд (к -1) нейрона-победителя «подтягивается» ко входному вектору ~к на расстояние, определяемое шагом настройки п(к).
Регулирование величины шага обычно производится, исходя из эмпирических соображений, при этом весьма удобной является процедура [21]
П(к) = г _1(к), г (к) = аг (к -1) + 1 їх. II2 = аг (к -1) +1. (13)
Несложно заметить структурную схожесть алгоритмов обучения (3) и (12), (13).
Одной из особенностей карты Кохонена является наличие этапа кооперации в процессе самоорганизации, когда нейрон-победитель определяет локальную область топологического соседства, в которой возбуждается не только он сам, но и его ближайшее окружение, при этом более близкие к победителю нейроны возбуждаются сильнее чем удаленные. Эта топологическая область определяется функцией соседства фд/, зависящей от рас-К К
стояния О>(щц (к -1), щ/ (к -1)) между победителем
К к
(к -1) и любым из нейронов сети w/ (к -1). Как правило, фд/ - это ядерная функция симметричная относительно максимума в точке О(^К (к -1), ^ (к -1)) = 0 и принимающая в ней единичное значение, монотонно убывающая с ростом расстояния и стремящаяся к нулю при
О(^К (к -1), щ (к -1)) = 2. При этом наиболее часто в
качестве функции соседства используются гауссиан, конус, функции Епанечникова, «мексиканская шляпа» и т. п.
Использование функции соседства приводит к модифицированному правилу обучения
K
к wf(k -1) + r 1(k)ф9/(xk - wf(k -1)) w,
w/ (k) = ' ^ “-“-K n, ij| W/, (14)
wf (k - 1) + r 1(k )фq/ (xk - wf (k - 1))||
r(k) = ar(k -1) +1,
реализующему принцип «победитель получает больше». При фді =8ді =1 при д=1 и 0 в остальных случаях, вновь приходим к алгоритму (12), обеспечивающему на каждом такте настройку единственного нейрона-победите-
к
ля wд (к -1).
В принципе, для обучения самоорганизующейся карты можно вообще обойтись без нахождения победителя, а в качестве функции соседства использовать некоторую конструкцию, зависящую от выходных сигналов нейронов (5) так, что
wf(k )■-
wK (k -1) + r 1(k)ф(yk/ )(xk - wK (k -1))
\wf(k -1) + r 1(k )Ф(Уk/ )(xk - wK (k -1))
w/,
(15)
r(k) = ar(k -1) +1.
Поскольку
ykl = wfT (k - 1)xk = cos(xk, wK (k -1)), (1б)
то наиболее простой такой конструкцией является
1 + ykl
ф( ykl) = -
2
(17)
удовлетворяющая всем условиям, предъявляемым к ядерным функциям соседства. Тогда окончательно алгоритм обучения карты Кохонена для нахождения центроидов т кластеров имеет вид
wf (k -1) + r-1(k)1+^ (~k - wf (k -
1))
wf (k -1) + r-1(k)1+^ (Xk - wf (k -
г w/,
1))
(18)
r(k) = ar(k -1) +1.
Нейросетевая архитектура, реализующая процесс кластеризации данных с пропусками, приведена на рис. 1.
Как видно, введенная нейронная сеть образована однотипными нейронами - адаптивными линейными ассоциаторами, настраиваемыми с помощью достаточно простых и очевидных алгоритмов обучения.
ЗАКЛЮЧЕНИЕ
Рассмотрена задача кластеризации данных, содержащихся в таблицах «объект-свойство» и имеющих пропуски, в режиме последовательного поступления этих данных на обработку. Предложена адаптивная нейросе-тевая система, позволяющая решать эту задачу в on-line режиме с постоянной коррекцией восстанавливаемых элементов таблицы и центроидов кластеров. Введенная нейросистема образована набором адаптивных линейных ассоциаторов, характеризуется высоким быстродействием и простотой численной реализации.
Блок восстановления пропусков
Самоорганизующаяся карта Кохонена
Рис. 1. Искусственная сеть для адаптивной кластеризации данных с пропущенными значениями
СПИСОК ЛИТЕРАТУРЫ
1. Jam, A. Data clustering: A review / A. Jain, M. Murty, P. Flynn // ACM Computing Surveys. - 1999. -№3(31). - P. 264-323.
2. Дюк, B. Data Mining / B. Дюк, А. Самойленко. - С. Пб. : Питер, 2001. - С. 368.
3. Fгiedman, J. The Elements of Statistical Learning. Data Mining, Inference and Prediction / J. Friedman, T. Hastie, R. Tibshirani. - Berlin : Springer, 2003. - Р. 552.
4. Xu, R. Survey of clustering algoritms / R. Xu, D.II. Wunsch // IEEE Trans on Neural Networks. - 2005. - №3 (16). - P. 645-678.
5. Нап, J. Data Mining: Concepts and Techniques / J. Han, M. Kamber. - Amsterdam : Morgan Kaufman Publ, 2006. - Р 754.
6. Gan, G. Data Clustering: Theory, Algorithms and Applications / G. Gan, Ch. Ma, J. Wu. - Philadelphia : SIAM, 2007. - Р. 466.
7. Abcnyi, J. ClusterAnalysis for Data Mining and System Identification / J. Abonyi, B. Feil. - Basel : Birkhaeuser, 2007. - Р 303.
8. ОЬсп, D. Z. Advanced Data Mining Techniques / D. Z. Olson, D. Dursun. - Berlin : Springer, 2008. - Р. 180.
9. Xu, R. II. Clustering / R. Xu, D. C. Wunsch. - Hoboken, N. J. : John Wiley & Sons, Inc., 2009. - Р. 341.
10. Загоруйко, Н. Г. Эмпирические предсказания. - Новосибирск : Наука, 1979. - С. 120.
11. Gcгban, A. Principal Manifolds for Data Visualization and Dimension Reduction. Lecture Notes in Computational Science and Engineering, Vol. 58 / A. Gorban, B. Kegl,
B. Wunsch, A. (Eds.) Zinovyev. - Berlin-Heidelberg - New York : Springer, 2007. - Р. 330.
12. Marwala, T. Computational Intelligence for Missing Data Imputation, Estimation, and Management / Marwala T. // Knowledge Optimization Techniques. - Hershey - New York : Information Science Reference, 2009. - Р. 303.
13. Maimon, O. Soft computing for Knowledge Discovery and Data Mining / O. Maimon, L. Rokach. - New York : Springer-Verlag, 2007. - Р. 448.
14. Rutkcwski, L. Computational Intelligence Methods and Techniques / L. Rutkowski. - Berlin-Heidelberg : Springer-Verlag, 2008. - Р. 514.
15. Bishop, C. M. Neural Networks for Pattern Recognition. -Oxford : Clarendon Press, 1995. - Р. 482.
16. Gorban, A. N. Neural network modeling of data with gaps / A. N. Gorban, A. A. Rossiev, D. C. Wunsch II //Радіоелектроніка, інформатика, управління. - 2000. - №1 (3). - С. 47-55.
17. Tkacz, M. Artificial neural networks in incomplete data sets processing / In: Eds. M. A. Klopotek, S. T. Wierzchon, K. Trojanowski // Intelligent Information Processing and Web Mining. - Berlin-Heidelberg : Springer - Verlag, 2005. - P. 577-583.
18. Bodyanskiy, Ye. An adaptive learning algorithm for a neuro-fuzzy network / Ye. Bodyanskiy, V. Kolodyazhniy, A. Stephan // Ed. B. Reusch «Computational Intelligence. Theory and Applications». - Berlin-Heidelberg - New York : Springer, 2001. - P. б8-75.
19. Haykin, S. NeuralNetworks.AComprehensive Foundation / Haykin,
S. - Upper Saddle River, N. J.: Prentice Hall, 1999 - Р 842.
20. Kohonen, T. Self-Organizing Maps / T. Kohonen. - Berlin: Springer-Verlag, 1995. - Р. Зб2.
21. Бодянский, Е. В. Искусственные нейронные сети: aрхитектуры, обучение, применения / Е. В. Бодянский, О. Г. Руденко. - Х. : ТЕЛЕТЕХ, 2004. - С. 372.
Отаття надійшла до редакції 0б.05.2011.
Шафроненко А. Ю., Волкова В. В., Бодянський Є. В.
АДАПТИВНА КЛАСТЕРИЗАЦІЯ ДАНИХ З ПРОПУЩЕНИМИ ЗНАЧЕННЯМИ.
Запропонована адаптивна нейромережева система, що дозволяє вирішувати задачу кластеризації даних з пропущеними значеннями в реальному часі з постійним коригуванням відновлюваних елементів таблиці і центроїдів кластерів. Впроваджена нейронна система характеризується високою швидкодією і простотою чисельної реалізації.
Ключові слова: адаптивна нейромережева система, відновлення пропусків, кластеризація.
Shafronenko A.Yu. Volkova V. V., Bodyanskiy Yev. V.
ADAPTIVE CLUSTERING WITH MISSING VALUES
In this paper the adaptive neural network system that solves the clustering problem of data with gaps is proposed. This system allows to process the data in the on-line mode with a constant correction of recoverable table’s elements and centers of clusters. A proposed neural system has high speed and simple numerical realization.
Key words: adaptive neural network system, the restoration of gaps, clustering.