Очередная открытая группа второго семестра (“Системное мышление и методология”, преподаватель Юлия Чайковская) стартует в среду через пару недель, но формат изменён – тренировки там будут 18 недель по два часа вечером каждой среды. Тренировки – это как “попотеть”, а не тренинги как “развлечься, поговорить”. Установочная встреча 27 ноября 2024, последняя тренировка – 9 апреля 2025. На этот 6-кредитный курс надо будет потратить 180 учебных часов (один вузовский европейский кредит – это 30 часов), по 10 часов в неделю, включая 2 часа тренировки, а остальное – самостоятельно дома. Это примерно равно нагрузке хорошего хобби (скажем, танцы: два раза в неделю по паре часов занятия, затем ещё вечеринка часа на четыре в выходные и ещё с кем-нибудь договориться “потренить” на пару часов. В спорте там примерно так же будет). Как и в прошлой группе, я буду приглядывать немного за тем, что там происходит, а ещё чуть-чуть обновлю материал курсов “Системное мышление” и “Методология”. В прошлом потоке были сбои: в группу попали люди, которые по факту не прошли “Рациональную работу” (обязательный пререквизит), только чуть-чуть почитали. Им было очень трудно, а в параллель ещё один курс на 4 кредита как-то не берётся, если ещё и работа, и личная жизнь. По окончанию – читай стихотворение “Пророк” А.С.Пушкина, там про “виждь и внемли” всё правильно написано. Про глаголом жечь и дальше выход в деятельность – это уже третий семестр. Группа вроде как уже сформирована, но ещё есть время вписаться в эту группу (если вы прошли какие-то варианты “Рациональной работы” сами или с преподавателем), инфо в Telegram: Contact @system_school. Кстати, очередная открытая “Рациональная работа” стартует 20 февраля 2025, не пропустите, время быстро бежит. Открытые группы мы не так часто сейчас запускаем, ибо часть ресурса забирают корпоративные заказчики. О стартах групп у нас обычно пишут в телеграме, Telegram: Contact @system_school
Ещё один наш выпускник уехал пару лет назад эээ… далеко, поработал там вместо крутого менеджера простым разработчиком, адаптировался, затем вернулся в менеджмент – и получил предложение стать директором по развитию, причём в довольно крупной фирме. Мне известно много таких историй. Но такими историями не принято хвастаться в публичном пространстве. У многих выпускников такое было, мы рассказываем, как это работает, на наших занятиях – что-то делаете вокруг себя, руководство обязательно заметит — и подойдёт поговорить, “это случайно, или разбираешься?”. Выяснится, что “не случайно, разбираюсь” — и всё, тут же предложение “сделай во всей компании”, ты директор по развитию. Дальше надо торговаться о кабинете (совещания!), двухнедельном отпуске перед увеличением нагрузки и повышении зарплаты. Потом пишут “спасибо” мне в личку, вот как сегодня. Но это “спасибо” публично не предъявишь, эти сюжеты карьерного роста явно не предмет для публичных рассказов.
В феврале 2024 к табличным моделерам для low code (инструменты без названия, их называли productivity tools) добавились Confluence databases, с этого начался очередной такт разговора про табличные моделеры в чате экзокортекса ШСМ, Telegram: Contact @exocortexssm. Там поминают и MS Lists, и варианты “всё своё на открытом коде” вроде nocodDB, baserow, hash.ai и там дальше много чего. Не столько лавры code.io и notion.so многим не дают покоя, сколько забористый тамошний прайс-лист, но ещё в числе аргументов против SaaS появился новый пункт: “ничего личного, мы вас вычёркиваем ввиду санкций. политики, личной неприязни, плохой исторической родины, неверного цвета ногтей”. Но форма SaaS или опен сорс движка где-нибудь “у себя” – это вторично. Первично всё-таки универсальное табличное моделирование, и мы этому учим в наших курсах. Мой вклад в дискуссию – ссылка на списочек работ по LLM с таблицами GitHub - SpursGoZmy/Awesome-Tabular-LLMs: We collect papers about "large language models (LLM) for table-related tasks", e.g., using LLM for Table QA task. “表格+LLM”相关论文整理 и ссылка на работу [2405.01147] Why Tabular Foundation Models Should Be a Research Priority, “Why Tabular Foundation Models Should Be a Research Priority”. Там предлагают делать large tabular models, LTM. Интересная картинка по разным видам foundational models для разных modality – graph, image, language, table, time series. Вот красивая картинка примата LLM над всеми из этой статьи (при этом не указано ещё много других интересных модальностей – скажем, большие физические модели, Заметки по лекции Miles Cranmer "Следующая большая научная теория прячется внутри нейронной сети": ailev — LiveJournal, большие модели белков в evolutionary scale modeling, ESM 3 — The Frontier of Protein Design?):
Надо переписывать алгоритмику, и там довольно много открытых вопросов и по семантике, и по рациональности:
– эволюционные алгоритмы, которые оказываются вездесущими. В Нобелевка по физике 2024 -- по нейросетям: ailev — LiveJournal (8 октября 2024) я дал ссылку на работу по приравниванию эволюционных алгоритмов и алгоритмов диффузии, [2410.02543] Diffusion Models are Evolutionary Algorithms. 8 ноября 2024 Григорий Сапунов сделал великолепный разбор этой статьи – Telegram: Contact @gonzo_ML. И там договаривается в том числе и до того, что градиентный спуск тоже можно как-то считать эволюционным алгоритмом. Фишка в том, что Вселенная не эргодическая система, у неё то там, то сям встречается память, поэтому можно и не дождаться, пока она не побывает во всех своих состояниях. А эволюционные алгоритмы как раз позволяют на этом основании резко увеличить скорость нахождения удачных устойчивых состояний, не надо долго ждать полного перебора, там есть некоторый “алфавит” (паттерны), если переходить к цифровому многоуровневому алфавиту (квантовость, ренормализации), то можно считать быстро не все переборы, определять значения не для непрерывных функций в пространстве-времени.
– тут мы плавно переходим к особенностям обучения представлениям и говорим, что распределённые (коннективистские) представления в какой-то мере отражают паттерны феноменов Вселенной. Скажем, в работах типа физических LLM (Заметки по лекции Miles Cranmer "Следующая большая научная теория прячется внутри нейронной сети": ailev — LiveJournal) замечают, что в физике вполне есть какие-то паттерны, впрочем, такие же паттерны сейчас ищут вообще во всём, например, в работе с таблицами (см. предыдущий абзац), с белками и так далее. Это всё общее: паттерны, эволюция, физика и отражение паттернов в коннекционистских представлениях. В этих же LLM находят и сходство концептуализации термодинамики, эволюции и машинного обучения (https://www.pnas.org/doi/full/10.1073/pnas.2120042119 – там приводят табличку Corresponding quantities in thermodynamics, machine learning, and evolutionary biology), и там же в нейросетках видят и “появление квантованности” – [2012.05082] Emergent Quantumness in Neural Networks.
– дальше мы идём по линии лучших представлений динамики в физике и прочих науках и понимаем, что вместо дифуров (одномасштабных непрерывных) должны победить квантовоподобные расчёты (многомасшстабные с ренормализацией, дискретные/квантовые), и работы лаборатории Андрея Хренникова уверенно туда показывают. Возражение “но нельзя посчитать, нет готовых библиотек” не принимается: нет библиотек и для ньютоновской физики, с библиотеками дифуров не справитесь, библиотеки для стандартной теории в физике вряд ли вам будут доступны “на попсовом интерфейсе”, логика доступна как coq и agda, библиотеки баейсовской вероятности для современных теорий принятия решений – они есть, но тоже для профи, а квантовоподобные библиотеки – да, они вполне себе есть, бери и считай. Ничем не лучше и не хуже, чем всё остальное, вроде бы “сегодня мейнстримное”. Но при постановке задачи счёта для AI всё может кардинально поменяться.
– и это не конец запутанной истории. Ибо если квантовая природа мира и неэргодичность с ренормализацией, то можно использовать её особенности – и от квантовых расчётов на квантовых компьютерах переходить к быстрым квантовым расчётам на обычных компьютерах. Тут совершенно восхитительная работа https://journals.aps.org/prl/abstract/10.1103/PhysRevLett.133.180402 (Confinement in the Transverse Field Ising Model on the Heavy Hex Lattice, 29 октября 2024), и вот тут растолковывается, о чём в ней: Computers Find Impossible Solution, Beating Quantum Tech at Own Game : ScienceAlert. Оказывается, в хаосе квантового мира взаимовлияния распределены не равномерно – и можно понять, какие там паттерны, а при переходе к паттернам классический компьютер может по скорости побить квантовый: because of a behavior called confinement, in which extremely stable states appear in the interconnected chaos of undecided particle properties, giving a classical computer something it can model. Смутно это та же идея ортогональных паттернов (внутри паттерна всё связано, сам паттерн слабо связан с другими паттернами), символьных/цифровых локальных представлений, узлов в распределённых представлениях – и это же ход на уменьшение пространства перебора всех состояний, что дают эволюционные алгоритмы. Поэтому не вся квантовоподобная математика из предыдущего пункта обязательно должна считаться на квантовых компьютерах, если понятно, что там за паттерны-устойчивости. С другой стороны, помним, что есть и обратные ходы – на квантовых компьютерах могут решаться обычные переборные задачи (помним про однокубитный алгоритм коммивояжёра, [2407.17207] Solving The Travelling Salesman Problem Using A Single Qubit). Для меня же ещё эти confinements – это ещё один вариант хода на модули, ибо “сильное влияние друг на друга внутри и слабое влияние на наружу” – это ж ровно про модульность! Это ещё один ход на теорию модульности, а модульность – центральное для evolvability!
– когда я смотрю на паттернирование в психологии, психосоциологии, социологии, то там всё то же самое: простые какие-то закономерности ньютоновской науки, которые описываются просто дифурами – они мало что объясняют, даже если их трактовать статистически-по-байесу. Но уже больше объясняют, если их трактовать статистически-квантовоподобно, это как раз и описывают работы Андрея Хренникова. То есть текущие “теории” про агентов – не работают, что и показывают все эти бесконечные попытки выдать какие-то “фреймворки”, которые ничего не объясняют. И вечный кризис воспроизводимости, который сопровождает все эти “теории” (берём их в кавычки). По сути, это всё метафоры – на основе этих метафор можно строить какие-то свои действия (то есть использовать эти метафоры в качестве моделей для теорий принятия решений) примерно с той же степенью уверенности, что и на основе пословиц и поговорок (на любую из них можно найти и противоположную, то есть они “объясняют задним числом”). Это означает, что нейросетка, которая понаблюдает за поведением агентов некоторое время, представит внутри себя некоторый набор паттернов, которые вряд ли оттранслируются в приемлемый набор локальных “формульных” представлений – и дальше предсказаниям этой сетки можно будет верить не меньше, чем предсказаниям расчётов по психологическим моделям. Но дальше забавно: мне как-то моя подруга-психолог сказала, что ей абсолютно всё равно, что там будет символьным (локальным) представлением, если это представление богато. Она людей, ситуации, что угодно понимает интуитивно, но вполне может после некоторой практики транслировать или в цвета по Люшеру как “язык латентного представления”, или какую-нибудь нумерологию, или в астрологический язык. Ну, астрологический язык вроде побогаче, так что пусть будет он – и дальше мозг выполняет коннективистскую интуитивную часть вычислений, а коммуникация, запоминание и всё остальное могут вестись в “богатом языке латентного представления”, и астрологический язык тут не самый плохой. Но можно взять и психологию Юнга или Фрейда или любую другую – просто оформлять интуитивные квантовоподобные вычисления входных паттернов для коммуникации (в том числе с самим собой) в этом языке. Тогда мы имеем более и менее талантливо работающих интуитивно психотерапевтов (они ж все занимаются терапией, “ремонтом”) – а уж какой язык взят в качестве репрезентаций для внутренних каких-то интуиций этих психотерапевтов, дело десятое. Можно взять “Винни-Пуха”, и описывать мир в паттернах этой книги (а с Библией так и вообще ровно такой подход вполне работает, сам текст неважен, надо просто более-менее богатый язык, но он не должен быть слишком богатым). Конечно, современная LLM тоже вполне может выполнять это “интуитивное паттернирование”, поэтому будет явно не менее эффективна, чем психотерапевт – но фишка в том, что LLM при этом не надо демонстрировать следование теории (использование какого-то конкретного внутреннего языка: астрологического, Юнга, трансперсональной психологии и т.д.). Так что будет как с лингвистикой: парсеры на правилах, машинный перевод на правилах и всё остальное “на правилах” – они проигрывают (Горький урок ABBYY: как лингвисты проиграли последнюю битву за NLP - Системный Блокъ), а нейросетевые решения выигрывают. А вот дальше весь вопрос, что там за паттерны, и можем ли мы ускорить с ними работу за счёт более эффективного представления, см. предыдущие пункты.
– … и не забыть добавить рассуждения, которые я делал про эволюцию и evolvability в первом пункте lytdybr: ailev — LiveJournal и коэволюцию в lytdybr: ailev — LiveJournal, а также в этом же lytdybr: ailev — LiveJournal заход на методы работы с сообществами и организациями, которые в том числе ведут к опоре (или игнорированию опоры) на теории мотивации (психология) и сообществ (психосоциология) с попытками эксплуатации всех этих “чувств принадлежности” (патриотические воспитания, ага) в первом абзаце. Язык, на котором надо говорить о теории принятия решений для заведомо многоуровневых неэргодических систем – это не дифуры, это квантовоподобность, как её переводить в классику (из квантовости) – это ещё надо понимать (все эти поведения confinement, которые похожи на просто иные слова для modularity), и ещё надо договориться, что там надо делать сразу в коннекционистских представлениях, а что в локальных/символьных.
А ещё в gonzo-обзорах мелькнула история фреймворков для нейросетей (а поскольку объём большой, то сама эта история в сабстеке) – Deep Learning Frameworks - by Grigory Sapunov - Gonzo ML. Там больше “таймлайн появления пакетов, тьфу, фреймворков, тьфу, библиотек, ладно неважно” с акцентом на по факту парадигму (всё более ленивые вычисления, но победу Питона и даже вначале Луа этот текст не объясняет), Autodiff и ease of use, причём итоговый ход на JAX даёт увеличенный cognitive load со стороны как раз функционального программирования, это тоже не обясняется. Я бы тему фреймворков AI крутил по другим линиям:
— как они поддерживают end-to-end (ибо градиенту трудно перебираться между отдельно обучаемыми сетками. Чуть не написал “тренируемыми” — слово “тренировка” таки побеждает, сленг “понаехавших” оказывается сильнее.
— как они поддерживают evolvability в архитектуре (первый абзац в lytdybr: ailev — LiveJournal)
— что там с boilerplate и что там делает Karpathy сотоварищи на примере GPT-2, чтобы показать ужас происходящего внутри фреймворков (там же накладной расход на фреймворковость жуткий! Ссылки на начало его работы и работы Horace He с их goes brrr я давал в пункте 3 в Работать с причиной, а не следствиями: массово делать людей и AI умнее: ailev — LiveJournal, это аж апрель 2024, сейчас там продвинулись).
— причину boilerplate (Expression problem - Wikipedia) и как с ней борются – тут, конечно, интересен пример Julia с выходом на их макро “модель” и построение огромных пакетов солверов для бесчисленных “частных случаев”. Я её обсуждаю по Julia и линии акаузального моделирования (ибо оказалось, что численные методы ставят некоторые интересные проблемы перед компиляторщиками, например, вот тут писал — Цифровые двойники: физика ведёт математику, математика ведёт компьютерную науку: ailev — LiveJournal, подраздел “Computer science в поддержку моделирования: хитрая физика ведёт к хитрой математике, которая ведёт к хитрым языкам, которые ведут к хитрым компиляторам”, а следующий раздел про “дифференцируемость кода произвольных функций”. Это текст 2021 года, не такой уж давний. В Julia в итоге ещё и компилятор подхакали под библиотеки с общей сигнатурой функции и разными “частными случаями”, чтобы эти частные случаи подставлялись без потери эффективности, а ещё чтобы было легко пополнять и данные, и операторы их обработки (та самая expression problem) без переписки всего кода.
— принципиальная проблема алгоритмики (невозможность скорости “в общем случае”, и выбор каждый раз какого-то “ускорителя” с отвалом “общего решателя проблем” на помойку истории – как в CYC, Машинный интеллект на начало февраля 2022: до сих пор непонятно, как оценивать прогресс: ailev — LiveJournal и последняя работа Lenat с объяснениями, [2308.04445] Getting from Generative AI to Trustworthy AI: What LLMs might learn from Cyc), какой там алгоритм выбора ускорителя (сильно связана с предыдущим пунктом, ибо после выбора нужен туда ещё и dispatch)
— сколько уровней удерживают от пользовательского (“платформенность”, собственно “фреймворчность” в этом)
— что там с религиозными спорами про языки программирования фреймворков (ага, пришёл монти пайтон и этот удав всех съел — всех-всех?)
— сами AI пишут код, а что там с написанием кода самих фреймворков?
— инкапсуляция/платформизация/модуляризация (закрытие API) в этих фреймворках чего? Моделей типа готовых instruct? Всяких LoRA? Или CUDA с вариантами вроде экзотики TPU? Или ещё чего?
— социальные аспекты (скажем, Хаскел был дико популярен интеллектуально, но мало кто мог его освоить практически, ломали зубы – уже упомянутый cognitive load при обучении. То же самое с фреймворками: популярность интеллектуальная против фактической, а ещё legacy проекты).
— стратегии разработчиков: где быстрее появлялись реализации свежих архитектур из прорывных статей в arxiv, а где надо было ждать (и те проиграли, где надо было ждать – фреймворк ничто, а библиотека алгоритмов в нём – всё). Фреймворки тем самым как средство накопления архитектурных знаний (скажем, добавление новых и новых функций активации, новых и новых оптимизаторов).
— кто там включал в состав фреймворка выкат на прод, а кто позиционировался как “мы только попрототипировать” – и как это в итоге повлияло на распространение.