Category: животные

2019

lytdybr

Сегодня первый день как появилось ощущение, что рабочий год начался -- дедлайны, совещания, переписка, разговоры, рабочая рутина. Все вернулись из отпусков, проспались, и вот всё сдвинулось и поехало.

Долго размышлял сегодня над темой domain adaptation, она мне кажется очень интересной в плане стыка с текущими онтологическими наработками -- при всём несовпадении постановок вопроса. Вот: https://www.quora.com/What-are-the-most-significant-machine-learning-advances-in-2017/answer/Arthur-Pesah. Ключевая фраза там one of the most impressive (and shared) DA paper of the year is in natural language processing (NLP): Word Translation Without Parallel Data. They basically used adversarial DA to find a common embedding between samples from two languages (source and target), and managed to perform very accurate translations without having trained on any example of translation! If you read the paper, you can notice that the expression “domain adaptation” haven’t been used once… Since most DA folks are into computer vision, it seems that the NLP guys who wrote this paper were not aware that their work entered into domain adaptation. So I think NLP would benefit a great deal by testing on their data all the brand new DA methods that the CV community has invented this year. Это ж как раз про совмещение несовместимых онтологий -- перевод из одной онтологии в другую! А мужики-то не знают!

Ridero.ru, как выяснилось, отвечает на вопросы раз в сутки. Сегодня я уже не уверен, что всё там будет быстро. Будет как всегда. Но срок выпихивания книжки в тираж до конца января я себе оставлю.

Ездил сегодня на самокате, обычное каботажное плавание вокруг дома -- побывал в трёх местах. В этом году несамокатного сезона нет. И вообще, ползимы уже прошло, дело на весну.

