December 21st, 2017

2019

Январь-февраль 2018 в Школе системного менеджмента

В январе-феврале 2018 мы существенно продвинемся в реализации планов Школы https://ailev.livejournal.com/1388181.html, воплощая описанный в https://ailev.livejournal.com/1390318.html подход к личному и профессиональному развитию. В программе у нас современное базовое образование: учим пользоваться полным спектром мышления от интуитивного через вероятностное до формального, мыслить системно, уметь управлять работами, стратегировать и быть лидером в организационных изменениях. А ещё в новом году мы поможем шевелить не только мозгом, но и телом.

Все программы в расписании тут: http://system-school.ru/

13-14 января 2018 два дня базового курса "Системный подход в менеджменте и инженерии", читает Церен Церенов -- http://system-school.ru/event/bazovy-kurs-sistemny-podhod-v-menedzhmente-i-inzhenerii-2018-01-13/. По содержанию это примерно совпадает с первыми двумя днями моего шестидневного курса, и примерно соответствует новому учебнику. Но если у меня до сих пор была главная задача не столько "доходчиво объяснить", но "собрать весь state-of-the-art системного мышления в одном месте", то у Церен начинает уже с собранного, и его главная задача в курсе -- "упростить объяснение". Получился короткий и простой крэш-курс для тех, кто абстрактно интересуется системным мышлением, но ещё не принял решение, стоит ли тратить на этот навык много своего времени.

