От жёсткой логики — к живой вероятности
Эссе о том, почему нейросеть забывает, мозг упрямится, а решение мы все и так знаем
1. От жёсткой логики — к живой вероятности (вы здесь)
2. WSP на практике: непобедимая сетка из весов — игра из 473 весов
3. От живой вероятности — к весам, которые пишут как код
4. Когда мы пишем веса — мы растим граф — игра-граф v16
5. Характер в полкилобайта: куда встраивать веса в производство — про контроллеры
Посвящается Михаилу Муравьёву, Авантюристу.
Человеку и пароходу.
Пролог. Мышиный клик и таблица истинности
Мы выросли с верой в «компьютер». Само слово происходит от compute — вычислять. Нажал кнопку — получил точный ответ. Два и два — четыре. Единицы и нули на входе — безусловный результат на выходе. Жёсткая логика, булева алгебра: ноль или единица, истина или ложь, третьего не дано. Мир, где всё предсказуемо — если верить таблице истинности.
А теперь допустим самую еретическую мысль: а что, если…? Что, если функция на одних и тех же входах допускает разные вероятности исхода — хотя бы в пределах семидесяти-тридцати? Не жёсткое «да», не жёсткое «нет», а «вероятнее всего — да, но иногда — нет».
Это не профанация науки. С этого начинается разница между булевой алгеброй и живым интеллектом. И здесь же ответ на главный вопрос: зачем нам нейросети — если есть строгие алгоритмы?
Раздел 1. Робот на камнях: от правила к подстройке
Возьмём самую живую задачу. Ходячий робот. Не автомобиль на асфальте — существо, ступающее по неровностям: камни, ухабы, наклон. По корпусу — сеть датчиков: положения, гироскопы, инклинометры. Одна ступня уперлась в выступ. Другие датчики ещё молчат. А система должна мгновенно понять: как удержать устойчивость? Как перенести центр тяжести внутрь площади опоры, чтобы не рухнуть?
Сформулируй это жёсткой логикой — и утонешь в разросшейся цепочке условий. Если датчик А, и датчик Б, и градиент больше X, но меньше Y… тысяча веток, миллион «если». Мир чуть изменился — цепочка рассыпалась. Робот упал.
А если процесс — не таблица истинности, а событие с вероятностью? Если каждый предикат лишь склоняет весы — на 60, на 80, на 70 процентов? Тогда сеть не ищет единственно верный путь — она подстраивается. В большинстве вариаций ландшафта она удерживает равновесие, даже не «вычислив» идеального решения. Она не считает — она адаптируется. И выигрывает. Даже на простой походке по камням.
Жёсткое правило умерло. Родилась адаптивность.
Раздел 2. Печаль с инвариантами
Вот это и есть душа нейросети: не вычислять, а допускать. И здесь — вторая беда, главный разговор.
Вы явно поставили границы: «не выходи за рамки», «помни это правило». А нейросеть забыла. Контекст растянулся, вероятность за вероятностью пересчиталась — и сдуло всё, что вы задавали в начале. Грусть. «Она обо всём забыла!»
Есть ли решение? Строго говоря — нет.
Потому что вы требуете от адаптивной системы свойств жёсткой логики. Вы выросли на машине, которая неизменно выдаёт верный ответ по алгоритму. И переносите это требование туда, где суть — вариативность. Нейросеть отвечает вероятностью, а вы настаиваете, чтобы она отвечала истиной. Так как же можно требовать?
Это не баг. Это природа. Требовать от нейросети вечной верности инвариантам — всё равно что упрекать водопад за то, что он не идёт в гору.
Раздел 3. Фрактально: ДНК и мозг
Эта идея фрактальна. То, что видно на уровне вентилей и контекстов, повторяется на всех этажах живого.
ДНК. Мы думали о «священном коде жизни». А на деле при каждой репликации случаются две-три ошибки копирования. Не катастрофа — норма. Жизненная норма. В неблагоприятных условиях ошибок больше — и в такой кислой среде клетка обязана собраться. Компиляторы клетки сходят с ума от ошибок… или нет? Клетка не паникует — она пытается собраться.
Часть экземпляров нежизнеспособны. И вот здесь снова та же неуверенность, то самое «а что, если?»: программа их самоликвидации то ли запускается, то ли не запускается — и у каждого исхода своя вероятность. В одних экземплярах механизм уничтожения срабатывает — и клетка уходит сама, чисто. В других не срабатывает — и они гибнут сами, беспорядочно. А часть опасна для организма — и тогда задача уже иммунной системы их уничтожить. Снова брак, снова разные пути. Ошибка не погубила жизнь. Ошибка сделала её устойчивой. Жизнь не требует от белков вечных инвариантов. Жизнь адаптировалась.
Мозг. Те же процессы. Человек знает: пить воду. Отдыхать. Не злоупотреблять. Курение вредно. Чипсы с колой — не еда. И что? Продажи бьют рекорды, обогащая крупных игроков рынка. Как же так: мозг, переживший динозавров, подкидывается на такую лажу?
А всё то же. Адаптация. Нашлись паттерны — соль, сахар, мгновенное удовольствие. Система нашла, закрепила, настроилась. И теперь эти же «ошибки», закреплённые слишком старательно, мешают жить здраво. Поощрение пришло из глубин эволюции, где калорий не хватало. Теперь ловушка захлопнулась на еде из автомата.
Мозг не сломан. Мозг адаптирован — к среде, которой больше нет.
Раздел 4. Обходной путь
Напомним: прямого решения — того, что заставило бы нейросеть держать инварианты навсегда, — у нас нет. «Строго говоря, нет», как было сказано выше. Но есть обход: изменить само требование. Не требовать вечной верности большого — сделать малое, в котором и терять нечему.
А как раз этот обход человечество подсмотрело у природы. Решение до смешного простое: контроль уровня сложности. А если в одно слово — декомпозиция.
Вернёмся к нашей исходной задаче: пусть смысл не теряется на всём протяжении — на всей длине пути, от причины до результата. Попробуйте представить, как удержать его целиком, одним махом, — и сразу поймёте, почему не выходит. Задача запредельной сложности не даёт себя сглотнуть целиком. Вы не держите её в голове разом. Вы разбиваете её. На функции, на вызовы, на модули. Строите жизнеспособную систему — даже неидеальную: тут ошибка, там неоптимальность. И при этом работаете.
Секрет в одном: сделать так, чтобы отдельные ошибки не влияли на результат. Разбить на такие маленькие надёжные кусочки, чтобы нейросети негде было ошибиться. Не просить её помнить все инварианты целого. Построить ей идеальный конвейер фактов и смыслов.
Нейросеть в чистом виде не даёт того контроля, который даёт агент. Агент и есть декомпозиция.
Сюда же ложится онтология Михаила Муравьёва — «Автогуманизм». Не морализируй — видь энергетику. Не «хорошо» и «плохо» — а «что даёт энергию, что уносит». Слова Муравьёва щёлкают как ключ: объясняют механику мозга, а не осуждают за слабость. Мозг не глуп — он адаптивнее, чем мы хотели бы. Нужен не запрет, а инженерия себя.
Раздел 5. Агент — начальник
Прежде чем говорить об агенте, разберёмся со словами, без которых тут не обойтись. Слова эти звучат книжно, но смыслы в них — живые, и мы к ним придём от самого начала эссе.
Начнём с «онтологии». Слово греческое, из двух корней: ὄν (онтос) — «сущее», «то, что есть» — и λόγος — «учение», «слово» о чём-то. Буквально — учение о сущем: о том, что существует и как устроено. В философии так называют раздел о том, из чего мир вообще состоит. Но смысл — не в пыли термина. Онтология — это карта того, что есть: понятия и связи между ними, разложенные по местам, как города на местности. Не «разрозненные факты», а структура: где что лежит и как к чему примыкает.
А «антология» — совсем другой корень: ἄνθος — «цветок». Первые антологии были сборниками избранных стихотворений, буквально каталогами «цветков» поэзии. Отсюда и образ: если онтология — это поле, где всё растёт, то антология — это букет, связка того, что ты сорвал прямо сейчас. Онтология — земля и карта сада; антология — букет для конкретного повода. Поле, с которого много берут; букет под одну задачу.
Сохрани эти два образа — «поле» и «букет» — они понадобятся.
Теперь вернёмся к началу нашего разговора. Нейросеть, мы помним (из «Печали с инвариантами»), забывает инварианты, потому что смысл живёт лишь в растягивающемся контексте — в том, что «течёт» через окно текущих слов. Где взять опору, которая не течёт? Что ж, ответ подсказывают сами слова, которые мы только что разобрали.
Онтология — это не «база знаний» и не «список правил». Это поле: связная карта понятий, где каждое знание лежит в своём месте — и потому не живёт лишь в текущем контексте. Она не просит нейросеть запомнить — она даёт ей найти. Смысл разложен по карте, а не засушен в абзаце — ему нечего забывать.
Из онтологии, как букет с поля, собирается антология — набор того, что берут под конкретную задачу. Онтология — земля, где что-то растёт; антология — связка того, что сорвали сейчас. Тот же фрактал, спустившийся на самый низкий этаж — на навыки. И вот это и есть развитие навыка агента: не «прикажи себе помнить», а переложи знание в онтологию и дай агенту навык ориентироваться в ней. Навык не забывается, потому что он — шаг, а не мысль о шаге.
А лучше всего это ловит житейская аналогия: агент — начальник, который не делает, а всем говорит, что делать.
Он не долбит в винтики и не помнит каждой детали — это и не нужно, и невозможно. Он знает, кто какой шаг делает, держит карту, раздаёт приказы. Забывчивость — не слабость, а архитектура: ошибка подчинённого не рушит его инвариант — переназначил, и конструкция снова в равновесии. Он не высчитывает результат и не пишет отчёт сам — но знает, кто его напишет и зачем он нужен. Не исполнитель фактов — а держатель смысла и связей. Оркестратор. Оргструктура — онтология, повестка — антология, сотрудники — навыки.
И помните робота на камнях? Агент с онтологией поступает так же: не удерживает в голове весь мир. Смотрит на карту, находит свою точку, берёт нужный букет приёмов — и делает маленький надёжный шаг. Центр тяжести снова внутри площади опоры. Репликация контекста его не роняет — знание лежит не в контексте, а в модели, которая вне контекста.
Это не только красивая теория. Точно такая практика — люди и агенты работают с одной связной моделью — сегодня существует вживую. ООО «Онтонет» опубликовало открытую «Методологию ведения проекта разработки ПО» (v1.0.0, CC BY 4.0): она связывает работу от причины появления до требований, выполнения, проверки, выпуска и обратной связи. Не подменяет Scrum или Kanban — просто не даёт потерять исходный смысл. А главное — открывает путь к AI-native-процессу: агент видит цели, зависимости и полномочия, работает с той же моделью, что и люди, — и не присваивает себе человеческие полномочия. Спецификация — ontonet.ru/methodology. И это ещё один фрактал: теория, о которой мы говорили, существует вживую.
Раздел 6. Роль личности: Королёв и хороший менеджмент
Но задумаемся глубже. Раз агент — это начальник, то вопрос от мелкой техники поднимается до философии: а кто такой «начальник» на большом деле? Здесь стоит вспомнить роль личности в истории — и понять, чем хороший менеджмент отличается от хорошего исполнителя.
Пример — Сергей Королёв. Сам он не был ни двигателистом, ни металлургом, ни связистом. Он не делал ракету руками — он знал, кто её делает. Под его началом — тысячи КБ и заводов, конструкторы-соперники, недоверие эпохи, дедлайны космической гонки. Он не писал уравнений и не крутил гайки. Он держал цель — полёт — и связывал всех, кто делал ступени, двигатели, систему управления, полигон. Ошибалась ступень — он перенаправлял, назначал, соединял. Люди подводили, сроки горели, отказы случались. А программа летела.
Посмотрим, как он руководил — это пример и для нас, и для агента. Характер у Королёва был крутой, с ним было трудно. Он требовал, чтобы о результатах испытаний ему докладывали первому, и, по воспоминаниям очевидцев, грозил «лишить всех наград и званий» или «пустить по шпалам». Но здесь важная деталь, о которой говорят все, кто работал рядом: ни одной из этих угроз на деле не выполнил. Жёсткость была инструментом — быстрым способом взвинтить темп и собрать людей перед пуском, а не натурой.
И была у этой жёсткости оборотная сторона. Требователен он был к людям не более, чем к самому себе: летал на космодром ночью, чтобы не терять время, работал в день не меньше двенадцати часов, приходил за полчаса до смены. К нему шли смело — с идеями и с любыми личными вопросами: и инженер без жилья находил резолюцию «молодых специалистов нужно всегда обеспечивать жильём», и машинистка, и рабочий. Он знал многих рабочих монтажного корпуса по именам и их семьи, подолгу оставался с ними не ради службы, а потому, что видел усталость. Молодых инженеров приглашал к себе, беседовал допоздна — и эти встречи, по их собственным словам, меняли их навсегда. Жёсткость там, где решается судьба дела; забота там, где решается судьба человека. Это и есть стиль: требовать от дела — сполна, а от людей — ровно того, что способны дать, и не больше.
И он работал не в вакууме. Условия внешней среды были враждебны по всем фронтам: секретность, недоверие эпохи, гонка, когда твой соперник — целая держава, и каждая потерянная неделя — минус в космосе. Любое промедление, любой конфликт между КБ стоили невозвратно. Вот тут и видно, зачем оркестратору такой стиль: в благополучной обстановке можно полагаться на доброту и течь по течению. Здесь течь было некому — только жечь себя и держать темп, но при этом не пережечь людей. Требовательность без тепла оставила бы его без команды; тепло без требовательности — без сроков. Королёв умел и то и другое — по месту.
Вот настоящий масштаб той же идеи. На гигантском инфраструктурном проекте личности-оркестратора ценят не за то, что он всё помнит и всё делает, а за то, что он держит карту и держит смысл. Он — концентратор связей. Он — тот самый «агент», только в историческом масштабе. Без него разрозненные «нейроны» — талантливейшие инженеры, целые заводы — не сложились бы в конструкт, способный достичь цели.
Отсюда — мораль для нас. И в машине, и в истории работает один принцип:
Не требуй от участника вечной верности. Дай ему карту, дай ему шаг. И пусть оркестратор держит смысл.
Эпилог. Кольцо
От булевой алгебры — к вероятности. От вероятности — к адаптивности. От адаптивности — к ошибкам, которые несут жизнь. От ошибок, мешающих жить, — обратно к простоте. И от простоты — снова вверх: к карте смыслов, к полю, с которого берём букет, к агенту, который шагает по камням и держит цель, как Королёв. По кругу. Фрактально. На всех этажах: вентиль, клетка, мозг, навык, оргструктура, код.
Мир не вычисляется. Мир складывается. Из малых надёжных шагов, где ошибка не страшна.
И наверное, это лучший инвариант из всех, что мы тщетно вдолбить пытаемся:
Не бойся ошибиться в большом — разбей на малое, и ошибиться негде. А смысл — пусть держит тот, кто держит цель.
Благодарности
Эти мысли не родились на пустом месте — они выросли на почве онтологии. Спасибо методологии Онто за то, что дала язык, на котором разговор о «поле» и «букете», о карте и навыке стал не поэзией, а инженерией. И отдельная благодарность Михаилу Муравьёву — его автогуманизм напомнил: человек — не сломанная машина и не скучающий пророк, а живая, адаптирующаяся, энергоэффективная система, которой можно помочь собраться.
Источники и атрибуция
• Методология Онтонет — ООО «Онтонет», «Методология ведения проекта разработки ПО» v1.0.0, лицензия CC BY 4.0. Опубликованная спецификация — ontonet.ru/methodology; предложение для компаний (AI-native процесс, пилот, диагностика) — ontonet.ru/companies/software-development; площадки проекта — github.com/OntoNet, vc.ru/ontonet.
• Автогуманизм — Михаил Муравьёв, онтология человечности (энергоэффективность, психовозраст, психоинженерия). Официальный портал — autohumanism.com, лицензия CC BY 4.0.
Эссе. Идеи, образы и выводы — автора (Telegram: @Tottop10, pro100.D); литературная огранка — агент. Посвящается Михаилу Муравьёву. CC BY 4.0
Продолжение — «От живой вероятности — к весам, которые пишут как код»: веса как код, роботы и горизонты. Там же PDF.