Зайка-покусайка сегодня всё, а прожил он девять лет и два месяца (вот тут он появился -- https://ailev.livejournal.com/645987.html, а вот тут я его буквально пару недель назад фотографировал в честь Нового Года -- https://ailev.livejournal.com/1397407.html). Забиравший его работник (для животных есть свои ритуальные услуги, их делают ветеринарные клиники) сказал, что это чудо -- в городских условиях такие живут обычно лет пять. Это селебрити, он даже в башорг попадал три года назад с чистой о нём правдой: "Домашняя ёлка потихоньку пилится и идёт на корм и точение зубов зайцу. У зайца от ёлки полное счастье, остаются только хорошо обглоданные палки, даже без мелких сучков. Ещё выяснилось, что заяц охотно кушает сыр Маасдам. Ёлка с сыром, хм." (http://ailev.livejournal.com/1243321.html).
2019

lytdybr

Из главных событий -- я сегодня как-то домучал сочинение основных материалов для coursera, осталось снабдить курс дополнительными материалами. На меня эта работа по созданию онлайн-курса навевает дикую тоску и оцепенение, сочинение задач в разы более трудоёмко, чем сочинение учебника. В грамм добыча, в год труды. Мне кажется, что я на этой методической работе крайне неэффективен, в отличие от работы методологической. Утешает лишь то, что если не я -- то никто, и любая моя неэффективность тут оказывается предельно эффективной. И если практикование методологии не заканчивается методичкой (например, в виде онлайн курса) как рабочим продуктом, то грош цена этому практикованию. Разработка метода заканчивается только в тот момент, когда он существует в передаваемой форме -- то есть в виде учебной технологии. Ну, со всеми оговорками, что release early, release often, и тем самым быть мне в состоянии дикой тоски и оцепенения ещё много раз, если я хочу продолжать считать себя методологом.

Жена заставляет вьюноша выучить по физике то, что он (по её личному мнению -- и плевала она при этом на все эти контрольные, экзамены и олимпиады, у неё свои контрольные) недоучил в восьмом классе. Дырки в знаниях нашлись, и время игры на компьютере зарабатывается вьюношем опять через грызьбу гранита науки. Я пытался заметить, что это всё бесполезная трата времени, цитировал содержание "развитие против совершенствования" (http://ailev.livejournal.com/1032133.html -- "Развитие -- это рост спектра возможных адекватных ответов на самые разные жизненные ситуации. Развитие -- это когда всё реже и реже выдаются неадекватные реакции в незнакомых ситуациях из-за незнания и неумения. Совершенствование -- это когда всё реже и реже проявляются неуместные в знакомой ситуации поведенческие стереотипы. Развитие -- это шаги вперёд, в новые ситуации. Совершенствование -- это занятие круговой обороны в знакомой ситуации, и выигрыш за счёт этого". И дальше аргумент, что не нужно из ребёнка готовить чемпиона олимпиады в ползьбе перед тем как учить его ходить и потом бегать), но у жены тут своё особое мнение, её тут не переубедишь. Так что у нас по факту сейчас домашняя летняя школа по физике и математике.

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

Весь день сегодня слушал Deep Purple разных лет. Великая группа! Единственное, что расстраивает -- это плохое качество записи. Раньше я считал, что это у меня аппаратура плохая, а не их записи плохие. А потом аппаратура у меня стала хорошая, а саунд Deep Purple так и остался плохой. Хорошо, что я не аудиофил, а меломан. Аудиофилы их записи, наверное, вообще слушать не могут.
2019

Быть

Я не помню, чьё это стихотворение (смутно помню, что кого-то из питерцев), но оно очень популярное было в восьмидесятых. Пусть висит тут, чтобы не искать в недрах интернетов каждый раз (и я тут даю в версии, в которой сам помню -- в интернетах же висят разные редакции похуже):

Быть
(В пику Гамлетовским рассуждениям)

Хорошо быть утконосом
Воду утить плоским носом
Хорошо быть муравьедом,
Муравьев есть за обедом
Хорошо быть водолазом,
Под водою чтобы лазать,
Хорошо быть дирижаблем,
Всюду дирить острым жаблем.

Плохо быть оглы-бублы!
У него оглы такие,
Преогромые, как свиньи,
А бублы зато не очень -
Их немного, штуки три.
Он размахивает ими,
Словно гирями какими,
Кажется что их четыре -
Приглядишься, всё же три!

Но рукой за них касаться
Не советую вам, братцы,
Можно очень испугаться,
Можно даже обосраться,
И навеки так остаться,
Что не очень хорошо!

Из этого же цикла там было ещё:
Больно видеть, как испанцы
Жарят тырла на сосне,
Но ещё больнее, братцы,
Целый век сидеть в дерьме!

Какие-то следы этой древней подборки (только в странном порядке и с неизвестными мне частями -- возможно, более поздними включениями) я ещё нашёл тут: https://vk.com/note250452_10296275
2019

Пониманию учить вдвое дольше, чем просто навыку

В "осознанности против зеркальных нейронов" (http://ailev.livejournal.com/1284158.html) я писал о необходимости обучения "самой возможности ученика рефлексивно рассказать, что же он и как делает, чему именно научился, возможности продумать собственные действия (осознанность!), обсудить их с кем-то (адекватность, вписанность в окружающий профессиональный мир). Вербализация для этого нужна, конечно, но там и картинки могут быть, и движения, и что угодно -- акцент на осознанности и рациональности, а не на речи".

Когда мы учим нашего отрока новому материалу, то он проходит много разных стадий:
-- слушает объяснения/читает учебник/смотрит лекцию и немедленно говорит "я понял". Перевод на русский слова "понял" в его исполнении абсолютно однозначный и всегда одинаков: "отстаньте от меня". Поэтому мы ему не верим и заставляем демонстрировать: даём ему решать задачи.
-- доказательство понимания -- это предъявление умения решать задачи, выполнять задания. При выполнении заданий ему приходится снова и снова обращаться к изучаемому материалу, делать и исправлять ошибки. Через некоторое время процесс сходится, ошибок он больше не делает. И решает, зараза, всё в уме. Формально -- "понял". Но это только формально.
-- но этого нам мало, мы требуем объяснений полученных решений, проговаривания (устного и письменного) хода решения -- и опять обращения к учебнику/лекциям/разъяснениям в случае затыков. Ужас тут в том, что выход на беглое объяснение того, что он сам делает, занимает ещё столько же времени, сколько объяснение материала и решение задач вместе взятые. 50%. Половину.

Я думал, что это только у нас такая беда, но А.Г.Кушниренко прислал мне письмо, где буквально подтвердил эту оценку про удвоенное время обучения осознанному навыку по сравнению с "просто навыком":
У нас сейчас более или менее готов цикл из 16 занятий "Алгоритмика 1" для старших дошкольников (составление программ управления виртуальными и, изредка, реальными роботами) с использованием а) конструкций "подпрограмма" и "цикл", и б) счетчика "волшебный Кувшин" для подсчета числа шагов, эпизодического использования "цикла пока".
В этом цикле есть 16 игр, каждая примерно из 8 заданий-уровней, выполнение 5 заданий считается достаточным для перехода к следующей игре, то есть за весь курс дети составляют около 80 программок.

На это (уже после трехлетней работы Рогожкиной в ДОУ 1511) ушло 3 года.

Так вот, по нашей субъективной оценке, научить писать эти 80 программок можно за 50% времени, но ограничиваться этим неправильно. Поэтому мы старались и изобрели методики и подходы к тому, чтобы потратить еще 50% времени на то, чтобы дети научились разговаривать про то, с чем они столкнулись и что они поняли в процессе решения этих задачек, а именно, научились разговаривать на три темы:
-- на тему "метафора программного управления", то есть каковы "правила игры" при программировании роботов, чтобы дети могли пользоваться словарем терминов Робот, Команда, Исполнитель Команд, Система Команд, Командир, Программа, Программист, Процесс составления программы, Исполнитель Программ, Процесс выполнения программы,
-- на тему метафора "языка программирования", то есть каковы договоренности (правила) по сокращению программы (подпрограмма и цикл N раз), о которых должны договориться Программист (тот, кто составляет программу) и Исполнитель программ (тот, кто программу выполняет)
-- простейшая математика, связанная с управлением и счетом: до стены Робот сделал 5 шагов, сколько шагов ему нужно сделать, чтобы вернуться (это, согласно Пиаже, доступно детям возраста 6+ лет, но может быть недоступно в возрасте 4 года)

Справедлива мысль, что если по завершении курса ребенок не научился решать 80 задачек, то вряд ли можно считать, что ребенок вообще чему-то научился.

Однако, как нам кажется, распространено заблуждение, что верно и обратное. Что, якобы, достаточно научить ребенка решать содержательные задачи, и это автоматически даст ребенку внутреннее понимание метафоры программного управления и метафоры языка программирования, так и умение про это РАЗГОВАРИВАТЬ и ДУМАТЬ. По нашему опыту это не так.
Мне кажется, что в части системного мышления всё то же самое. Когда люди каким-то чудом нахватываются системного мышления от своего окружения (советская школа инженерии на этом построена -- живи рядом с умными людьми и нахватывайся опыта), то это полдела. Нужно вдвое больше времени, чтобы получить возможность разговаривать и думать о своём (и чужом) системном мышлении.

Так что образование должно быть устроено так:
-- экономим время, разъясняя и упражняя элементарные шаги мышления, отдельные мышлемы. Напомню, на чём экономится время: по словам Елены Мычко и др. (http://litru.ru/book/?p=386974&page=12 -- Поведение собаки), "

По-настоящему умные собаки часто оказываются более самостоятельными и не всегда склонны беспрекословно выполнять волю дрессировщика. Такие собаки молниеносно усваивают навыки, смысл которых им понятен, и легко воспринимают команду: она может произноситься с любой интонацией, громкостью. Но если подобная собака не видит смысла в действии, то образование навыка будет очень сложным. Поэтому если собака плохо поддается дрессировке классическими методами, то обвинять ее в глупости преждевременно. Подчеркнем одну особенность обучения. В принципе скорость выработки простого условного рефлекса у всех позвоночных животных (от золотой рыбки до шимпанзе) не различается и рефлекс закрепляется после 12–14 предъявлений. Однако те навыки, которые мы вырабатываем у собак, достаточно сложны и требуют понимания смысла поставленной задачи, т. е. применения рассудочной деятельности. Когда смысл ясен и результат действия собаке приятен, навык вырабатывается практически мгновенно, если же собака не понимает задачи, то на выработку навыка требуются те самые классические 12–14, а то и более предъявлений. Игнорирование важности использования рассудочной деятельности при обучении сложным навыкам является большой ошибкой". Понимание осмысленности каждого получаемого навыка позволяет уменьшить количество упражнений для тренинга навыка. Время экономится.
-- всё сэкономленное время тратим на то, чтобы навык был понят, осознан, отрефлектирован, закреплён в мышлении, мог обсуждаться. Это займёт столько же, сколько "просто научить". Только после этого можно считать, что материал "понят".

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

UPDATE: обсуждение этого поста есть ещё и в https://www.facebook.com/ailevenchuk/posts/10207758040563046

2019

Трёхрукий барабанщик

"Флаг ему в руки и барабан на шею" не будет противоречивой поговоркой: и флаг будет чем держать, и для барабана запас рук останется. Вот вам трёхрукий барабанщик: http://qz.com/619823/drummers-rejoice-theres-now-a-robot-arm-for-three-handed-drumming/ (и там внутри два видео). Сделать третью добавочную руку, похоже, сложней, чем заменить родные руки на автоматическую драм-машину вообще без человека.

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

Вот одно из этих видео, полюбуйтесь (https://youtu.be/fKryPingtww):


Когда через годик-два услышите поговорку про "как собаке пятая нога", то помните: в каждой шутке есть только доля шутки. И сама собака непонятно ещё, к чему пришита, мясных она или кремниевых пород -- это тоже нужно будет уточнять. И пятая нога для шестиногой собаки может очень даже нужна будет. Или вообще это будет кентавр -- у кентавра-то шесть конечностей, и все при деле.
2019

Дрессировщики нейронных сетей

Я уже много раз говорил, что не верю, что нейросетки будут заниматься обычной логикой -- это энергетически неэффективно и медленно. Это нужно делать на традиционных архитектурах (а хоть и фон Неймановских). Как я понял, Karpathy тоже не верит в логику-на-нейронах. Он опубликовал несколько дней назад фантастический рассказ (http://karpathy.github.io/2015/11/14/ai/), где подробно прописал натаскивание (там оно называется shaping -- учтите, что в психологии и биологии shaping это "формирование навыка" или "формирование условных рефлексов") полуавтономного робот-агента-на-нейронных-сетях. Для меня главная там фраза --
Collapse )

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

Комментарии к рассказу тоже доставляют -- там прямо сравнивают shaping с дрессировкой собак с кликером. Я бы рекомендовал дрессировщикам нейронных сетей читать Карен Прайор "Не рычите на собаку" -- http://lib.ru/DPEOPLE/nerychite.txt (у неё и другие книжки есть, в том числе и прямо про дрессировку с кликером -- http://www.koob.ru/pryor/).

А если кто-то хочет ещё подобной "современнотехнологической" фантастики, то Майкрософт вдохновила нескольких писателей, пригласив их в свои лаборатории -- и сегодня опубликовала сборничек коротких рассказов: http://www.theverge.com/2015/11/17/9752138/microsoft-sci-fi-anthology-future-visions

А у Intel научно-фантастический проект тут: http://tomorrow-projects.com/
2019

Системные координаты: увы, их много.

Когда лягушка сказала "X=10" во вселенной систем, как понять -- о чём это она? Для этого нужно:
1. узнать уровень целевой системы в системной холархии: к какой части какой системы относится это высказывание?
2. понять модальность высказывания (она верит, что X=10, или что X=10 просто существует, или X обязан быть 10, или X просто когда-то был или потом будет 10?)
3. понять, о какой стадии жизненного цикла идёт речь, к какой практике относится X.
4. понять, о каком моменте в проекте идёт речь, к какой задаче и какому времени относится это высказывание
5. разобраться, о компоненте или модуле, или месте в пространстве, или ещё о каком именно системном объекте идёт речь, для этого
6. понять интерес (concern) лягушки, не будет же она квакать просто так! Кто такая лягушка, разбирается ли она в X и его значениях? Что ей должно быть надо как стейкхолдеру (грубо говоря: "сколько стоит X? -- а мы покупаем или продаём")? А как какой стейкхолдер она вдруг сказала про этот X, не заговорила ли лягушка из совершенно другой роли, нежели от неё ожидается в проекте?
N. ... там ещё много всякого может быть, но для начала и этих шести пунктов хватит с головой.

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

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

Одновременно удерживать во внимании столько разных координат очень трудно, на это и нужны долгие тренировки. Но овчинка стоит выделки: системность мышления именно в этом. Системное мышление не талант, это вполне тренируемый навык. Хотя, конечно, к системному мышлению тоже может быть талант, чего уж там. Но как обычно -- в мастерстве 30% таланта, 70% тренировки. И натренированный бесталанный может мыслить более системно, чем нетренированный талант. Регулярно с таким встречаюсь.
2019

Опора на события: глаз лягушки в моделировании предпринятий

Из чего состоит предпринятие? Если грубо и с минимумом деталей, то из команды, работы, технологии, которые реализуют возможность обеспечить стейкхолдерам определённое воплощение целевой системы(подробности такого рассмотрения в http://ailev.livejournal.com/1159110.html, а ещё больше подробностей в учебнике http://techinvestlab.ru/systems_engineering_thinking):
alphasengproj_rus

При моделировании предпринятия мы (в зависимости от превалирующего интереса к технологии, работе или команде) можем выбрать три различных подхода к описанию его деятельности, с акцентами на:
-- метод/технологии деятельности,
-- на выполняемые работы
-- договорённости о разделении труда в команде

Эти же три варианта в Cordys (2008), "Response from Cordys to the OMG Dynamic Business Activity Modeling RFI" называют
-- artifact-based (поскольку альфы/рабочие продукты важны для описания практик),
-- activity-based (процесс или проект как последовательность работ),
-- communication-based (коммуникация о поручениях работы между членами команды).

Wang, J., et al. (2005), "A framework for Document-Driven Workflow System" эти же три варианта называют
-- information-based (поскольку не на заводах рабочие продукты в основном это информационные объекты),
-- process-based (развёртка во времени, последовательность работ),
-- organization-based (полномочия членов команды, разделение труда -- это и есть суть организации, пример такого подхода DEMO, http://ailev.livejournal.com/644440.html).

Системный подход говорит, что нам потребуется отмоделировать и практики, и процессы, и команду. Но с чего начать? Что взять за основу? Практики/технологию, процессы/проекты, или команду/оргструктуру?

Мы рекомендуем за основу брать описание практик, следование которым в работе изменяет продукты. Удобней начинать описание практик с альф, а не с рабочих продуктов -- нас интересует в практике прежде всего описание дисциплины, предметной области, абстрагированное от рабочих продуктов. Хотя и технология тоже интересна, в этой части мы описываем какие рабочие продукты выражают альфу. Опора на дисциплину, а не сразу на технологию экономит мышление: по подсчётам команды Essence одна альфа в среднем выражается 6-10 рабочими продуктами!

Но деятельность не состоит только из рабочих продуктов! Деятельность-то разворачивается во времени, а это процессный аспект! Куда мы денем процессы при описании деятельности? Мы будем учитывать изменения продуктов во времени, но не как в процессном подходе -- не указанием последовательности работ. Это даст нам возможность выполнять работы не друг за дружкой в заранее запланированном порядке, а планируя эти работы в зависимости от ситуации (в том числе используя для ускорения планирования и уменьшения ошибок планирования и учёта выполнения планов информационные системы).

Мы учтём разворачивание деятельности по изменению продуктов во времени через описание смены их состояний -- нас интересуют события, происходящие с альфами.

Мы будем смотреть на предпринятие как лягушка: она видит хорошо только движущиеся предметы. Альфы/продукты увидеть трудно, но легко заметить их важные изменения -- достижения ими каких-то состояний. Если начинать с хорошо заметных важных событий ("поверхность чиста", "деньги пришли", "команда сработалась"), то много легче затем выйти на полноценное моделирование всех других объектов. И это продукт-ориентированный подход, как ни странно.

Событие -- это вполне себе "продукт", это срез мира (или одного продукта, или группы продуктов) в момент изменения состояния. То есть событие это вещь/продукт/альфа/artifact, но в какой-то совершенно определённый момент времени -- момент, когда одно состояние сменилось другим (последний момент предыдущего состояния или первый момент следующего -- смотря как сформулировать). Состояние, конечно, должно быть таким, чтобы мы могли вполне определённо узнать о его смене. DEMO говорит об этом как о координационных фактах (смену состояния должен выразить стейкхолдер -- события "поручил", "обещал сделать", "сделал", "принял", "разрешил" и т.д.) и производственных фактах (изменение состояний продуктов).

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

В Essence альфы так и определяются: у них есть состояния, начинающиеся с событий их достижения ("Воплощение системы демонстрируемо: система собрана из её частей и готова к проверке", "Определение системы непротиворечиво: определение системы создано и непротиворечиво") и контрольные вопросы/checkpoints, которые определяют более мелкие детали состояний альф, начинающихся с событий их достижения ("Критические интерфейсы были продемонстрированы", "Описания проверяются").

В 4D онтологии мы могли бы говорить о событиях начала существования полных временнЫх частей экземпляров альф как функциональных индивидов (подробней про 4D см. в разделе "2. Формализмы системной инженерии", подраздел "3D и 4D" учебника http://techinvestlab.ru/systems_engineering_thinking, хотя OMG Essence не слишком чётко выдерживает классическое онтологическое рассмотрение).

В проектном управлении события -- это прежде всего контрольные точки, (вехи, milestones), характеризуемые желаемым состоянием продуктов на момент прохождения вехи. Вехи интересны тем, что в них интересуются не выполненными работами ("учил?!"), а достигнутым результатом ("выучил?!"). Гейты (gates, ворота) -- это те же контрольные точки/вехи, но недостижение результатов которых может остановить весь проект. Современные принципы lean уменьшают количество гейтов, но увеличивают количество вех -- по факту сколько запланировано работ, столько оказывается и вех: выполнение всех работ, причём "вовремя", контролируется.

В управлении делами (case management/issue tracking) главные события -- это открытие и закрытие дела (case, issue). Конечно, внутри может быть много других контрольных точек/событий (формальных типа "менеджер кейса назначен" или содержательных типа "баг воспроизводится").

В процессном управлении события тоже бывают, но чаще всего это просто "закончилась одна работа, начинается другая".

Так что опора на события позволяет нам через изменение состояний изменяемых нашими работами (или внешними силами) альф (продуктов) описывать деятельность на понятном для приверженцев других подходов языке -- языке контрольных точек проекта, событий процесса, состояний альф и чеклистов Essence, координационных и производственных фактах DEMO и т.д.

Опора в моделировании предпринятия на события может черпать полными ладошками из опыта моделирования при разработке софта. По большому счёту, для разработки софта требуется описывать модель использующей системы (а это часто означает моделирование деятельности/практики -- domain, предметной области), а не только модель целевой системы -- собственно программного средства. Ну, и ещё можно заметить, что программирование и моделирование вообще очень близкие деятельности, иногда до неразличимости (особенно, если людей и компьютеры обобщить под общим философским именем "агенты", но не будем тут подначивать гуманитариев).

Вот что даёт нам мировой опыт опоры на события, вот что нужно аккуратно переварить (в том числе перевести на русский, обобщить и как-то компактифицировать), а затем переложить в Соглашении о моделировании и использовать в работе:
позволяет нам немедленно воспользоваться всеми преимуществами популярных практик моделирования, которые пришли к нам из разработки программного обеспечения:
-- практика чеклистов (чеклисты это и есть списки ожидаемых событий!), в том числе чеклисты Essence.
-- практика контрольных точек в параллельной инженерии/concurrent engineering (например, у Airbus порядка 1000 контрольных точек верхнего уровня, и всего три гейта -- http://www.amazon.com/Commercial-Aircraft-Projects-Hans-Henrich-Altfeld/dp/0754677532). Хитрость в том, что все контрольные точки привязаны к структуре самолёта, к состоянию продукта! У российских атомщиков очень похожая методика планирования работ в строительстве (привязка контрольных точек к информационной модели) называется Multi-D. И она в свою очередь была подсмотрена на примере методики Toshiba 6D. В системной инженерии сейчас это общее место: формальная привязка контрольных точек activity-проекта к состоянию продукта.
-- DDD (domain-driven design, https://en.wikipedia.org/wiki/Domain-driven_design) в сочетании (http://www.infoq.com/news/2015/02/bdd-ddd) с BDD (behavior-driven development, http://dannorth.net/introducing-bdd/ и есть русский перевод http://habrahabr.ru/post/216923/).
-- выходящие в мейнстрим корпоративной работы с "процессами" (несмотря на весь шум с BPMN 2) -- https://en.wikipedia.org/wiki/Complex_event_processing и https://en.wikipedia.org/wiki/Event_correlation, тут можно вспомнить и о Business Rules (организационных нормах: http://ailev.livejournal.com/693597.html).
-- описанием сложных поведений через "машину состояний" (вот тут даже "программирование с явным выделением состояний" предлагается на роль "серебряной пули" -- http://is.ifmo.ru/works/mirk/, а вообще -- автоматное программирование, событийно-ориентированное программирование -- там много общего и для программирования и для моделирования деятельности).

Для наших целей интересно указать на вышедшую из DDD/BDD практику Event Storming (событийный штурм), предназначенную для скорейшего раскрытия структуры предметной области. Она заключается в том, что экспертов этой предметной области просят зафиксировать на стикерах основные события предметной области и операции (там их называют "приказы", Command -- выражение намерения стейкхолдеров), приводящие к этим событиям. Плюс выделяются какие-то части системы (Aggregates, "агрегаты"), которые получают команды и производят события -- http://ziobrando.blogspot.ru/2013/11/introducing-event-storming.html#.VaVs25fp_Nw, http://ziobrando.blogspot.ru/2014/06/eventstorming-recipes.html#.VaVtjJfp_Nw, http://www.ebookxp.org/verraes.net/2015/05/towards-modelling-processes/?b=4

Помним, что несмотря на всю кажущуюся процессно-ориентированность Event Storming (как части DDD), там опора на продукты/альфы предметной области -- ибо события прежде всего выражают изменение состояния мира, изменение состояния вещей, четырёхмерных индивидов.

Как проявляется событийность в ArchiMate? Понятно, что там впрямую есть элемент Event (событие), но в ArchiMate это не столько состояние объекта, сколько "почти процесс" (activity, не object и не subject)! Как я понимаю, это сделано для облегчения показа запуска процесса каким-то событием (ибо запустить/trigger процесс или практику объектом там нельзя, у объекта в ArchiMate нет состояния. А процессы влёгкую запускают друг друга, их окончание "неявное событие", невзирая на неопределённость и неназванность состояния мира, к которому процессы привели).

Можно, конечно, ещё спекулировать что в ArchiMate motivation extension выставление Оценки это тоже событие, а Цель -- это Приказ, выражающий намерение по реализации фрагмента архитектуры. Если Приказ не провалился (в DDD/BDD один из важных моментов -- это анализ рисков, почему Приказ может провалиться, какие события к этому могут привести), то должно пройти изменение оценки в соответствии с Целью. Оценка "мы не растём" (похоже на событие по формулировке, хотя и не привязано к изменению ситуации), цель/контрольная точка (SMART) "Вырасти вдвое к Новому Году" (желаемое событие -- "выросли вдвое" на момент "Новый Год". Теперь можно мерять не "процесс вырастания", а сам рост -- и для начала придётся точно определить, что именно должно вырасти, чтобы было событие. Думать не процессами, а вещами/продуктами/альфами/артефактами/объектами и отслеживать контрольные точки -- смены их состояний).

Итого: начинайте моделировать деятельность не с операций. Начинайте с событий -- именно к ним приводят (или от них уводят) самые разные операции самых разных практик, а происходят они с альфами/продуктами, это замаскированные альфы/продукты. Хотите вы, или не хотите, а для формулирования события вам придётся найти и назвать альфу/продукт, который меняет состояние. Планируются же события как чеклисты (к продуктам) и контрольные точки (состояния продуктов в проектах).
2019

Физика процессов эволюции и deep learning

Глубокое обучение, как становится очевидным, эксплуатирует физику процессов эволюции -- ту же самую, что рулит установлением равновесия в спиновых стёклах и рулит сворачиванием белков в четвертичную структуру.

Ещё в 2001 году на русский перевели с немецкого книжку 1990 года Von Werner Ebeling, Andreas Engel und Rainer Feister "Physik der Vojutionsprozesse", "Физика процессов эволюции", в которой процессы ассоциативной памяти уподоблялись процессам в спиновых стёклах -- вся книжка тут: http://www.klex.ru/5c1. Но и в этой книжке ссылаются на более ранние первоисточники: "Если мы хотим, исходя из самых общих представлений, провести исследования ассоциативной памяти, то нам необходима какая-то конкретная модель, которая с одной стороны допускала бы подробный математический анализ, а с другой стороны позволяла бы воспроизводить как можно больше известных явлений из области биологии и психологии. Одна из таких моделей была предложена в 1982г. Дж.Дж.Хопфилдом ... Мостик к спиновым стёклам возникает прежде всего в силу мультимодальности функции Гамильтона спинового стекла и чётко выраженному бистабильному характеру нейронов. Нейроны могут находиться в двух различных состояниях -- в активном состоянии и в состоянии покоя, которые могут быть сопоставлены спиновой переменной Изинга" (страничка с этой цитатой есть в сети: http://www.ngpedia.ru/cgi-bin/getpage.exe?cn=144&uid=0.398179490119219&inte=9).

И действительно, вот работа 1982 года J. J. Hopfield, ``Neural networks and physical systems with emergent collective computational abilities'', Proc. Natl. Acad. Sci. USA 79, 2554 (1982) -- в лекции 2004 года "Spin Glasses and the Hopfield Content Addressable Memory" (http://ecee.colorado.edu/~ecen4831/hoplecs/hoplec1.html).

Так что LeCun сотоварищи, когда пишут "We study the connection between the highly non-convex loss function of a simple model of the fully-connected feed-forward neural network and the Hamiltonian of the spherical spin-glass model" в http://arxiv.org/pdf/1412.0233.pdf и говорит там, что связь спиновых стёкол и нейронных сетей прослеживается с 1985 года, промахивается года на три. Впрочем, это уже не важно: интернетов тогда не было, компьютеры были полудохлыми и все эти рассуждения были глубоко умозрительными. Сейчас просто предметная область оказалась неожиданно живой и многообещающей. И общность физики нейронных сетей и прочих механизмов глубогого обучения с рядом физических процессов выглядит крайне практичной.

Найдены и другие примеры похожих процессов. В 1985 году выходит книжка Spin Glass Theory and Beyond (в серии World Scientific Lecture Notes in Physics -- http://www.worldscientific.com/worldscibooks/10.1142/0271), и прямо в аннотации говорится, что paying particular attention to new applications in the study of optimization theory and neural networks. Но кроме того там рассказывается о приложениях теории спиновых стёкол для сворачивания полимеров. В 1997 году выходит уже много работ, где сворачивание белков изучается по математике для спиновых стёкол (по-русски, например, http://ufn.ru/ufn97/ufn97_2/Russian/r972b.pdf по-английски http://lfp.qb.fcen.uba.ar/embnet/references/frustra_ref1.pdf).

Чуть более попсово (только не обращайте внимания на историческую информацию, там корни значительно глубже, как можно посмотреть по приведённым мной ссылкам) про это рассказано в паре постов https://charlesmartin14.wordpress.com/2015/03/25/why-does-deep-learning-work/. А в посте https://charlesmartin14.wordpress.com/2015/04/01/why-deep-learning-works-ii-the-renormalization-group/ даются ссылки на ещё один раздел физики -- ренормализационная, позволяющая моделировать явления разных масштабов ( https://en.wikipedia.org/wiki/Renormalization_group, https://ru.wikipedia.org/wiki/Ренормализоационная_группа) -- "В так называемых перенормируемых теориях, система при одном масштабе, как правило, будет выглядеть составленной из самоподобных копий, если смотреть в меньшем масштабе, с другими параметрами, описывающими компоненты системы. Компоненты, или основные переменные могут быть связаны с атомами, элементарными частицами, атомными спинами и т. д. Параметры теории описывают взаимодействие компонентов. Это может быть переменные параметры связи, от которых зависит влияние различных сил или масс. Сами компоненты системы, может оказаться, состоят из таких же компонентов, но меньшего размера".

Почему это важно? Потому как в сворачивании белков есть https://en.wikipedia.org/wiki/Levinthal%27s_paradox -- если бы там всё было "чисто статистически", то белки бы не сворачивались за время жизни вселенной. Но они сворачиваются крайне быстро, и результат устойчив. То же самое относится к спиновым стёклам, к нейронным сетям: они не ведут себя чисто статистически, там не статистика, там другое -- эволюция, причём на каком-то более-менее однородном материале (на котором возникают разномасштабные явления).

Я тут уже писал много раз, что происходящее сейчас в deep learning подобно квантовой революции в физике сто лет назад, это существенное продвижение в понимании устройства мироздания. Мне кажется, что связь физики спиновых стёкол, сворачивания белков, нейронных сетей и математики эволюции ещё себя проявит. Вопрос "почему так хорошо работают нейронные сетки" становится эквивалентным вопросу "почему так хорошо работает эволюция". И это вопрос о физичности эволюции, понимании её природы, моделировании -- и затем переходу к инженерной постановке вопроса, к использованию моделей для инженерии эволюции. Так что про нейронные сетки (спиновые стёкла, сворачивание белков, физику землетрясений и месторождений) пишем, а эволюцию держим в уме.
2019

Робопёс готов

Bostons Dynamics порадовала очередным видео механической собачки, её теперь зовут Spot (http://youtu.be/M8YjvHYbZ9w):


Если его смотреть внимательно, то прогресс виден невооружённым глазом (http://gizmodo.com/spot-is-a-smaller-more-kickable-version-of-boston-d-1684749999):


Становится хорошо понятно, что прогресс роботов -- это прогресс их энергетических установок, а не только прогресс мозгов и софта.

Как я понимаю, приносить тапки такая собачка сможет уже очень скоро. Напомню, как это было пару лет назад (http://youtu.be/2jvLalY6ubc):


UPDATE: Комментаторам: помним, что это не BigDog для военных, а Spot. Google (после того, как Boston Dynamics была им куплена) делал заявления, что по текущим военным преференциальным контрактам честно дорабатывает до конца, но новых контрактов на особых условиях уже не заключает (но явно не будет возражать, если военные у него купять что-нибудь гражданское "с рынка"). Так что тут вполне могут идти эксперименты уже по гражданским, а не военным применениям. Так что не нужно "подтаскивать оружие". Дроны тоже могут пиццу доставлять на дом, а могут гранаты закидывать в окна -- но это не повод обсуждать только дронов для гранат, а не для пиццы.