Метод аппроксимации сплайнами минимальной длины

advertisement
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1
А.В. ШКЛОВЕЦ, Н.Г. АКСАК
Харьковский национальный университет радиоэлектроники, Украина
axak@kture.kharkov.ua
МЕТОД АППРОКСИМАЦИИ СПЛАЙНАМИ
МИНИМАЛЬНОЙ ДЛИНЫ ЛИНЕЙНЫХ КАРТ КОХОНЕНА
ДЛЯ ВИЗУАЛИЗАЦИИ МНОГОМЕРНЫХ ДАННЫХ
В работе для уменьшения погрешности визуализации многомерных
данных предложен метод аппроксимации линейных карт Кохонена, расположенных в многомерном пространстве. Для минимизации погрешности аппроксимации в качестве аппроксимирующей функции предлагается
использовать кубические параметрические сплайны минимальной длины.
Ключевые слова: визуализация многомерных данных, линейные карты
Кохонена, параметрические сплайны минимальной длины
Введение
Для решения задач многомерной визуализации данных, имеющих нелинейную кластерную структуру, используются самоорганизующиеся
карты Кохонена и их модификации [1–4]. На этапе непрерывного отображения данных на линейную или плоскую карту возникает ситуация отображения множества данных в одну точку, что делает их неразличимыми
на карте и приводит к значительным ошибкам визуализации [1]. Данная
проблема связана с кусочно-линейной или кусочно-плоской структурой
карты. Одним из возможных решений [1] является аппроксимация карты в
окрестности нейронов многомерными параболическими функциями. В
работе [5] предлагается метод аппроксимации карты Кохонена параметрическим сплайном третьего порядка, который не позволяет полностью
различать данные на карте.
Постановка задачи
Пусть для визуализации множества данных


X  {X 1 ,...,X N } (
T
X c  x1c ,...,xnc , c  1, N ) построена линейная карта Кохонена [6] в
n -мерном евклидовом пространстве с матрицей весовых коэффициентов
УДК 004.032.26(06) Нейронные сети
70
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1

W  wk , p
kp11,,ln ,
где
l
– количество выходных нейронов,
Wk 
  wk ,1 ,..., wk ,n  – вектор весовых коэффициентов k -ого нейрона, и множество выходных нейронов задает сетку  в n -мерном пространстве.
Требуется аппроксимировать карту Кохонена сплайном третьего порядка минимального дефекта, что позволит полностью различать данные
на карте.
Определение параметрического сплайна
Вектор функция S m,v t  называется параметрическим сплайном степени m дефекта  ( 0    m ) в n -мерном пространстве [7], если
Sm,  t    sm,,1  t  ,..., sm,,n  t   ,
sm,, p  t  
l 1
k 1
(1)
smk ,, p  t   C mv 1, l  ,
(2)
m
smk ,v, p   a kjp  t  k  j , t   k , k  1 , p  1, n ,
(3)
j 0
где sm,, p  t  – сплайн степени m дефекта  с уздами на сетке , являю-
щейся равномерным разбиением отрезка 1, l  на l  1 интервал; t – параметр сплайна.
В [8] показано, что кубические сплайны аппроксимируют функции с
высокой степенью точности. Для построения сплайнов более высоких
порядков требуется большее количество операций, что повлечет существенное увеличение количества скалярных операций, необходимых для
построения сплайна и отображения данных на него. В связи с этим рассматриваются сплайны третьего порядка единичного дефекта.
Для простоты изложения введем следующие обозначения:
S  t   S3,1  t  , s kp t   s3k,1, p t  , S k t   s3k,1,1 t ,..., s3k,1,n t  .


Метод построения параметрического сплайна
минимальной длины
Для построения параметрического сплайна S t  необходимо определить
матрицу
коэффициентов
A   a kjp 
k 1,l 1
j 0,3; p 1, n
УДК 004.032.26(06) Нейронные сети
,
состоящую
из
71
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1
N A  4n  l  1 элементов. Обозначим строку матрицы коэффициентов
Akj   a kj1 ,..., a kjn  .
Рис. 1. Построение параметрического сплайна S t 
С учетом соотношений (1)-(3) и условия прохождения параметрического сплайна через точки W (рис. 1) получено 2nl  1 уравнений вида
 A0k  Wk ,
S k t  t k  Wk ,

k  1, l  1 .
 3 k
(4)
 k
S t  t k 1  Wk 1 ,  A j  Wk 1 ,
 j 0
Из условия гладкости первого и второго порядка получено 2nl  2
уравнений вида

dS k t 
dt
d 2 S k t 
dt 2
t k 1

dS k 1 t 
dt
t  k 1 
3
t k 1
d 2 S k 1  t 
dt 2

 jA
