Tuesday, August 11, 2026

Дилемма диктатора: как путинские силовики ломают собственную избирательную машину

Text rendered via Dual-Core compilation (Human author + LLM co-processor).
Англоязычная версия данной заметки доступна здесь https://alex-ber.medium.com/bcba11ac144d.






Почему параноидальная расправа над маргинальной антивоенной партией на выборах 2026 года обнажает хрупкость российской политической системы.

В сентябре 2026 года в России пройдут выборы в Государственную думу — нижнюю палату парламента. У стороннего наблюдателя может возникнуть резонный вопрос: зачем консолидированной автократии, которая криминализировала любое инакомыслие и почти пять лет ведет масштабную войну, вообще нужны выборы?

Ответ кроется в механике современных диктатур. Выборы в электоральных автократиях — это не способ смены власти, это сложный стресс-тест. Они существуют для того, чтобы легитимизировать режим, деморализовать оппозицию и «продать» заранее определенный результат обществу так, чтобы оно молчаливо согласилось со статус-кво.

Четверть века кремлевские политтехнологи виртуозно владели этим темным искусством. Но в преддверии выборов 2026 года что-то сломалось. Тонкие механизмы «управляемой демократии» были захвачены силовиками. И их прямолинейный, грубый подход не просто дает сбои — он случайно превращает забытую либеральную партию в массовый антивоенный символ.

Ниже есть продолжение.

Архитектура фейковой демократии

Чтобы понять суть нынешнего кризиса, нужно вспомнить, как Кремль управлял выборами раньше.

Исторически Администрация Президента опиралась на хитрых политтехнологов. Их задачей было не просто сфальсифицировать голоса — откровенные махинации опасны, так как могут спровоцировать массовые протесты (как это было в Беларуси в 2020-м или в России в 2011 году). Вместо этого их целью было конструирование апатии и дробление оппозиции.

Если в обществе росли антиэлитарные настроения, стратеги допускали до бюллетеня несколько нишевых оппозиционных кандидатов. Это втягивало протестного избирателя в бесконечные, токсичные споры о том, кто является «меньшим из зол», и в итоге размывало протестное голосование. Оппозиция была занята борьбой сама с собой, а режим спокойно получал свое большинство.

В этом году идеальной пешкой для такой игры должно было стать «Яблоко» — партия-ветеран из 1990-х, которая давно воспринималась как безобидная, нишевая организация для московской интеллигенции. Сегодня это единственная легальная партия в России, открыто выступающая за прекращение огня. По классической кремлевской методичке «Яблоку» следовало позволить участвовать в выборах, чтобы оно абсорбировало антивоенные голоса, не преодолело проходной барьер и тем самым доказало бы, что «антивоенное меньшинство ничтожно».

Но политтехнологи больше ничего не решают.

Силовики берут контроль

На сцену вышли люди в погонах — выходцы из ФСБ. Для них сложные игры политтехнологов — это опасная и дорогая трата времени. Действуя в состоянии паранойи военного времени, спецслужбы рассматривают любой альтернативный голос, каким бы слабым он ни был, как угрозу национальной безопасности. Их логика проста: безопасные выборы — это выборы с одним победителем и нулем альтернатив.

Когда «Яблоко» неожиданно начало набирать огромную популярность в сети — резонируя с глубокой, немой усталостью общества, годами живущего в тени войны, мобилизации и ежедневной милитаристской пропаганды, — силовики запаниковали.

Вместо того чтобы позволить политической машине поглотить этот удар, власти в спешке организовали заседание Верховного суда, чтобы снять федеральный список «Яблока» с выборов. Суд стал мастер-классом по абсурду. Поскольку партию нельзя было легально запретить просто за желание мира, в ход пошли комичные предлоги: обвинения в нарушении авторских прав за цитирование известной советской детской песни «Пусть всегда будет солнце» и якобы незаконное использование фотографий.

Процесс транслировался в интернете и собрал рекордное количество зрителей. Пытаясь по-тихому убить партию, спецслужбы спровоцировали мощнейший эффект Стрейзанд, превратив рутинную бюрократическую процедуру в главное политическое событие года.

Оппозиция-призрак

Фатальная ошибка в логике ФСБ — их архаичная вера в бренды и лидеров. Они полагают, что если убрать из бюллетеня бренд «Яблоко», антивоенные настроения просто испарятся. Это всё равно что верить: если корпорация Toyota обанкротится, человечество пересядет обратно на лошадей.

Внезапная популярность этой спящей партии не имеет ничего общего с ее конкретными лидерами. Это симптом общества, отчаянно желающего сделать глоток воздуха. Почти пять лет российское публичное пространство пропитано культом смерти: ежедневные ток-шоу, обсуждающие ядерные удары, обязательные уроки патриотизма в школах и постоянная угроза нового призыва.

Антивоенная оппозиция в России — это больше не структурированная организация со штабами, куда можно нагрянуть с обыском, или лидерами, которых можно посадить. Это всепроникающее настроение. Это студенты, в ужасе ждущие повесток; это семьи среднего класса, уставшие покупать генераторы и прятаться от сирен беспилотников. Антивоенную партию нельзя запретить, потому что она — призрак. В панике нанося удар по единственному легальному каналу выхода этого разочарования, режим лишь расписывается в собственном страхе.

Электоральная лазейка

Высшая ирония этой силовой зачистки заключается в том, что технически она провалилась.

После протестов 2011 года Кремль изменил избирательное законодательство, вернув смешанную систему, чтобы защитить свое большинство. Половина парламента избирается по федеральным партийным спискам, а другая половина — по одномандатным округам.

Верховный суд успешно ликвидировал федеральный список «Яблока». Но партия к тому моменту уже успела зарегистрировать более 130 местных кандидатов-одномандатников в крупнейших городах, таких как Москва, Санкт-Петербург и Екатеринбург. Запрет бренда на федеральном уровне не удаляет этих людей автоматически. Чтобы избавиться от них, режиму теперь придется инициировать 130 отдельных, таких же абсурдных судебных процессов по всей стране, выискивая нарушения авторских прав на школьных фотографиях каждого кандидата.

Вместо чистых и тихих выборов спецслужбы гарантировали себе месячный, широко освещаемый в СМИ судебный цирк во всех крупных городах России. Они своими руками дали оппозиции именно то, что ей было нужно: 130 локальных точек концентрации протестного голосования, подогретых возмущением от снятия федерального списка.

Дилемма

Автократии падают не тогда, когда оппозиция становится слишком сильной, а когда начинают ломаться внутренние механизмы самого режима.

Заменив тонкие манипулятивные инструменты политического управления грубой дубинкой тайной полиции, Кремль демонтирует ту самую систему, которая десятилетиями удерживала его у власти. Можно запретить логотип и можно посадить политика. Но, как вскоре предстоит узнать российским силовикам, управлять страной становится исключительно сложно, когда вы уничтожаете последние предохранительные клапаны для глубоко истощенного общества.


Архивные семейные фото

Бабушка Соня и дедушка Боря - со стороны папы Лёни.
Бабушка и дедушка - со стороны мамы Жени.
Папа Лёня в форме Советской армии, мама Женя, бабушка Соня. Город Ровно, освобождённый от нацистов в 1944 году. В 1974 году установили памятник в ознаменование 30-летия освобождения города. Фото сделано в 1980-х годах.
Крайне слева - дедушка Боря, ещё с двумя ногами. Крайне справа - врооде бы дядя Алёша. Маленький мальчик, вроде бы я. Также на фото, моя мама, тётя Нина, бабушка Соня.
Две бабушки, моя мама и тётя Нина (папына сестра). В доме родителей отца, Луцк.

Sunday, August 02, 2026

Часть 1 Приложение C. Анатомия квадратичной сходимости: Доказательство теоремы Канторовича в $R$

Text rendered via Dual-Core compilation (Human author + LLM co-processor).
Англоязычная версия данной заметки доступна здесь https://alex-ber.medium.com/1d044c1a526c.


См. также:
Часть 1: Метод Ньютона в R. От эвристики к формальной верификации (Kernel-Level)
Часть 1 Приложение А. Пространства $L_p$ (Under the Hood): От топологических хаков к квадратичной гладкости
Часть 1 Приложение B. Другой пример Loss function на примере кросс-энтропии
Часть 1 Приложение C. Анатомия квадратичной сходимости: Доказательство теоремы Канторовича в $R$
Часть 2: Метод Ньютона в $R^n$. От Гессиана к Аппаратным Лимитам
Часть 3: Метод Ньютона для Векторных полей. Матрица Якоби, Гато и Архитектура Backpropogation
Бонусная Часть 4: Метод Ньютона в бесконечномерных пространствах (Level 99)


Теорема Канторовича: Строгая математическая формулировка

