Е. Миркес - Учебное пособие по курсу «Нейроинформатика»
Для рассматриваемых сетей с ортогональным проектированием также возможно простое дообучение. На первый взгляд, это может показаться странным — если добавляемый эталон линейно независим от старых эталонов, то, вообще говоря, необходимо пересчитать матрицу Грама и обратить ее. Однако симметричность матрицы Грама позволяет не производить заново процедуру обращения всей матрицы. Действительно, обозначим через Gm — матрицу Грама для множества из m векторов; через Em — единичную матрицу размерности m×m. При обращении матриц методом Гаусса используется следующая процедура:
1 .Запишем матрицу размерности m×2m следующего вида: (Gm|Em).
2. Используя операции сложения строк и умножения строки на ненулевое число преобразуем левую квадратную подматрицу к единичной. В результате получим (Em|Gm-1). Пусть известна Gm-1 — обратная к матрице Грама для множества из m векторов xi. Добавим к этому множеству вектор xm+1. Тогда матрица для обращения матрицы Gm+1 методом Гауса будет иметь вид:
После приведения к единичной матрице главного минора ранга m получится следующая матрица:
где bi — неизвестные величины, полученные в ходе приведения главного минора к единичной матрице. Для завершения обращения матрицы Gm+1 необходимо привести к нулевому виду первые m элементов последней строки и (m +1)-го столбца. Для обращения в ноль i-го элемента последней строки необходимо умножить i-ю строку на (x, xm+1) и вычесть из последней строки. После проведения этого преобразования получим
где , .
b0 = 0 только если новый эталон является линейной комбинацией первых m эталонов. Следовательно b0 ≠ 0. Для завершения обращения необходимо разделить последнюю строку на b0 и затем вычесть из всех предыдущих строк последнюю, умноженную на соответствующее номеру строки bi. В результате получим следующую матрицу
где Fij = Gmij-1-bicj/b0. Поскольку матрица, обратная к симметричной, всегда симметрична получаем ci/b0 = -bi/b0 при всех i. Так как b0 ≠ 0 следовательно bi = -ci.
Обозначим через d вектор ((x1, xm+1), …, (xm, xm+1)), через b — вектор (b1, …, bm). Используя эти обозначения можно записать b = Gm-1d, b0 = (xm+1,xm+1)-(d,b), b0 = (xm+1,xm+1)-(d,b). Матрица Gm+1-1 записывается в виде
Таким образом, при добавлении нового эталона требуется произвести следующие операции:
1. Вычислить вектор d (m скалярных произведений — mn операций, mn≤n²).
2. Вычислить вектор b (умножение вектора на матрицу — m² операций).
3. Вычислить b0 (два скалярных произведения — m+n операций).
4. Умножить матрицу на число и добавить тензорное произведение вектора b на себя (2m² операций).
5. Записать Gm+1-1.
Таким образом эта процедура требует m+n+mn+3m² операций. Тогда как стандартная схема полного пересчета потребует:
1. Вычислить всю матрицу Грама (nm(m+1)/2 операций).
2. Методом Гаусса привести левую квадратную матрицу к единичному виду (2m³+m²-m операций).
3. Записать Gm+1-1.
Всего 2m³+m²–m+nm(m+1)/2 операций, что в m раз больше.
Используя ортогональную сеть (6), удалось добиться независимости способности сети к запоминанию и точному воспроизведению эталонов от степени коррелированности эталонов. Так, например, ортогональная сеть смогла правильно воспроизвести все буквы латинского алфавита в написании, приведенном на рис. 1.
Основным ограничением сети (6) является малое число эталонов — число линейно независимых эталонов должно быть меньше размерности системы n.
Тензорные сети
Для увеличения числа линейно независимых эталонов, не приводящих к прозрачности сети, используется прием перехода к тензорным или многочастичным сетям [75, 86, 93, 293].
В тензорных сетях используются тензорные степени векторов. k-ой тензорной степенью вектора x будем называть тензор x⊗k, полученный как тензорное произведение k векторов x.
Поскольку в данной работе тензоры используются только как элементы векторного пространства, далее будем использовать термин вектор вместо тензор. Вектор x⊗k является nk-мерным вектором. Однако пространство L({x⊗k}) имеет размерность, не превышающую величину , где — число сочетаний из p по q. Обозначим через {x⊗k} множество k-х тензорных степеней всех возможных образов.
Теорема. При k<n в множестве {x⊗k} линейно независимыми являются векторов. Доказательство теоремы приведено в последнем разделе данной главы.
Небольшая модернизация треугольника Паскаля, позволяет легко вычислять эту величину. На рис. 2 приведен «тензорный» треугольник Паскаля. При его построении использованы следующие правила:
1. Первая строка содержит двойку, поскольку при n= 2 в множестве X всего два неколлинеарных вектора.
2. При переходе к новой строке, первый элемент получается добавлением единицы к первому элементу предыдущей строки, второй — как сумма первого и второго элементов предыдущей строки, третий — как сумма второго и третьего элементов и т. д. Последний элемент получается удвоением последнего элемента предыдущей строки.
Рис. 2. “Тензорный” треугольник Паскаля
В табл. 1 приведено сравнение трех оценок информационной емкости тензорных сетей для некоторых значений n и k. Первая оценка — nk — заведомо завышена, вторая — — дается формулой Эйлера для размерности пространства симметричных тензоров и третья — точное значение.
Таблица 1.
Как легко видеть из таблицы, уточнение при переходе к оценке rn,k является весьма существенным. С другой стороны, предельная информационная емкость тензорной сети (число правильно воспроизводимых образов) может существенно превышать число нейронов, например, для 10 нейронов тензорная сеть валентности 8 имеет предельную информационную емкость 511.
Легко показать, что если множество векторов {xi} не содержит противоположно направленных, то размерность пространства L({x⊗k}) равна числу векторов в множестве {xi}.
Сеть (2) для случая тензорных сетей имеет вид
(9)
а ортогональная тензорная сеть
(10)
где rij-1 — элемент матрицы Γ-1({x⊗k}).
Рассмотрим, как изменяется степень коррелированности эталонов при переходе к тензорным сетям (9)
Таким образом, при использовании сетей (9) сильно снижается ограничение на степень коррелированности эталонов. Для эталонов, приведенных на рис. 1, данные о степени коррелированности эталонов для нескольких тензорных степеней приведены в табл. 2.
Таблица 2. Степени коррелированности эталонов, приведенных на рис. 1, для различных тензорных степеней.
Тензорная степень Степень коррелированности Условия CAB CAC CBC CAB+CAC CAB+CBC CAC+CBC 1 0.74 0.72 0.86 1.46 1.60 1.58 2 0.55 0.52 0.74 1.07 1.29 1.26 3 0.41 0.37 0.64 0.78 1.05 1.01 4 0.30 0.26 0.55 0.56 0.85 0.81 5 0.22 0.19 0.47 0.41 0.69 0.66 6 0.16 0.14 0.40 0.30 0.56 0.54 7 0.12 0.10 0.35 0.22 0.47 0.45 8 0.09 0.07 0.30 0.16 0.39 0.37Анализ данных, приведенных в табл. 2, показывает, что при тензорных степенях 1, 2 и 3 степень коррелированности эталонов не удовлетворяет первому из достаточных условий (), а при степенях меньше 8 — второму ().