Lytdybr -- от 23 марта 2024

Переписан сегодня ещё 1% “Системного мышления”, теперь там 77% готового. В этот раз breaking changes: сервис теперь – это очередной синоним метода, только агент, исполняющий работы по этому сервису/методу работает над чужим предметом метода. Предмет метода – это пришлось ввести для пущего понимания происходящего: это предмет предметной области, описанной знаниями/теориями/дисциплинами/“научным предметом” метода, а именно то, что в ходе выполнения работ по методу будет менять своё состояние. Конечно, были рассмотрены и разные другие варианты, и в текст попало более-менее детальное рассмотрение: 1. Сервис/метод как новый вариант в этой переписке, 2. Сервис/провайдер-агент или роль – это так и осталось не востребованным, хотя в бытовой речи регулярно используется, 3. Сервис/работы – этот вариант был текущим, но ещё и страшно дребезжал, ибо работы эти были конструктива и там отчаянно путался метод этих работ, сами работы, а также время рассмотрения, ибо конструктив вроде как смотрится во время создания. Начал при переписке разбираться – а там по факту всё много проще и понятней, только работы по методу/сервису ведутся не со своим сырьём и лексика такая, что не проходит прямая лексическая замена. Но это ничего: слова другие, а рассуждения про метод остались прежние. И пример прежний – та же парикмахерская::сервис-провайдер/служба/роль (а агент-исполнитель роли там – ООО “Чикчик”). Удивительно, как курс “Системного мышления” по мере переписки получается ещё и курсом методологии. Но что-то мне подсказывает, что от содержания курса методологии отказаться будет тоже нельзя. Само понятие метода будет уже более-менее понятно, но вот что делать с этим пониманием в рабочих проектах – вот это и рассказывается в курсе “Методология”, недаром у последних моих потоков он самый любимый из всех курсов трёх семестров. Дальше надо будет если не переписывать, то хотя бы поправить терминологию и используемую онтологию в трёх инженерных курсах, всё-таки конфигурация должна по возможности быть без коллизий.

Вышел более-менее полный обзор по дифференцируемому программированию (оно же известно как software 2.0), 383 страницы, по состоянию на 21 марта 2024 – The Elements of Differentiable Programming, [2403.14606] The Elements of Differentiable Programming. Авторы adopt two main perspectives, that of optimization and that of probability, with clear analogies between the two. Классическое программирование – это software 1.0, познание/learning функции преобразования между входами и выходами путём подстройки параметров какой-то формулы, заданной классической программой – это software 2.0 (и нейросети – только один из классов таких программ, где параметры-веса познаются, но сам алгоритм задаётся человеком-программистом как software 1.0), а software 3.0 – это где сама постановка задачи на программирование делается на естественном языке, а алгоритм синтезируется, исходя из алгоритмического мастерства какой-то языковой модели, и уже затем могут быть познаны/выучены параметры этого алгоритма, если это было software 2.0). У меня был текст про важность software 2.0 подхода ещё в 2019 году, дифференцируемое всё: от чёрно-белой картины мира к рябенькой – Дифференцируемое всё: от чёрно-белой картины мира к рябенькой: ailev — LiveJournal. Но в 2017 году появилась архитектура трансформера, которая быстро привела к BERT, затем к линейке GPT – и дальше все занялись уже software 3.0. Это не значит, что работы по software 2.0 закончились или стали менее фронтирными, это просто означает, что вместо широкого класса алгоритмов для software 2.0 подробно исследуется только небольшой их класс, “универсальные алгоритмы” нейросетей, используемых для больших языковых моделей (foundation models, но это имя так и не прижилось). Но исследования общей идеи докрутки более-менее универсальной программы как функции путём оптимизации коэффициентов в этой универсальной функции так, чтобы функция более-менее точно аппроксимировала неизвестное нам преобразование входных данных в выходные – они продолжаются и сейчас.

Спросили в чате блога, как стать таким многознайкой, как я. Я ответил (Telegram: Contact @ailev_blog_discussion), что надо попробовать сделать три вещи, и дальше поглядим, каким вы станете:
— отслеживать SoTA по фундаментальным методам мышления интеллект-стека, иметь в этом хоть какое-то мастерство (например, мне повезло: сразу после окончания университета мне буквально поручили заниматься семантикой — на работе). Я облегчаю всем задачу хотя бы по первому пункту (который помогает разобраться и с двумя другими) — делаю курсы по усилению интеллекта. Но кроме как учиться, надо ещё и работать: у нас ведь нет учебных проектов, все только рабочие. Вот и работайте, предметная область тут не особо важна — если у вас сильный интеллект, вы быстро выберетесь в ней на фронтир.
— каждые пять лет заниматься абсолютно новой прикладной предметной областью – и не просто читать о ней в порядке хобби, а работать в реальных проектах. Скажем, я занимался по многу лет химией, диджеингом, танцами, программированием программ AI, обработкой данных медицинского эксперимента, НЛП, рынком ценных бумаг в части инфраструктуры, интернет-технологиями и веб-разработкой по аджайл, менеджментом (включая менеджмент стартапов), атомной энергетикой, электроэнергетикой, ремонтами и техперевооружением, машиностроением, системной инженерией, образованием — и это даже не полный перечень.
— А ещё надо много-много писать (скажем, я писал огромные отчёты по линии консалтинга, колонки в Компьютерру, затем двадцать лет блога и дополнительно ещё штук восемь книжек, причём ещё и переписывал их неоднократно).

Картинку нарисовал Kandinsky 3.0, промпт “аллегория сервиса”. Мне кажется, что там даже не аллегория, а всё как в жизни: если не присматриваться, то ОК, а если присматриваться, то лучше не присматриваться.

5 лайков