k
j
A1k 1 , k  1, l  2 ;
(5)
j 1
t  k 1 
3
 j  j  1 Akj 2 A2k 1 ,
j 2
(6)
k  1, l  2 .
Уравнения (4), (5) и (6) образуют систему линейных алгебраических
уравнений (СЛАУ), состоящую из 4nl  1  2n уравнений. В работе [5]
предлагается добавить к полученной СЛАУ 2n уравнений вида
УДК 004.032.26(06) Нейронные сети
72
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1
 dS1 t 
 A11  0

t 1  0,

 dt
 3
 l 1
jA lj 1  0
 dS t 


0
,
t l
 j  2
 dt

(7)
и решить её. Недостатком данного подхода является наличие точек t  1 и
t  l на сплайне S t  , являющихся проекцией любой точки в n -мерном
евклидовом пространстве. Таким образом, часть данных, для которых эти
проекции являются ближайшими, отображаются в крайние точки, что
приводит к частичной различимости данных.
Для построения сплайна минимальной длины выразим коэффициенты
k
A j через A11 и A3l 1 . Подставляя значения коэффициентов A0k в системе
уравнений (4) в A kj получим
3
A
k
j
 Wk 1  Wk  Wk , k  1, l  1 .
(8)
j 1
Запишем СЛАУ (4)–(6) в виде
 A1k  A2k  A3k  Wk ,

 A1k  2 A2k  3 A3k  A1k 1  0,
k  1, l  2 .
 k
k
k 1
 A2  3 A3  A2  0,
 l 1
l 1
l 1
 A1  A2  A3  Wl 1 ,
(9)
Систему уравнений (9) представим в матричном виде
УДК 004.032.26(06) Нейронные сети
73
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1
A12
A22
A32
A13
A23 ... A1l 2
A12
A31
1
1
2
3
1
1
3
0
1
1
1
1
1
2
3
1
1
3
0
1
...
...
A2l 2
A3l 2
A1l 1
A2l 1
W1  A11
 A11
0
0
W2
0
(10)
0
...
0
...
1
1
1
1
2
3
1
3
...
Wl  2
1
0
0
1
0
1
1
Wl 1  A3l 1
Обнулим подчеркнутые элементы в (10). Для этого вычтем из третьего
уравнения первое, затем вычтем из 3k  2 -го уравнения 3k  1 -ое,
k  1, l  2 , потом из 3k  3 -го уравнения вычтем 3k  2 -ое. В результате получим систему уравнений с трехдиагональной матрицей
A12
A31
A12
A22
1
1
2
3
1
2
0
1
1
1
1
A32
A13
A23 ... A1l 2
A2l 2
A3l 2
A1l 1
A2l 1
W1  A11
 A11
1
2
1
0
W1  A11
0
W2
W2
1
1
...
1
... ...
...
1
1
1
1
2
1
W2
...
Wl  2
1
1
1
Wl  2
Wl  2
1
1
Wl 1  A3l 1
(11)
Для решения системы (11) воспользуемся методом прогонки [9] и
определим рекурсивно коэффициенты (k  2, l  2) :
УДК 004.032.26(06) Нейронные сети
74
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1

 k
1
 1
c2  1  k ,
c1
c2  1,

2  k
1
1
 1
l 1
c3  3  1 , c3  2  k , c2  1  l 1 ,
c2 
c2
c1

 2 2
 k 1
1
c1  1 ,
c1  1  k ,


c3
c3

~ 1
e2  1,

2e~21
~ 1
e3  1  1 ,
c2


1
~
e~12  1  2e3 ,

c13

 1
 E2  W1 ,

2 E21
 1
 E3   1 ,
c2


1
 E12   W1  2 E3 ,

c13
 k
e~1k
e~2   k ,
c1


~
e~1l 1
e2k
~ k
l 1
e3   k , e~2   l 1 ,
c2
c1


k
~
e~1k 1   e3 ,

c3k
 k
E1k
 E2  Wk  k ,
c1


E1l 1
E2k
 k
l 1
 E3  Wk  k , E2  Wl 1  l 1 ,
c1
c2


k
 E1k 1  Wk  E3 .

c3k


bˆ3l 1  1,

1
 ˆ l 1
b2   l 1 ,
c2


l
ˆ 1
bˆ l 1  b2 ,
 1
c1l 1
(12)
(13)
(14)
 k bˆ1k 1  1 bˆ12
bˆ3  k , bˆ3  1 ,
c3
c3




k
bˆ3  1
bˆ31
 ˆk
b2   k , bˆ2   1 ,
c2 
c2



k
1
ˆ
ˆ
bˆ1k  b2 , b1  0,
k


c1
(15)
УДК 004.032.26(06) Нейронные сети
75
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1

 l 1