Во всех других курсах мы считаем, что решение по затратам времени уже принято: наши основные курсы по большей части обзорны и переводят курсантов в состояние "осознанной некомпетентности" в части state-of-the-art по тренируемым дисциплинам. Дальше мы надеемся на их тяжёлую домашнюю работу по освоению материала курса, ибо даваемый за день материал нужно пережёвывать потом месяц. За два дня системным мыслителем, менеджером и лидером не станешь. А вот за год с учётом знакомства с рекомендованной литературой и общения в кругу сообщества Школы (https://www.facebook.com/groups/234341783638239/ -- участниками там только выпускники наших курсов, для них там ходят закрытые материалы) происходят уже серьёзные сдвиги в мышлении, появляется беглость в деятельностных навыках.

18 января 2018 двухчасовой семинар-анонс по новому курсу системного развития личности: четырёхдневному тренингу двигательного фитнеса http://system-school.ru/event/seminar-soobshtestva-shkol-2018-01-18/. Делать этот анонс будет Антон Климат. А сам курс начнётся уже в феврале (см. подробности ниже).

21 января 2018 начинается последний (девятый!) поток моего классического шестидневного курса "Системный менеджмент и стратегирование", дальше занятия будут 4 и 18 февраля, 4 и 18 марта, 1 апреля 2018 -- http://system-school.ru/event/kurs-treningov-sistemny-menedzhment-i-strategirovanie-2018-01-21/ (торопитесь, там с 24 декабря очередное повышение цены). В курсе даётся "по тяжёлой" системное мышление, подход к операционному менеджменту, подходы к организационному развитию и стратегированию. Больше я не буду делать тренинг в этом классическом шестидневном формате. Вместо него я планирую сделать четырёхдневный углублённый системного мышления, и отдельно -- тренинги по управлению работами, корпоративному развитию и стратегированию.

26 января 2018 семинар-анонс курса "Как пользоваться полным спектром мышления: от интуитивного через вероятностное до формального" -- http://system-school.ru/event/seminar-soobshtestva-shkol-kak-polyzovatysya-spektrom-mshleniya-vo-vsm-diapazone-ot-intuitivnogo-do-formalynogo-2018-01-26/, сделает его Пион Гайбарян (о прошлом подобном мероприятии я писал в "Ментальный фитнес" https://ailev.livejournal.com/1389119.html. И если всё пойдёт хорошо, то курс по логическим основаниям системного мышления мы запустим уже в конце февраля. Я очень надеюсь, что этот курс поможет в разы быстрее и надёжней осваивать системное мышление, это явно недостающая ступенька на лестнице знаний -- прыгнуть с уровня "обычного высшего образования" на уровень системного мышления оказывается трудно, нужна промежуточная опора.

3-4 февраля -- очередной поток базового курса "Системный подход в менеджменте и инженерии", http://system-school.ru/event/bazovy-kurs-sistemny-podhod-v-menedzhmente-i-inzhenerii-2018-02-03/

10-11 февраля 2018 состоится второй поток двухдневного курса "Основы системного лидерства", ведёт его Александр Турханов -- http://system-school.ru/event/kurs-osnov-sistemnogo-liderstva-2018-02-10/. Это отличное продолжение образования по линии системного менеджмента, но на него нельзя прийти просто "с улицы", нужно уже как-то быть знакомым с системным мышлением. Именно за счёт этого за два дня удаётся дать невероятное количество материала. Мало кто понимает, что нужно делать, чтобы организация работала как система: люди, назначенные на определенные роли, с интересом с ними справлялись. Что привносит лидер в организацию совместной работы и чем его роль отличается от роли менеджера и от других ролей в компании? Может ли быть лидерство без лидера, и нужно ли такое лидерство специально организовывать?

17 февраля начнётся первый поток четырёхдневного "Двигательного фитнеса", дальше занятия будут 24 февраля, 3 и 10 марта -- http://system-school.ru/event/kurs-sistemny-fitness-2018-02-17/. Вести курс будет Антон Климат, танцующий директор школы чемпионов брейк-данса «Волнорез», в танцах с 1993 года, в преподавании с 1998 года. Я разделил "в теории" универсальную подготовку тела к движению и прикладной тренинг в избранном двигательном стиле ещё в феврале 2017, в тексте про танцевальное мышление (http://ailev.livejournal.com/1332624.html). И вот через год из этой идеи получилась уникальная практическая учебная программа (https://ailev.livejournal.com/1388588.html), причём какие-то её фрагменты были уже частично опробованы Антоном на своих мероприятиях (я и сам в некоторых из них участвовал) -- с неизменно превосходным результатом. Мы представляем этот тренинг примерно по такому же шаблону, что и все наши другие тренинги: идёт презентация материала, курсанты переходят в состояние "осознанной некомпетентности", после чего ожидается их индивидуальная работа над домашними заданиями. Как и мозг, тело тоже требует времени для перестройки своей работы. Ну, и в данном тренинге перестраивать придётся тоже не только тело, но и мозг. Я вот по этой программе уже иду некоторое время, и люди начали замечать изменения в моей осанке -- но это точно, меняется не столько моё тело, сколько моё понимание, что с ним нужно делать. Проблема в том, что "понимание из книжки" тут не работает, нужно "понимание изнутри" (какие ощущения у меня должны быть при правильно простроенном теле), вот с этим был затык. Разгибатели и сгибатели должны прекратить работать одновременно, друг против друга, на каждое усилие одних мышц должно быть расслабление других -- и вот это, оказывается, можно и нужно выводить на осознанность и тренировать. А главная фишка -- режим "подтянутости", про который я многократно за свою жизнь слышал, но понятия не имел, как его достичь и насколько общее это понятие не только для корпуса, но и для ног-рук. В курсе же будет подробное разъяснение, в том числе в приложении к взаимодействию в паре (единоборств или танцев это уж всё равно, принцип универсальный).

25 февраля стартует практикум по системным инновациям. Это будет ещё одна новинка программы.

И это только первые два месяца. Год обещает быть интересным.
2019

Заметки к тренингу двигательного фитнеса

Запись на четырёхдневный курс двигательного фитнеса Антона Климата уже открыта -- http://system-school.ru/event/kurs-dvigatelnyi-fitness-2018-02-17/, а для выпускников школы ещё и будет ознакомительный семинар-анонс http://system-school.ru/event/seminar-soobshtestva-shkol-2018-01-18/. Поскольку я по факту прохожу этот курс с февраля в неспешливом режиме двух часов в неделю, а сам являюсь ходячей демонстрацией эффективности этого тренинга, у меня накопилось некоторое число заметок в помощь тем, кто только займётся этим двигательным фитнесом.

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

2. Хинт всего этого тренинга, что не нужно напрягаться. Если у тебя есть запас силы (а эту силу легко подкачать. Подкачать силу легко!), то все движения выполняются на-ура, но при одном условии: ты сознательно выключаешь все остальные мышцы. А вот это запредельно трудно! Во-первых, ты эти мышцы должен почувствовать (а они часто в полуметре от того места, к которому у тебя приковано внимание), во-вторых сознательно расслабить. Работать нежно и расслабленно, а не напрягаться -- это в тренинге самое трудное. "Постараться" в тренинге означает "мягче", это мозг понимает хуже всего. Если тебе предлагают "выпрямиться", то отрабатывать нужно не натужно выпрямляясь, а отключая все препятствия для выпрямления -- то есть тщательно расслабляясь. И ты тут же выпрямляешься, добавляешь в росте сантиметров пять (это традиционная демонстрация на занятии -- под вопли "вау!" от всех наблюдающих за процессом).

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

4. Овердоз натяжения тела тоже вреден. Когда ты научился немного натягиваться -- это круто, это сразу даёт тебе качество небытового, профессионального движения. Для меня сферой приложения являются танцы, так это сразу дало крутую рамку, небанальный основной шаг. От мягкости или деревянности (у кого как) ты переходишь к упругости. А вот дальше ты тренируешь это натяжение, и вместо "сверхупругости" вдруг получаешь звенящую от жёсткости конструкцию: не деревянность, а металл! И нужно умерять пыл, "чуть-чуть", "незаметно", "легко" становится основным режимом движения. Вот эта "минимальность усилия" даётся огромным мозговым трудом. "Стараться не стараться" -- это самое трудное.

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

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

7. Конечно, нужно хотя бы час в день двигаться, чтобы с телом что-то происходило. Пластичность мозга проявляется через месяцы практики, ибо клетки растут медленно. С телом то же самое: клетки тела растут медленно, да ещё и курс оказывается курсом для мозга, а там та самая пластичность: мозг нужно тоже тренировать долго. Поэтому количество происходящих с телом чудес будет прямо пропорционально уделяемому времени. Один час раз в месяц не дадут ничего, раз в день пять минут тоже не дадут ничего. А вот час в день на год-другой дадут много. Я в этом плане сачок, как и все. Тут ведь время нужно делить между целевой двигательной практикой (бег, прыг, танцы, драки) и двигательным фитнесом. И целевая практика, конечно, в сознании побеждает. Мне интересней и проще кизомбу час потанцевать деревяшка-деревяшкой, чем, например, этот же час безо всяких танцев поработать с мышцами таза или шеи и потом танцевать ту же кизомбу более пластично. Хотя я таки выбираю время и работать с мышцами таза, и работать с мышцами шеи, поэтому моя кизомба за год и четыре месяца (с учётом моего возраста и начальных менее чем нулевых телесных кондиций!) сильно круче, чем она была бы без этого. Управление временем и приоретизация хотелок -- это к Дорофееву, http://mnogosdelal.ru/.

8. Связь с целевой практикой (успехами в танцах, спорте, единоборствах) абсолютно неочевидна, и её нужно прояснить отдельно. Я разделение между двигательным фитнесом и тренингом стилевого движка прописывал в "холархии человеческого движения" https://ailev.livejournal.com/1371120.html, но не так уж подробно. Курс двигательного фитнеса даёт прежде всего скорость овладения стилевым движком в избранном прикладном виде человеческого движения:
-- чёткое понимание того, что хочет "прикладной" тренер твоего стиля, особенно когда то, что тренер говорит не совпадает с тем, что тренер показывает -- ты начинаешь это буквально видеть. Я сейчас регулярно рассказываю ученикам то, что от них хочет тот или иной преподаватель танцев более доходчиво, чем это делает сам преподаватель. Ведомость партнёрши в том же урбан кизе поднимается в разы от буквально одного занятия. За счёт чего в спортивных единоборствах партнёр выводится из равновесия, тоже объясняется за десять минут и пару простых демонстраций. И если ты прошёл курс, то а) такое понимается на раз-два, б) после понимания есть шанс повторить сразу правильно.
-- специфическую мышечную координацию прикладного стиля всё одно придётся учить. Если ты не знаешь саиду в кизомбе, то её нужно будет выучить. Но делать ты её будешь не коряво, и сможешь провести партнёршу: за счёт осознанности происходящего в твоём теле и теле партнёрши. Броски в единоборствах тоже нужно будет выучить, но внимание сразу будет на нюансах, обучение займёт меньше времени: в многочисленных повторениях ты не будешь заучивать сначала неправильный вариант, а потом потихоньку исправлять ошибки. С первого раза правильно: сначала медленно, а потом быстрее и быстрее.
-- количество проблем из-за неадекватного двигательного фитнеса не осознаётся. Если ты не работал с балансами, то просто не понимаешь, что тебе этого не хватает. У тебя просто "не получается хорошо, не знаю что". А не получается, например, просто потому что неизбежное при любом движении "не упасть" тело компенсирует неправильным образом, и движение выходит неэстетичным. Или не получается красивый останов любого движения не только руки, но и ноги. Потому как ты не понимаешь, что останавливаются конечности обычно на поднатяге, а не на напряжении (если это, конечно, не какой-нибудь паппинг, на котором речь идёт о "специальном эффекте").
-- основная фишка ("уникальное торговое предложение") курса в том, что тебя учат работать не только с "напряжением" и "расслаблением", но и тем самым "поднатягом" -- это абсолютно небытовой аспект. В жизни в естественном виде встречается в утреннем потягивании, да и только. И вот "красивое" и "техничное" движение оказываются по факту с существенной долей этого прокачанного потягивания. Кто бы мог подумать! Проблема только в том, что это потягивание нужно научиться делать, отключая основной мышечный панцирь, добиваясь лёгкости и воздушности. Но оно того стоит.
-- осанка и эстетичные позы тут просто бонус. Все позы всё одно не запомнишь, осанку для каждого положения тела не выучишь. Поэтому в двигательных практиках приложение просто принципов минимального усилия с прокачанной и растянутой глубокой мускулатурой даёт бонус эстетичности.

