Анатолий Левенчук – Методология 2025 (страница 8)
Тем самым понимание того, как же мы работаем с методами, как мы выбираем метод, существенно связано с тем, как мы представляем/represent этот метод:
• В локальных представлениях – на каком уровне абстракции (мета-мета-модель, мета-модель, модель)
• В распределённых представлениях так вопрос даже поставить нельзя, это исследовательский фронтир, и в общем случае для агентов проблема стратегирования и планирования не решена21.
Так что для разбирательства с современной методологией надо разобраться с современной семантикой (учение о представлениях, раньше – только локальных, а теперь локальных и распределённых), которая в свою очередь отсылает к физике и математике, а также семиотике и обучению представлениям (representations learning) в случае нейросетевых технологий с их распределёнными представлениями:
При этом для коллективного обсуждения методов и эволюции/развития методов нам всё равно требуются локальные представления. Без локальных представлений нельзя передать компактно информацию о методе из, например, какой-то «сухой» нейросетки, которая научилась что-то делать в «мокрую» нейросетку человека, чтобы он научился делать что-то подобное. Скажем, программа AlphaGo научилась играть в Го лучше чемпионов мира. Но вот передать это знание людям программа не может, указать на важные объекты в игре – не может. Проблема совмещения работы с локальными и распределёнными представлениями (другое её название – «нейросимволические вычисления») на сегодня в AI не решена. Более того, не решена и проблема стратегирования и планирования в распределённых представлениях для искусственных интеллектуальных агентов. Выбирать длинные цепочки методов и затем строить разумные планы выполнения длинных цепочек действий на текущий момент системы искусственного интеллекта не могут.
Это основная проблема, которая сдерживает сегодня развитие робототехники: роботов надо программировать, они не могут сами разобраться с методами своей работы, сопоставить эти методы работы с предметами окружения, а далее строить длинные планы из цепочек операций этих методов – причём подстраивая методы работы под ситуацию в случае неожиданности (скажем, переходя к методам работы из другой предметной области: если вы пролили кофе на одежду в момент приготовления кофе, то вы прервёте приготовление кофе и будете спасать одежду. Увы, современные роботы не способны к подобным переключениям – ну, или вам придётся считать ситуацию «пролил кофе на одежду» частью метода заварки кофе). Ситуация, конечно, быстро меняется, но даже ведущие исследователи AI считают, что достижения интеллектуальными агентами уровня работы с методами и планирования работ хотя бы кошки или крысы – предмет ещё нескольких лет работы. В науке это известно как парадокс Моравека22: нейросети сегодня могут поговорить с вами о философии и дать совет по маркетингу (главным образом на основе того, что они прочли из написанного людьми, но иногда бывают и новые оригинальные идеи). Для людей это обычно очень трудно и требует много лет обучения, для начала – обучения языку, ведь люди в момент рождения не умеют разговаривать. С другой стороны, обезьяна видит на дереве банан, планирует маршрут прохода к этому дереву, а затем ещё и управляет лапами-хвостом (сотни мышц), чтобы взобраться к банану и взять его. Современный робот может выполнять только отдельные действия в такой истории, особые трудности – в адаптации метода работы к текущей ситуации и планировании сложных последовательностей действий. Это и есть парадокс: что легко для животных и людей, то оказывается трудным для систем AI, а что трудно для животных и людей, то оказывается легко для AI или даже более простых систем (скажем, калькулятор легко умножает пятизначные числа, а люди в большинстве своём этого не могут).
Тут ещё надо заметить, что понятия policy и plan в AI относятся к выбору метода и планированию одновременно, а в менеджменте стратегия и план – различаются предметом (стратегирование – про выбор метода, а планирование – про построение графика работ и оптимизацию использования ресурсов для выполнения работ по методу). Более того, policy – это понятие для современного AI, работающего с распределёнными представлениями и задействующего обучение с подкреплением, а в старом «логическом» (с экспертными системами) искусственном интеллекте прошлого века понятие «план» ещё и как в классическом проектном управлении – это up front plan (то есть полное планирование перед производством всех работ, что в реальной жизни уже признано практически недостижимым, кроме довольно редких ситуаций). План будет представлять собой строго определенную последовательность действий, ведущую от начального состояния предметов метода к конечному (ну, он может быть и сложнее, если у вас есть параллелизм, но это все равно основная идея). Политика будет определяться набором пар «состояние предмета метода -> действие», которые должны позволять из любого достижимого состояния в конечном итоге достичь заданного сигнатурой метода состояния23.
Интеллектуальные агенты из всего множества IPU (живых и неживых) выделяются как раз как способные спроектировать по каким-то методам изменения в своих моделях себя и окружения, а также себя и окружения как предметов методов, а также запланировать и провести действия по этим изменениям. Это довольно большой спектр систем, микробы тут вряд ли будут подходить под «интеллектуальных агентов», кошки – в малой степени, а вот люди и тем более «люди с компьютерами»/cyborgs или даже «компьютеры с людьми в их составе»/hybrots как оргзвенья – вполне подходят. И когда мы говорим об агентах, мы чаще всего будем представлять не просто систему-агента, но интеллектуального агента, причём чаще всего – агента-создателя где-то в графе создания какой-то целевой системы.
Так что после обсуждения семантики и её бурного развития в части распределённых представлений, мы всё-таки вернёмся в локальные представления и потребуем знаний в онтологии, ибо само обсуждение уровней абстракции в выделении важных объектов (работа с типами мета-мета-моделей, мета-моделей, моделей и предметов моделирования, которые сами часто в физическом мире, а не мире моделей-описаний) – это предмет онтологии. А для понимания онтологии надо разобраться с теорией понятий, чтобы говорить об объектах и отношениях, или объектах и операциях их построения – и противопоставлять их рассказу в терминах образцов или прототипов, удобных для нестрогой бытовой коммуникации. Для выбора метода из ряда методов надо ещё знать рациональность, включать разум. Вот основной алгоритм выбора метода (он сводится к рациональному, то есть на основе лучших известных нам теорий принятия решений «прохождения развилки», которое подробно разбирается в курсе «Системной инженерии» – смотри там разделы «Принятие решений: прохождение развилок», «Изобретение: генерация идей для концепции», «Что обосновывают в инженерии», «Рациональность обоснований» и «Прохождение архитектурных развилок», но тут мы «проходим развилку» для выбора метода):
• Каждый раз, когда вы хотите понять метод, попробуйте точно сформулировать его сигнатуру, как-то формализовать эту сигнатуру. Вы запросто можете ошибиться в постановке задачи на реализацию какой-то функции (для неживых систем) или стратегирование (для интеллектуальных создателей), поэтому попробуйте помоделировать. Смотрите в окружение, зачем вам вообще надо что-то делать? Если делать ничего не надо, то не надо понимать, каким методом!
• Всегда есть более одного варианта разложения метода, и они абсолютно разные в части задействуемых ресурсов и качества результата. Возможно, вам надо разложить метод на несколько уровней вниз. Если вы считаете, что есть только один вариант, никаких «развилок», никакого принятия решений по выбору из нескольких вариантов методов/способов действий, то вы что-то упустили. Подумайте ещё и вспомните, погуглите или спросите у AI-ассистента, примените какие-то приёмы генерации идей.
• Затем примите рациональное (то есть на базе лучших теорий принятия решений) решение: выберите между альтернативами. Это будет неоптимальный выбор, «наименее худшего из всех имеющихся» (ибо лучший метод или вы не знаете, или его ещё не изобрели).
• Обоснуйте выбор, приведите его инженерное обоснование.
Это повседневная работа любого инженера, любого менеджера, любого разумного человека. Даже чистка зубов требует определения метода: зубочисткой, жвачкой, ногтем, зубной нитью, щёткой и пастой, ультразвуковым специальным аппаратом у врача, струёй воды из ирригатора, жеванием семян кунжута – и это даже не все методы, например, в Индии разжёвывают щепочку священного дерева удумбар, и чистят зубы получившейся щёточкой.
Почему надо это делать на много уровней разложения метода? Потому как на каждом уровне вы формулируете сигнатуры следующих методов – и дальше эту процедуру выбора функции (разузловки, функциональной декомпозиции или синтеза функций, мы уже обсуждали, что терминология тут может различаться) или выбора метода (стратегирования) надо будет повторять на новом уровне – проверяя, что оптимален весь выбранный стек методов, а не оптимален один метод в стеке. Например, если вы выберете чистку зубной пастой и щёткой, то это ещё не конец истории – если у вас брекеты, то щётка должна быть V-образной, детям большая щётка не положена, щётка может быть механической, а выбор пасты будет зависеть ещё от множества факторов, причём вместо пасты раньше вообще использовали зубной порошок.