b3  0,

l 1
 l 1 e2
b

,
 2
c2l 1


l 1
l 1
b l 1  e1  b2 ,
1
c1l 1


 l 1
 B3  0,

l 1
 l 1 E2
 B2  l 1 ,
c2


l 1
l 1
 Bl 1  E1  B2 ,
1

c1l 1

 k e3k  b1k 1
,
b3 
c3k


k
k
 k e2  b3
b

,
 2
c2k


k
k
b k  e1  b2 ,
1
c1k

 1 e31  b12
,
b3 
c13


1
1
 1 e2  b3
b

,
 2
c12

 1
b1  1,


(16)
 k E3k  B1k 1
,
 B3 
c3k


k
k
 k E2  B3
,
 B2 
c2k


k
k
 B k  E1  B2 ,
1

c1k

 1 E31  B12
,
 B3 
c13


1
1
 1 E2  B3
,
 B2 
c12

 1
 B1  0.


(17)
Тогда решение системы (11) выражается через коэффициенты A11 и
A3l 1 :
 A0k

 A1k
 k
 A2
 k
 A3
 Wk ,
 B1k  b1k A11  bˆ1k A3l 1 ,
k  1, l  1 .
 B k  b k A1  bˆk Al 1 ,

2
B3k
(18)
2 1
2 3
k 1 ˆ k l 1
 b3 A1  b3 A3 ,
Значения коэффициентов A11 и A3l 1 могут быть найдены путем решения задачи минимизации длины [10] сплайна S t 
G

A11 , A3l 1
l 1 k 1
 ds kp t  

 dt  min .
 dt 
p 1 

   
k 1 k
n
2
УДК 004.032.26(06) Нейронные сети
(19)
76
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1
Интеграл в задаче (19) в общем виде не существует. Воспользуемся
интегральным неравенством Гёльдера [11]:
k 1 n
 ds kp t  
 ds kp t  

 dt 

 dt .
 dt 
 dt 
p 1 


k p 1 
k 1
2
n
 
k
2

(20)
Тогда задача

G1 A11 , A3l 1
 ds kp t  

 dt 
 dt 
p 1 

2
l 1 k 1 n
   
k 1 k
l 1
k

 ds p t   dt  min
 dt 


2
n k 1 
 
k 1 p 1 k
(21)
является приближением задачи (19).
Раскроем интеграл в задаче (21), учитывая соотношения (1) и (3)

l 1 n
  (a 
G1 A11 , A3l 1 
k 2
1p
k 1 p 1
 2a1kp a2k p 
 
4 k
a2 p
3
 3a2k p a3k p
2
 2a1kp a3k p 
(22)
 
2
9
 a3k p )  min .
5
Учитывая (18), задача (22) выразится в виде

   d
G1 A11 , A3l 1 
n
1p
p 1
 
 d 2 p a11p  d 3 p a 3l p1  d 4 a11p a3l p1  d 5 a11p
    min,
2

(23)
2
 d 6 a3l p1 
где
УДК 004.032.26(06) Нейронные сети
77
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1
l 1

4 k 2
9 k 2
 k 2
k k
k k
k k
d1 p    b1 p   2b1 p b2 p   b2 p   2b1 p b3 p  3b2 p b3 p   b3 p  ,
3
5
k 1

l 1

8
18
d 2 p    2b1k  b1kp  b2k p  b3kp   b2k 2b1kp  b2k p  3b3kp  b3k 2b1kp  3b2k p  b3kp

3
5

k 1
l 1

d3 p    2bˆ1k  b1kp  b2k p  b3kp   bˆ2k 2b1kp  8 b2k p  3b3kp  bˆ3k 2b1kp  3b2k p  18 b3kp

3
5

k 1

l 1
d   2bˆk b k  b k  b k  bˆk 2b k  8 b k  3b k  bˆk 2b k  3b k  18 b k ,
2
3 
2
1
3
3
1
2
 4   1  1
3 2
5 3 
k 1

l 1

4 k 2
 k 2
k k
k k
k k 9 k 2
d5    b1   2b1 b2  3  b2   2b1 b3  3b2 b3  5  b3  ,
k 1

l 1

 ˆk 2
ˆk ˆk 4 ˆk 2
ˆk ˆk
ˆk ˆk 9 ˆk 2 
d6    b1  2b1 b2  b2  2b1 b3  3b2 b3  b3 ,
3
5

k 1


 
 
 

 
 
Здесь b1kp , b2k p и b3kp




,
,
(24)
 
p  1, n соответственно элементы векторов



k
,
и


B3k  b31
,...,b3kn . Обозначим
D2  d 21,..., d 2n  и D3  d 31,..., d 3n  . Задача (23) эквивалентна СЛАУ
B1k
k
b11
,...,b1kn
B2k
k
b21
,...,b2kn
 G1