Напомню ещё, что весной удалось записать и рассказ про основные принципы тренинга самого Климата на нашей конференции по системному менеджменту: http://ailev.livejournal.com/1341660.html
2019

Таблетки для знаний: уже второй стандарт

Полку стандартов для обмена нейронными сетками прибыло, причём от разработчиков железа, и это NNEF, Neural Network Exchange Format -- https://www.khronos.org/nnef. Это добавочка к длинному ряду: Khronos standards include Vulkan®, OpenGL®, OpenGL® ES, OpenGL® SC, WebGL™, SPIR-V™, OpenCL™, SYCL™, OpenVX™, NNEF™, COLLADA™, OpenXR™ and glTF™.

Чётко даётся цель: перенос знаний между системами тренинга нейросеток и железом вывода, то есть речь идёт о выходных языках (буквально, NNEF сделан питоноподобным) оптимизаторов нейросеток типа TVM (http://tvmlang.org/) или TensoRT 3 (https://developer.nvidia.com/tensorrt):


Напомню, что до этого мы видели в этой сфере главным образом ONNX (http://onnx.ai/). И там те же члены, хотя их было и поменьше. Правда, NVIDIA в рабочей группе NNEF нет, но и в ONNX она появилась совсем недавно. Я думаю, и тут появится (NVIDIA член Khronos). Отличия более простого ONNX от более навороченного NNEF читать в https://www.khronos.org/blog/nnef-design-philosophy-network-structure-and-target-use-cases

Что дают все эти стандарты поддержки оптимизаторов? Например, дешевизну и скорость получающихся решений. Вот пример с TensorRT 3 на восьмибитном представлении (https://devblogs.nvidia.com/parallelforall/int8-inference-autonomous-vehicles-tensorrt/, INT8 inference with TensorRT improves inference throughput and latency by about 5x compared to the original network running in Caffe):


Это вполне может быть ещё не конец истории, я вот писал ещё пару лет назад, что нужно "думать о мощности аппроксимаций: переход к bitwise сеткам (начиная, например, с обзора в http://arxiv.org/abs/1603.01025 -- где обсуждаются пятибитные и трёхбитные логарифмические разрядные представления для весов и активаций в свёрточных сетях)". С восьмибитными представлениями уже промышленные решения, а вот пятибитные и трёхбитные представления ещё не появились, дальше можно только гадать -- появятся, или не появятся. Но инфраструктура для их возможного появления разрабатывается полным ходом, стандарты будут, дело только в реализациях.

Это только самое начало долгого стандартизационного пути, достаточно вспомнить "войны браузеров" и повспоминать историю HTML -- https://en.wikipedia.org/wiki/HTML, но ещё лучше VRML -- https://en.wikipedia.org/wiki/VRML (и поглядите, чем оно там закончилось, если закончилось). Большие инфраструктуры обеспечивают именно стандарты. Как только удаётся сформулировать хороший платформенный стандарт, так тут же появляется массовость приложений. Появление нейросетевого стандарта -- верный признак перехода к массовым применениям. Нейровеб приходит, но (как обычно) совсем не так, как его ждали. Не могу не вспомнить тут о других стандартах нейросетей -- прежде всего https://www.neuroml.org/ и http://neuralensemble.org/PyNN/ (где тот же Питон в основе). Вот я писал в 2014 году про моделирование нейронов червя с его использованием: https://www.neuroml.org/.
2019

Искажения и политики

Bias это искажённая оценка распределения вероятностей (https://en.wikipedia.org/wiki/Bias_(disambiguation). Policy же про выбор действия.

The agent's action selection is modeled as a map called policy:
The policy map gives the probability of taking action a when in state s.

Это из https://en.wikipedia.org/wiki/Reinforcement_learning

Поэтому bias может быть и для policy, и для всякого другого.

Презумпции -- это обычно запланированные специально bias (например, для уменьшения ошибки каких-нибудь false positive в судах). Ну, или презумпции могут быть неосознаваемые, тогда они просто cognitive biases (https://en.wikipedia.org/wiki/List_of_cognitive_biases).

Это я просто сегодня в комментах третий раз за пару недель запостил (то про выбор действия говорят "рациональность", то про bias "политика"), решил уж сразу пост сделать, чтобы легче было цитировать.
2019

Эра глубокой нейроэволюции, с 2017

Команда искусственного интеллекта Uber опубликовала в этот понедельник пять работ, в которых они наезжают на классический stochastic gradient descent (SGD) в глубоком обучении и провозглашают начало эры глубокой нейроэволюции, хотя и с некоторыми оговорками -- https://eng.uber.com/deep-neuroevolution/ (и там в конце аннотирующего текста ссылки в arxiv на все пять работ).

Тут можно было бы похихикать над наглостью выскочек из Uber, но закопёрщиком там Kenneth O. Stanley, о работах которого я пишу регулярно (вот, например, в марте 2016 я поминал его книжку про мифы целеполагания http://ailev.livejournal.com/1250672.html, и даже написал пост "против целей" https://ailev.livejournal.com/1254147.html. А уже в мае 2017 я писал (https://ailev.livejournal.com/1266061.html): " Из интереснейших новостей использование эволюционного поиска вместо SGD для обучения нейросетей, это работа того же Stanley, который написал книжку против целей -- http://eplex.cs.ucf.edu/publications/2016/morse-gecco16, "these initial results suggest the possibility that EAs could be the first viable training alternative for deep learning outside of SGD, thereby opening up deep learning to all the tools of evolutionary computation". Круто, нет?". Ага, так и оказалось: круто!

Текст нужно читать внимательно, там много интересного. Вот только несколько мыслей:
-- нейроэволюция принципиально масштабируется лучше, чем классический deep learning, потому как лучше параллелится. Поэтому отмахнуться от неё нельзя, и чем сложней для классического deep learning задачи, тем внимательней нужно будет к ней относиться.
-- старых алгоритмов в самых разных "многообещающих областях" уже наработано мама не горюй. Всё, что нужно добавить, чтобы они оказались рабочими -- вычислительной мощности. То есть берём GPU и начинаем очередную "новую эру", как это начали с deep learning в 2011 и в 2017 с deep neuroevolution. Хотя опубликованные работы таки предложили алгоритмические новинки, но суть не в них.
-- всякие поиски в пространствах многих размерностей вести даже легче, чем в пространствах малых размерностей, ибо не попадаешь в локальные минимумы. То есть "сложней даже легче", но только если хватает вычислительной мощности. И вообще, всякие выводы про глубокое обучение и магические свойства "чего ж оно так хорошо работает" вполне распространяются и на deep neuroevolution.
-- следующее, чего можно ожидать -- так это слияние байесовщины и глубокой нейроэволюции, примерно так же, как оно происходит в deep learning.
-- поскольку теорему отсутствия бесплатных обедов никто не отменял, для нейроэволюции всегда найдутся задачи, которые она решит лучше классического deep learning с SGD не столько за счёт возможности бОльшей параллельности и поэтому более короткого времени вычислений, сколько за счёт просто другого поведения алгоритмов поиска максимума в многомерном пространстве. Впрочем, и обратное тоже верно, кое-что будет решать попроще с SGD. Так что вопрос кто кого сборет -- слон или кит -- остаётся принципиально неотвеченным.

Аппаратура ускорения вычислений для глубокой нейроэволюции и классического глубокого обучения может оказаться существенно разной. Так что 2018 год будет очень, очень любопытным. Никто никуда ещё не опоздал, всё самое интересное только начинается -- кто был никем, тот ещё вполне может стать всем. Берите все подряд алгоритмы поиска, перекладывайте на GPU и напускайте на нейросети -- и будет вам счастье. Алгоритмов-то до чёртиков, и на каждый частный случай нужен будет какой-то свой вариант. Как с дифурами, где главная проблема как раз разнообразие способов их решения для хитрых случаев. И делать (например, на Julia) фреймворк для мультиразмерного поиска, типа фреймворков для дифуров -- http://www.stochasticlifestyle.com/comparison-differential-equation-solver-suites-matlab-r-julia-python-c-fortran/