Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Прикладная теория категорий. Монография

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
странства параметров P. Выбор параметра p ∈ P определяет функцию fp из A в B, т.е. имеется отображение I : P × A → B, такое что fp = I(p, –) для каждого p ∈ P. Обучаемый алгоритм, сравнивая fp(a) с заданным значением b = f(a), может улуч­шить результат за счет выбора нового значения параметра p′ ∈ P. Такое обучение можно представить функцией обнов­ления U : P × A × B → P.
Если имеются схемы обучения для аппроксимации ком-
позиции функций f : A → B и g : B → C, построить алгоритм аппроксимации композиции можно следующим образом. Пусть I : P × A → B и J : Q × B → C — установочные функции, а U : P × A × B → P и V : Q × B × C → C — функции обновления соответствующих алгоритмов обучения. Пространством па­раметров для функции g f: A → C служит P × Q, функция параметризации I * J: P × Q × A → C определяется формулой
(I * J)(p, q, a) = J(q, I(p, a)). (1)
С построением функции обновления P × Q × A × C → → P × Q дело обстоит не так просто. Имеются обучающие пары вида (a, b ≈ f(a)) и обучающие пары вида (b, c ≈ f(b)), но, вообще говоря, стыковки обучающих наборов по компоненте «b» может не быть. Устранить «зазор» позволяет функция запроса Q × B × C → B, которая возвращает подходящий к a ∈ A элемент b ∈ B. Таким образом, функция запроса явля­ется формой обратной связи. Используя функцию запроса, получаем функцию обновления U * V : P × Q × A × C → C, для которой
(U * V)(p, q, a, c) = (U(p, a, s(q, I(p, a), c), V(q, I(p, a), c)) (2)
В итоге получается, что алгоритм обучения построению функции f : A → B имеет следующие компоненты:
пространство параметров P;
установочной функцией I : P × A → B;
функция обновления u : P × A
× B → P;
функция запроса r : P × A × B → A.
Набор таких компонентов будем называть обучаемым.
Обучаемые (P, I, U, R) и (P′, I′, U′, R′) с общим отобра­жением f : A → B считаются эквивалентными, если суще­ствует биективное соответствие параметров ϕ : P → P′, ком­мутирующее со структурными морфизмами, т.е. такое, что
I′(ϕ(p), a) = I(p, a);
141
U′(ϕ(p), a, b) = ϕ(U(p, a, b));
≈⊗
↓↓
PA
BB
ff
r′(ϕ(p), a, b) = r (p, a, b).
для всех p ∈ P, a ∈ A, b ∈ B.
Формализация описанной схемы проводится в рамках моноидальных категорий, объекты которых — конечномер­ные евклидовы пространства, а морфизмы — дифференци­руемые отображения.
7.2. Категории параметризаций и алгоритмов обучения
Пусть C — симметричная моноидальная категория. Категория параметризаций Para(C) имеет те же объекты, что и категория C, а морфизмами служат параметризован­ные морфизмы категории C. Более подробно, параметризо­ванный морфизм A → B в категории Para(C) задается парой (P, f), где P — объект, а f : P ⊗ A → B — (3)
морфизм категории C.
Диаграмма
QP AQPA QB C
⊗
⊗→⊗ ⊗
)
(
(
Qf g
→ ⊗→
)
дает определение композиции параметризованных морфиз­мов f : P ⊗ A → A и g : Q ⊗ B → B в категории Para(C).
Запрос на множестве параметризованных морфизмов A → B в категории Para(C) представляет собой отображение f f′ и задается морфизмом r : P′ → P таким, что f → (r ⊗ A) =
= f′ (диаграмма (4)).
⊗
PA
⊗→ ⊗
′
′
rA
(4)
=
Здесь необходимо сделать одно уточнение. Строго гово­ря, Para(C) не является категорией, хотя бы потому, что ком­позиция параметризованных морфизмов ассоциативна лишь с точностью до изоморфизма. В подобных ситуациях вместо категорий используются так называемые бикатегории.
В бикатегории так же, как и в категории, имеются объекты. Для каждой пары объектов X, Y бикатегории B определена категория HomB(X, Y). Объекты этой категории
142
называются 1-морфизмами бикатегории B, а ее морфизмы — 2-морфизмами бикатегории B. Для каждого объекта X в HomB(X, X) указан 1-морфизм idX.
Композиция в бикатегории B задается функторами
Hom
(X, Y) × HomB(Y, Z) → HomB(X, Z), (5)
B
заданными для каждой тройки объектов X, Y, Z. Функтор (5) паре 1-морфизмов (f, g) ставит в соответствие 1-морфизм g f, а паре 2-морфизмов (ϕ, ψ) — 2-морфизм ψ * ϕ.
При этом должны выполняться естественные условия согласованности, подобные условиям для тензорных произ­ведений в моноидальных категориях: для каждого 1-мор­физма f : X → Y и каждой тройки 1-морфизмов
f : X → Y, g : Y → Z, h : Z → W
имеются естественные изоморфизмы
λ
: idY f → f и ρf : f idX → f в HomB(X, Y);
f
: (h g) f → h (g f),
α
f, g, h
удовлетворяющие естественным условиям.
С учетом сделанных замечаний можно сделать необхо­димые уточнения. На самом деле Para(C) является бикатего­рией. Параметризованные морфизмы (3) являются 1-морфиз­мами, а запросы — 2-морфизмами. Единичный 1-морфизм
idX задается тривиально параметризованным морфизмом I ⊗ X → X, где I — единица тензорного произведения.
Чтобы не усложнять обозначения, будем считать рас­сматриваемые моноидальные категории строгими, т.е. предполагать что структурные изоморфизмы являются тож­дествами. В необходимых случаях будут сделаны соответ­ствующие оговорки.
Пример 1. Пусть Smooth — категория, объекты кото- рой пространства n, а морфизмы из n в m — гладкие ото­бражения n → m. Моноидальная структура — задается де­картовыми произведениями. Параметризованный морфизм в Param(Smooth) представляет собой гладкое отображение вида p × n → m. Если речь идет о нейронной сети, точка в пространстве p соответствует весовым коэффициентам.
Слой нейронной сети можно представить как параме­тризованный морфизм в категории Param(Smooth). Предпо­ложим, что слой имеет n входных и m выходных нейронов.
143
Обозначим через W множество связей между входными и вы-
im
()
=+
()
()
≤≤
1
AB
(
(
(
(
(
:.
ходными нейронами, а через r — мощность этого множества. Тогда слой может быть представлен отображением f : 
n → m таким, что
r+m
×
fw ba wa b
где wij — весовые значения (в направлении от нейрона j к нейрону i), bi — смещения, aj — значения на входе, σ — функция активации.
Нейронная сеть может быть представлена как последова-
тельность слоев, т.е. как последовательность отображений вида
f1 :
Беря их композицию как параметризованных морфиз-
мов, получаем отображение вида
которое представляет нейронную сеть как параметризован­ный морфизм из
Заметим, что переход к категории параметризаций является функториальным в следующем смысле. Пусть C и D — симметричные моноидальные категории. Тогда слабо моноидальный функтор F : C → D может быть продолжен до функтора
согласованного с функтором F. Параметризованному мор­физму f : P ⊗ A → B в C при этом ставится в соответствие па­раметризованный морфизм
ParamF FF F
в D.
Замечание. Функтор F : C → D называется слабо мо-
ноидальным если имеется естественное преобразование F(–) ⊗ F(–) → F(– ⊗ –), удовлетворяющее естественным ус виям перестановочности со структурными морфизмами моно­идальных категорий. В этом определении не требуется, чтобы морфизмы F(X) ⊗ F(Y) → F(X ⊗ Y) были изоморфизмами.
Чтобы определить категорию обучаемых алгоритмов, нам потребуются линзы. Напомним определение (см. раздел 5.3).
,, ,
)
(
()
ij i
r1 + n
1
Param(F): Param(C) → Param(D),
fP AP
)
≤≤
1
×
im
n
0
n
в m.
⊗
)
→
()
j
jn
≤≤
1
n
1
, …, fk :
f : P ×
→ ⊗
)
ϕ
n
XY
σ
→ m,
,
∑
rk+ n
j
ij ji
k
×
→
)
nk–1
F
→
f
()
n
k
.
)
ло-
144
Пусть C — декартова категория. Объектами категории линз Lens(C) являются пары объектов категории C. Мор­физм — линза — задается прямым и возвратным морфизма­ми. В общем линза имеет вид
←
A
 
A
B
′
 
→
′
,
B
где A → B и A × B′ → A′.
Комбинируя конструкцию параметризации с конструк­цией линзы, получаем категорию параметризованных линз Para(Lens(C)). Таким образом, параметризованная линза выглядит следующим образом
∗
P
f
:
P
f
где f : P × A → B — прямой, а f
A
′
⊗
A
PA
′
=
PABB
*
: P × A× B′ → P′ × A′ — возврат-
′×′
×
←
′
→
ный морфизмы.
Задача машинного обучения теперь сводится к построе­нию такой параметризованной линзы
rIP
:
A
B
 
P
←
⊗
A
→
(6)
B
в которой прямой морфизм I : P × A → B аппроксимирует нужную функцию, а возвратный морфизм r : P × A × B → → P × A представляет собой репараметризацию. Для постро- ения параметризованной линзы используется нейронная сеть, механизм работы которой требуется описать в категор­ных терминах.
7.3. Декартовы дифференциальные категории
Декартова моноидальная категория C называется ад­дитивной слева, если в множествах Hom
(A, B) определена
C
коммутативная и ассоциативная операция сложения с ней­тральным элементом 0, устойчивая относительно компози­ции в том смысле, что (f + g) h = f h + g h и h 0 = 0 для любых f, g : A → B и h : C → A.
Отображения h : B → C, для которых h (f + g) = h f + + h g при всех f, g : A → B называются аддитивными.
145
Аддитивная слева категория может не быть аддитив-
ной, так что произведение A × B, вообще говоря, не является суммой. Тем не менее, произведение A × B обладает некото­рыми свойствами, сходными со свойствами сумм в аддитив­ных категориях.
Для морфизма C → A × B, однозначно определяемого морфизмами f : C → A и g : C → B, будем использовать обо­значение 〈f, g〉. Таким образом, по определению
π
〈f, g〉 = f, πB  〈f, g〉 = g.
A
Для любых A и B имеются аналоги вложений A → A × B и B → A × B. А именно,
ι
= 〈idA, 0〉 : A → A × B, ιB = 〈0, idB〉 : B → A × B.
A
Если f : C → A и g : C → B, то 〈f, g〉, то, очевидно, 〈f, g〉 = = ι
f + ιB  g.
A
Для f : A → C и g: B → C, положим
где π
〈f | g〉 = f π
: A × B → A и πB : A × B → B — проекции.
A
+ g πB : A × B → C,
A
Для произвольного объекта A определим отображение [+A] : A × A → A как сумму проекций произведения A × A на первую и вторую компоненту. Очевидно,
[+
] = 〈idA | idA〉.
A
Если f : A → B и g : C → D, то f × g : A × B → C × D можно представить в виде f × g = 〈ι
f | ιD  g〉.
B
Прежде, чем привести определение дифференциально­го оператора в аддитивной слева категории, рассмотрим при­мер, который мотивировал введение этого понятия.
Пусть f : n → m — гладкое отображение, а ui = ui(x), i = 1, ..., m, — координатные функции. Для x ∈ n матрица
Якоби
Jx
() ()=
f
∂
∂
u
i
x
задает линейное отображение n в m.
x
j
Соответствие x J(x) отображает n в пространство линей­ных отображений n в m. Сопоставляя паре точек (x, y) ∈ n × n точку Jf(x) · y ∈ m, получаем отображение
n × n → m.
Фиксация свойств этого отображения на языке теории категорий приводит к понятию дифференциального комби­натора [Cockett, 2020] или дифференциального оператора в [Blute, 2009].
146
Дифференциальным комбинатором в аддитивной сле-
xy
,,
ва категории C называется преобразование морфизмов D, такое, что D[f] : A × A → B для любого морфизма f : A → B категории C и выполняются следующие условия.
[CDC.1] D[f + g] = D[f] + D[g] и D[0] = 0. [CDC.2] D[f] 〈a, b + c〉 = D[f] 〈a, b〉 + D[f] 〈a, c〉 и
D[f]  〈a, 0〉 = 0.
[CDC.3] D[1] = π01, где π10, π01: A × A → A — проекции
соответственно на первый и второй множитель;
D[π10] = π где π10, π10: A × A → A и π → A × A — проекции соответственно на первый и второй множитель.
[CDC.4] D[〈f, g〉] = 〈D[f], D[g]〉.
[CDC.5] D[g f] = D[g] 〈f π10, D[f]〉.
[CDC.6] D[D[f]] 〈〈a, b〉, 〈0, d〉〉 = D[f] 〈a, d〉.
[CDC.7] D[D[f]] 〈〈a, b〉, 〈c, d〉〉 = D[D[f]] 〈〈a, c〉, 〈b, d〉.
Примеры
(2a). Пусть f : →  — функция одной переменной. Тогда
При этом условия [CDC.1]—[CDC.5] приобретают сле­дующий вид:
[CDC.1] (f + g)′ · y = f′(x) · y + g′(x) · y и (0)′ · y = 0 · y;
[CDC.2] f′(a(t))(b(t) + c(t)) = f′(a(t)) · b(t) + f′(a(t)) · c(t) и f′(a(t)) · 0 = 0;
[CDC.3] (x)′ · y = y;
[CDC.4]
[CDC.5] (g(f(x))′ · z = g′(f(x)) · f′(x) · z.
(2b). Если F :
D FxyuvFxy Fxy
а [CDC.7] — к соотношению
,,,,,,
(
[]
Для F(x, y) = D[f](x, y) =f′(x) · y получаем
Таким образом, [CDC.6] сводится к соотношению
f″(a) · b · c + f′(a) · d = f″(a) · c · b + f′(a) · d.
π
10
fx
()
′
 
gx
()
′
=
)
()
D[F](x, y, u, v) = f″(x) · y · u + f′(x) · v.
f″(a) · b · 0 + f′(a) · d = f′(a) · d,
и D[π01] = π
1100
1100
D[f](x, y) =f′(x) · y.
⋅
fxy
()
y
 
gxy
)
′
()
′
(
⋅
⋅=
 
2
→ — функция двух переменных, то
(
xy
, π
)
 
 
01
0011
;
u
 
v
π
=
,
0011
: (A × A) × (A × A) →
Fxyu Fxyv
+
)
(
(
)
147
.
Пример 3. Пусть R — коммутативное кольцо (или по-
∂
∂
1
xy
nn
∂
∂
1
лукольцо) с единицей. Определим категорию Poly(R) по- линомиальных отображений над R. Объектами категории являются натуральные числа. Морфизм из n в m задается упорядоченным набором
(p
, ..., xn), ..., pm(x1, ..., xn))
1(x1
из m многочленов от n переменных x
, x2, ..., xn с коэффи-
1
циентами из R. Композиция в Poly(R) — это стандартная композиция многочленов. Например, f = (x
2
, 2x1x2, x
1
2
2
) —
морфизм из 2 в 3, а g = (x1 + x2 + x3) — морфизм из 3 в 1 в категории Poly(). Композиция g f — это морфизм (x + 2x1x2, x
2
) из 2 в 1. Декартовым произведением объектов n
2
2
+
1
и m является объект n + m с проекциями
(x
, ..., xn, x
1
(x
, ..., xn, x
1
Сложение многочленов в Hom
n+1
n+1
, ..., x
, ..., x
n+m
) (x1, ..., xn) и
n+m
) (x
n+1
Poly(R)
, ..., x
).
n+m
(n, m) порождает
структуру аддитивной слева категории:
(p
, ..., pm) + (q1, ..., qm) = (p1 + q1, ..., pm + qm).
1
Если p(x
, ..., xn) рассматривать как морфизм из n в 1 в
1
категории Poly(R), то
D px xy y
,..., ,,..., ,..., ... ,...., .
(
[]
nn n
11
=
)
p
xxy
(
11 1
∂
x
)
++
∂
p
x
(
x
n
(7)
)
Для морфизма из n в m дифференцирования определя-
ется формулой вида (7) для каждой из m компонент.
Пример 4. В категории конечномерных пространств и
гладких отображений Smooth морфизм из n в — это про­сто гладкая функция n переменных. Соответственно для x = (x1, ..., xn) ∈ n и y = (y1, ..., yn) ∈ n имеем по аналогии с (7):
D pxy
(
[]
p
xy
=
)
∂
x
(
)
1
++
p
xy fx y
)
(
∂
x
n
n
=∇
⋅,... .
)
(
(8)
В общем случае, если даны fi(x1, ..., xn), i = 1, ..., m, и
f = (f1, ..., fm) : n → m, то
D[f](x, y) = J
(x) · y. (9)
f
В дифференциальной категории можно ввести понятие
частной производной.
148
Пусть C— дифференциальная категория и f : A × B →
B
[]
→
[]
:,
BA
↓↓
n
,,
1
→ C — морфизм в C. Частная производная f по B — это ком­позиция
id
××
,ππ
0
A
D
fABB AB AB C
××→ ×
где π10, π
: B × B → B — проекции соответственно на пер-
01
10 01
(
(
××
)
f
D

)
вый и второй множители.
Морфизм f : A → B называется линейным, если D[f] = f π01, где π
: A × A → A — проекция на второй множитель
01
.
Морфизм f: A × B → C называется линейным по B, если DB[f] = f (idA ×
π01), где
π
: B × B → B, т.е. коммутативна
01
диаграмма (10).
××
10
ππ
,
A
AB
×× → ×
×
1
π
A
01
AB C
×→
10 01
f
(
BAB
××
)
(
f
D
[]
)
.
(10)
Введем теперь понятие реверсивного дифференциаль­ного комбинатора.
Это понятие дает обобщение в категорных терминах конструкции, лежащей в основе метода вычисления гради­ента с помощью обратного распространения ошибки в ней­ронных сетях.
Если, например, f : n → — гладкая функция, то ре­версивный дифференциальный комбинатор для нее — это отображение
xy
(
∂
f
)
xy
)
(
∂
x
...,
∂
f
∂
x
xy
(
T
)
 
из n × в . В более общем случае, если f : n → m, то диф­ференциальный комбинатор отображения f — это отображе­ние n × m в n, при котором
(x, y) J
(x)T · y.
f
Реверсивным дифференциальным комбинатором в ад-
дитивной слева категории C называется преобразование мор­физмов R, такое, что R[f] : A × B → A для любого морфизма f : A → B категории C и выполняются следующие условия [Cockett, 2019, Cruttwell, 2022].
149
[RD.1] R[f + g] = R[f] + R[g] для любых f, g : A → B и
AB
[]
:,
AB
:,
CA
↓↓
[]
CA
↓↑
[]
BA
↓↓
××
11
πι
()
××
R[0] = 0.
[RD.2] R[f] 〈a, b + c〉 = R[f] 〈a, b〉 + R[f] 〈a, c〉 и
R[f] 〈a, 0〉 = 0 для любых f : A → B, a : X → A и b, c : X → B.
[RD.3] R[1A] = π01, где π
: A × A → A — проекция на
01
второй множитель. Далее, если πA : A × B → A и πB : A × B → → B — проекции, то
R π
A
R π
[]
B
AB AA
×
)
(
AB BB
×
(
π
×→→ ×
π
×→ → ×
)
,10
,01
где π в обоих случаях обозначает проекцию.
[RD.4] Для f : A → B, g : A → C и соответствующего мор-
физма 〈f, g〉 : A → B × C справедливо тождество
R[〈f, g〉] = R[f] (1
где π
: B × C → B и πC : B × C → C — проекции (см. (11)).
B
AB
× πB) + R[g] (1A × πC): A × (B × C) → A
A
×
11π
××
(
×
π
AC
AB C
×→
AB
→ ×
)
g
R
[]
B
f
R
. (11)
Для единственного морфизма !A : A → 1 в терминаль­ный объект 1 реверсивный дифференциальный комбинатор равен нулю): R[!A] = 0.
[RD.5] Для f : A → B и f : B → C реверсивный дифферен- циальный комбинатор R[g f] равен композиции на диаграм- ме (12), на которой πA : A × C → A и πC : A × C → C — проекции.
gf
R
AC A
×→
f
,,
πππ
AAC
AB
××
(
)
g
R
1
×
[]
A
→ ×
R
[]
B
f
.
(12)
[RD.6] Для любого g : A → B коммутативна диаграмма (13).
AB AA
×←  ××
150
AB AAB
f
[]
π
A
← ×
AABA AB AAB
(
)
(
×←  ×
)
×
→×
fRRR

[]
(
(
BAB
××
)
(
×
1
πR,00×
AB A
×
×
)
)
π
(13)
B
)
(
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]