l 1
1
 1  D2  d 4 A3  2d 5 A1  0,

A
 1
(25)

 G1  D  d A1  2d Al 1  0.
3
4 1
6 3
 A3l 1

Решив СЛАУ (25), получим
 1 2d 6 D2  d 4 D3
,
 A1 
d 4 2  4d 5 d 6

(26)

 Al 1  2d 5 D3  d 4 D2 .
 3
d 4 2  4d 5 d 6

Используя системы уравнений (18) и (26), найдем все параметры
сплайна S t  . Сплайн построен.
Построенный сплайн располагается ближе к кусочно-линейной карте и
не имеет точек, являющихся проекцией любой точки в пространстве. В
связи с этим все точки в пространстве будут отображаться в различные
точки на карте.
Таблица 1
УДК 004.032.26(06) Нейронные сети
78
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1
Количество скалярных операций алгоритма построения сплайна S t 
Выражение
(8)
(12)
(13)
(14)
(15)
(16)
(17)
(24)
(26)
(18)

Операции
сложения T+
n(l – 1)
3l – 7
3
n(3l – 7)
0
3l – 6
n(3l – 6)
(10n + 18)(l – 1)
4n
6n(l – 1)
23nl + 24l – 26n – 28
Операции
умножения T
0
3l – 6
3l – 6
n(3l – 4)
3l  5
3l – 5
n(3l – 5)
(14n + 26)(l – 1)
6n + 5
6n(l – 1)
26nl + 38l – 23n – 43
Общее
количество T
n(l – 1)
6l –13
3l – 3
n(6l – 11)
3l  5
6l – 11
n(6l – 11)
(24n + 44)(l – 1)
10n + 5
12n(l – 1)
49nl + 62l – 49n – 71
В таблице приведены значения количества операций сложения Ò ,
умножения Ò и общего числа скалярных операций Ò для нахождения
промежуточных значений по вышеприведенным формулам. Общее количество скалярных операций для построения сплайна S t  составляет
Т  49 nl  62l  49 n  71  Оnl  . В [5] для построения сплайна требуется
Ò  13nl  6l  19 n  10  Î nl  скалярных операций.
Выводы
Для полной различимости многомерных данных на карте впервые
предложен метод аппроксимации линейной карты Кохонена кубическим
параметрическим сплайном минимальной длины. Найдено количество
скалярных операций, необходимое для аппроксимации карты. Установлено, что аппроксимация карты Кохонена не является трудоемкой процедурой, так как вычислительная сложность линейно зависит от начальных
данных.
Список литературы
1. Зиновьев А.Ю. Визуализация многомерных данных. – Красноярск:
Изд-во КГТУ, 2000. 168 с.
УДК 004.032.26(06) Нейронные сети
79
ISBN 978-5-7262-1375-0. НЕЙРОИНФОРМАТИКА – 2011. Часть 1
2. Goppert J. Regularized SOM-Training: A Solution to the TopologyApproximation Dilemma? // Proc. of International Conference on NetWorks.
Washington, DC, 1996. Vol. 1. P. 38–44.
3. Kivimoto K. Topology Preservation in SOM // Proc. of International
Conference on Neural NetWork. Washingon, DC, 1996. Vol. 1. P. 294–300.
4. Chang M., Yu H., Heh J. Evolutionary Self-Organizing map // Proc. of
International Joint Conference on Neural NetWorks. Washingon, DC, 1998.
5. Аксак Н.Г., Шкловец А.В. Метод аппроксимации карт Кохонена кубическим параметрическим сплайном // системи управління навігації та
зв‘язку. – 2010. 2(14). 70–74 с.
6. Хайкин C. Нейронные сети: полный курс, 2-е издание: Пер. с англ. –
М.: Издательский дом «Вильямс», 2006. 1104 с.
7. Завьялов Ю.С., Квасова Б.И., Мирошниченко В.Л. Методы сплайнфункций. – М.: Наука, 1980. 352 с.
8. Корнейчук Н.П., Бабенко В.Ф., Лигун А.А. Экстремальные свойства
полиномов и сплайнов; АН Украины, ин-т математики. – Киев: Наук.
думка, 1992. 304 с.
9. Прасолов В.В. Задачи и теоремы линейной алгебры. М.: Наука,
1996. 367 с.
10. Рашевский П.К. Курс дифференциальной геометрии (3-е изд). – М.Л: ГИТТЛ, 1950. 428 с.
11. Колмогоров А.Н., Фомин С.В. Элементы теории функций и функционального анализа. – М.: Наука, 1976. 543 с.
УДК 004.032.26(06) Нейронные сети
80
Download