Многомерные пространства
Введение
Мы живём в 3-мерном пространстве. Оно для нас на столько привычно, что свойства пространств большого числа измерений часто оказываются неожиданными. Тем не менее, именно с такими пространствами имеют дело при распознавании образов (классификации объектов). Напомним, что мы рассматриваем объекты которые характеризуются n вещественными числами. После соответствующей нормировки их можно считать принадлежащими интервалу от 0 до 1. Таким образом, каждый объект представим точкой, находящейся внутри n-мерного единичного гиперкуба. Рассмотрим некоторые математические аспекты многомерия.
Гиперкуб
Единичный 2-мерный куб (квадрат) имеет 4 вершины с координатами
(0,0), (0,1), (1,0), (1,1).
У 3-мерного куба их уже 8.
В пространстве n измерений
каждая точка характеризуется n координатами:
{x1,...,xn}. Пусть одна вершина куба находится
в начале координат: {0,0,...,0} (n нулей).
Тогда остальные вершины нумеруются всеми возможными последовательностями
n нулей и единиц:
{0,0,...,0}, {1,0,...,0}, ..., {1,1,...,1}.
Существует 2n двоичных чисел с n разрядами,
поэтому:
Гиперкуб в n измерениях имеет 2n вершин
При больших n гирперкуб очень "колючий" объект. Например, в пространстве с 32 признаками он имеет 4294967296 вершин.
Из каждой из 2n вершин гиперкуба выходит n рёбер (для вершины (0,0,...,0) это координатные оси). Поэтому всего у гиперкуба n2n/2=n2n−1 рёбер.
Гиперкуб имеет 2n "сторон" являющихся (n−1)-мерными кубами (у 3-куба 6 сторон-квадратов). Кроме этого, гиперкуб можно получить соединением рёбрами вершин двух (n−1)-мерных кубов (для "обычного" куба это два квадрата). При этом:
Гипотеза компактности
Предположим, что мы хотим равномерно заполнить гиперкуб точками (обучающими объектами).
Для этого каждый признак (ось) разобьём на k равных частей.
В результате получится kn кубиков, в каждый из которых
можно поместить точку. Понятно, что даже при k = 2
и n = 32 это сделать практически невозможно.
Таким образом,
многомерное пространство очень большое.
Необходимо стремится к такому отбору признаков объектов, при котором соответствующие их классам образы не были бы слишком сложными. Иногда это формулируют в виде гипотезы компактности:
Каждый класс должен занимать относительно компактную область в n-мерном пространстве и различные классы могут быть отделены друг от друга сравнительно простыми поверхностями.В противном случае задача не только распознавания, но и даже подготовки обучающего множества становится очень нетривиальной задачей.
Шар
Множество равноудалённых точек от данной (центра) называется сферой. Пространство внутри сферы называется шаром. Шар, вписанный в гиперкуб это очень "маленький" объект. Объёма шара радиуса R в пространствах равен: Vn(R)=πn/2Γ(n2+1)Rn, V2k(R)=πkk!R2k, где Γ(x) - гамма-функция (вторая формула приведена для чётного числа измерений). Напомним, что:
Докажем теперь формулу для объёма n-мерного шара:
Поэтому объём 2-мерной сферы радиуса R (площадь круга) равен V2=πR2, а полный телесный угол Ω2=2π.
Аналогично для трёхмерного пространства d3x=r2drdΩ, поэтому V3=(4/3)πR3 и Ω3=4π.
Для n-мерного случая вычислим произведение n гауссовых интегралов (r2=x21+...+x2n): ∞∫−∞e−(x21+...+x2n)dnx=∞∫0e−r2rn−1dr∫dΩ=12Γ(n/2)∫dΩ=πn/2, где последнее равенство получено возведением в n-ю степень (первый интеграл) гауссова интеграла. Теперь несложно записать n-мерный телесный угол и объём n-мерной сферы радиуса R: Ωn=∫dΩ=2πn/2Γ(n/2), Vn=ΩnRnn. ►
В единичный гиперкуб можно вписать шар радиуса R=1/2. Его объём при n=10 равен V10=0.0025, а при n=32 он исчезающе мал: V32=10-15. Хотя шар "прижимается" к граням гриперкуба, его окружает очень много (2n) углов.
Ещё одна особенность n-мерного шара состоит в том, что почти весь его объём сосредоточен возле поверхности.
Действительно, рассмотрим два вложенных друг в друга шара. Один радиуса R,
второй - радиуса R-ΔR. Разность их объёмов равна объёму сферического слоя между ними.
Отношение его объёма к объёму шара радиуса R приведено на рисунке справа для
различных размерностей пространства n.
Пусть шар равномерно (с постоянной плотностью) заполнен объектами. Случайно выбранный объект (при больших n) почти наверняка окажется возле поверхности шара.
Пусть объекты данного класса характеризуются некоторыми типичными (средними) значениями признаков с небольшим разбросом вокруг этих средних значений. Тогда образ этого класса является центром шара в n-мерном пространстве. Чем меньше разброс вокруг среднего, тем меньше радиус такого шара-образа. Если у разных признаков разброс имеет различную амплитуду, то шар превращается в эллипсоид. Линейным преобразованием всегда можно превратить эллипсоид в шар. Однако, если в пространстве признаков существует несколько различных эллипсоидов, то линейным преобразованием превратить в шар можно только один из них.
m-мерные плоскости
Пусть x={x1,...,xn} - точка в n-мерном пространстве (верхний индекс - номер координаты). Поверхность размерности m можно описать параметрическим образом x=f(t1,...,tm), где tk - набор скалярных параметров (их количество равно размерности поверхности). Например, единичная сфера в 3-мерном пространстве описывается двумя (2-мерный объект) углами {t1,t2}={θ,ϕ}: x=sinθcosϕ, y=sinθsinϕ, z=cosθ. Самой простой m-мерной поверхностью является плоскость. Пусть ek={e1,...,em} - набор m единичных, попарно ортогональных векторов (ekep=δpk, где δpk - символ Кронекера). Тогда уравнение плоскости имеет вид: x=x0+m∑k=1tkek. Параметры {t1,...,tm} выступают декартовыми координатами в m-мерном пространстве с базисом {e1,...,em}. Вектор x0 задаёт положение начала координат (точка в которой все координаты tk на плоскости равны нулю). Уравнение (1) является первым приближением разложения в ряд Тейлора произвольной поверхности x=f(t1,...,tm) в окрестности точки t1=...=tm=0. Если m=1, то (1) будет уравнением прямой (одномерный объект). При m=2 мы имеем двумерную плоскость и т.д.
Расстояние до m-плоскости
Получим выражение для кратчайшего евклидового расстояния (x−X)2 от произвольной точки X до m-плоскости (1). Для этого необходимо найти параметры tk для которых это расстояние минимально: d2=(x0−X+m∑k=1tkek)2=min. Возьмём производную по tp, приравняем её нулю и учтём ортонормированность векторов ek: (x0−X+m∑k=1tkek)ep=(x0−X)ep+tp=0 ⇒ tp=−(x0−X)ep. Подставим эти tp в квадрат расстояния d2: d2=(x0−X−m∑k=1[(x0−X)ek]ek)2. Возводя в квадрат (снова с учётом ортогональности), это выражение можно переписать в следующем виде: d2=(x0−X)2−m∑k=1[(x0−X)ek]2. Проекция точки X на плоскость получается подстановкой найденных параметров tk в уравнение плоскости (1): X ↦ x=x0+m∑k=1[(X−x0)ek]ek.
Гиперплоскость
Гиперплоскостью в n-мерном пространстве называют (n−1)-мерное пространство (в 2-мерии это линия, а в 3-мерии "обычная" плоскость). Таким образом, гиперплоскость это (n−1)-плоскость (m=n−1). Гиперплоскость всегда можно провести через n точек. Соответственно, она задаётся при помощи n чисел (например, единичным (\boldsymbol{\omega}^2=1) вектором нормали (перпендикуляра) к плоскости \boldsymbol{\omega} = \{\omega^1,....,\omega^n\} и параметром сдвига \omega_0.
Пусть гиперплоскость проходит через точку \mathbf{x}_0 и имеет вектор нормали \boldsymbol{\omega}. Тогда расстояние d от гиперплоскости до некоторой точки \mathbf{X}=\{X^1,...,X^n\} вычисляется по формуле
d = \omega_0 + \boldsymbol{\omega}\mathbf{X},~~~~~~~~~~~~\omega_0 = -\boldsymbol{\omega}\mathbf{x}_0.При этом d > 0, если точка \mathbf{X} лежит с той стороны плоскости, куда указывает вектор \boldsymbol{\omega} и d < 0, если с противоположной. Когда d=0 - точка \mathbf{X} лежит в плоскости. Изменение параметра \omega_0 сдвигает плоскость параллельным образом в пространстве. Если \omega_0 уменьшается, то плоскость смещается в направлении вектора \boldsymbol{\omega} (расстояние меньше), а если \omega_0 увеличивается - плоскость смещается против вектора \boldsymbol{\omega}. Это непосредственно следует из приведенной выше формулы.

Если длина \omega=|\boldsymbol{\omega}| вектора \boldsymbol{\omega} отлична от единицы, то d в \omega раз больше (\omega > 1) или меньше (\omega < 1) евклидового расстояния в n-мерном пространстве. Когда векторы \boldsymbol{\omega} и \mathbf{X}-\mathbf{x}_0 направлены в противоположные стороны: d < 0. ►
Если пространство имеет n измерений,
то гиперплоскость это (n-1)-мерный объект.
Она делит всё пространство на две
части.
Для наглядности рассмотрим 2-мерное пространство.
Гиперплоскостью в нём будет прямая линия (одномерный объект).
Справа на рисунке кружок изображает одну точку пространства,
а крестик - другую. Они расположены по разные стороны от линии (гиперплоскости).
Если длина вектора ω много больше единицы, то и расстояния
d
от точек к плоскости по модулю будут существенно большими единицы.
Уравнение гиперплоскости, аналогично m-плоскости, можно записать в параметрическом виде при помощи n-1 векторов базиса \{\mathbf{e}_1,...,\mathbf{e}_{n-1}\}. Все эти векторы ортогональны вектору нормали: \boldsymbol{\omega}\mathbf{e}_k=0.
Симплекс
Симплексом называют n мерное обобщение треугольника 2-мерного пространства.
В 3-мерии это тетраэдр (рисунок справа).
Через n точек в n-мерном пространстве можно провести гиперплоскость.
Соответственно n+1 точек в общем случае не лежат на одной гиперплоскости
и образуют симплекс с n+1 вершинами. Если все рёбра (расстояния между парами вершин)
одинаковы - симплекс называют правильным.
Напротив каждой из n+1 вершин лежит гиперплоскость (в которую эта вершина не попала).
Каждая из n+1 вершин симплеса соединена со всем остальными вершинами рёбрами. Соответственно, число рёбер равно n\,(n+1)/2.
Объём правильного симплекса с единичными рёбрами равен: V_n = \frac{\sqrt{n+1}}{n!\,2^{n/2}}. Как и шар, это очень "маленький" объект.
Пусть внутри сферы находятся объекты одного класса, а вне неё - объекты другого класса. Для их разделения потребуется нейронная сеть с одним скрытым слоем, имеющая по меньшей мере n+1 нейронов в скрытом слоёв. Они образуют n+1 гиперплоскостей симплекса (возможно со сглаженными углами, если длины векторов нормали невелики).