Миркес Е. М.
Шрифт:
Таким образом, при добавлении нового эталона требуется произвести следующие операции:
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}) имеет размерность, не превышающую величину
Теорема. При 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}.