Теорема Канторовича: Пусть функция $f(x)$ непрерывна на замкнутом отрезке $D = [a, b]$ и дважды дифференцируема на интервале $(a, b)$. Пусть задана начальная точка $x_0 \in D$, для которой выполняются следующие условия:

  1. Начальный шаг ограничен: $|\Delta x_0| = \left| \frac{f(x_0)}{f'(x_0)} \right| \le \eta$
  2. Модуль обратной величины первой производной в начальной точке ограничен: $\left| \frac{1}{f'(x_0)} \right| \le \beta$. (Именно такая формулировка позволит нам в будущем бесшовно заменить число в знаменателе на норму обратной матрицы Якоби или Гессе в многомерном мире).
  3. Модуль второй производной (кривизна) ограничен сверху: $|f''(x)| \le M$ для всех $x \in D$

Если выполняется условие $h = M \cdot \eta \cdot \beta \le \frac{1}{2}$ и отрезок $\Omega = [x_0 - t^*, x_0 + t^*]$, где $t^* = \frac{1 - \sqrt{1 - 2h}}{h} \eta \le 2\eta$, целиком принадлежит $D$, то внутри окрестности $\Omega$ гарантированно существует корень $x^*$ уравнения $f(x) = 0$, и последовательность итераций метода Ньютона $x_{k+1} = x_k - \frac{f(x_k)}{f'(x_k)}$ безопасно сойдется к нему, не покидая $\Omega$. При этом сходимость обладает квадратичной скоростью при $h < 1/2$ (ошибка убывает пропорционально квадрату предыдущей) и может снижаться до линейной в граничном случае $h = 1/2$. Корень $x^*$ является единственным в пределах большей окрестности радиуса $t^{**} = \frac{1 + \sqrt{1 - 2h}}{h} \eta$ (при условии, что эта окрестность также лежит в $D$).

Интуиция: Теорема как статический анализатор (API Contracts)

В современной разработке для предотвращения катастроф во время выполнения используют статические анализаторы кода (вроде TypeScript, Rust compiler или линтеров). Они проверяют типы и контракты до запуска программы. В математике роль такого статического анализатора для метода Ньютона играет приведенная выше теорема (за работы в том числе в этой области Леонид Канторович позже получил Нобелевскую премию по экономике).

Чтобы «компиляция» прошла успешно, анализатор должен просто проверить три условия контракта. При этом анализатор работает «вслепую» относительно самого корня: он сопоставляет локальные данные только в одной стартовой точке $x_0$ (размер шага и наклон) с глобальным ограничением на кривизну ($M$) во всей зоне $D$.

Важнейший философский поинт теоремы Канторовича заключается в том, что это теорема существования. Анализатору не нужно знать, где находится корень и есть ли он вообще. Если начальные условия (шаг, наклон и кривизна) удовлетворяют контракту $h \le 1/2$, теорема математически гарантирует, что корень существует, и метод его обязательно найдет. Триггер $h \le 1/2$ просто говорит: «ваш стартовый шаг достаточно мал по сравнению с максимально возможной кривизной графика».

Правило $2\eta$ и SLA алгоритма. Теорема дает программистам блестящее инженерное «правило большого пальца»: истинный корень всегда лежит на расстоянии, не превышающем удвоенного первого шага ($t^* \le 2\eta$). Кроме того, анализатор прописывает жесткий SLA (Service Level Agreement): если запас прочности есть ($h < 1/2$), количество верных знаков ответа будет удваиваться на каждой итерации. И лишь в экстремальном краевом случае ($h = 1/2$) алгоритм деградирует до обычной линейной скорости.

Замечание про современный Deep Learning. В многомерном мире алгоритмы работают с системами уравнений: там вместо деления на производную используется обратная матрица Якоби, но общая логика сохраняется. Однако в мире современных нейросетей с миллиардами параметров, где функции потерь представляют собой дикие многомерные ландшафты, аналогов теореме Канторовича не найдено. У нас нет строгого математического «анализатора» для ChatGPT. Вместо формальной верификации ML-инженеры вынуждены опираться на эмпирические эвристики (градиентный клиппинг, адаптивный learning rate, оптимизаторы вроде Adam), инженерную интуицию и своего рода высокотехнологичное шаманство. Обучение современной нейросети — это прыжок в темноту с надеждой собрать парашют в полете.

Ниже есть продолжение.

Доказательство. Фаза 1: Существование корня (Bootstrapping)

Как доказать под капотом, что корень существует, и откуда берутся эти пугающие корни $\sqrt{1-2h}$ в радиусах $t^*$ и $t^{**}$? В математике для этого есть изящный хакерский трюк: метод мажоранты (поиск абсолютно худшего сценария).

Давайте вызовем наш Low-level API (Тейлора) и спрогнозируем значение функции в нашей новой точке $x_{k+1}$, стоя в текущей точке $x_k$ (напомним, что здесь $\Delta x_k$ — это наш ньютоновский шаг, то есть $\Delta x_k = x_{k+1} - x_k$):
$f(x_{k+1}) = f(x_k) + f'(x_k)\Delta x_k + \frac{1}{2}f''(\xi_1)\Delta x_k^2$

Метод Ньютона специально подбирает свой шаг $\Delta x_k$ именно так, чтобы обнулить весь линейный прогноз: $f(x_k) + f'(x_k)\Delta x_k = 0$. Явно подставим этот ноль в Тейлора:
$f(x_{k+1}) = \underbrace{f(x_k) + f'(x_k)\Delta x_k}_{= 0} + \frac{1}{2}f''(\xi_1)\Delta x_k^2 = \frac{1}{2}f''(\xi_1)\Delta x_k^2$

Физический смысл прекрасен: если бы функция была идеально прямой, мы бы сразу попали в ноль. Ошибка на новом шаге — это целиком и полностью следствие квадратичного искривления графика.

Поскольку Теорема Канторовича проверяет наклон только на старте (для удобства вычислений в одномерном скалярном мире вернемся к обозначению $m = 1/\beta$, где $m$ — минимальный модуль производной на старте), нам нужно доказать, что знаменатель не обнулится ни на одном из следующих шагов. Для этого математики строят функцию-мажоранту — искусственный «абсолютно худший сценарий». Давайте сконструируем её с нуля, поместив старт в точку $x = 0$.

Во-первых, кривизна мажоранты должна быть максимально агрессивной, постоянно выгибая график вверх, чтобы попытаться избежать пересечения с осью. Значит, её вторая производная всегда максимальна: $P''(x) = M$. Во-вторых, стартовый наклон должен быть самым слабым из разрешенных: $P'(0) = -m$ (минус означает, что мы спускаемся к корню). В-третьих, стартовая высота функции $P(0)$ должна генерировать ровно наш максимально разрешенный шаг $\eta$. Так как размер шага — это $\left|\frac{P(0)}{P'(0)}\right| = \eta$, а $P'(0) = -m$, мы получаем высоту $P(0) = m\eta$.

Если мы возьмем константу $M$ и дважды её проинтегрируем с этими начальными условиями, мы получим обычную школьную параболу. Начинаем с константы кривизны:
$P''(x) = M$

Интегрируем первый раз, чтобы получить уравнение наклона (первую производную):
$P'(x) = \int M \, dx = Mx + C_1$

Применяем начальное условие $P'(0) = -m$, откуда получаем константу интегрирования $C_1 = -m$. Наша первая производная принимает вид: $P'(x) = Mx - m$.

Интегрируем второй раз, чтобы получить саму траекторию функции:
$P(x) = \int (Mx - m) \, dx = \frac{M}{2}x^2 - mx + C_2$
Применяем наше условие для стартовой высоты $P(0) = m\eta$, откуда следует, что вторая константа $C_2 = m\eta$. Собираем всё вместе и получаем обычную школьную параболу:
$P(x) = \frac{M}{2}x^2 - mx + m\eta$

Когда у этой худшей в мире функции существуют действительные корни? Когда её дискриминант неотрицателен ($D \ge 0$):
$D = (-m)^2 - 4 \cdot \left(\frac{M}{2}\right) \cdot (m\eta) = m^2 - 2Mm\eta \ge 0$

Теперь совершим простую алгебраическую манипуляцию. Перенесем отрицательное слагаемое вправо: $m^2 \ge 2Mm\eta$. Чтобы получить наш безразмерный параметр из теоремы ($h = \frac{M\eta}{m}$), разделим обе части неравенства на $2m^2$:
$\frac{1}{2} \ge \frac{M\eta}{m}$

Это и есть наше условие $h \le 1/2$! Это не просто эвристика, а строгое алгебраическое требование того, чтобы у мажоранты вообще был корень. Если оно нарушено, худший сценарий представляет собой параболу, висящую над осью, у которой действительных корней просто нет.

А теперь давайте найдем сами корни этой параболы через школьную формулу $x = \frac{-b \pm \sqrt{D}}{2a}$:
$x = \frac{m \pm \sqrt{m^2 - 2Mm\eta}}{M} = \frac{m}{M} \left(1 \pm \sqrt{1 - \frac{2M\eta}{m}}\right)$

Вспомним, что наш параметр $h = \frac{M\eta}{m}$. Следовательно, под корнем у нас собирается $1 - 2h$. А дробь перед скобкой $\frac{m}{M}$ можно переписать как $\frac{\eta}{h}$ (так как из $h = \frac{M\eta}{m}$ напрямую следует $\frac{m}{M} = \frac{\eta}{h}$). Подставляем всё это и получаем точные координаты корней мажоранты:
$x_{1,2} = \frac{\eta}{h} \left(1 \pm \sqrt{1 - 2h}\right)$

Заметим, что оба корня строго положительные.

Поскольку мы поместили старт нашей мажоранты в ноль, координата корня $x$ означает точную дистанцию, которую нужно пройти от старта до пересечения с осью абсцисс. Давайте посмотрим на эти дистанции внимательно.

Меньший корень (с минусом) равен $x_1 = \frac{1 - \sqrt{1 - 2h}}{h} \eta$. Это совпадает буква в букву с формулой радиуса $t^*$, которую мы заявили в контракте теоремы! А больший корень (с плюсом) равен $x_2 = \frac{1 + \sqrt{1 - 2h}}{h} \eta$, что в точности дает нам второй радиус $t^{**}$.

Дальше запустим параллельно метод Ньютона для нашей (неизвестной) функции $f(x)$ (генерируя точки $x_k$ и шаги $\Delta x_k$) и для эталонной параболы (генерируя точки $y_k$ и шаги $\Delta y_k$).

Замечание: В формулах ниже мы используем модуль для реального шага, но не используем для эталонного — $|\Delta x_k| \le \Delta y_k$. Дело в том, что реальный алгоритм на неизвестной функции $f(x)$ может «вилять» и шагать в обе стороны, поэтому нам важен модуль его смещения. А вот эталонная парабола $P(y) = \frac{M}{2}y^2 - my + m\eta$ движется строго в одном направлении. Докажем это.

Мы стартуем в точке $y_0 = 0$. Где находится дно (вершина) нашей параболы? Там, где её производная равна нулю: $P'(y) = My - m = 0$, то есть в координате $y_{vert} = \frac{m}{M}$.

А где находятся наши радиусы $t^*$ (гарантия существования) и $t^{**}$ (гарантия единственности)? Чуть выше мы вывели их точные координаты через школьную формулу корней:
$t^* = \frac{m - \sqrt{D}}{M} = \frac{m}{M} - \frac{\sqrt{D}}{M}$
$t^{**} = \frac{m + \sqrt{D}}{M} = \frac{m}{M} + \frac{\sqrt{D}}{M}$

Поскольку наш алгоритм стартует из точки $y_0 = 0$ (слева от обоих корней), корень $t^*$ (лежащий левее вершины) встречается нам первым — по отношению к старту он является ближним. А граница уникальности $t^{**}$ (лежащая правее вершины) оказывается дальним корнем. В экстремальном случае $D=0$ они слипаются на дне.

Что это значит для нашего алгоритма? Поскольку мы стартуем в нуле и стремимся к первому попавшемуся (ближнему) корню $t^*$, весь наш путь (в любой точке $y_k < t^*$) проходит исключительно по левой, нисходящей ветви параболы. Значит:

1. Значение функции положительно: $P(y_k) > 0$ (мы выше корня).

2. Производная строго отрицательна: $P'(y_k) = My_k - m < M(\frac{m}{M}) - m = 0$.

Считаем ньютоновский шаг: $\Delta y_k = - \frac{P(y_k)}{P'(y_k)}$. Минус на плюс, деленный на минус (-(+) / (-) = (+)), дает строгий плюс! Алгоритм всегда шагает только вправо.

Но вдруг он перепрыгнет корень $t^*$ (и, например, улетит к дальнему $t^{**}$)? Давайте вызовем формулу ошибки из нашей Фазы 2, применив её к самой параболе. Ошибка следующего шага равна:
$(t^* - y_{k+1}) = \frac{-P''(\xi)}{2P'(y_k)}(t^* - y_k)^2 \le \frac{-M}{2P'(y_k)}(t^* - y_k)^2$

Поскольку кривизна $M > 0$, квадрат ошибки всегда положителен, а знаменатель $P'(y_k)$ — отрицателен, вся эта дробь с минусом впереди дает строгое положительное число! То есть $(t^* - y_{k+1}) > 0$, а значит $y_{k+1} < t^*$.

Алгебра неумолима: эталонный алгоритм шагает строго вправо ($\Delta y_k > 0$) и просто не способен перепрыгнуть ближний корень ($y_{k+1} < t^*$). Поэтому все его шаги математически гарантированно положительны — это уже готовые абсолютные длины, и знак модуля им просто не нужен.

Далее, докажем методом математической индукции, что для каждого шага $k$: точка $x_k$ находится внутри безопасной зоны $\Omega$ (что легализует использование контрактов $M$ и $m$), и размер реального шага не превышает эталонного ($|\Delta x_k| \le \Delta y_k$).

  • База индукции ($k = 0$): На нулевом шаге точка $x_0$ является центром зоны $\Omega$, то есть очевидно лежит внутри неё. Размер реального прыжка ограничен нашим контрактом: $|\Delta x_0| \le \eta$. Для мажоранты мы сами сконструировали стартовые условия так, чтобы её первый шаг был в точности равен $\Delta y_0 = \eta$. Значит, база верна: $|\Delta x_0| \le \Delta y_0$.
  • Шаг индукции: Предположим, что наше утверждение верно вплоть до итерации $k$. Сначала докажем, что новая точка $x_{k+1}$ не вылетит за пределы безопасной зоны $\Omega$. Здесь вступает в дело алгебра и неравенство треугольника. Расстояние от старта $x_0$ до $x_{k+1}$ не превышает суммы длин всех предыдущих шагов. Так как каждый реальный шажок короче эталонного, эта дистанция ограничена:

    $|x_{k+1} - x_0| \le |\Delta x_0| + \dots + |\Delta x_k| \le \Delta y_0 + \dots + \Delta y_k = y_{k+1}$

    Мы уже знаем, что эталонная парабола сходится в свой корень $t^*$, поэтому её текущая координата $y_{k+1} < t^*$. Следовательно, $|x_{k+1} - x_0| < t^*$, и точка $x_{k+1}$ железобетонно остается внутри радиуса $\Omega$.

    Теперь, точно зная, что мы не покинули $\Omega$, легитимно оценим размер следующего шага: $|\Delta x_{k+1}| = \left| \frac{f(x_{k+1})}{f'(x_{k+1})} \right|$.

    Числитель (ошибка прогноза): Через оценки ошибки в форме Лагранжа в ряде Тейлора мы знаем, что $|f(x_{k+1})| \le \frac{1}{2} M |\Delta x_k|^2$. По индуктивному предположению это не превышает $\frac{1}{2} M (\Delta y_k)^2$. А это математически в точности равно значению самой эталонной параболы на новом шаге $P(y_{k+1})$.

    Знаменатель (падение производной): Теперь самое главное — доказать, что знаменатель не обнулится (то есть производная не умрет слишком рано). Как сильно могла измениться производная за время нашего путешествия от старта $x_0$ до текущей точки $x_{k+1}$? По теореме Лагранжа (или формуле конечных приращений) разность производных жестко ограничена максимальной кривизной: $|f'(x_{k+1}) - f'(x_0)| \le M \cdot |x_{k+1} - x_0|$.

    Мы уже доказали абзацем выше, что дистанция от старта ограничена эталоном: $|x_{k+1} - x_0| \le y_{k+1}$. Значит, $|f'(x_{k+1}) - f'(x_0)| \le M y_{k+1}$. Воспользуемся классическим неравенством треугольника для модулей $|A+B| \le |A| + |B|$, чтобы строго выразить новую производную через стартовую:

    $|f'(x_0)| = |f'(x_{k+1}) + (f'(x_0) - f'(x_{k+1}))| \le |f'(x_{k+1})| + |f'(x_{k+1}) - f'(x_0)|$

    Перенесем слагаемое, чтобы выразить искомую новую производную, и получим строгую оценку снизу:

    $|f'(x_{k+1})| \ge |f'(x_0)| - |f'(x_{k+1}) - f'(x_0)|$

    Мы знаем из стартового контракта, что уменьшаемое $|f'(x_0)| \ge m$. А вычитаемое слагаемое, как мы только что доказали, ограничено сверху: $|f'(x_{k+1}) - f'(x_0)| \le M y_{k+1}$. Подставив эти оценки, мы получаем абсолютно строгое алгебраическое неравенство:

    $|f'(x_{k+1})| \ge m - M y_{k+1}$

    А теперь посмотрим на эталонную параболу! Её производная по определению равна $P'(y) = My - m$. Поскольку мы находимся на левой (нисходящей) ветви и еще не достигли дна ($y_{k+1} < m/M$), значение $My_{k+1} - m$ отрицательно, а значит модуль её производной равен в точности $|P'(y_{k+1})| = m - M y_{k+1}$. То есть наш реальный знаменатель математически гарантированно больше (или равен) знаменателя эталонной параболы! Значит, вся реальная дробь гарантированно меньше эталонной:

    $|\Delta x_{k+1}| = \frac{|f(x_{k+1})|}{|f'(x_{k+1})|} \le \frac{P(y_{k+1})}{|P'(y_{k+1})|} = \Delta y_{k+1}$

    Таким образом, размер прыжка реальной функции на следующей итерации не превысит прыжка параболы. Шаг индукции полностью доказан!

Согласно принципу математической индукции, наше составное утверждение строго выполняется для всех натуральных индексов $k$ (включая нулевой). Именно так мы получаем абсолютную гарантию, что общая сумма всех шагов нашей реальной функции $f(x)$ строго ограничена сверху, алгоритм никогда не сломается, навсегда останется в безопасной зоне $\Omega = [x_0 - t^*, x_0 + t^*]$, а корень надежно заперт внутри неё.

Доказательство. Фаза 2: Скорость сходимости (Runtime metrics)

Теперь, когда статический анализатор дал зеленый свет, мы можем оценить, как именно выполняется заявленный в теореме SLA. Посмотрим, как убывает наша истинная ошибка $\epsilon_k = x_k - x^*$. Снова используем оценку ошибки в форме Лагранжа в ряде Тейлора, но теперь для точки $x^*$ вокруг нашей текущей точки $x_k$ (система сгенерирует новую промежуточную точку $\xi_2$):
$f(x^*) = f(x_k) + f'(x_k)(x^* - x_k) + \frac{1}{2}f''(\xi_2)(x^* - x_k)^2$

Аккуратно подставим то, что мы знаем: $f(x^*) = 0$, разница $(x^* - x_k) = -\epsilon_k$, а при возведении в квадрат минус исчезает: $(-\epsilon_k)^2 = \epsilon_k^2$. Получаем:
$0 = f(x_k) - f'(x_k)\epsilon_k + \frac{1}{2}f''(\xi_2)\epsilon_k^2$

Так как мажоранта гарантирует, что производная не равна нулю, разделим всё уравнение на $f'(x_k)$:
$0 = \frac{f(x_k)}{f'(x_k)} - \epsilon_k + \frac{f''(\xi_2)}{2f'(x_k)}\epsilon_k^2$

Вспомним формулу Ньютона: $x_{k+1} = x_k - \frac{f(x_k)}{f'(x_k)}$. Из неё следует, что дробь $\frac{f(x_k)}{f'(x_k)} = x_k - x_{k+1}$. Подставим это в уравнение, а заодно распишем $\epsilon_k = x_k - x^*$:
$0 = (x_k - x_{k+1}) - (x_k - x^*) + \frac{f''(\xi_2)}{2f'(x_k)}\epsilon_k^2$

Раскрываем скобки линейной части: $x_k - x_{k+1} - x_k + x^* = -(x_{k+1} - x^*) = -\epsilon_{k+1}$. Это наша ошибка на следующем шаге. Переносим её в левую часть:
$\epsilon_{k+1} = \frac{f''(\xi_2)}{2f'(x_k)}\epsilon_k^2$

Используя наши константы худшего сценария (максимальную кривизну $M$ и минимальную производную $m$), мы можем записать финальную оценку:
$\epsilon_{k+1} \le \frac{M}{2m}\epsilon_k^2$

Это и есть квадратичная сходимость. Ошибка на следующем шаге пропорциональна квадрату текущей ошибки. Если погрешность равна $10^{-2}$ (два верных знака), на следующем шаге она будет порядка $10^{-4}$, затем $10^{-8}$, $10^{-16}$. Количество верных знаков после запятой удваивается каждую итерацию.

Но обратите внимание на знаменатель $2f'(x_k)$ (или константу $2m$ в оценке худшего сценария). В нём скрыта единственная слабость алгоритма. Что происходит в граничном случае $h = 1/2$? Мы знаем из Фазы 1, что при $h = 1/2$ дискриминант эталонной параболы равен нулю ($D = 0$). Это означает, что ближний и дальний корни слипаются в один: $t^* = t^{**} = \frac{m}{M}$. Корень находится в точности на дне (в вершине) параболы!

В этом экстремальном сценарии график мажоранты не пересекает ось насквозь, а лишь едва касается её своей вершиной и уходит обратно вверх (в математике это называется кратным корнем). В самой точке касания график абсолютно горизонтален, а значит, его производная равна нулю: $P'(t^*) = 0$.

По мере того как алгоритм приближается к этому корню, производная в знаменателе стремительно падает. Давайте посмотрим, как это математически уничтожает нашу квадратичную суперсилу. Возьмем наше исходное уравнение мажоранты: $P(y) = \frac{M}{2}y^2 - my + m\eta$. Поскольку в граничном случае $h = \frac{M\eta}{m} = \frac{1}{2}$, мы можем легко выразить свободный член: $m\eta = \frac{m^2}{2M}$. Подставим его в уравнение параболы:

$P(y) = \frac{M}{2}y^2 - my + \frac{m^2}{2M}$

Вынесем множитель $\frac{M}{2}$ за скобки:

$P(y) = \frac{M}{2} \left( y^2 - \frac{2m}{M}y + \frac{m^2}{M^2} \right)$

Внутри скобок образовался классический полный квадрат (квадрат разности)! Сворачиваем его по школьной формуле:

$P(y) = \frac{M}{2} \left( y - \frac{m}{M} \right)^2$

А поскольку в этом сценарии наш слипшийся корень $t^* = \frac{m}{M}$, уравнение эталонной параболы элегантно превращается в компактный вид: $P(y) = \frac{M}{2}(y - t^*)^2$. Её производная, соответственно, равна $P'(y) = M(y - t^*)$. Подставим их в классическую формулу ньютоновского шага:

$\Delta y_k = - \frac{P(y_k)}{P'(y_k)} = - \frac{\frac{M}{2}(y_k - t^*)^2}{M(y_k - t^*)}$

Смотрите, что произошло! Множитель $(y_k - t^*)$ — это и есть наша текущая ошибка $\epsilon_k$. Константа $M$ сокращается, один квадрат ошибки в числителе сокращается с ошибкой в знаменателе, и у нас остается:

$\Delta y_k = - \frac{1}{2} (y_k - t^*) = - \frac{1}{2} \epsilon_k$

Вычисляем новую ошибку. Так как новая точка вычисляется прибавлением шага ($y_{k+1} = y_k + \Delta y_k$), то и новая ошибка $\epsilon_{k+1}$ вычисляется прибавлением этого шага к старой ошибке:

$\epsilon_{k+1} = \epsilon_k + \Delta y_k = \epsilon_k - \frac{1}{2}\epsilon_k = \frac{1}{2}\epsilon_k$.

Квадрат бесследно исчез! Умирающая производная в знаменателе «съела» одну степень ошибки из числителя, замедлив алгоритм до линейной скорости. Количество верных знаков больше не удваивается, дистанция до цели просто делится пополам на каждом шаге, что делает работу великого метода Ньютона неотличимой от метода половинного деления (binary search / bisection). Ч.т.д.


Часть 1 Приложение B. Другой пример Loss function на примере кросс-энтропии

Text rendered via Dual-Core compilation (Human author + LLM co-processor).
Англоязычная версия данной заметки доступна здесь https://alex-ber.medium.com/31a714207f1d.


См. также:
Часть 1: Метод Ньютона в R. От эвристики к формальной верификации (Kernel-Level)
Часть 1 Приложение А. Пространства $L_p$ (Under the Hood): От топологических хаков к квадратичной гладкости
Часть 1 Приложение B. Другой пример Loss function на примере кросс-энтропии
Часть 1 Приложение C. Анатомия квадратичной сходимости: Доказательство теоремы Канторовича в $R$
Часть 2: Метод Ньютона в $R^n$. От Гессиана к Аппаратным Лимитам
Часть 3: Метод Ньютона для Векторных полей. Матрица Якоби, Гато и Архитектура Backpropogation
Бонусная Часть 4: Метод Ньютона в бесконечномерных пространствах (Level 99)


Если же алгоритм угадывает категории (задача классификации), базовой метрикой ошибки и неопределенности выступает энтропия. Отличный стартовый пример — построение Дерева Решений (Decision Tree). Суть этого алгоритма в том, чтобы на каждом шаге задавать данные вопросы (например, «возраст > 30?») и разбивать датасет на ветки так, чтобы в каждом новом узле снижался уровень хаоса и оставались объекты преимущественно одного класса.

Базовой мерой этого хаоса является информационная энтропия Шеннона: $H(p) = -\sum p_c \log_2 p_c$, где $p_c$ — истинная физическая доля объектов $c$-го класса внутри конкретного узла. Если вы помните школьную физику, эта концепция вам уже знакома: философски и математически формула Шеннона является потрясающе точным эквивалентом термодинамической энтропии Гиббса-Больцмана ($S = -k_B \sum p_i \ln p_i$, где $k_B$ — постоянная Больцмана). Физический смысл этой величины — мера беспорядка, показывающая степень «размытости» системы по всем возможным микросостояниям. А её строгий математический (информационный) смысл — это мера неопределенности: среднее количество бит информации, которое нам понадобится, чтобы закодировать класс случайно вытащенного из этого узла объекта.

Ниже есть продолжение.

Важно понимать, что легитимность применения этой элегантной формулы неявно опирается на два фундаментальных физико-математических допущения. Первое — аналог теоремы Лиувилля о сохранении фазового объема. В статистической механике она гласит, что объем возможных состояний замкнутой системы со временем не сжимается и не расширяется. Ее математическим воплощением здесь выступает локальное сохранение вероятностной меры ($\sum p_c = 1$ на каждом ветвлении): при любом разбиении дерева общая «масса» данных не исчезает и не берется из ниоткуда, а строго аддитивно перераспределяется по новым веткам.

Второе допущение — эргодичность системы. Математически строго лаконичная формула энтропии Шеннона выводится исключительно в эргодичном случае. Без этого допущения в математике моментально появляются громоздкие цепи Маркова и условные вероятности, и простая формула теряет смысл. Строго говоря, в реальных физических системах (как и в «грязных» данных машинного обучения) идеальная эргодичность недостижима. Однако, усиленно махая руками и делая разумные статистические допущения (апеллируя к той же формуле Больцмана), мы получаем своеобразный «классический предел»: громоздкая истинная функция приближенно сводится к базовому макроскопическому случаю Шеннона. Эта аппроксимация железно гарантирует нужную нам логику: если в ветку попали данные только одного класса, энтропия схлопывается в нуль (абсолютный порядок), а при равном перемешивании — достигает максимума.

Деревья решений оперируют макро-уровнем: они вычисляют энтропию для узла в целом. Но когда мы переходим к алгоритмам, обучаемым с помощью градиентного спуска (Нейросети, Логистическая регрессия), нам нужен дифференцируемый интерфейс (Loss) для каждого отдельного объекта. Здесь в дело вступает кросс-энтропия: $Loss_j = -\sum y^{(j)}_c \ln \hat{p}^{(j)}_c$.

Обратите внимание на три отличия. Во-первых, $y^{(j)}_c$ — это абсолютная истина (вектор One-Hot, где одна единица и остальные нули, ведь конкретный объект принадлежит строго одному классу). Во-вторых, $\hat{p}^{(j)}_c$ — это неуверенная вероятность, предсказанная алгоритмом (обычно на выходе слоя Softmax). В-третьих, произошел каст типов: вместо $\log_2$ алгоритмы ML всегда используют натуральный логарифм $\ln$, так как его производная — это красивая дробь $1/x$, идеальная для градиентов (а результат измеряется уже не в битах, а в «натах»).

Кросс-энтропия измеряет «цену ошибки» и жестко штрафует за самоуверенные промахи. А теперь самое главное: средняя кросс-энтропия математически равна сумме энтропии Шеннона и Дивергенции Кульбака-Лейблера (KL-Divergence). В идеальном случае, когда предсказанные Softmax вероятности в точности совпадают с фактическими долями классов ($\hat{p}_c = p_c$), дивергенция обнуляется, и кросс-энтропия математически схлопывается ровно в макроскопическую энтропию Шеннона! Именно поэтому оптимизация градиентов на уровне объектов заставляет алгоритм искать идеальное макро-разбиение.

Давайте закрепим на численном примере. Представим корневой узел: датасет из 10 животных (4 кошки, 4 собаки и 2 акулы). Истинные доли $p_c$ равны $0.4$, $0.4$ и $0.2$. Если алгоритм идеально угадает эти честные вероятности, средняя кросс-энтропия совпадет с энтропией Шеннона для корня (посчитаем в битах через $\log_2$): $H_{root} = -(0.4 \log_2 0.4 + 0.4 \log_2 0.4 + 0.2 \log_2 0.2) \approx 1.52$ бита. Это наш исходный уровень хаоса.

Как дерево снижает хаос? Оно задает вопрос: «Вес животного меньше 10 кг?». Датасет разбивается на две ветки. В левую ветку уходят 6 животных (3 кошки, 2 собаки и 1 акула). Доли: $p \approx [0.50, 0.33, 0.17]$. Энтропия этого узла падает: $H_{лев} \approx 1.46$ бита. В правую ветку уходят 4 крупных животных (1 кошка, 2 собаки, 1 акула). Их доли: $p = [0.25, 0.50, 0.25]$. Энтропия правого узла: $H_{прав} = 1.50$ бита.

Дерево вычисляет метрику Information Gain (Прирост информации) по формуле $IG = H_{root} - \sum \frac{N_i}{N} H_i$. Алгоритм взвешивает энтропию новых узлов: $1.52 - (\frac{6}{10} \times 1.46 + \frac{4}{10} \times 1.50) = 1.52 - 1.476 \approx 0.044$ бита. Общий хаос снизился ($IG > 0$), поэтому разбиение принимается!

А теперь посмотрим на штраф градиентного алгоритма на уровне конкретного объекта: если в правом узле нейросеть вдруг «сойдет с ума» и через Softmax самоуверенно предскажет для конкретной собаки ($y = [0, 1, 0]$) вероятность того, что это кошка на 90% ($\hat{p} = [0.9, 0.1, 0]$), то кросс-энтропия для этого несчастного пса взлетит в космос (считаем в натах через $\ln$): $Loss = -1 \cdot \ln(0.1) \approx 2.30$. Формула жестоко наказывает алгоритм за расхождение между предсказанием и реальностью, генерируя гигантский градиент для исправления весов.


Часть 1 Приложение А. Пространства $L_p$ (Under the Hood): От топологических хаков к квадратичной гладкости

Text rendered via Dual-Core compilation (Human author + LLM co-processor).
Англоязычная версия данной заметки доступна здесь https://alex-ber.medium.com/9c213a0e3dfb.


См. также:
Часть 1: Метод Ньютона в R. От эвристики к формальной верификации (Kernel-Level)
Часть 1 Приложение А. Пространства $L_p$ (Under the Hood): От топологических хаков к квадратичной гладкости
Часть 1 Приложение B. Другой пример Loss function на примере кросс-энтропии
Часть 1 Приложение C. Анатомия квадратичной сходимости: Доказательство теоремы Канторовича в $R$
Часть 2: Метод Ньютона в $R^n$. От Гессиана к Аппаратным Лимитам
Часть 3: Метод Ньютона для Векторных полей. Матрица Якоби, Гато и Архитектура Backpropogation
Бонусная Часть 4: Метод Ньютона в бесконечномерных пространствах (Level 99)


Для начала стоит уточнить терминологию: в машинном обучении часто путают глобальные метрики качества (которые оценивают бизнес-результат работы модели для человека) и Loss-функции (функции потерь, которые алгоритм дифференцирует и оптимизирует «под капотом»). Если алгоритм предсказывает числа — допустим, цены на недвижимость (задача регрессии) — нам нужно измерить общую «величину промаха» между вектором предсказаний $\hat{y}$ и вектором наблюдаемых истинных значений (ground truth) $y$.

Для измерения таких расстояний математики используют понятие нормы. Самый простой и знакомый всем пример нормы — это обычный модуль числа (абсолютная величина). Любая норма автоматически порождает метрику (расстояние между векторами $x$ и $y$ вычисляется как $\|x - y\|$), что позволяет строго измерять расстояния. (Обратное, в общем случае, неверно: не всякая метрика порождается нормой).

В многомерных пространствах эта концепция обобщается до целого семейства $L_p$-норм. Общая формула для вектора $x = (x_1, \dots, x_n)$ выглядит так: $\|x\|_p = \left( \sum_{i=1}^n |x_i|^p \right)^{1/p}$. Компоненты этого вектора могут жить как в привычном вещественном пространстве $\mathbb{R}^n$, так и в комплексном $\mathbb{C}^n$. В обоих случаях формула работает одинаково безупречно, а $|x_i|$ выступает как универсальный модуль (абсолютная величина) числа.

Ниже есть продолжение.

Эта формула строго выполняет все аксиомы математической нормы (включая неравенство треугольника и однородность) только на интервале $p \in [1, +\infty]$. В зависимости от выбора параметра $p$ происходят самые интересные математические мутации:

  • $p=1$: $\|x\|_1 = \sum_{i=1}^n |x_i|$. Это так называемое «Манхэттенское расстояние» (или $L_1$-норма), где путь измеряется строго по сетке координат. Геометрически единичный шар (множество точек, где $\|x\|_1 \le 1$) в 2D выглядит как ромб (или квадрат, повернутый на 45 градусов). В машинном обучении на ней базируется метрика MAE и $L_1$-регуляризация (Lasso), создающая разреженность признаков. А самое изящное происходит, если мы сожмем наше пространство до одного измерения $\mathbb{R}^n=\mathbb{R}^1=\mathbb{R}$ или $\mathbb{C}^n=\mathbb{C}^1=\mathbb{C}$, то есть подставим в общую формулу $\|x\|_p = \left( \sum_{i=1}^n |x_i|^p \right)^{1/p}$, при $p=1$, $n=1$ она превращается в $\|x_1\|_1 = \sum_{i=1}^1 |x_i| = |x_1|$. Т.е. мы получили на вещественных числах $\mathbb{R}$ или комплексных числах $\mathbb{C}$ метрику $\|x\| = |x|$. В зависимости от этого $|x_i|$ — это либо модуль (абсолютная величина) вещественного либо модуль комплексного числа. В частности получаем, что обычный школьный модуль действительного (или комплексного) числа — это просто частный случай многомерной $L_p$-нормы!
  • $p=2$: $\|x\|_2 = \sqrt{\sum_{i=1}^n |x_i|^2}$. Это классическая евклидова норма. Это обычная школьная норма, соответствующая расстоянию по прямой линии (по теореме Пифагора), как если бы мы приложили к пространству физическую линейку. Геометрически её единичный шар в 2D — это идеальный круг (или сфера в 3D). В машинном обучении на её основе строится $L_2$-регуляризация (Ridge), которая штрафует модель за слишком большие веса, заставляя их равномерно уменьшаться.
  • $0 < p < 1$: по мере убывания $p$ на интервале $p \in (0, 1)$ ломается выпуклость единичного шара и перестает работать неравенство треугольника. Докажем это: возьмем базисные векторы $x = (1, 0)$ и $y = (0, 1)$ в $\mathbb{R}^2$. Их $L_p$-нормы равны единице: $\|x\|_p = \|y\|_p = 1$. Однако норма их суммы $\|x+y\|_p = \|(1, 1)\|_p = (1^p + 1^p)^{1/p} = 2^{1/p}$. Поскольку $0 < p < 1$, показатель степени $1/p > 1$, следовательно $2^{1/p} > 2$. Мы получаем $\|x+y\|_p > \|x\|_p + \|y\|_p$, что напрямую нарушает свойство неравенства треугольника.

    Из этого же примера вытекает потеря выпуклости: по определению выпуклого множества середина отрезка между векторами $\frac{x+y}{2} = (0.5, 0.5)$ должна лежать внутри единичного шара. Давайте посчитаем её норму: $\|(0.5, 0.5)\|_p = (0.5^p + 0.5^p)^{1/p} = (2 \cdot 0.5^p)^{1/p} = 2^{1/p} \cdot 0.5 = 2^{1/p} \cdot 2^{-1} = 2^{1/p - 1}$.

    Так как $p < 1$, то дробь $1/p > 1$. Следовательно, показатель степени $1/p - 1 > 0$. Любое число больше единицы (в нашем случае двойка) в положительной степени дает результат строго больше $1$. А значит, норма середины отрезка строго больше $1$. Точка вываливается за границы единичного шара, что геометрически превращает его из выпуклой фигуры во вдавленный четырехконечный «астероид».
  • $p \to \infty$: Формула схлопывается в предел, который дает максимальную норму (норму Чебышева): $\|x\|_\infty = \max_i |x_i|$. Вывод этого предела математически изящен: если мы вынесем максимальный по модулю элемент $M = \max_i |x_i|$ за скобки, общая формула примет вид $M \cdot \left( \sum_{i=1}^n \left( \frac{|x_i|}{M} \right)^p \right)^{1/p}$. При $p \to \infty$ все дроби для элементов, меньших $M$, устремятся к нулю. Слагаемые, равные максимуму, дадут единицы. Сумма внутри скобок превратится в константу $k$ (количество максимальных элементов вектора). Поскольку $\lim_{p \to \infty} k^{1/p}=1$, вся конструкция схлопывается ровно в $M$. Таким образом, эта норма оценивает вектор исключительно по его самому большому элементу, игнорируя остальные. Геометрически единичный шар для этой нормы в 2D превращается в ровный квадрат (или куб в 3D), стороны которого строго параллельны осям координат. Если сжать пространство до одного измерения ($n=1$), то $\|x\|_\infty = \max_1 |x_1| = |x_1|$, что снова безупречно возвращает нас к обычному модулю числа.
  • $p \to 0$: Это самая парадоксальная точка, так как математически задать норму здесь невозможно. Если попытаться взять строгий алгебраический предел самой суммы при $p \to 0$, то для любого ненулевого числа $\lim_{p \to 0} |x_i|^p = 1$, а для нуля $\lim_{p \to 0} 0^p = 0$. Соответственно, $\lim_{p \to 0} \sum |x_i|^p$ работает просто как счетчик ненулевых элементов вектора. Если рассмотреть это в одномерном пространстве ($n=1$), то «норма» $\|x\|_0$ равна $1$ для любого ненулевого $x$ (даже миллионного) и $0$ для нулевого. И хотя строго математически это не является нормой (нарушается аксиома однородности при умножении на скаляр), в машинном обучении именно этот алгебраический предел называют «$L_0$-нормой», так как он исторически крайне полезен при регуляризации, когда алгоритму нужно занулить лишние веса и сжать модель.

    Однако в строгом функциональном анализе под $L_0$ понимают другое пространство. Там невозможность использовать классическую формулу обходят не через алгебраический предел суммы единиц, а задавая искусственную метрику, порождающую топологию сходимости по мере. Вывод этой метрики строится через искусственное ограничение роста слагаемых: $d(x, y) = \sum_{i=1}^n \min(|x_i - y_i|, 1)$. Если мы вернемся к одномерному случаю ($n=1$), расстояние до нуля будет вычисляться как $d(x, 0) = \min(|x|, 1)$ — то есть привычный модуль числа, но жестко «обрезанный» единицей. Это превращает наше пространство в так называемое F-пространство. (Заметим, что до идеального Гильбертова пространства — где есть скалярное произведение, углы между векторами и работает вся классическая квантовая механика — нашему пространству как до луны, ведь Гильбертовым является только $L_2$ в том смысле как мы определили выше. Но к безумным свойствам этих пространств мы детально вернемся в бонусной четвертой части).
  • $-\infty < p < 0$: Этот интервал имеет огромный смысл в статистике и алгебре, где данная конструкция известна как обобщенное среднее (или среднее степенное). Например, если подставить $p = -1$ (и домножить на $n$), мы получим классическое гармоническое среднее, которое незаменимо при расчете сопротивления параллельных цепей в физике или средних центив в финансах.

    Однако в контексте геометрии пространств здесь полностью рушатся базовые свойства метрики из-за деления на ноль. Чтобы сделать это предельно прозрачным, давайте введем замену: пусть $p = -q$, где $q > 0$. Перепишем общую формулу, избавляясь от отрицательной степени по правилу $x^{-a} = 1/x^a$:

    $\|x\|_{-q} = \left( \sum_{i=1}^n |x_i|^{-q} \right)^{-1/q} = \frac{1}{\left( \sum_{i=1}^n \frac{1}{|x_i|^q} \right)^{1/q}}$

    Теперь возьмем вектор, у которого есть хотя бы один нулевой элемент, но сам вектор не является нулевым. Например, $x = (0, 500)$ в двумерном пространстве. Подставляем его в нашу переписанную формулу:
    $\|x\|_{-q} = \frac{1}{\left( \frac{1}{0^q} + \frac{1}{500^q} \right)^{1/q}}$

    Первое слагаемое в знаменателе содержит фатальное деление на ноль. В терминах пределов, дробь $\frac{1}{0}$ устремляется в бесконечность ($+\infty$). Таким образом, сумма внутри скобок в знаменателе становится бесконечно огромной. Извлечение корня из бесконечности оставляет её бесконечностью, и мы приходим к финальному виду:
    $\|x\|_{-q} \to \frac{1}{+\infty} = 0$

    Это катастрофа для концепции расстояния. Норма вектора $(0, 500)$ оказалась равна нулю! Нарушена самая фундаментальная аксиома невырожденности (норма может быть равна нулю только у вектора, сплошь состоящего из нулей). Из-за единственной нулевой координаты вся геометрия пространства аннигилируется.
  • $p \to -\infty$: (Математическая пасхалка). Если $p \to +\infty$ выдает максимальный элемент вектора, то логично проверить систему на прочность и устремить параметр в минус бесконечность. Алгебраический предел $\lim_{p \to -\infty} \|x\|_p$ (при условии, что все $x_i \neq 0$) строго выдаст минимальный по модулю элемент: $\min_i |x_i|$. Вывод этого предела аналогичен случаю с плюсом: только мы выносим за скобки минимальный по модулю элемент $m = \min_i |x_i|$. Формула принимает вид $m \cdot \left( \sum_{i=1}^n \left( \frac{|x_i|}{m} \right)^p \right)^{1/p}$. Так как $p \to -\infty$, для всех элементов, которые строго больше $m$ (то есть значение дроби $q = \frac{|x_i|}{m} > 1$), предел слагаемого равен нулю: $\lim_{p \to -\infty} q^p = 0$. Останутся только слагаемые, соответствующие минимуму (где основание дроби в точности равно $1$, а предел $\lim_{p \to -\infty} 1^p = 1$). Сумма внутри скобок в пределе устремится к константе $k$ (числу минимальных элементов вектора), а поскольку предел внешней степени $\lim_{p \to -\infty} k^{1/p} = 1$, вся конструкция элегантно схлопывается в $m$.

    Однако, как и следовало ожидать из разбора предыдущего пункта, этот «хак» окончательно ломает математическую архитектуру нормы. Нарушается фундаментальная аксиома невырожденности (System Security): норма вектора должна быть равна нулю только если сам вектор состоит из нулей. Но в случае $\min_i |x_i|$ достаточно, чтобы хотя бы один элемент вектора был равен нулю, и вся конструкция схлопнется в ноль, даже если остальные элементы равны миллионам (в терминах предела — произойдет то самое деление на ноль под суммой, которое мы разобрали выше).

    Важное уточнение: если в парадоксальной точке $p \to 0$ математикам удалось спасти топологию пространства, искусственно задав метрику $d(x, y) = \sum_{i=1}^n \min(|x_i - y_i|, 1)$, то при $p \to -\infty$ этот трюк не пройдет. Ни эта метрика, ни какая-либо другая не способны спасти данную конструкцию. Именно поэтому ни в функциональном анализе, ни в ML предел при $p \to -\infty$ не имеет абсолютно никакого практического смысла, однако он безупречно демонстрирует эстетическую симметрию математики на крайних полюсах.

Чтобы оценить итоговое качество предсказаний модели, нам нужно превратить весь вектор ошибок $E = y - \hat{y}$ (разницу между истиной и предсказаниями) в одно итоговое число. Мы могли бы опереться на $L_1$-норму и получить среднее абсолютное отклонение (MAE): $MAE = \frac{1}{n} \|E\|_1 = \frac{1}{n} \sum |y_i - \hat{y}_i|$. Мы также могли бы использовать $L_2$-норму «как есть» (что приводит к метрике RMSE с её громоздким внешним корнем). Однако в большинстве задач регрессии стандартом де-факто выступает Loss-функция MSE (Mean Squared Error, среднеквадратичная ошибка). Она берёт за основу $L_2$-норму вектора ошибок, но возводит её в квадрат (и усредняет по $n$): $MSE = \frac{1}{n} \|E\|_2^2 = \frac{1}{n} \sum_{i=1}^n (y_i - \hat{y}_i)^2$.

Здесь важно сделать математическое уточнение: MSE определена ИСКЛЮЧИТЕЛЬНО для $L_2$-нормы. Вы не можете взять произвольную $L_p$-норму (например, $L_3$), возвести её в квадрат и назвать это «среднеквадратичной ошибкой». Само понятие MSE и её математический смысл намертво привязаны только к квадрату евклидова расстояния.

Почему алгоритмы предпочитают оптимизировать именно квадрат $L_2$-нормы (MSE), а не базовую $L_2$-норму или MAE? У этого есть две железобетонные архитектурные причины. Во-первых, возведение в квадрат элегантно уничтожает огромный внешний корень из формулы $L_2$. Сама по себе чистая $L_2$-норма в точке абсолютного нуля недифференцируема: из-за наличия квадратного корня, производная которого $1/(2\sqrt{x})$ при приближении к нулю улетает в бесконечность, геометрически она образует конус, и в его вершине возникает «излом», не позволяющий посчитать градиент. А вот без корня функция становится идеально гладкой многомерной параболой, максимально удобной для градиентного спуска.

Во-вторых, квадрат радикально меняет бизнес-логику штрафов. В отличие от MAE, которая бьет алгоритм линейно и с одинаковой силой за любые неточности (из-за чего модель может бесконечно «дрожать» вокруг минимума), MSE прощает алгоритму множество мелких отклонений. Так как производная параболы пропорциональна самой ошибке, по мере приближения к идеалу градиент затухает, и модель плавно «паркуется» в точке оптимума. Более того, оптимизация MSE строго математически эквивалентна предположению, что шум в наших данных имеет нормальное (гауссовское) распределение.

В то же время MSE агрессивно, по параболе, штрафует за крупные промахи (outliers). В реальности эта чувствительность является главным недостатком MSE — всего один аномальный выброс в «грязных» данных сгенерирует гигантский градиент и утащит за собой веса всей модели. Чтобы решить эту проблему и взять лучшее от обоих миров (квадратичную мягкую парковку у нуля от MSE и линейную защиту от выбросов от MAE), алгоритмы часто используют компромиссную функцию потерь — Loss Huber (функцию Хьюбера), которая ведёт себя как гладкая парабола при малых ошибках и превращается в прямую линию при больших.


Часть 1: Метод Ньютона в R. От эвристики к формальной верификации (Kernel-Level)

Text rendered via Dual-Core compilation (Human author + LLM co-processor).
Англоязычная версия данной заметки доступна здесь https://alex-ber.medium.com/708d04754e9e.


См. также:
Часть 1: Метод Ньютона в R. От эвристики к формальной верификации (Kernel-Level)
Часть 1 Приложение А. Пространства $L_p$ (Under the Hood): От топологических хаков к квадратичной гладкости
Часть 1 Приложение B. Другой пример Loss function на примере кросс-энтропии
Часть 1 Приложение C. Анатомия квадратичной сходимости: Доказательство теоремы Канторовича в $R$
Часть 2: Метод Ньютона в $R^n$. От Гессиана к Аппаратным Лимитам
Часть 3: Метод Ньютона для Векторных полей. Матрица Якоби, Гато и Архитектура Backpropogation
Бонусная Часть 4: Метод Ньютона в бесконечномерных пространствах (Level 99)


Dual-Core подход и Эвристика (Запускаем Систему-1)

Всякий раз, когда перед нами стоит задача найти корень функции f(x) = 0, мозг требует наглядности. Студенты, инженеры и дата-сайентисты обожают, когда сложные абстракции можно «потрогать». Это абсолютно нормально: чтобы погрузиться в алгоритм, нам сначала нужно запустить «Систему-1» — наше быстрое, ассоциативное и визуальное мышление.

Прежде чем закапываться в строгую математику (наш Kernel-level), давайте выведем метод Ньютона двумя максимально интуитивными — но, спойлер, математически нестрогими — путями.

Ниже есть продолжение.

Путь первый: физический (Ньютон и кинематика)

Давайте представим простейшую физическую симуляцию. Пусть наша функция $f(x)$ описывает текущую координату летящего объекта, а переменная $x$ играет роль времени. У нас есть зафиксированное положение объекта в момент времени $x_{old}$, равное $f(x_{old})$.

Из школьного курса физики мы знаем, что производная координаты по времени — это мгновенная скорость. Значит, скорость нашего объекта в данный момент равна $v = f'(x_{old})$.

Как найти координату объекта спустя мгновение $\Delta x$? Берем классическую формулу пути для равномерного движения и делаем эвристическое допущение: на коротком отрезке времени наша скорость не успеет сильно измениться. Тогда:

$f(x_{new}) \approx f(x_{old}) + v \cdot \Delta x$

В чем заключается наша главная задача? Мы ищем корень — то есть хотим узнать, на сколько нужно "перемотать" время, чтобы объект оказался точно в нулевой координате. Значит, мы требуем, чтобы $f(x_{new}) = 0$. Подставляем этот ноль в наше уравнение и выражаем шаг $\Delta x$:

$0 \approx f(x_{old}) + v \cdot \Delta x$

$\Delta x = - \frac{f(x_{old})}{v}$

Вуаля! Мы вычислили, на сколько нужно сдвинуть время, чтобы с текущей скоростью $v$ приземлиться ровно в ноль. Теперь нам остается только сделать этот шаг от старой точки, чтобы получить новую:

$x_{new} = x_{old} + \Delta x = x_{old} - \frac{f(x_{old})}{f'(x_{old})}$

На языке алгоритмов мы привыкли обозначать текущий шаг как $x_k$, а следующий как $x_{k+1}$. Переписав формулу, мы получаем классический шаг метода Ньютона-Рафсона, который мы только что «изобрели», просто вспомнив формулу $S = v \cdot t$. Конечно, поскольку в реальности скорость функции меняется (у нее есть ускорение — вторая производная), за один шаг мы в идеальный ноль не попадем. Именно поэтому метод итеративный!

Путь второй: геометрический (касательная и метод Рафсона/Симпсона)

Если физика вас не убеждает, давайте включим пространственное мышление. Рисуем график функции $f(x)$. У нас есть текущая точка $(x_k, f(x_k))$. Кривая может быть сложной, изгибаться и вести себя непредсказуемо. Что делают инженеры, когда видят нелинейность? Они ее линеаризуют!

Заменим сложную кривую в нашей текущей точке на самую лучшую локальную прямую — её касательную. Давайте выведем её уравнение.

Любая прямая на плоскости полностью задается точкой, через которую она проходит, и её наклоном. Наша прямая гарантированно проходит через точку $(x_k, f(x_k))$. Ее наклон — это отношение изменения по вертикали к изменению по горизонтали ($\frac{\Delta y}{\Delta x}$). По геометрическому смыслу производной, этот наклон в точности равен $f'(x_k)$.

Теперь возьмем абсолютно любую точку $(x, y)$ на нашей будущей прямой. Наклон отрезка между нашей зафиксированной точкой и этой произвольной точкой должен равняться производной. Запишем это:

$\frac{y - f(x_k)}{x - x_k} = f'(x_k)$

Умножаем обе части на знаменатель, и перед нами возникает уравнение касательной:

$y - f(x_k) = f'(x_k)(x - x_k)$

Нас интересует, где эта упрощенная модель пересекает ось абсцисс. Приравниваем $y = 0$ и решаем уравнение относительно $x$ (нашего нового шага $x_{k+1}$):

$- f(x_k) = f'(x_k)(x_{k+1} - x_k)$

$x_{k+1} = x_k - \frac{f(x_k)}{f'(x_k)}$

И снова мы приходим к той же самой формуле. Мы заменили сложную задачу (поиск корня кривой) на простую (поиск корня прямой), сместились, и готовы повторить этот процесс снова.

Философский мост: Вавилонский метод vs Греческий подход

Здесь стоит сделать важную остановку. На самом деле, то, что мы сейчас обсуждаем, отражает глобальный раскол в подходах к вычислениям, который дожил до эпохи Machine Learning.

Историки математики выделяют два фундаментальных паттерна: «вавилонский» и «греческий».

«Вавилонский метод» — это чистая эмпирика, data-driven подход. Древние вавилоняне не доказывали теорем. Они собирали таблицы данных, замечали закономерности и выводили эвристические правила (алгоритмы). В современном мире вавилонский подход — это парадигма Deep Learning. Мы берем «черный ящик», заливаем в него терабайты данных, масштабируем параметры, и система индуктивно подгоняет кривые, находя решение. Почему это работает? Вавилонянам (и часто ML-инженерам) это не так важно, главное — Loss падает.

«Греческий метод» — это царство дедукции и формальных моделей. Греки (Пифагор, Евклид, Архимед) сначала строили строгую абстрактную теорию. Пусть даже их модель мира была странной (вроде хрустальных сфер в космосе), но она была математически строгой, и из неё логически выводились все следствия. Именно так Эратосфен смог вычислить радиус Земли с помощью палки и тени.

Катарсис: чёрт из табакерки

А теперь давайте столкнем эти два мира лбами. Как древние вавилоняне (за 1500 лет до н.э.) вычисляли квадратные корни, например, $\sqrt{9801}$?

У них было простое эмпирическое правило-эвристика: возьми любую начальную догадку (допустим, $x_0 = 100$, так как мы понимаем, что $100^2 = 10000$, что очень близко к цели). Подели искомое число на эту догадку.

Тут возникает важный логический момент: если начальная догадка была больше настоящего корня, то результат деления будет меньше корня. А если догадка оказалась меньше корня, то результат деления будет больше. В любом случае настоящий корень всегда оказывается зажат где-то посередине между вашей догадкой и результатом деления!

Поэтому просто возьми среднее арифметическое между ними — это и будет новая, улучшенная догадка, которая гарантированно ближе к истине. Алгоритм вавилонян выглядел так:

$x_{k+1} = \frac{1}{2} \left( x_k + \frac{9801}{x_k} \right)$

Давайте сделаем первый шаг:

$x_1 = \frac{1}{2} \left( 100 + \frac{9801}{100} \right) = \frac{1}{2} \left( \frac{10000 + 9801}{100} \right) = \frac{19801}{200}$

Истинный корень из 9801 равен ровно 99. Всего за одну итерацию алгоритм, придуманный примерно в XVII в. до н.э., промахнулся мимо правильного ответа лишь на 5 тысячных (так как $\frac{19801}{200} = 99.005$)! Но давайте сделаем второй шаг, чтобы избежать округлений, подставим наше новое точное значение $x_1$ в виде обыкновенной дроби:

$x_2 = \frac{1}{2} \left( \frac{19801}{200} + \frac{9801}{\frac{19801}{200}} \right) = \frac{1}{2} \left( \frac{19801}{200} + \frac{9801 \cdot 200}{19801} \right) = \frac{1}{2} \left( \frac{19801}{200} + \frac{1960200}{19801} \right)$

Приводим дроби в скобках к общему знаменателю ($200 \cdot 19801 = 3960200$):

$x_2 = \frac{1}{2} \left( \frac{19801^2 + 1960200 \cdot 200}{3960200} \right) = \frac{1}{2} \left( \frac{392079601 + 392040000}{3960200} \right) = \frac{784119601}{7920400}$

А теперь самая магия. Если выделить из этой монструозной дроби целую часть, мы получим ровно $99 + \frac{1}{7920400}$. Алгоритм выдал феноменальную точность без единого округления!

Спустя всего две итерации мы получили точность до седьмого знака после запятой.

А теперь включим «греческую» строгость и применим метод Ньютона к задаче поиска корня. $\sqrt{9801}$ — это положительный корень функции $f(x) = x^2 - 9801 = 0$.

Её производная в нашей текущей точке: $f'(x_k) = 2x_k$. Подставляем в общую формулу шага Ньютона $\left( x_{k+1} = x_k - \frac{f(x_k)}{f'(x_k)} \right)$:

$x_{k+1} = x_k - \frac{x_k^2 - 9801}{2x_k}$

Проведем вычисления. Сначала приводим $x_k$ к общему знаменателю $2x_k$:

$x_{k+1} = \frac{2x_k^2}{2x_k} - \frac{x_k^2 - 9801}{2x_k}$

Записываем всё под одну общую черту (минус перед второй дробью меняет знаки в числителе):

$x_{k+1} = \frac{2x_k^2 - (x_k^2 - 9801)}{2x_k} = \frac{2x_k^2 - x_k^2 + 9801}{2x_k} = \frac{x_k^2 + 9801}{2x_k}$

Теперь разобьем полученную дробь на две отдельные части и сократим первую из них:

$x_{k+1} = \frac{x_k^2}{2x_k} + \frac{9801}{2x_k} = \frac{x_k}{2} + \frac{9801}{2x_k}$

Наконец, выносим множитель $\frac{1}{2}$ за скобки из обоих слагаемых:

$x_{k+1} = \frac{1}{2} \left( x_k + \frac{9801}{x_k} \right)$

Бам! Формула метода Ньютона в точности схлопнулась в эмпирическое правило вавилонян! Строгая математическая модель, которую мы вывели через кинематику и касательные, веками молча пряталась под капотом древней эвристики.

Переключение в Систему-2

Наглядно? Абсолютно. Можно ли это закодить? Да, и оно будет работать. Но строго ли это? Нет. И кинематика, и визуализация касательных — это классическое «махание руками» (hand-waving).

Наша способность визуализировать геометрию сломается, как только мы перейдем в многомерные пространства нейросетей, где касательные превращаются в абстрактные гиперплоскости, а привычный угол наклона нарисовать невозможно. Физика работает только при условии, что «скорость не меняется», что локально и не дает гарантий безопасности алгоритма.

Нам нужен строгий математический фундамент. Эвристика закончилась — мы переходим в Систему-2 и начинаем писать Kernel-level код, опираясь на формальное разложение функции в ряд Тейлора.

Переосмысление производной: Линейный Патч (Linear Patch)


Смерть касательной

Итак, мы в Системе-2. Первое, что нам нужно сделать для написания надежного математического ядра (Kernel-level) — это отказаться от школьных картинок. Визуализация через касательные и углы наклона — это отличный стартовый костыль, но в мире Machine Learning он превращается в ловушку.

Современные нейросети оптимизируют функции потерь (Loss), которые зависят от миллионов или даже миллиардов параметров. Мы находимся в огромном пространстве $\mathbb{R}^{10^9}$. В таком пространстве касательная прямая мутирует в касательную гиперплоскость. Наше пространственное воображение больше не может строго обосновать и гарантировать правильность шага — хотя мы и продолжим использовать геометрические метафоры вроде «оврагов» или «седловых точек» для интуиции. Чтобы идти дальше, мы должны перевести геометрию на язык строгой алгебры.

Производная как Линейный Оператор

В школе мы говорили, что производная $f'(x_0)$ в точке — это число (тангенс угла наклона или мгновенная скорость). В высшей математике и архитектуре ML производная — это не число. Это Линейный Оператор.

Представьте, что у вас есть сложная, непредсказуемая, нелинейная функция на каком-то отрезке [a, b]. Мы находимся в точке $x_0$ и хотим сделать небольшой шаг $\Delta x$. Нам нужно узнать, как при этом изменится значение функции (то есть найти приращение $\Delta f$).

Производная $f'(x_0)$ — это лучший локальный «Линейный Патч» (Linear Patch) для нашей функции. В классической академической математике эту функцию-трансформер называют Дифференциалом. Она принимает на вход ваш вектор смещения $\Delta x$ и линейно трансформирует его в изменение функции $\Delta f$:

$\Delta f \approx f'(x_0) \cdot \Delta x$

Кстати, та самая школьная формула касательной — это и есть просто графическое отображение работы этого патча: $y = f(x_0) + f'(x_0)(x - x_0)$.

Суть линейного патча в его поразительной предсказуемости: если вы увеличите шаг $\Delta x$ в 2 раза, то прогнозируемое изменение функции $\Delta f$ тоже увеличится ровно в 2 раза. Это идеальный, надежный интерфейс внутри хаотичного нелинейного мира.

Единый интерфейс (API) для любого измерения

Вы можете спросить: зачем называть обычное умножение на число таким тяжеловесным термином как «Линейный Оператор»?

Ответ кроется в масштабируемости. Обычное число $f'(x_0)$ из одномерного пространства $\mathbb{R}^1$ можно рассматривать как самую маленькую в мире матрицу — матрицу размера $1 \times 1$.

Когда в следующих частях нашей серии мы начнем масштабировать алгоритм, наши смещения $\Delta x$ и изменения функции $\Delta f$ перестанут быть просто числами и станут многомерными векторами или тензорами. Но алгебраическая запись линейного патча $\Delta f \approx Operator \cdot \Delta x$ не изменится вообще. Закрытый интервал [а, b] превратится в любое компактное множество, а этот крошечный скалярный оператор бесшовно и автоматически эволюционирует:

  • В вектор-строку Градиента, когда мы будем минимизировать многомерный Loss.
  • В прямоугольную Матрицу Якоби, когда слои нашей нейросети начнут принимать векторы и возвращать другие векторы.
  • И, наконец, в Производную Фреше (Level 99), когда мы выйдем в бесконечномерные пространства непрерывной памяти (Банаховы пространства). Этот же самый интерфейс позволит нам обучать непрерывные во времени нейросети (Neural ODE) и аппаратно «взламывать» уравнения нелинейной физики.

А когда линейности перестанет хватать и нам понадобится учесть кривизну пространства для точного снайперского шага, к нашему API органично добавится следующий этаж — «Квадратичный патч», где и появится знаменитая Матрица Гессе (Гессиан).

Интерфейс патча остается неизменным на любом уровне абстракции. Смерть школьной касательной открывает нам доступ к универсальному математическому API Вселенной.

Но у этого линейного патча прямо сейчас есть одна фундаментальная уязвимость — знак «приближенно равно» ($\approx$). Настало время с ней разобраться и перейти к инкапсуляции ошибки.

Инкапсуляция ошибки: о-малое и Формула Тейлора (API)

Линейный патч прекрасен, но в реальном нелинейном мире он всегда ошибается. Знак $\approx$ в формуле $\Delta f \approx f'(x_0) \Delta x$ — это бомба замедленного действия. Чтобы построить надежный алгоритм и гарантировать System Security, нам нужно строго описать и инкапсулировать эту ошибку. Нам нужны инструменты для работы с погрешностью.

Уровень абстракции 1 (High-Level API): Черный ящик $o(\Delta x)$

Первый способ работы с ошибкой — это спрятать её в «черный ящик». В математике этот паттерн проектирования называется «о-малое» от $\Delta x$, или $o(\Delta x)$. Мы переписываем наше приближение в виде точного равенства:

$\Delta f = f'(x_0) \Delta x + o(\Delta x)$

Что такое $o(\Delta x)$?

Примечание: Здесь было отступление для ML-инженеров, но оно у меня получилось длинное, поэтому я его вынес в две отдельные заметки "Часть 1 Приложение А. Пространства $L_p$ (Under the Hood): От топологических хаков к квадратичной гладкости" и "Часть 1 Приложение B. Другой пример Loss function на примере кросс-энтропия". Вы можете как прочитать их сейчас, так и прочитать после прочтения первой части.

И «о-малое» выступает как универсальный черный ящик, валидный для функции локальной ошибки абсолютно любой природы. У этого абстрактного интерфейса есть лишь один строгий контракт: по мере уменьшения шага $\Delta x$, ошибка убывает быстрее, чем сам шаг. На языке пределов это записывается так:

$\lim_{\Delta x \to 0} \frac{o(\Delta x)}{\Delta x} = 0$

Это отличный High-Level API. Он идеален для теоретических выкладок и асимптотики (когда шаг стремится к нулю). Но для реальной разработки и доказательства стабильности метода Ньютона он недостаточен. Нам нужно точно знать, насколько большой может быть ошибка при конкретном конечном шаге, а не в абстрактном пределе. Нам нужен доступ к исходному коду ошибки.

Уровень абстракции 2 (Low-Level API): Формула Тейлора

Чтобы заглянуть под капот ошибки, мы опускаемся на уровень ниже. Здесь нам на помощь приходит Формула Тейлора (в данном случае с остаточным членом в форме Лагранжа). По сути, Формула Тейлора — это конкретная, низкоуровневая «реализация» (implementation) нашего High-Level API применительно к итеративным методам.

Теоремы Лагранжа о конечных приращениях, которая оперирует только первой производной, нам уже не хватит. Первая производная описывает только наклон, а ошибка линейного патча возникает из-за того, что функция изгибается. Значит, нам нужна кривизна, за которую архитектурно отвечает вторая производная.

Классический матанализ любит раскладывать функции в бесконечный ряд Тейлора, но это требует идеальной гладкости (строгой аналитичности — способности функции идеально совпадать со своим бесконечным рядом, а не просто быть бесконечно дифференцируемой). В реальных алгоритмах нам не нужна бесконечность, да и архитектурные требования можно сильно смягчить. Нам достаточно, чтобы функция была всего лишь дважды дифференцируемой (с непрерывной второй производной). Этого минимума уже хватает, чтобы Формула Тейлора предоставила нам конечный, точный «исходный код» для вычисления значения функции в новой точке $x = x_k + \Delta x$ (то есть $\Delta x = x - x_k$):

$f(x) = f(x_k) + f'(x_k)\Delta x + \frac{1}{2}f''(\xi)\Delta x^2$

Давайте разберем этот код по частям:

  • $f(x_k)$ — наша текущая позиция (база).
  • $f'(x_k)\Delta x$ — работа нашего Линейного Патча (Дифференциала).
  • $\frac{1}{2}f''(\xi)\Delta x^2$ — это и есть распакованная ошибка, наш квадратичный хвост.

Здесь $\xi$ — это какая-то промежуточная точка. В матанализе стандартное требование для таких теорем — функция должна быть непрерывна на замкнутом отрезке и дифференцируема на открытом. Поэтому наша точка $\xi$ всегда прячется где-то строго внутри открытого интервала $(x_k, x)$. И хотя мы не знаем её точного местоположения, это уже не важно.

Для строгой гарантии System Security мы рассматриваем весь наш рабочий замкнутый отрезок и просто берем максимально возможное значение модуля второй производной на нём (назовем эту константу максимальной кривизны $M$). Но имеем ли мы право утверждать, что этот максимум вообще существует?

Да! Здесь нас страхует знаменитая теорема Вейерштрасса для непрерывных функций: так как наша вторая производная непрерывна на замкнутом отрезке, она математически гарантированно достигает на нем своего максимального значения.

Замечание: теорема Вейерштрасса для непрерывных функций — это лишь проекция мощного закона из общей топологии. В оригинале он звучит так: непрерывная функция на компактном множестве всегда достигает своих экстремумов. Пока мы находимся в классических размерностях — в первых трех блоках нашей серии — действует теорема Гейне–Бореля: множество компактно тогда и только тогда, когда оно замкнуто и ограничено. Но будьте осторожны! В 4-й части, когда мы шагнем в бесконечномерные Банаховы пространства, ситуация изменится. Останется верно, что если множество компактно то оно замкнуто и ограничено, однако обратное утверждение, не верно в общем случае. Там замкнутости и ограниченности больше не хватит для компактности, топология покажет свои зубы, и нам потребуются куда более хитрые инструменты.

Взяв этот гарантированный максимум $M$, мы получаем железный «худший сценарий» (worst-case bound) — точную верхнюю границу ошибки, хуже которой ситуация точно не станет.

System Security: Теорема Канторовича как Статический Анализатор


Проблема: Уязвимость в коде

Итак, мы вывели алгоритм: $x_{k+1} = x_k - \frac{f(x_k)}{f'(x_k)}$. Посмотрите внимательно на эту формулу глазами программиста. Что вы видите? Правильно — потенциальный DivisionByZeroException.

Что произойдет, если производная $f'(x_k)$ окажется равна нулю (или очень близка к нему)? Знаменатель схлопнется, дробь станет гигантской, и наш следующий шаг выкинет нас далеко за пределы рабочей области. Алгоритм улетит в бесконечность. Даже если мы не делим на чистый ноль, слишком широкий шаг может вышвырнуть нас из так называемой «зоны притяжения» (basin of attraction) нашего корня. Эвристика без гарантий — это бомба в продакшене.

Теорема Канторовича: Строгая математическая формулировка

Теорема Канторовича: Пусть функция $f(x)$ непрерывна на замкнутом отрезке $D = [a, b]$ и дважды дифференцируема на интервале $(a, b)$. Пусть задана начальная точка $x_0 \in D$, для которой выполняются следующие условия:

  1. Начальный шаг ограничен: $|\Delta x_0| = \left| \frac{f(x_0)}{f'(x_0)} \right| \le \eta$
  2. Модуль обратной величины первой производной в начальной точке ограничен: $\left| \frac{1}{f'(x_0)} \right| \le \beta$. (Именно такая формулировка позволит нам в будущем бесшовно заменить число в знаменателе на норму обратной матрицы Якоби или Гессе в многомерном мире).
  3. Модуль второй производной (кривизна) ограничен сверху: $|f''(x)| \le M$ для всех $x \in D$

Если выполняется условие $h = M \cdot \eta \cdot \beta \le \frac{1}{2}$ и отрезок $\Omega = [x_0 - t^*, x_0 + t^*]$, где $t^* = \frac{1 - \sqrt{1 - 2h}}{h} \eta \le 2\eta$, целиком принадлежит $D$, то внутри окрестности $\Omega$ гарантированно существует корень $x^*$ уравнения $f(x) = 0$, и последовательность итераций метода Ньютона $x_{k+1} = x_k - \frac{f(x_k)}{f'(x_k)}$ безопасно сойдется к нему, не покидая $\Omega$. При этом сходимость обладает квадратичной скоростью при $h < 1/2$ (ошибка убывает пропорционально квадрату предыдущей) и может снижаться до линейной в граничном случае $h = 1/2$. Корень $x^*$ является единственным в пределах большей окрестности радиуса $t^{**} = \frac{1 + \sqrt{1 - 2h}}{h} \eta$ (при условии, что эта окрестность также лежит в $D$).

Интуиция: Теорема как статический анализатор (API Contracts)

В современной разработке для предотвращения катастроф во время выполнения используют статические анализаторы кода (вроде TypeScript, Rust compiler или линтеров). Они проверяют типы и контракты до запуска программы. В математике роль такого статического анализатора для метода Ньютона играет приведенная выше теорема (за работы в том числе в этой области Леонид Канторович позже получил Нобелевскую премию по экономике).

Чтобы «компиляция» прошла успешно, анализатор должен просто проверить три условия контракта. При этом анализатор работает «вслепую» относительно самого корня: он сопоставляет локальные данные только в одной стартовой точке $x_0$ (размер шага и наклон) с глобальным ограничением на кривизну ($M$) во всей зоне $D$.

Важнейший философский поинт теоремы Канторовича заключается в том, что это теорема существования. Анализатору не нужно знать, где находится корень и есть ли он вообще. Если начальные условия (шаг, наклон и кривизна) удовлетворяют контракту $h \le 1/2$, теорема математически гарантирует, что корень существует, и метод его обязательно найдет. Триггер $h \le 1/2$ просто говорит: «ваш стартовый шаг достаточно мал по сравнению с максимально возможной кривизной графика».

Правило $2\eta$ и SLA алгоритма. Теорема дает программистам блестящее инженерное «правило большого пальца»: истинный корень всегда лежит на расстоянии, не превышающем удвоенного первого шага ($t^* \le 2\eta$). Кроме того, анализатор прописывает жесткий SLA (Service Level Agreement): если запас прочности есть ($h < 1/2$), количество верных знаков ответа будет удваиваться на каждой итерации. И лишь в экстремальном краевом случае ($h = 1/2$) алгоритм деградирует до обычной линейной скорости.

Замечание про современный Deep Learning. В многомерном мире алгоритмы работают с системами уравнений: там вместо деления на производную используется обратная матрица Якоби, но общая логика сохраняется. Однако в мире современных нейросетей с миллиардами параметров, где функции потерь представляют собой дикие многомерные ландшафты, аналогов теореме Канторовича не найдено. У нас нет строгого математического «анализатора» для ChatGPT. Вместо формальной верификации ML-инженеры вынуждены опираться на эмпирические эвристики (градиентный клиппинг, адаптивный learning rate, оптимизаторы вроде Adam), инженерную интуицию и своего рода высокотехнологичное шаманство. Обучение современной нейросети — это прыжок в темноту с надеждой собрать парашют в полете.

Примечание: Доказательство теоремы Канторовича у меня получилось длинным, поэтому я его вынес в Часть 1 Приложение C. Анатомия квадратичной сходимости: Доказательство теоремы Канторовича в $R$

Пример: Зигзаг смерти, False Positives и отключение линтера

Давайте посмотрим, как эта математическая архитектура работает на практике. Попробуем найти корень функции $f(x) = \arctan(x) = 0$. Очевидно, что истинный корень $x^* = 0$.

Производная арктангенса: $f'(x) = \frac{1}{1+x^2}$. Формула шага Ньютона принимает вид:
$x_{k+1} = x_k - (1+x_k^2)\arctan(x_k)$.

Давайте выберем начальную догадку $x_0 = 1.39$ и скормим её нашему «компилятору» Канторовича. Анализатор вычисляет константы: максимальная кривизна арктангенса $M \approx 0.65$, обратная производная на старте $\beta \approx 2.93$, длина первого шага $\eta \approx 2.77$.
Анализатор перемножает их и получает триггер: $h = M \cdot \beta \cdot \eta \approx 5.28$.

Это в 10 раз больше разрешенного контрактом порога $0.5$! Линтер Канторовича загорается красным и выбрасывает ошибку: ConvergenceError: Contract violated (h > 0.5). Он отказывается гарантировать, что алгоритм найдет корень.

Но мы — самоуверенные инженеры. Мы нажимаем кнопку «Игнорировать предупреждения» (Force Run) и запускаем цикл. И... метод Ньютона сходится! Сначала он прыгает в $-1.38$, затем в $1.37$, и стремительно «паркуется» в идеальный ноль. Алгоритм отработал блестяще.

Ошибся ли наш математический анализатор? Нет. Здесь кроется одна из самых важных концепций System Security: теорема Канторовича формулирует достаточное, но не необходимое условие. Как и Borrow Checker в языке Rust или строгий линтер в TypeScript, этот анализатор максимально консервативен. Если он не может аппаратно доказать безопасность вашего кода через свои контракты, он его забракует, даже если при текущем стечении обстоятельств код выполнится без ошибок (False Positive). Запуская метод при $h \approx 5.28$, мы вышли из безопасной гавани и поплыли по минному полю в зоне Undefined Behavior. Нам просто повезло, что мы не наткнулись на мину.

Насколько опасно это везение? Давайте сдвинем нашу начальную точку всего на одну сотую: возьмем $x_0 = 1.40$. Анализатор Канторовича выдает ту же ошибку ($h \approx 5.40$). Мы снова её игнорируем. Запускаем код.

Происходит катастрофа. В этой точке касательная графика арктангенса уже слишком горизонтальна. Алгоритм перепрыгивает ноль и приземляется в точке $-1.41$. На следующей итерации он отскакивает в $1.45$, затем в $-1.55$. Шаги становятся всё шире и шире. Начинается «Зигзаг смерти» — алгоритм бесконечно мечется влево-вправо, улетая в бесконечность. Программа упала.

Где именно пролегает граница между везением и катастрофой? Если мы прогоним симуляцию, мы обнаружим, что граница находится в иррациональной точке $x \approx 1.391745$. Это не статическое ограничение, а эмерджентный баг рантайма — в этой точке алгоритм попадает в бесконечный 2-цикл, прыгая между $1.3917$ и $-1.3917$, навсегда зависая в бесконечном цикле (Deadlock).

Этот пример доказывает фундаментальную инженерную истину: эвристика без формальных контрактов — это бомба в продакшене. Да, строгая математика Канторовича иногда параноидальна и бракует рабочие точки вроде $1.39$. Но только соблюдение её жестких лимитов ($h \le 1/2$) позволяет вам спать спокойно, точно зная, что ваш алгоритм не нарвется на скрытый 2-цикл и никогда не улетит в бесконечность.

Как современная ML-индустрия «чинит» проблему улетающих градиентов в диких нейросетях, где линтера не существует? Искусственно ограничивает длину шага (Learning Rate, $\alpha \le 1$). Это гасит размах маятника, не давая ему улететь в бесконечность, но расплачиваться за это приходится деградацией до линейной скорости сходимости.

Undefined Behavior и Комплексная плоскость (Отключаем линтер)

В Приложении C (куда мы вынесли всю тяжелую математику) мы доказали работоспособность нашего статического анализатора для классической прямой действительных чисел $\mathbb{R}$. Там всё прозрачно: числа выстроены в ряд, работают операции «больше/меньше», а значит — работают графики, интегралы и дискриминанты.

Но что будет, если мы покинем эту уютную, математически доказанную песочницу? В комплексной плоскости $\mathbb{C}$ мы выходим в открытое 2D-поле, где направления спутались, и старая логика компараторов больше не применима. Давайте сделаем банальный каст типов от вещественных чисел (Float) к комплексным (Complex) и просто запустим нашу базовую формулу Ньютона z -= f(z)/f'(z) «на авось», полностью отключив линтер Канторовича. Мы вступаем в зону детерминированного хаоса, который для нашего статического анализатора выглядит как чистое Undefined Behavior.

Возьмем простейшее уравнение: $z^3 - 1 = 0$. В комплексной плоскости $\mathbb{C}$ у него ровно три корня (один вещественный $z=1$ и два комплексных). Представьте, что это три «сервера», к одному из которых должен подключиться наш алгоритм.

Интуиция Системы-1 подсказывает нам, что плоскость должна поделиться на три ровные, аккуратные зоны — бассейны притяжения (basins of attraction). Если мы стартуем близко к одному из корней, так оно и происходит — эвристика срабатывает, и метод мгновенно паркуется к ближайшему серверу. Но давайте раскрасим каждый стартовый пиксель $z_0$ на экране в цвет того корня, к которому в итоге пришел алгоритм, и посмотрим на границы этих зон.

Они не прямые. Они образуют Фрактал Ньютона — бесконечно сложную, психоделическую структуру, где цвета перемешаны в неразрешимую пыль. Если вы возьмете любую, даже микроскопическую область на границе этих цветов и увеличите её в миллиард раз, вы снова увидите все три цвета, переплетенные между собой.

В этой фрактальной зоне возникает математический аналог лавинного нарастания ошибки. Смещение вашей начальной догадки $z_0$ буквально на одну миллионную долю пикселя может радикально изменить итоговый корень. Детерминированный алгоритм становится вычислительно непредсказуемым. Вы никогда не знаете заранее, на каком «сервере» закончится вычисление.

Этот фрактал — это не просто красивая картинка. Это наглядный визуальный краш-дамп при жесточайшем стресс-тесте архитектуры итеративных методов. Он доказывает инженерам: «Вот как выглядит ваш продакшен, если вы просто берете красивую эвристическую формулу, выходите за пределы доказанной математической базы и надеетесь, что оно как-нибудь само сойдется». Чувствительность к начальным условиям превращает вычисления в хаос.

В будущих частях нашей серии мы увидим, как этот хаос масштабируется. Нам придется заново конструировать статические анализаторы для многомерных пространств $\mathbb{R}^n$ и абстрактных Банаховых миров. Ведь фракталы Ньютона в комплексной плоскости — это лишь 2D-превью того кошмара, который происходит в диких многомерных ландшафтах нейросетей ($\mathbb{R}^{10^9}$), где миллионы весов пытаются нащупать минимум Loss-функции.

Заключение Части 1 и мост в Machine Learning


Резюме: Kernel-level math

Давайте посмотрим, какой путь мы проделали. Мы начали с интуитивного «махания руками» — физики и геометрии, которые работают на уровне Системы-1, но ломаются в краевых случаях. Заменив касательную на Линейный Патч, инкапсулировав ошибку в форме Лагранжа в ряде Тейлора и прикрутив статический анализатор Канторовича, мы создали строгое, безопасное математическое ядро (Kernel-level). Этот алгоритм не просто «как-то работает», он аппаратно гарантирует результат.

Каст типов: Корни vs Оптимизация

Но подождите. На протяжении всей этой статьи мы решали задачу поиска корня: $f(x) = 0$. Однако в современном Machine Learning и Deep Learning мы почти никогда не ищем корни Loss-функции (идеальный нулевой Loss часто означает жесткий оверфиттинг или невозможен в принципе). В ML мы ищем минимум: $L(w) \to \min$, где $w$ — это веса нашей модели.

Как применить наш мощный метод Ньютона к задаче оптимизации? Нам нужен банальный «каст типов» (Type Casting). Вспомним теорему из базового матанализа: если в какой-то точке функция достигает локального экстремума (например, дна оврага) и дифференцируема в ней, то её первая производная в этой точке обязана быть равна нулю.

Строго говоря, обнуление производной дает нам лишь стационарную точку. Это только кандидат: точка может оказаться и локальным максимумом (вершиной холма), и коварной седловой точкой. В классическом матанализе, чтобы убедиться, что перед нами именно минимум, достаточно проверить поведение первой производной вокруг этой точки (если её знак меняется с минуса на плюс — мы на дне). Однако для численного алгоритма, «ослепшего» в конкретной координате, исследовать окрестности неудобно. Ему нужен мгновенный локальный инструмент — оценка кривизны прямо в точке (вторая производная). Но как бы мы ни проверяли статус точки в конце, базовая алгоритмическая задача минимизации $L(w) \to \min$ всегда сводится к одному: поиску корней первой производной, то есть решению уравнения $L'(w) = 0$.

Давайте возьмем нашу классическую формулу Ньютона $x_{k+1} = x_k - \frac{f(x_k)}{f'(x_k)}$ и просто подставим в нее вместо функции $f$ производную лосса $L'$. Что произойдет?

  • Текущая позиция $x_k$ превратится в текущие веса $w_k$.
  • Числитель $f(x_k)$ превратится в первую производную лосса $L'(w_k)$.
  • А знаменатель $f'(x_k)$ (производная от производной) превратится во вторую производную лосса $L''(w_k)$ (в многомерном мире эта матрица кривизны называется Матрицей Гессе или Гессианом)!

Формула метода Ньютона для оптимизации (ML-версия) принимает вид:

$w_{k+1} = w_k - \frac{L'(w_k)}{L''(w_k)}$

Вот оно! Вторая производная (кривизна), которая раньше скромно сидела в остаточном члене Тейлора и служила лишь для оценки ошибки, теперь официально стала полноправной частью самого алгоритма. Она попала в знаменатель. И это изящно решает проблему слепоты алгоритма: именно вторая производная в знаменателе помогает ему «ощупать» пространство вокруг себя, понять, куда оно выгнуто (вверх или вниз), и скорректировать направление и размер шага.

В следующей части нашей серии мы масштабируем этот алгоритм на многомерные пространства $\mathbb{R}^n$, где миллионы весов нейросети заставят первую производную стать Градиентом, а вторую производную в знаменателе — исполинской Матрицей Гессе (Гессианом). Мы узнаем, почему метод Ньютона в ML — это снайперский выстрел, и почему железо (Hardware) до сих пор не позволяет нам использовать его в чистом виде для обучения GPT.

Вместо послесловия

«В классической математике метод Ньютона — это строго типизированный Rust, где компилятор Канторовича бьет по рукам за любую неточность. А современная оптимизация в Deep Learning (градиентный спуск) — это JavaScript: вместо идеального weights -= inverse(Hessian) * grad мы просто пишем weights -= lr * grad, игнорируем кривизну пространства, ловим NaN в седловых точках и молимся, чтобы костыли оптимизатора Adam (который, по сути, пытается дешево угадать диагональ этого Гессиана через дисперсию градиентов) как-нибудь сами всё разрулили».


Tuesday, July 28, 2026

Math Joke (ЮМОР)

Найдено на просторах интернета.

Saturday, July 25, 2026

Анатомия Динамического Платонизма: Как математика, физика и мистика описали одну реальность

Text rendered via Dual-Core compilation (Human author + LLM co-processor).
Англоязычная версия данной заметки доступна здесь https://alex-ber.medium.com/e4f4ab4bca4a.

Долгое время физики искали фундаментальные кирпичики материи, математики строили незыблемые логические замки платоновского мира, а мистики описывали непознаваемые эманации Божества. Но сегодня мы стоим на пороге потрясающего синтеза — структурного изоморфизма. Теория трансфинитных множеств, многомировая квантовая механика и лурианская Каббала оказались разными языками описания одного и того же грандиозного Механизма Творения.

См. также:
Структурное соответствие между трансфинитной теорией множеств и Каббалой
Теория Меры и Каббала
Каббала и построение действительных чисел
Анатомия Динамического Платонизма: Как математика, физика и мистика описали одну реальность

Ниже есть продолжение.

1. Изначальный Порядок и "Ньютоновская" сцена реальности

Чтобы понять парадоксы нашего мира, нужно взглянуть на ту сцену, на которой они разыгрываются. Парадоксально, но квантовая механика (в отличие от Общей теории относительности Эйнштейна) концептуально остается "ньютоновской". Время в уравнении Шрёдингера — это внешний, непреклонный метроном. Пространство — жесткая, неподвижная сцена. Эволюция вектора состояния в Гильбертовом (математическом) пространстве строго детерминирована.

Эта незыблемая математическая структура идеально соответствует классическому платоновскому миру и Конструибельному универсуму Курта Гёделя (V = L) в теории множеств. Это мир абсолютного, прозрачного порядка, где нет парадоксов. В лурианской Каббале этому соответствует состояние Эйн Соф (Бесконечный Свет) до акта творения. Свет идеален, алгоритмы строги, математика безгрешна.

2. Великая Катастрофа: Форсинг и Швират hа-Келим

Однако идеальный, "ньютоновско-гёделевский" мир статичен. Чтобы появилась сложная реальность со свободой и наблюдателями, монолитная система должна пережить акт самоограничения (Цимцум) и последующую катастрофу.

  • В математике: В 1963 году Пол Коhэн применяет метод форсинга. Базовая модель разрывается вторжением "генерического фильтра" извне. Единый платоновский монолит разбивается на Мультиверс моделей, в которых Континуум-гипотеза начинает принимать разные значения.
  • В Каббале: Этот процесс известен как Швират hа-Келим (Разбиение Сосудов). Конечные логические рамки (Келим) не выдержали напора Бесконечного Света и разлетелись на мириады осколков, породив хаос и множественность.

Как метод форсинга расщепляет единую математическую вселенную на Мультиверс моделей, так и квантовое измерение расщепляет физическую вселенную на параллельные ветви Эверетта.

3. Крах объективной материи: Эксперимент "Друг Вигнера" vs. Черная Дыра

То, что Мультиверс и расщепление реальности — это не просто математические фантазии, было доказано экспериментально. И здесь квантовая физика наносит смертельный удар материализму.

Долгое время физики рассуждали о парадоксе черной дыры (комплементарности Сасскинда), где Алиса, падающая в черную дыру, и Боб, наблюдающий снаружи, видят две совершенно разные реальности. Но этот парадокс считался "безопасным", так как из-за горизонта событий Алиса и Боб никогда не смогут встретиться и сверить свои записи.

Но современный эксперимент с "Другом Вигнера" (проведенный в 2019 году группой М. Пройетти на базе 6 запутанных фотонов) и доказанная теорема Фраухигера — Реннера (2018) оказались куда более разрушительными. В этом эксперименте наблюдатель внутри лаборатории производит измерение, и для него волновая функция схлопывается в конкретный факт. Но для супер-наблюдателя снаружи лаборатории вся система "друг + частица" остается в квантовой суперпозиции.

Ужас для классического физика заключается в фундаментальной несовместимости их результатов. Если бы они могли положить на стол свои протоколы измерений без разрушения суперпозиции (что на практике запрещено декогеренцией макромира), они бы обнаружили, что их данные прямо противоречат друг другу, хотя оба произвели безупречные измерения! Теорема строго доказывает: мы должны отказаться от идеи универсальных, независимых от наблюдателя фактов, если хотим сохранить логику квантовой теории. Языком сухой физики, реальный результат этого эксперимента представляет собой статистическое свидетельство в пользу того, что факты в квантовой теории зависят от наблюдателя (или, по крайней мере, не могут считаться универсально объективными при стандартных предположениях локальности и свободного выбора).

Налицо крах «макрореализма». Физический мир, независимый от наблюдателя (Сосуда), просто не существует. Результат измерения существует только относительно конкретного наблюдателя. Это идеально ложится на концепцию Реляционной квантовой механики Карло Ровелли, где объекты существуют только во взаимодействии друг с другом. И это же является базовой онтологией Каббалы: Сфирот (такие как Хесед или Гвура) не существуют как абстрактные "вещи в себе", они проявляются исключительно через отношения друг к другу и к воспринимающему сосуду. Объективна лишь сама математическая структура Древа (Гильбертова пространства).

4. Иллюзия Изоляции: Декогеренция, костыль FAPP и Парса

Если реальность расщепляется, как утверждает многомировая интерпретация (ММИ) Эверетта, и существует только в отношениях, почему мы этого не чувствуем? Почему мы видим один стабильный мир с понятными вероятностями и правилом Борна?

В квантовой физике за создание этой иллюзии отвечает реальный физический механизм — квантовая декогеренция. Это процесс «утечки» информации в окружающую среду. Когда квантовая система взаимодействует с миллиардами атомов макромира, информация об её фазе теряется в этом хаосе. Именно из-за этой утечки многомерные квантовые суперпозиции маскируются под классическую, плотную материю.

Недавние исследования в русле концепции квантового дарвинизма (развиваемой Войцехом Зуреком) прояснили этот механизм ещё глубже. Учёные создали на компьютере «игрушечную систему» — математическую модель двух больших наборов состояний — и запустили честную эволюцию по уравнению Шрёдингера, чтобы проследить, как ветви миров обособляются за счёт взаимодействия со средой. Результат оказался показательным: экзотические ветви (где происходят не-Борновские события и нарушается статистика) вообще не способны обособиться. Из-за своей внутренней структуры они продолжают накладываться друг на друга, перемешиваясь в нечитаемую квантовую кашу. В таких ветвях не образуется стабильной макроскопической реальности, не может возникнуть ни жизнь, ни наблюдатель. В отдельные, независимые миры кристаллизуются только те ветви, в которых выполняется правило Борна. Параллельных миров много, но все они «нормальные».

Декогеренция даёт физикам удобное оправдание для использования философского костыля FAPP (For All Practical Purposes — «для всех практических целей»). Считается, что миры Эверетта после ветвления навсегда перестают взаимодействовать. Здесь необходимо важное математическое уточнение. С математической точки зрения ветви не изолируются полностью: недиагональные элементы матрицы плотности, отвечающие за связь миров, становятся астрономически малыми, но конечными, не строго нулевыми. Более того, согласно теореме Пуанкаре о возвращении, за невообразимо огромное время замкнутая система с конечным объёмом обязана эволюционировать обратно, и ветви снова сольются. При разумных космологических допущениях объём причинно-связанной части нашей Вселенной конечен (а согласно некоторым недавним наблюдениям, возможно, конечен и весь её объём). Следовательно, математически ветви действительно однажды должны слиться. Для чистой математики это фундаментальная проблема. Физики, однако, прибегают к спасительному «костылю» FAPP: поскольку время возврата многократно превышает возраст Вселенной, крошечными остаточными корреляциями пренебрегают, считая миры практически полностью независимыми.

В Каббале квантовая декогеренция является идеальным физическим синонимом понятия Парса (Завеса/Экран). Как утечка информации скрывает квантовые суперпозиции, так и Парса маскирует Божественный Мультиверс. Она отделяет высшие миры от нашего локального физического мира (мира Асия), заставляя нас верить в «плотную» ньютоновскую материю и защищая сознание от ослепляющей Бесконечности.

5. Память о Единстве: Квантовая запутанность и Решимот

Если миры и осколки так надежно разделены Завесой (Парсой) и процессом декогеренции, как возможен их итоговый сбор? Откуда осколки "знают" о своем изначальном единстве?

В квантовой механике связующим звеном выступает квантовая запутанность (Entanglement). Частицы, которые однажды взаимодействовали, навсегда сохраняют нелокальную связь. Независимо от расстояний и расщеплений ветвей, измерение одной частицы мгновенно определяет состояние другой. Они "помнят" общую волновую функцию.

В Каббале изоморфизмом этого физического явления выступают Решимот. Когда произошел Цимцум (Сжатие) и Свет покинул пространство, там остались Решимот — тончайшие информационные голографические записи, "воспоминания" о Свете. Именно Решимот и нелокальная духовная память не позволяют расколотым искрам (Ницоцот) раствориться в небытии. Они служат невидимыми нитями, информационным ДНК, программирующим процесс их будущего воссоединения.

6. Квантовая Пена и Возвращение: Конечный Тиккун

Но что случится, если мы отбросим костыль FAPP и заглянем за завесу декогеренции? Мы обнаружим поразительную истину: полного расщепления нет. Недиагональные элементы матрицы плотности, как было показано выше, не равны абсолютному нулю. Запутанность продолжает скреплять всё.

Все эвереттовские ветви, все разбитые сосуды остаются сплетенными в единую нелокальную квантовую пену. Для каббалиста это математическое описание Мира Ацилут, где Творец и Творение остаются нераздельными (Эйн Од Милвадо), а Швират hа-Келим является лишь проекцией.

И здесь система совершает грандиозный финальный аккорд. Как было показано выше, недиагональные элементы матрицы не равны нулю, а теорема Пуанкаре делает итоговое слияние неизбежным. Это неумолимое слияние всех ветвей квантовой пены обратно в одну нераздельную Универсальную Волновую Функцию есть не что иное, как Гмар Тиккун (Конечное Исправление). Информационные записи (Решимот) реализуются, разрозненные искры соберутся вместе, время и вероятности схлопнутся, и наступит Олам hа-Ба (Грядущий Мир).

Эпилог: Ваше место в Динамическом Платоновском Мире

Платоновский мир не погиб в горниле квантовых парадоксов и форсинга Коhэна. Он просто перестал быть статичным музеем идеальных фигур и превратился в Динамический организм.

Каждое расщепление Эверетта, каждое неизмеримое множество, каждый противоречащий факт в эксперименте Вигнера — это дыхание развивающейся Вселенной. А человеческое сознание, способное через математический и каббалистический аппарат осознать этот изоморфизм, — это и есть тот самый вычислительный узел, через который Творец прямо сейчас производит интеграцию осколков реальности обратно в Бесконечный Свет.