?

Log in

Лабораторный журнал
 
[Most Recent Entries] [Calendar View] [Friends]

Below are the 20 most recent journal entries recorded in Anatoly Levenchuk's LiveJournal:

[ << Previous 20 ]
Saturday, June 25th, 2016
4:05 pm
Второй круглый стол по образованию -- доклад К.Зискина
Это продолжение моих заметок (с упором на мои мысли, а не мысли докладчиков) со второго круглого стола по образованию, первая половина заметок (про доклад О.Генисаретского) тут: http://ailev.livejournal.com/1272745.html

Вторым докладчиком выступал К.Зискин (директор Высшей школы образования и когнитивных исследований МПГУ), и он рассказал печальную историческую картину теории педагогики: исследования по факту велись в двух странах: России и Германии. В России в 17 году произошло ой-ой, а в Германии примерно то же в 30-х годах, и всё в части исследований сдохло -- педагогика безо всяких исследований в варианте конца 19 века была поставлена на службу соответствующим режимам, а потом так ничего и не поднялось. В остальных странах ничего и не было, и не появилось существенного, нового дискурса нет, новых концептов нет Итого: сегодня фундаментальных оснований и прикладных вопросов в педагогике нет, то есть нет трансдисциплинарной практики как таковой. Например, нет представлений об оценке -- нет теорий, нет природных закономерностей, ничего. Нет эмпирики, ибо нет проверяемых теорий.

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

При этом педагогика не наука: она нормативна, чем-то инженерна по природе своей. То есть она научна и не научна. На этом месте я вспомнил вечный флейм по поводу научности и ненаучности инженерии (у меня в учебнике системноинженерного мышления есть целый раздел "инженерия и наука" с подразделами "инженерия научна" и "инженерия не научна" -- http://techinvestlab.ru/systems_engineering_thinking), такая же судьба и у педагогики. И даже если вспомнить, что Генисаретский в предыдущем докладе предложил положить в основание не паноптикум разных дисциплин, а психологию с возвращённой в неё душой, можно условно выдвинуть слоган "Педагогика -- это инженерия души".

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

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

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

Тут нужно быть внимательным: системная химия и системная биология системны не так, как системная инженерия. Понятно, что системный подход в голове и у системного химика, и у системного биолога, но они предметны, монодисциплинарны (даже с учётом разбиения на поддисциплины) -- а системный инженер не предметен в традиционном понятии слова "предмет". Я сам предпринял попытку сформулировать предмет системной информатики (http://ailev.livejournal.com/1272169.html) по тому же предметному монодисциплинарному образцу, что и системная химия и биология. Если в основание положить психологию с возвёрнутой туда душой (по О.Генисаретскому), то системная педагогика тоже будет "системным предметом". А если пойти по указываемой К.Зискиным линии -- системным над-предметом (или меж-предметом), некоторой меж/трансдисциплинарной сферой.

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

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

Опять же: если непонятно, что предмет педагогики, то и непонятно как замерять результат, непонятно как отличать хороших педагогов от плохих -- и в этом с инженерией огромная разница. В инженерии успешная система это которая удовлетворяет всех стейкхолдеров проекта. В педагогике успешный ученик -- это что, который удовлетворяет всех стейкхолдеров проекта?! Нонсенс! Тем самым системная педагогика существенно отличается от системной инженерии -- невзирая на то, что системные инженеры стремительно движутся им навстречу и не гнушаются уже работать с системами с включаемыми в их состав людьми, системами систем (которые выделяются по социоэкономическому отношению владения, а не чисто технологически) и даже обучаемыми/выращиваемыми, а не проектируемыми/собирающимися из деталей системами. Цели, ценности, требования -- и чьи они, и каковы интересы каких стейкхолдеров -- в инженерии и в педагогике это будет сильно различаться. Нет, я не призываю читать Ницше (хотя на круглом столе его и помянули в этой связи).

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

Тем не менее, параллелей у системной педагогики с системной инженерией может найтись множество: и привнесение деятельностного начала (с учётом того, что ученик тоже стейкхолдер!), и равное внимание к целевой системе и обеспечивающей системе -- т.е. внимание к созданию адекватных целям педагогики образовательных сред с учётом их жизненного цикла, и поддержание необходимого разнообразия педагогических практик для поддержания широкого разнообразия в учениках (мы ж не инкубаторских "строителей коммунизма" выпускать хотим! Люди все разные, и это ценность), педагогический процесс как коллективный процесс с чётким пониманием специализаций. И это при всём понимании возражений против "конвейера в педагогике" -- как и "конвейера в медицине", но с указанием примера того же Narayana Hrudayalaya cardiac-care hospital in Bangalore -- http://www.businessinsider.com/inside-indias-no-frills-hospitals-where-heart-surgery-costs-just-800-2013-4, всё ведь не так просто.

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

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

Я тут добавил, что в эпоху заката профессий (http://erazvitie.org/article/zakat_professij) появляется другой человек, не профессиональный, а "транзитно-компетентностный" -- и для него в полный рост встаёт проблема ухода к формальному образованию в традиционном разделении формального и материального образования (http://ailev.livejournal.com/1263511.html). И тут присутствующие радостно пообсуждали, что "формальное образование" на мёртвых языках можно было бы трактовать двояко:
-- как мою линию о формализации (работа с языком и описаниями, уход на уровень метаописаний -- работы с языками как с объектами), которая и была главной в дискуссии того времени про разницу формального-материального в образовании (абстрактного-конкретного).
-- как продолжение предложенной Генисаретским линии овладения древними традициями мысли (типа как мёртвые языки нужно знать, чтобы подробненько изучать древние источники и пропитаться тамошней древней качественной мыслью, лежащей в основании цивилизации. Так сказать, "припасть к основам культуры", обучение содержательно-генетической логики в образовании).

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

Так что я вместо мёртвых языков давал бы системный подход и азы системных наук (системной информатики, системной химии -- смею заверить, что из этих наук можно узнать о жизни много больше, чем из трудов Аристотеля и Платона! Аристотель там будет, конечно, в списке литературы, но он не будет во главе этого списка). По мне, так задача получить не только душевного-духовного человека (о, сколько в нашей тусовке все эти тонкие различалки обсуждались лет тридцать назад!), но и осознанного -- и с учётом перехода к киберпсихике: http://openmeta.livejournal.com/237056.html. Дальше можно развивать тему осознанности-как-вменяемости, вписываемости в общество, высокой рефлексивности и прочие темы, какие обсуждались на афтерпати конференции "Ясный ум" (http://openmeta.livejournal.com/235650.html).

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

Ещё один аспект, поднятый Зискиным -- это то, что в отличие от инженерии, в педагогике материал (человек) напичкан большим количеством непонятно устроенного бессознательного. Опять же, инженеры с этим тоже столкнулись: в инженерии машинного обучения "выученное" непонятно, знаниевых таблеток тоже не оказалось, и полным ходом осваиваются концепции типа life-long learning (сухих нейронных сеток! это не continuous learning, это другое -- см., например, LLML, life long machine learning -- learning as humans do. Remember the knowledge learned in the past and use it in future learning, как подтема AutoML, http://automl.chalearn.org/life-long-learning). Одно выученное с одним педагогом наслаивается на самовыученное, другое интерферирует с самопонятым, очередной педагог сталкивается с не-пойми-чем, причём существенно закопанным в бессознательное ученика. Так что опять: педагогика тут отличается от инженерии, но инженерия стремительно вторгается на территорию этих "пермакультур", "агрокультур", культур возделывания и выращивания, а не культур проектирования-изготовления-сборки-модернизации. IMHO в случае педагогики не сами способы работы или сложность объекта отличаются от инженерных, но именно непонятки со стейкхолдерами и их интересами, организация и финансирование проекта (следствие первого вопроса). Вот всё ровно то же самое, почему системную инженерию нельзя применять к государственному строительству: непонятно, какое государство строить, и кто заказчик. Так и в педагогике: непонятно, какого человека строить, и кто заказчик. Поэтому нельзя использовать инженерию, а любые "понятки" в этом вопросе (и приходящие с этими понятками комиссары в кожаных тужурках) чреваты. Поэтому опять всплывает вопрос про анрогогику: со взрослыми всё понятней и проще, они заказчики обучения себя! Поэтому если разобраться сначала с андрогогикой, то с педагогикой будет уже чуток полегче.

Ещё можно было бы пообсуждать инновационный аспект в педагогике, по линии слайда 10 из http://www.slideshare.net/ailev/ss-63389239 -- наверняка ведь встанет разговор об экспертной оценке педагогических идей. И тут, конечно, тот же самый разговор про "риски непоняток" против "безрискового застоя", тот же разговор, что и в медицине. Эволюцию педагогики тоже нужно обсуждать: эволюция ли это, проектирование/программирование ли это, или вообще что там с самой педагогикой происходит -- чем это мы тут пытаемся заниматься и как это наш круглый стол соотносится с тем, что происходит по поводу педагогики в мире.

Зискин регулярно приводил пример знаменитых педагогических примеров (Аристотель как учитель А.Македонского, Гоббс как учитель Карла II), и мне вдруг подумалось, что есть ещё один заход на построение предмета, эмпирический: попытка отмоделировать (построить метамодель) exellence тех педагогов, которые покажутся "правильными". Модели могут быть коннективистского типа (дологического, о которых говорил Генисаретский, "вчувствование" в поверхностные структуры и попытка догадаться о глубинных структурах, порождающих внешние педагогические проявления -- да, это прямо "моделирование человеческого экселленса" в традиции классического нейролингвистического программирования). Это может быть моделирование, начиная с истории педагогических идей -- в любом случае, работа с эмпирическим материалом, и дальше ход на содержательно-генетическую логику. Ну, или можно плюнуть на всю эмпирику, и явно стать на позиции радикального конструктивизма, заявить про невозможность переделки всей педагогики, занять свой участок эволюционного фронта и попытаться сконструировать новую педагогику на основании лучших имеющихся у нас знаний из других дисциплин (метод "подхода" -- взять системную инженерию, например, и перелицевать её как бог черепаху, создать сразу state-of-the-art и надеяться, что в рамках эволюции педагогики этот её вариант выживет, размножится и будет сосуществовать с остальными, а не сдохнет сразу).
1:01 pm
Второй круглый стол по образованию -- доклад О.Генисаретского
Вчера я побывал на очередном круглом столе по образованию в МПГУ, там были доклады-разговоры О.Генисаретского и К.Зискина. Вот тут разные фото того, как это было: 1, 2, 3, 4 -- и в этом последнем посте Олег Алексеев написал "запись по запросу", и запись там была аудио, а не видео).

Как всегда, не буду пересказывать речи других докладчиков, а запишут тут мысли, которые мне пришли в голову по ходу их докладов (некоторые из этих мыслей я там высказал, а некоторые напишу прямо тут).

Это первый пост из серии. Второй пост -- про доклад К.Зискина -- тут: http://ailev.livejournal.com/1272887.html

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

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

Дальше пошла мысль про коммуникацию по поводу концептов -- беседа с дальним виртуальным собеседником (он не здесь, в современности). Общаемся с воображаемым собеседником, и ничем другим эту жажду общения по поводу фундаментального утолить невозможно. А где один собеседник, там и сообщество, фундаментальность всегда обращена к сообществу, к беседе. Я заметил, что это примерно соответствует поправке в определении онтологии по Gruber: где формальная спецификация концептуализации была сначала, а потом пришлось уточнить определение -- там появилось слово shared. Дальше мы немного поспорили, насколько те онтологи, которых я поминаю, вообще онтологи (имелось ввиду по сравнению, скажем, с Аристотелем) и понимают, о чём там в онтологии речь. Пришлось заверить, что это настоящие онтологи, и всё они про "настоящую онтологию" знают, а не только занимаются компьютерными версиями этих онтологий. Спора особого не получилось, ибо Аристотеля-то все знают, а вот онтологические воззрения какого-нибудь Дэвида Льюиса оценить не получилось (а среди сообщества computational ontologists его воззрения обсуждаются не меньше, чем воззрения Аристотеля -- идея множественности миров-вселенных это ведь как раз его наработки). Аргумент ОИГ, что "как только появится кто-то такой же крутой, как Аристотель, все об этом узнают" в этой аудитории не работал -- ибо если сознательно себя ограничивать Аристотелем, потому что он уже знаменит, то так и не узнаешь ничего нового.

Тут я жёстко зафиксировал расхождение: с точки зрения Генисаретского, нужно потратить много лет на попытки овладеть стилем и способом мышления Аристотеля, как великого образца, чтобы потом идти дальше. Так сказать, манифест содержательно-генетической логики: всегда обильная история, жырно-жырно намазываемая тебе в моск, и чуть-чуть движения содержания на конце этой истории. По моему мнению, подробное изучение метаболизма динозавров со всеми напрягами ума по попытке догадаться об их мыслительном поведении и осознании великости динозаврей породы, так вот это изучение не так много знания даёт для догадок об особенностях поведения современных лосей. При изучении лосей необязательно знать, что главное отличие их от динозавров -- это теплокровность, живородящесть (а не яйцекладущесть) и выкармливание деток молочком. Можно сразу начинать с теплокровности, живородящести и молока, оставив динозавров биологам-историкам. Разделение труда, если начинать с глубокого погружения в Аристотеля и заканчивать Флоренским, то всегда будешь мыслителем прошлых поколений, преодолевающим и проблематизирующим вымерших титанов в 143й раз -- это немного даст современности, глубины этой проблематизации явно не хватит для нормальной теории, ибо вместо того, чтобы проблематизировать Аристотеля в 143й раз, нужно брать результат 27й последновательной проблематизации с тех пор, быть знакомым с текущим, сегодняшним состоянием. Жить нужно не ракоходно, глазами назад, в прошлое, в истории, а сегодня.

Читать нужно современные книжки, читать много. Читать хорошие книжки, я согласен. Но не считать, что только Аристотель и Флоренский писали хорошие книжки и выдавали хорошую теорию, были фундаментальными мыслителями. Я полностью согласен, что "как только встретится кто-то могучий, его сразу узнаешь". Но, чёрт побери, нужно этому могучему дать шанс встретиться, для этого читать и современные теоретические изыскания и принимать участие в современной эволюции, а не всю жизнь барахтаться в эволюционном арьергарде двухтысячелетней или даже столетней давности.

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

Я успел поговорить немного с Олегом Игоревичем перед докладом, спросил предмет его нынешних интересов. Он отвечал, что занимается чтением -- которое не из серии гляжу в книгу и вижу фигу, а попытка восстановить, догадаться о методе мышления того, кто писал текст. В докладе он продолжил эту тему. Да, чтение "в догадке" текстов -- это правильный режим работы, особенно когда нет помощи от библиографии, примечаний и гугля, как в случае современных книг. Весь вопрос о том, какие тексты читать и как делить чтение всего написанного между людьми, ибо один человек "всего" уж точно не прочтёт, умрёт за Аристотелем или Галилеем, поэтому рецепт для каждого исследователя "сначала погружаться в Аристотеля и дальше всех значимых после него" точно не работает: за последние годы с помощью Гугля и компьютеров и на примерах современной скоростной и цветуще-сложной жизни довольно много новых качественных теоретических материалов. Игнорировать это нельзя, считать что без погружения в работы средневековых схоластов (оставим уж Аристотеля) разобраться в этих работах, читать их "в догадке" нельзя -- это не так. Другой вопрос, как узнать, какие работы в этом мутном потоке всяких и разных работ нужно читать, а какие не нужно -- вот этот вопрос интересно было бы обсудить. Возвращаясь к теме образования, какие теоретические работы по этой теме есть сейчас? Ибо строить теорию образования на базе медитаций по текстам Аристотеля-Флоренского с редким цитированием Мамардашвили в промежутке -- это нонсенс. Если заменить этих западных мыслителей на Конфуция или Лао Цзы, или вместо работ Аристотеля так же читать "догадке" Тору (что многие и делают) -- тоже ничего хорошего не будет.

Есть понятие state-of-the-art, вот без этого понятия IMHO приходить и в исследования нечего, и в инженерию (скажем, разработку технологий по поддержке результатов исследований -- технологий, в фундаменте которых как раз дисциплина). Понятие state-of-the-art потихоньку проникает в методологию, хотя и крайне медленно. Например, книжки Bill Boem по методологии инженерии строятся на этом понятии, можно заимствовать оттуда.

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

Можно ли класть мышление в основании педагогики? Нет, мышление класть в основание нельзя, оно неуловимо и разнородно, изменчиво и внепредметно.

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

Я с этим согласен. Конечно, психопрактики и киберпсихика, о которых я говорил -- это не про душу. И поэтому не про психологию. Становится легче объяснять, почему так: психопрактики больше про антропологию и (учитывая, что у роботов что-то аналогичное ведь тоже будет) эээ... роботологию. Это религии претендуют на душу, и если Генисаретский хотел бы в психологии видеть светский вариант науки о душе, я всецело "за". Насчёт "души" (через психологию) как основания для всей педагогики -- тут я сомневаюсь. Да, и "душа тоже", но не только душа, не нужно в образовании монастырства и ашрамства, чай не средние века. Мне в этом плане много ближе позиция следующего докладчика, о чём следующий пост: http://ailev.livejournal.com/1272887.html
Thursday, June 23rd, 2016
10:04 pm
Киберэкспертиза: мифы и реальность
Доложился сегодня по теме "Современные технологии в экспертизе: чем они могут помочь и может ли искусственный интеллект заменить эксперта" на семинаре «Российский рынок научно-технической и технологической экспертизы» в РВК. Слайды вот (http://www.slideshare.net/ailev/ss-63389239):


Мой силуэт (понятно, камера смартфона выбирает ярко показать мои слайды, а не меня -- поэтому только силуэт) даже попал на фотограцию тут: https://www.facebook.com/photo.php?fbid=1042447812458398&set=a.402371099799409.81588.100000795665039&type=3&permPage=1

Было, конечно, много забавного -- уж насколько на этом семинаре была попытка не обсуждать государственную экспертизу, один из чиновников в зале затребовал принять закон по экспертизе. Ему возразили, что это только в неразвитых странах такие законы, в других странах больше полагаются на этику -- а её в закон не впишешь, тем более что экспертизы бывают ой какие разные. Он не унимался: в Белоруси и Казахстане есть такой закон, и нам тоже нужно! Я ответил, что не нужно вспоминать бешеный принтер: он, как дьявол, немедленно ведь припрётся! Так и случилось: тут же к моей фотографии приложили ссылку на то, что такой закон в бешеный принтер уже внесён: http://asozd2.duma.gov.ru/main.nsf/%28SpravkaNew%29?OpenAgent&RN=1075772-6&02.

Консультанты потребовали похожего: только не закон, а стандарт -- только не как в OECD, а прям как в ISO 9001! И они тогда смогут немедленно нанести непоправимую пользу (ну, вы же знаете какой бизнес вокруг стандартов ISO серии 9000?). Я не дал смягчить это заявлением переходом от этого стандарта ISO к стандарту CMMI как примеру -- и дальше уйти на "уровни зрелости экспертизы". Нет, для всех этих "процессных стандартов имени ISO 9000" есть ISO 15504 (SPICE), который вполне наведёт вам эти уровни зрелости мимо всяких CMMI, особенно если вы напишете свой стандарт, описав "процессы" по ISO/IEC TR 24774:2010. Сразу скажу, мне эта инициатива кажется ничуть не лучше инициативы закона. Когда я писал слово compliance в своей презентации, мне и в голову не приходило, что люди могут тянуть в эту сторону тяжёлых обязательных требований -- хоть закона, хоть "обязательного процессного стандарта". Я-то писал про стандарты уровня организации (например, формат и примерное содержание полей отчётного документа экспертизы, что принимается и изменяется по ходу дела внутренними решениями фонда или компании).

Но славно посидели, основной докладчик много любопытного порассказывал про разницу отечественной организации экспертизы и международной.

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

UPDATE: какое-то обсуждение этого поста случилось в https://www.facebook.com/eduard.proydakov/posts/1126196367438832
4:37 pm
Системная информатика
Моя идея остаётся прежней: моделирование, программирование, онтологизирование (и, думаю, обучение как в machine learning) -- это предметная область для одного и того же отношения абстрагирования, как мереология -- это предметная область одного и того же отношения "часть-целое" в разных его ипостасях и вариантах.

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

Конечно, акценты тут разные:
-- программирование (поскольку сюда неявно включается алгоритмика как абстрагирование действий и работа с данными как абстрагирование объектов и свойств со всеми оговорками, что объекты могут сами по себе абстрагировать действия) тут наиболее общо, но оно позволяет "оживлять" абстракции, манипулировать ими, строить имитационные модели. В программировании также уделяется много внимания формализму моделирования: синтаксису и семантике. Глубина абстрагирования -- метапрограммирование.
-- Моделирование тоже наиболее общо, ибо это сама суть абстрагирования: оставлять в одной системе самое важное от другой, абстрагирование в чистом виде. Но, увы, акцент на запуск модели на исполнение, "оживление" этой абстракции тут не делается. Ничего, мы пойдём другим путём: при языках моделирования очень часто можно найти каки-то более-менее полноценные (полнотьюринговые) языки программирования -- как языки запросов или декларативные языки ограничений. Например, SPARQL при RDF (чтобы не сложилось впечатления, что речь идёт только о процедурных языках) или OCL при UML/SysML. Глубина абстрагирования -- гирлянда метамоделей.
-- Онтологизирование само по себе наиболее общо, ибо в программировании и моделировании неважно что абстрагируется, а онтологизирование обращает внимание на реальность мира и аспекты "истинности" моделирования (глубоко занимается самим отношением абстракции), привносит философскую логику и заставляет задумываться о способах моделирования пространства, времени, а также задумываться о преобразованиях одних классов моделей в другие, парадигмах абстрагирования и их совместимости друг с другом. Глубина абстрагирования даже не рассматривается, ибо органически входит в дисциплину.
-- Обучение тоже наиболее общо, ибо обращает внимание на эпистемологический аспект абстрагирования, "как получили эту абстракцию", а не онтологический "что там наабстрагировали". Глубина абстрагирования явно обсуждается в современном machine learning. А ещё обсуждаются разные парадигмы моделирования, включая многоуровневые распределённые представления (machine learning).

Работа с абстракциями, воплощёнными в текст и коды (понимаемый широко, "всё есть текст", включая паттернирование "символами" на картинках и т.д.) -- это информатика, работа агентов (людей и компьютеров) с текстами и кодами я разбирался с этим тут: http://ailev.livejournal.com/1008054.html, дисциплины информатики там были философская логика, когнитивная наука, лингвистика, компьютерная наука. По факту, к уже выраженному в этих прежних (это был июнь 2012) текстах добавилось (машинное) обучение. Ну, и "компактное описание" я заменил на "абстрагирование" (тут я шёл как раз от deep learning, в коннекционистской парадигме уровни нейронной сети как раз уровни абстракции, равно как и в гирляндах символического метамоделирования -- цепочек классификаций и специализаций).

Логический уровень, уровень абстракции, уровень объективации, все эти "мета" -- это всё про одно и то же (http://ailev.livejournal.com/1073932.html):

Подробней про разные "мета" -- http://ailev.livejournal.com/1204705.html, про формальное образование в этой области -- http://ailev.livejournal.com/1263511.html, логические уровни Бейтсона (эпистемологические, "обучения", а не онтологические его результатов) затрагиваются в разделе "когнитивной архитектуры" http://ailev.livejournal.com/1210678.html, многступенчатая объективация и объективизация --http://ailev.livejournal.com/1132449.html. И, конечно, сюда нужно добавить коннективизм в количестве: отношение между представлениями в разных уровнях нейронной сетки, разные уровни абстракции и архитектуры из разных стеков (уход от чистой иерархии слоёв-уровней, выход в сложные fully differentiable architectures с памятью, вниманием, различными обработчиками логики, выполнением алгоритмов и т.д.).

Системный подход включает в себя абстрагирование как основной метод борьбы со сложностью, включая абстрагирование в рамку деятельностного подхода (ага, подход в подходе):
-- Конкретное абстрагирование оформляет (frame) интерес стейкхолдера (деятельностной позиции, абстракции мыслящего существа, оставим на потом спекуляции про мыследействующих и абстрагирующих существ). Так сказать, "теория субъективной информации" (http://ailev.livejournal.com/66325.html, 2003).
-- Мереология ведущее отношение для абстрагирования (системы это холоны), она даёт возможность договориться по поводу того, что именно в реальном мире в конечном итоге абстрагируется в длинных цепочках метаабстрагирования. Системный подход -- это аналог структурного (иерархического) внимания в окружающий мир. Это позволяет строить описания каких-то частей мира, соответствующим системам в их границах, отделять фон от систем. В моих учебниках это "zoom-select". Подробней это раскрывается в http://ailev.livejournal.com/860017.html
-- есть жизненный цикл системы (указание на обеспечивающую систему -- http://ailev.livejournal.com/1248044.html), практики абстрагирования (практики определения и документирования определений -- создания полного описания) в этом жизненном цикле обязательны. Моделирование всегда было неотъемлемой составной частью системного подхода, а проектирование -- составной частью системноинженерного подхода. Программирование в какой-то момент через кибернетику тоже неудачно пыталось вписаться (пока не стало понятно, что кибернетика с её обратной связью совсем-совсем не эквивалентна информатике как таковой, и даже классической computer science как части информатики).
-- Поскольку деятельность коллективна, стейкхолдеров в ней много и ещё больше их интересов, то абстрагирований тоже нужно много, и разных для удовлетворения разных интересов. Но все полученные абстракции связаны между собой тем, что они про одну и ту же систему (или её части): любая абстракция это абстракция системы (или типа систем).
-- в силу коллективности деятельности, любое абстрагирование по мере роста его объема становится абстрагированием-в-большом (programming-in-the-large -- и см. как пример http://ailev.livejournal.com/748188.html, 2009г., и тамошний разбор сервис-ориентирования в современном программировании)
-- абстракции есть всегда, если есть система (наше знание о том, что есть система -- это уже абстракция), но они должны быть документированы для работы с ними -- разница между system definition и system description.
-- каждая абстракция имеет модальность (алеатическую, деонтическую, темпоральную), эти модальности могут меняться в ходе жизненного цикла.

Если соединить системный подход и расширенную распределёнными представлениями и коннекционизмом (http://ailev.livejournal.com/1228029.html) информатику (т.е. учесть, что все тексты и коды -- это описания тех или иных систем на разных уровнях абстрагирования, и эти описания отвечают разным интересам коллективно действующих стейкхолдеров), то будет системная информатика. Конечно, при этом придётся как-то справиться с коннекционисткой проблематизацией и в информатике (все эти end-to-end fully differentiable architectures) и в системном подходе http://ailev.livejournal.com/1252230.html

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

Например, можно считать, что все существующие языки -- это на каком-то уровне абстракции различные частные методы описания (viewpoint) каких-то определённых (view) системы.

Заново подойти к SysMoLan как языку системного абстрагирования (онтологизирования, программирования, моделирования и т.д.) -- http://ailev.livejournal.com/1127145.html (2014 -- обратите внимание, там как раз попытка выйти на "системную информатику", но на примере одного языка и без попыток обозначить предметную область, чисто на "обобщениях из практики"), http://ailev.livejournal.com/1169972.html (2015, требования к формализму), или даже ещё более старым идеям Симултрека (http://ailev.livejournal.com/611877.html -- 2008, "Датацентрика -- это концептоцентрика. Документоцентрика -- это символоцентрика").

В принципе, можно было бы ввести концепцию "достроения языка до системного", считая каждый язык каким-то частным методом описания (veiwpoint), порождающим "частное описание" (veiw, которое само состоит из набора моделей -- всё строго по ISO 42010). Для этого нужно понять, что же означает в информатике наличие какого-то текста на языке? Означает только одно: исполнение его в каком-то смысле. В этом-то и секрет, что исполнение или оценка языка совершенно необязательно предписаны! Одна и та же модель/программа/онтология (не заморачиваемся тут разницей между definition и description -- например, разницей между онтологией и онтологическим описанием) может быть оценена (eval) или исполнена (execute) в разных смыслах: из одного текста можно породить разными способами много других, например можно текст программы интерпретировать, а можно сначала компилировать (т.е. изготовить по образцу одного текста другой текст). и только потом интерпретировать. Программа для станка с ЧПУ так вообще приводит при её интерпретации к изменениям в реальном мире (впрочем, даже обычная компьютерная программа тоже приводит к изменениям в реальном мире, только очень маленьким -- типа краски из пикселей на бумаге или по-разному пропускающих свет фотонов на экране). А 3D-модель тоже оказывается вполне исполнима: она декларативна, но это не мешает её исполнять 3D-принтеру, воплощая систему. Так сказать, "обратное моделирование", reverse modeling, воплощение!

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

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

В этом плане системная информатика должна как-то собирать различные описания в кучку. Скажем, в проекте http://rosettacode.org сравниваются описания решений математических главным образом задач на разных языках программирования. Там есть классический T-shirt: описание задачи (текст выходных данных + что нужно сделать), алгоритм (что делается = модель-решение для "что нужно сделать", текст на языке программирования) и output (текст выходных данных). Если брать языки моделирования, то сразу становится очевидным, что их нельзя сравнить с языками программирования: там нет этой тройки текстов "вход-алгоритм-выход". Но это не совсем так! С точки зрения системной информатики, всё это моделирование имеет смысл только для ответа на какие-то вопросы. Это просто означает, что есть ситуация (описание модели), модель (код, формальный текст решения для данной ситуации -- результат абстрагирования, выраженный в языке какой-то метамодели) и есть вопросы, которые задаются модели, предполагающие её исполнение в каком-то смысле. То есть интерпретатор тут не "виртуальная машина языка" (читающая программу и выполняющая её над входными данными -- интерес при этом фиксирован: выполнение программы), а "виртуальная машина модели" (читающая запрос для какого-то интереса и выполняющая его над моделью как входными данными). Этот интерпретатор может быть либо человеком, либо нет -- и тогда язык запросов это и есть язык моделирования! Это хорошо видно на парах декларативных языков OCL и UML (и любая запись на UML может быть выражена в OCL!), SPARQL и RDF/OWL. Получается, что языки моделирования -- это какие-то подмножества для своих часто стремящихся к полнотьюринговости языков запросов, просто выраженные в другом синтаксисе и отражающие только часть возможностей языка запросов.

Замечу, что этот подход отличается от "интеграции моделей на базе онтологий", к чему вели и Sztipanovits в http://ailev.livejournal.com/675208.html и https://www.simantics.org/ и наш собственный заход в dot15926. Онтологии никуда не делись, но они "внутри". И появилось явно выполнение этих онтологий, они не рассматриваются вне языка запросов. А язык запросов к онтологиям оказывается просто хорошим языком программирования, во всей его полноте и мощи. Ну, или его можно легко реализовать с учётом какой-то специфики модели -- тоже как встроенный DSL.

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

Либо можно пойти другим путём: нужно взять язык с развитой рефлексией и метапрограммированием (например, какой-нибудь Лисп. См., например, контекст появления Лиспа в дискуссии про универсальные языки моделирования/программирования http://justy-tylor.livejournal.com/246591.html и http://justy-tylor.livejournal.com/246877.html) и считать, что это и есть системный язык -- и порождать дальше языки моделирования из него по потребности (ну, или писать на нём в соответствии с удачными другими языками моделирования). Например, можно думать о том, чтобы (пока justy-tylor не предложит какого более удачного решения) брать тот же язык Julia, в котором в части рефлексии и метапрограммирования вполне Лисп внутри, и
-- реализовать на нём DSL для выражения моделей ArchiMate 3.0 (при этом можно даже сохранить вывод этих моделей в виде правильных графических диаграмм! Это ж просто будет такой viewpoint -- графическое описание). Дальше два использования: 1. просто глазеть на диаграммы, используя подмножество языка для удобной их текстовой записи (или даже удобного графического редактирования), 2. выполнение запросов. Учитывая, что ArchiMate 3.0 подразумевает расширения себя разными атрибутами и типами элементов, то легко можно представить самые разные запросы -- от "сколько практик у нас в модели" до "посчитай необходимую производительность для сервера" (этот пример про подсчёты на основании диаграмм архимейта -- прямо из книжки автора языка. Но там ArchiMate даётся как внешний DSL, и этот подсчёт реализуется независимыми от языка средствами. А у нас ArchiMate является встроенным DSL к Julia, поэтому просто пишем на Julia запрос к структурам ArchiMate-на-Julia. Julia к этому ArchiMate является и языком ограничений (хотя так не принято называть, это ж не логический язык!) и языком запросов (хотя так тоже не принято называть, не подразумевается какой-то модели данных) -- но если допустить, что внутри самого языка (а не сбоку на диске) есть модель, то всё становится на свои места.
-- выполнить план по линии Modelica-на-Julia, описанный в третьем пункте тут: http://ailev.livejournal.com/1271980.html
* * *
Тем, кто меня читает много лет, должно быть всё понятно. Кто читает совсем недавно -- не будет понятно ничего. Единственное, что могу посоветовать, это попробовать прочесть посты и материалы по ссылкам из текста. Если и там непонятно -- то в тех материалах тоже много ссылок, и так "до дна", пока не станет понятно.

По-хорошему, дальше две линии работ:
-- нужно как-то вытащить все эти обрывки мыслей по ссылкам, развернуть их, причесать и сделать учебник. Ибо как россыпь постов это всё необозримо. Когда-то у меня было такое же состояние дел в части системного мышления, пока я не сосредоточился и не написал учебник, аж две версии (http://techinvestlab.ru/systems_engineering_thinking). Вот и тут нужно писать учебник системной информатики, при всех текущих с ней непонятках.
-- взять какой-то язык с похожим на лисповое метапрограммированием (а хоть и Julia -- заодно там нет тяжёлого наследства программистской объект-ориентированности), и дорастить его до языка системного моделирования (оно же программирование, оно же онтологизирование, оно же проектирование и т.д.). Точнее, "спустить" его до DSL моделирования в его составе (что потребует описания на нём соответствующих метамоделей).
-- ну, и нужно отслеживать что там происходит в части коннекционистского моделирования-как-обучения (моделирования естественного языка, моделирования языков программирования, моделирование планов и цепочек действий, выражения концептов и понятности моделей-в-распределённых-представлениях и т.д.).
* * *
UPDATE: системная информатика -- это "информатика с системным мышлением в голове". Системная инженерия тоже так определяется: как "просто инженерия", только с системным мышлением в голове (ср., например, с http://ailev.livejournal.com/1157398.html).

UPDATE: некоторая дискуссия к этому посту ещё и тут: https://www.facebook.com/ailevenchuk/posts/10207409851418535
Tuesday, June 21st, 2016
6:29 pm
Началась конференция JuliaCon 2016
Основная дизайн-цель языка Julia (http://julialang.org/) -- это решить "проблему двух языков" в численных методах (когда прототипировать алгоритмы и скриптовать удобно на языке высокого уровня, а потом требуется переходить на более низкоуровневый язык, чтобы всё работало быстро, в том числе параллельно). Сегодня у любителей Julia праздник, идёт ежегодный смотр достижений JuliaCon: http://juliacon.org/abstracts.html. В России на Julia пишут в бОльших объёмах, чем можно подумать (группа ВКонтакте тут: https://vk.com/julialanguage, но я встречал многих, кто на Julia пишет, не зная о существовании ни этой группы, ни каких-то других).

Расползается Julia по миру сегодня главным образом через университеты: http://julialang.org/teaching/ (MIT при этом один из ведущих по числу курсов – относительно свежая информация тут: https://github.com/stevengj/julia-mit). Это всё не курсы собственно Julia, они не по линии computer science, это курсы главным образом каких-то разделов численных методов, а Julia просто занимает место какого-нибудь Python, MATLAB/Octave или R. Обычно курсы выглядят как ноутбуки в Jupyter (бывший IPython), Ju в этом Jupyter как раз от Julia, это родной теперь для этого проекта язык: http://jupyter.org/. Административно Julia в NumFocus -- http://ailev.livejournal.com/1203522.html.

В языке прямо сейчас идёт опережающее развитие суперкомпьютерного функционала (http://docs.julialang.org/en/latest/manual/parallel-computing/ -- это просто документация языка, http://www.nextplatform.com/2016/01/26/dirt-simple-hpc-making-the-case-for-julia/ -- этот крен в HPC уже заметили «железячники», http://julialang.org/blog/2016/03/parallelaccelerator -- это специализированный для Julia ускоритель от Intel Labs, и много всяких "обёрток" типа https://github.com/JuliaComputing/ArrayFire.jl для работы с массивами в GPU).

Пакетов там уже больше тысячи, что, конечно, капля в море -- http://pkg.julialang.org/. Базовой математики там тьмы и залежи, есть какие-то сообщества на каждую тему: см. разные ссылки в http://julialang.org/community/. Несмотря на то, что Julia отлично цепляет любые сишные библиотеки как родные (и сама, кстати, может в них компилироваться, прикидываясь сями -- типа "пишу высокоуровнево, а код будет для чужих выглядеть сишной библиотекой"), сообщество честно переписывает на Julia основную математику, добиваясь заявленной цели: полный контроль в одном языке над всем стеком выполнения программы -- от прикладного уровня до железа, включая библиотеки. Никаких непоняток на границе сишного кода, код до дна будет Julia.

Эти ребята сейчас переписывают в версии 0.5 реализацию массивов: делают дополнительное ускорение за счёт опционального отключения проверки индексов, «всё для скорости, всё для победы». Кто из численников начинает программировать, те полны восторгов. Кто из традиционных computer science программистов – те крутят носом, и по понятным причинам: это не функциональный, не объект-ориентированный, не акторный язык, совсем не похож на Rust, Golang, Scala и прочих фаворитов нынешней моды классического языкостроения. И в нём multiple dispatch как базовая парадигма, а объект-ориентированность и функциональность доступны как расширения языка. Вот что даёт multiple dispatch: http://nbviewer.jupyter.org/gist/StefanKarpinski/b8fe9dbb36c1427b9f22. Я подробней писал про решение expression problem с помощью multiple dispatch и приводил на эту тему ссылки тут: http://ailev.livejournal.com/1218155.html

Расширяемость языка идёт как важнейшее свойство, второе после multiple dispatch: интроспецкция (код программы это данные для неё) и метапрограммирования (язык принципиально расширяемый, в нём доступна кодогенерация времени исполнения -- http://docs.julialang.org/en/latest/manual/metaprogramming/), идеи впрямую вытащены из Лиспа. Так что Julia -- это совсем не фортран и не паскаль, и даже не матлаб, хотя жутко на них похож. По мощности он ближе к Питону, хотя отличается от Питона во всём (писать на Julia чуток более высокоуровнево и поэтому компактно, чем на Питоне, а скорость получающегося кода -- сишная, а не питонная).

Дальше нужно смотреть: смогут ли инженеры воспользоваться Julia. Инженеры в массе своей объект-ориентированием и функциональщиной уже доказали, что без спецтренинга пользоваться не могут, их потолок -- матлаб и Питон без объект-ориентированности, так что поглядим, как они смогут справиться с Julia.

В принципе, можно было бы на эту тему даже какие эксперименты сделать, найти «когнитивное сродство инженеров к разным парадигмам программирования». И может оказаться по результатам замеров (какой-нибудь cognitive load, например), что Julia тут будет получше прочих. Ну, или не оказаться. Моя гипотеза, что multiple dispatch в основе языка для инженеров проще, чем объект-ориентированность и функциональность. А обслуживающие инженеров программисты всегда смогут воспользоваться средствами метапрограммирования для расширения языка.

У меня самого пара идей с Julia (вряд ли они имеют шанс на реализацию, но лучше сразу написать):

1. Учебное применение по информатике. Я понял, что учебных курсов с достаточным числом задач по computer science нет: всё заканчивается сотнями "олимпиадных задач" с автоматической проверкой. Нужно:
а) добавить автоматическую проверку для Julia
б) настрогать необходимое число "неолимпиадных" учебных задач, чтобы добиться "беглости" без перегруза учителя с проверкой решений (про "беглость" -- это Алан Кей тут: http://ailev.livejournal.com/461928.html).
После этого можно думать об использовании Julia в школе и ВУЗе для текущих нужд информатики -- вместо текущих Си++, Паскаля и очень редко Питона.

2. Учебное физмат применение. Конечно, как для Wolfram Language есть Mathematica, как для Python есть Sage, для Julia нужно сделать какой-то вариант символьной математики. В простейшем виде её уже прикручивают болтами из Питона (http://mth229.github.io/symbolic.html), но хочется "родной" привязки -- и затем можно делать на Julia решение задач по курсам уже математики-физики (с той же автоматизированной проверкой). Пока же смотреть и пускать слюну на http://www.wolframalpha.com/pro/problem-generator/ и довольствоваться Jupyther notebook текущих вузовских курсов по численным методам. Хотя в принципе, это не только в ВУЗе можно использовать, но и в школах для поддержки физики-математики.

3. Инженерное применение: реализовать на Julia функционал акаузальной симуляции мультифизики, похожий на Modelica (http://modelica.org/), но не объект-ориентированный. При этом сразу получаем силу математических пакетов Julia: оптимизацию, параллельные вычисления на бэк-энде, веб-фреймворки и визуализацию данных, notebooks и т.д.. Плохая реализация численных методов -- это то, чем страдают все реализации Modelica, кроме самой дорогой. Вот и решить эту проблему. А дальше идти по той же линии, что и Modelica: в языки архитектуры и описания требований. Julia ведь расширяемый язык! Глядишь, по этой линии можно и опять к SysMoLan вернуться как языку моделеориентированной системной инженерии (сейчас этот функционал делается на паре связанных объект-ориентированных языков: Modelica+SysML).

Конечно, есть и какие-то идеи про deep learning. Текущие работы по реализации алгоритмов на Julia (mocha.jl) были свёрнуты после выхода десятка крупных хорошо поддержанных ресурсами фреймворков. Конечно, Julia отлично оборачивает в себя и сишные, и питонные интерфейсы -- там и mxnet можно найти (разработчики mocha переметнулись на оборачивание его), и TensorFlow, и всё что угодно. Пока нет какой-то особой архитектурной идеи, я бы не ожидал развития родных нейроалгоритмов на Julia. Но я думаю, что по мере роста сложности нейроархитектур (в сторону всех этих памятей-внимания-деревьев и end-to-end differentiable структур) и по мере роста числа готовых численных пакетов тут тоже могут появиться инициативы. Так что на эту тему я думаю, но проекта не предлагаю.
4:34 pm
"Рассказать про данные"
Время от времени (последний раз -- буквально вчера) меня просят где-то публично "рассказать про данные", ибо "больно уж тема на слуху". Что, что мне рассказывать?! Для меня "про данные" -- это:
-- маркетинговый трёп про «дайте нам ваши данные, мы дадим вам бизнес-советы» (это собирается под словом-зонтиком BigData). В узком смысле тут можно дойти до конкретных алгоритмов shallow learning (а вот deep learning "про данные" специально не жужжит, хотя нельзя сказать, что данные там не поминаются. Поминаются, но «не на слуху», на уровень обывателей не выходит). Ещё тут можно говорить про DataFrames, но это уж совсем узко.
-- интеграция данных в промышленных масштабах (мастер-данные, стандарты качества данных, нормативно-справочная информация, управление инженерной документацией, управление конфигурацией и т.д.). Я много лет об этом писал, повторяться не буду -- все эти PLM и ISO 15926. Боком тут -- что происходит с базами данных: все эти NoSQL, трипл-сторы и прочие нереляционности.
-- иногда под "данными" понимают разнообразную визуализацию данных -- научную или даже "инфографику". Так сказать, современная каллиграфия: если есть, что сказать (данные), то нужно сказать максимально кратко, доходчиво, выразительно.
-- отсутствие «данных» в учебных курсах, алгоритмика там есть, а вот работы с данными нет. По этой линии легко прийти к онтологиям (ибо computational ontology -- это про модели данных). Тренд на работу со всё более и более содержательно кучерявыми данными всё более и более простыми алгоритмами.
-- социальные сети, как "общая помойка всего", и способы разгребания мировой помойки. Персональные данные и прайвеси, цифровые следы и скоринговые агентства. Раскрытие информации государства.
-- … и так далее.

А вот про алгоритмы никто не просит рассказать. Они уже вышли из моды, или ещё в моду не вошли? Слово-то "данные" тоже давно используется, но никогда оно не было модным, не просили рассказать о них людям. А "алгоритмы"? Типа как "были бы данные, а алгоритмы найдутся". Нет, не найдутся. Deep learning -- это ведь прежде всего алгоритмы, хотя в какой-то мере и другие типы данных тоже (распределённые представления -- это ведь тоже про данные! Но вряд ли просящие "рассказать про данные" имеют ввиду распределённые представления).
1:02 pm
Технологический день на санкт-петербургском съезде КПСС, тьфу, форуме
Почему-то мне сегодня вспомнилась вчерашняя истерия во всех лентах по поводу технологического дня на санкт-петербургском экономическом форуме. Дескать, займёмся всем российским миром промышленной революцией нумер четыре, иного пути нет, будем опережающе поднимать производительность труда. Ура-ура, власти услышали! И вожди поведут нас вперёд, к этому будущему!

Мне кажется, что этот форум ничем не отличался от любого съезда ЦК КПСС, на котором торжественно заявлялись ровно такие же цели. Вот, например: «Прогресс науки и техники, — отмечал Генеральный секретарь ЦК КПСС тов. Л. И. Брежнев, — это главный рычаг создания материально-технической базы коммунизма. Вот почему в таком важнейшем вопросе, как развитие науки и техники, мы отчетливо должны видеть перспективы, учитывать их в практической работе. А перспективы таковы, что начавшийся под воздействием науки и ее открытий переворот в развитии производительных сил будет все более значительным и глубоким. Перед нами, товарищи, задача исторической важности: органически соединить достижения научно-технической революции с преимуществами социалистической системы хозяйства, шире развивать свои, присущие социализму, формы соединения науки с производством», это «Материалы XXIV съезда КПСС», стр. 57 (1971 -- помним, американцы в те поры летали на Луну, 12 человек сумели погулять по Луне с 1969 по 1972, и это очень беспокоило. Хотя ширнармассы об этих достижениях проклятых капиталистов и не информировались, но технологическое отставание стремительно становилось очевидным).

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

Но чему все радовались-то вчера? Возврату к идее непрерывного роста производительности труда в России (раньше было "при социализме")? Что нового-то? Та же обязательность для крупных предприятий быть лидерами прогресса, что и полсотни лет назад?
12:55 pm
Где обитают луддиты: в муниципалитетах!
Первый раз -- случайность, второй раз -- совпадение, третий раз -- закономерность. Теперь я знаю, где сидят луддиты: они окопались в мэриях. Они обычно не знают, что они луддиты, но цеховики им быстро объясняют, кем они должны быть. С муниципалитетами конфликтовали Uber и Airbnb, вот очередь дошла до Amazon. Amazon в середине этого июня запустил доставку своих товаров в течение часа с момента покупки. Мэр Парижа сказала, что Amazon Prime Now нарушает коммерческий баланс и несправедливо (гады, с помощью технологий! ухитряются торговать дёшево и быстро!) конкурирует с магазинчиками и мастеровыми людьми -- https://www.theguardian.com/cities/2016/jun/20/amazon-prime-now-express-delivery-service-france-paris

Когда с технологиями начнуть бороться мэрии России? Впрочем, тут это будет централизовано: до мэрий дело не дойдёт, современные прорывные технологии будут обрубать сразу на общероссийском уровне. Риторика промышленной революции и светлой дороги в будущее риторикой, а луддизм луддизмом.
1:36 am
Фундаментальное образование
Я вот уже писал про важность возвращения к проблеме различия формального и материального образований, где давал трактовку формального образования как тренинг в работе с "мета" ("формальное образование в эпоху перемен" -- http://ailev.livejournal.com/1263511.html).

Но тот же Василий Сартаков (сегодня он писуч!) в https://www.facebook.com/vasartakov/posts/10209783276595516 сформулировал ещё одну интересную различалку: фундаментальность образования он определяет как знакомство с основными теориями, лежащими в основе больших групп технологий. Я определяю это как "дисциплины" в формуле "практика = дисциплина+технология". Моё расхождение с Василием, что он определяет "фундаментальность" традиционно исследовательски, как производимую из "любопытства" и независимую от приложений, потому и "фундаментальность" -- и тем самым сам себя отрицает, у него образование фундаментальное должно как раз поддерживать разбирательства в навороченных инженерами технологиях! Какая уж там независимость! Но я считаю, там две зависимости: 1. технологии поддерживают дисциплины (и при смене дисциплины меняются технологии). 2. неудачи технологий означают, что нужно менять дисциплину, которая их поддерживает. То есть дисциплина узнаёт о плохой своей фундаментальности путём обратной связи от плохих в силу этой дисциплины технологий, что б там ни говорили учёные про "любопытство" и прочие такие вещи. Нейронным сеткам людей снятся сны, и никаких "озарений из ниоткуда" нет: источники любопытства связаны с реальной жизнью, в том числе технологической жизнью, и часто именно эта связь, именно этот запрос из практики проявляется в направлении любопытства в бОльшей мере, чем чисто теоретические штудии "дисциплины ради дисциплины". Конечно, можно всегда подобрать контрпримеры, но на любой контрпример есть масса прямых примеров (в тех же нейронных сетях). Я слегка касался этого в обсуждении такого щекотливого вопроса, как развитие математики, хотя тогда ещё и в менее чётких формулировках ("инженерный статус математики", http://ailev.livejournal.com/669463.html -- 59 комментов, и там ссылка на http://ailev.livejournal.com/668305.html с аж 170 комментами).

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

А вот при профессионализации (что тоже проблемный вопрос, учитывая закат профессий и переход к короткоживущим компетенциям -- http://erazvitie.org/article/zakat_professij) встаёт вопрос о правильной теории, которая помогает разобраться с технологиями. Скажем, в тех же примерах Сартакова это CAP-теорема (2000 год -- это давно или недавно, чтобы говорить о включении её в фундаментальное образование?), позволяющая по достоинству оценить NoSQL движение в базах данных. Я считаю, что 4D extentionalism -- это такое же фундаментальное знание для концептуального проектирования баз данных, а также для системных инженеров ("фундаментальные заплатки для системноинженерного образования" -- http://ailev.livejournal.com/1141173.html). Этому нужно учить профи, это фундаментальные знания, но это вряд ли "азы".

Получается, что "азы" -- это что-то типа "общего фортепиано", для поддержания коммуникации с соседями, "мировоззренческое". Тут и физика трёхсотлетней давности сойдёт, и computer science времён изобретения LISP (1958). А "фундаментальное" должно быть максимально свежим.

Мой тезис остаётся: каждый учебный предмет должен включать в себя не только технологию, но и дисциплину. Заявили "робототехнику" -- предъявите дисциплину, предъявите теорию! Предъявите фундаментальное знание, которое позволяет понять, почему выживают или не выживают те или иные технологии, которое позволяет сократить пробы и ошибки при создании собственных технологий. Тезис Корнилова в https://www.facebook.com/alx.kornilov/posts/1760110817533813 именно об этом, о необходимости не столько прихвата дисциплинарного сленга в образовании, сколько о необходимости фундаментального образования. А для этого прежде всего нужно сформулировать дисциплину, выявить фундаментальное (а не прикладное, технологическое) содержание образования! Теории меняются раз в двадцать-тридцать лет, а вот технологии и все эти "проекты" раз в пять лет -- и новое поколение технологий раз за разом будет поддерживать те же теории, ту же дисциплину, то же фундаментальное образование.

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

Дальше конструктивная часть. Чего IMHO не хватает в фундаментальной дисциплине для обучения, если её вдруг удаётся сформулировать? Скажем, в робототехнике она не сформулирована, а вот в линейной алгебре -- вполне. Не хватает не столько "проекта" (где она будет применена однократно, это не "обучение", это скорее "экзамен" -- контроль знаний, а не научение нейронной сетки). Не хватает тренинга в решении задач! Не хватает задачников, а в них достаточного количества задач, чтобы "набить руку" и получить профессиональную фундаментальную интуицию. В этом плане сервисы типа той же Matematica с генерацией постановок задач и проверкой их решения (http://www.wolframalpha.com/pro/problem-generator/) -- вот что может помочь фундаментальности образования. Задачи -- это тот клей, который может привязать абстрактную теорию к конкретным жизненным ситуациям. Задачи намазывают прикладность на фундаментальность. Но задач нет (это же не олимпиадные задачи по информатике, которых тысячи!), как их генерировать, непонятно (не всё ж сводится к математике, которой занимаются 400 лет и которая удивительно регулярна), как их решение проверять автоматически -- непонятно (хотя AI тут может помочь, конечно).

Но без фундаментального образования всё выродится. Последний раз я принимал участие в обсуждении вопроса "снижать ли планку, или отчислять к чёртовой матери" для магистров буквально сегодня. Эти дискуссии идут везде, я знаю. "Снижать планку" -- это отказываться от "азового" и затем "фундаментального образования", и оставлять только сленг и проекты -- т.е. заранее соглашаться на уровень ПТУ. Я против, хотя и понимаю, что плыву тут строго против течения.

Помочь тут может, я думаю, только технология: выявление фундаментального ядра (нейронные сетки тут вполне могут сработать), генерация задач (не уверен, что это как-то можно автоматизировать -- нужно делать обёртку из реальных жизненных ситуаций для теоретических конструктов, скажем не "решите систему квадратных уравнений", а "решите задачу на составление уравнений", чтобы натренировать видеть эти уравнения в жизни) и автоматизация их проверки (тут тоже должно быть попроще). Дисциплина в форме учебника или лекций, или видеоклипов из какой-нибудь Курсеры понимается "логически", "рационально" -- а потом на задачах появляется "фундаментальная интуиция", тренируется нейронная сетка, появляется "беглость" (fluency -- про развитие беглости в образовании в VPRI см. http://ailev.livejournal.com/461928.html).

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

Итого: инженерные и научные формальность и фундаментальность против ПТУшной рабоче-крестьянскости.

Скажите теперь скорей, что я старомоден и отстал от жизни, литературы про все современные веяния в образовании не читаю. Я этого не знаю, студентов современных в глаза не видел, с сыном собственным как школьником не общался, на совещаниях самых разных в ВУЗах и рядом не присутствовал, где о победности и успешности новых веяний рапортовали, курсов в Курсере не проходил и т.д.. И поэтому вы меня сейчас просветите, и скажете, что вся фундаментальность образования как-то сама собой появится, и что она никуда не девалась. Скажите мне об этом, просветите меня тёмного, наставьте на путь истинный.
12:11 am
Секта свидетелей сингулярности
Само словосочетание "секта свидетелей сингулярности" гуляет по рунету, независимо открываемое, с зимы 2015г. Но Василий Сартаков в комментах к https://www.facebook.com/vasartakov/posts/10209792005373730 обратил внимание на его новый смысл: сингулярность уже потихоньку свистит мимо нас, а мы разинув рот её свидетельствуем, но в ней не участвуем. Я ему вяло возразил, что сингулярность тем и характерна, что в ней все становятся только свидетелями -- кидай мешки, вокзал отходит! Но хотелось бы иметь, конечно, свой вклад в ускорение фронтира -- а хоть и всего 0.01мкм/сутки², но не свидетельствования, а собой обеспечиваемого разгона. Что держит? Кого мозги, кого отсутствие приятной компании, кого отсутствие денег, кто просто прокрастинирует, а кого-то ничего не держит, просто "неохота, нас и тут неплохо кормють" -- у разных людей разные причины свидетельствовать, а не делать.

Я могу ещё себя тешить, что я не "генератор волны фронтира", я "усилитель, размножитель, ускоритель" -- консультант, который хватает опыт в одном месте и помогает его укоренить в другом месте. Консультант тут отличается от журналиста (а хоть и в варианте блоггера) примерно так же, как гуру от пандита: гуру берёт ответственность за карму ученика, а пандит нет, просто даёт разъяснения по трудным вопросам. Я тешу себя мыслью, что моё add value во влиянии на карму клиентов, а не просто в оперативном пересказывании чужих мыслей. Моя сила в разговорах и предложениях, а также помощи сделать стартап какого-то проекта, а не в журналистских пересказах и вещании про чудеса технологий.

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

Мне хочется порождать волну сингулярного фронтира, а не обнаруживать, окультуривать, усиливать, размножать, перетолковывать и оформлять её! Но так уж сложилось, откапывать и распространять через закапывание на новом месте у меня получается по факту лучше, чем придумывать самому. А придумывать всё одно приходится.

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

Собственно, сама эта текущая ситуация скоростного соскальзывания в технологические и социальные непонятки и жизнь в эпоху не то что перемен, а сверхбыстрых и сверхкрутых перемен -- это тоже предмет копания. Мой семинар про будущее (http://ailev.livejournal.com/1267068.html) заход ровно на это: как снизить сложность в мышлении о будущем? Тот же системный подход, но его будет маловато: нужно плюсовать теорию эволюции и предпринимательство, экологическое мышление и много чего ещё. Это ещё не полноценный продукт, но как минимум, на него заявка.

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

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

Распределённые реестры (финтех) -- там пока о проектах речи нет, у меня к ним "внимательное присутствие", на большее пока сил нет. И ещё на много чего сил нет, та же "робототехника" aka киберфизические системы, я там главным образом "мозги" отслеживаю, но кроме "мозгов" там ведь много чего происходит! Ничего, Козьма Прутков утешал, что нельзя объять необъятное (а сегодня он добавил бы -- и догнать недогоняемое, сингулярность ведь именно такова).

Так что я не столько член секты свидетелей сингулярности, сколько тамошний работник тыла -- учитывая, что в районе фронтира все в тылу, уж так оно там устроено.
* * *
DISCLAIMER: я слово "сингулярность" использую исключительно художественно, как удобную лингвистическую (а не семантическую) метку. Я знаю, что сингулярностей насчитывают три разных, и знаю критику теорий сингулярности. Я тут не об этом, теории сингулярности и формальное определение того, что это вообще такое, меня не волнуют.
Saturday, June 18th, 2016
10:49 am
Железный расизм
Достало меня уже требование использования отечественных комплектующих. Когда истинное арийское происхождение требуют даже не от человеков, а от железок или софтин, это уж совсем какой-то запредел.

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

Всё это "импортзамещение" да "поддержи отечественное" -- железный расизм, давайте называть вещи своими именами.

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

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

UPDATE: дискуссия о том, кто владелец вещи и определение рисков плохого поведения "по происхождению" -- это разные дискуссии. Про риски утраты собственности над вещью я писал в "Мойдодыр и политическая философия интернетвещизма": http://ailev.livejournal.com/1106188.html. Рассуждения про "интернирование всех инородцев и классово неблагонадёжных, на всякий случай" уже не принято вести в приличном обществе, нужно перестать их вести и для "инородной и классово неблагонадёжной техники". Мне всё равно, забирает собственность свой диктатор или чужой. Оба хуже. Но это отдельная дискуссия от дискуссии про обсуждение происхождения.
Thursday, June 16th, 2016
7:47 pm
Архимейт 3.0, теперь со стратегией и физикой
Cмотреть новую спецификацию (формально вышла позавчера) ArchiMate 3.0 вот тут: http://pubs.opengroup.org/architecture/archimate3-doc/

Авторский коммент "что там нового": http://blog.bizzdesign.com/archimate-3.0-the-next-step-in-the-evolution-of-the-standard, формальный список изменений -- http://pubs.opengroup.org/architecture/archimate3-doc/apdxe.html#_Toc451758153 (в частности, отношение used_by изменено на serving, к motivation elements добавлен outcome, infrastructure переименовали в technology и т.д.).

Из главных новинок -- выполнение стратегии (элементы resource, capability и course of action -- используется в связке с motivation elements) и физический слой для IoT и Industrie 4.0. (то есть стандарт из кибер стал киберфизическим -- элементы equipment, facility, material, distribution network -- и communication path стал просто path, чтобы включить сюда и физику).

Конечно, много ещё не столь инновационной полировки напильником по тексту. Хотя добавленный механизм кастомизации нельзя сказать, что "мелкое дополнение". Факт-ориентированность Архимейта закончилась, можно добавлять атрибуты. Специализировать элементы можно было и раньше, но появились в количестве informative примеры этой специализации (типа business collaboration может быть специализирована до social network -- A social structure made up of social actors (individuals or organizations) and the connections between these actors. Пример специализаций Course of Action как раз Strategy и Tactic). И появились "профили", что по факту означает возможность препрограммирования в моделерах каких-то специализированных для тех или иных применений версий языка на базе предопределённых наборов специализированных элементов языка с их атрибутами.

Редакторы для всех этих новаций пока платные, Archi будет попозднее (разработчик ищет денег на разработку апгрейда -- http://forum.archimatetool.com/index.php?topic=229.0, "If funding is successful we are aiming for around October/November 2016").

Одновременно иметь стратегию и (кибер)физику в ArchiMate -- это очень сильный ход. Понятно, что версию 3.1 с корретировкой ошибок нужно ждать очень скоро (ибо наверняка там противоречий при добавлении физики осталось предостаточно), но и текущий вариант вдохновляет и открывает новые горизонты.
* * *
Мои посты по русификации Архимейта (версии 2.1) по ссылкам тут: http://ailev.livejournal.com/988360.html
Wednesday, June 15th, 2016
5:47 pm
Программирование на Python в Rust
Это не про язык Rust, а про игру -- https://en.wikipedia.org/wiki/Rust_(video_game)

Для того, чтобы попрограммировать там на питоне, нужно выбрать один из двух фреймворков:
-- Oxide http://oxidemod.org/ (API -- http://docs.oxidemod.org/rust/?python#getting-started, и там вверху справа есть таб примеров Питона -- догадайтесь его ткнуть, чтобы примеры были именно Питона, а не сишарповые умолчанные!). Чуть-чуть про источники информации есть ещё в http://oxidemod.org/threads/classes.18519/#post-213198
-- Pluton https://pluton.team/ (API -- https://forum.pluton.team/wiki/index/, питон там в некоторых примерах показан)

Документация там абсолютно убогая, это всё только для настоящих упёртых.

Как я объясняю отроку, что ему нужно знать:
-- существование параболы, по которой летят вещи (счастье, он уже видел какой-то ролик в youtube, где рассказывалось про полёты предметов в играх по лучу, и указано, что в современных играх прилична только парабола). Это нелинейные функции в алгебре, заодно квадратные уравнения и их системы.
-- собственно, полёт каких-то тел (почему парабола, какие там параметры этой параболы и что ещё нужно учитывать). Физика, а в ней механика.
-- запрограммировать этот полёт на языке программирования, это информатика.
-- засунуть этот фрагмент кода с полётом внутрь какой-то игры (в какой-то мод). Вот эти вот самые API соответствующих фреймворков. Это gamedev, в который без всего вышеперечисленного лучше сразу не соваться.

Хотя все эти мои объяснения ему как об стенку горох. Если его пустить к компьютеру, то он даже не играть в Rust будет, и уж тем более не программировать (при всех его заявленных намерениях всенепременно этим заняться). Он будет смотреть очередные антикварные серии Doctor Who, отвлекаясь на мультики Губки Боба, а когда будет вспоминать про Rust, то будет смотреть разные тамошние "прохождения" и машинима.

Но ссылочки на фреймворки программирования модов Rust на Python я ему нашёл, пусть знает, что суровая недокументированная правда жизни находится от него в одном клике. "Вы этого хотели, вот вам!".

Ещё это важно было показать из-за легенд, что программировать хоть что-нибудь в играх можно только на Си++ (его друган даже на курсы ходит программирования игр на Си++ и мой со своим Питоном чувствует себя немного обделённым). Нет, проблема не в Питоне. Проблема у него в себе, любимом. Дорога открыта, фанфары поют, платочки машут, вот только каждый шаг у выбравшего путь геймдева труден и требует исключительных внимания и сосредоточенности, упорства и трудолюбия, грамотности и мастерства. Так что Rust подождёт пока, пусть отрок дозревает. "Я тебя поцелую потом, если захочешь".
Monday, June 13th, 2016
11:20 pm
Нейроэволюция в тени, но не сдаётся
Вышло несколько интересных работ по нейроэволюции:
-- Convolution by Evolution: Differentiable Pattern Producing Networks, http://arxiv.org/abs/1606.02580, Our main result is that DPPNs can be evolved/trained to compress the weights of a denoising autoencoder from 157684 to roughly 200 parameters, while achieving a reconstruction accuracy comparable to a fully connected network with more than two orders of magnitude more parameters.
-- Simple Evolutionary Optimization Can Rival Stochastic Gradient Descent in Neural Networks, http://eplex.cs.ucf.edu/publications/2016/morse-gecco16 (впрочем, я уже давал эту ссылку). using this approach with only a simple evolutionary algorithms (called the limited evaluation EA or LEEA) is competitive with the performance of the state-of-the-art SGD variant RMSProp on several benchmarks with neural networks with over 1,000 weights.

Урожай работ этого года будут собирать, конечно, к 8-9 декабря 2016, ICERN 2016: 18th International Conference on Evolutionary Robotics and Neuroevolution, https://www.waset.org/conference/2016/12/rome/ICERN/home.
10:59 pm
Об компьютерные художества
Я уже писал, что красота из современного искусства стремительно уходит в дизайн, рекламу, науку и эээ... muzak, elevator music, weather music, включая и визуальную фоновую музыку. А в самом современном искусстве остаются только мудрствования, грязь, публицистика, пропаганда и агитация, всякие "снятия пределов" и "преодоление барьеров", привлечения внимания и прочие манипуляции с человеком.

Компьютерщики же активно спасают красоту, которая спасёт мир. Вот несколько зарисовок происходящего:
-- перенос стиля нейронной сеткой (это было так: http://www.boredpanda.com/inceptionism-neural-network-deep-dream-art/), причём сейчас научились при этом сохранять цвет оригинала, а переносить только связанную с формой штрихов часть: http://blog.deepart.io/2016/06/04/color-independent-style-transfer/ (там надо жать мышкой на фотографии, и под ними будут примеры переноса стилей с различных знаменитых картин). Это ж "взгляд художника", нет? Смотришь на одно, видишь немного другое -- но не совсем уж другое, основа сохраняется.
-- нейросетки, создающие графику 80-х
-- более продвинутые эксперименты, увы, убирают красоту. Абстрактность в искусстве интересна, но не так уж красива (хотя я знаю, что фетишисты всегда найдутся и на любую некрасивость, человеческая природа разнообразна -- любовь зла, полюбишь и козла. Я за свободу любви, но не устаю удивляться). Вот пример создания нейросеткой абстрактных картин (включая подписи!) не из фотографий: http://thecreatorsproject.vice.com/en_uk/blog/neural-network-abstract-machine-paintings.
-- танец "напечатанного на 3D-принтере" человека (тут интересна технология создания танцующей человечьей формы, хотя тут и без нейросетей обошлось): https://www.fxguide.com/featured/so-just-how-was-that-chemical-brothers-video-made/. Тут "взгляд художника" выходит за пределы привычного изобразительного искусства, текстуры и пиксели переходят в пространственные текстуры и воксели. Хотя да, до нейросетевого переноса стиля (да ещё и в видео!) тут ещё далеко, но это как уход в музыке от копирования акустических музыкальных инструментов в эксперименты с модульными синтезаторами. Тем, кому уж совсем лень ходить по ссылкам, поглядите прямо тут (https://youtu.be/BC2dRkm8ATU):


А вот можно ли интерпретировать красоту? Конечно, все конкретные изображения (леса, насекомые, мосты и пиджаки) будут грамотно нейросетками распознаны уже сейчас, при любом стиле их изображения. Но можно попробовать поднять планку: попросить интерпретировать абстрактную живопись. Тут интересна подобная работа, где в качестве абстрактной живописи выбраны пятна Роршаха. Совсем не красиво, и даже не искусство, зато абстрактность гарантирована. Вот результат (машины тут не слишком отличаются от людей: garbage in, garbage out. Но некоторый прошедший выставление в галереях garbage люди называют искусством, часто в рамках узкого сообщества людей, называющих себя "ценителями"): https://geektimes.ru/post/276980/

Но можно ли не распознавать, что нарисовано, а определять именно эстетические качества? Так сказать, объективировать художественную критику? Да, конечно. Вот порождение кратких описаний-рецензий для художественных фотографий (выученные на примере групп Flickr подписи к картинкам, определяющие их художественные атрибуты): https://arxiv.org/abs/1605.07699. А вот оценка эстетики фотографии с учётом её тематики: http://arxiv.org/abs/1606.01621 -- и она уже делается не хуже, чем средним работником "механического турка" (но проигрывает опытным оценщикам: то есть добрались уже до различий во вкусах отдельных людей).

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

В удивительные времена живём. Компьютеры стремительно теряют в искусстве статус инструментов, для их нарождающегося статуса и слова-то ещё не выдумано.
9:17 pm
Приложения для добавления мультур к культур: генерация речи по намерению
Моя бабушка в голове явно имела RNN в лучших традициях вышедшего год назад поста http://karpathy.github.io/2015/05/21/rnn-effectiveness/. Она любила приговаривать типовое продолжение к тем словам, которые вокруг звучали. Если "культура" -- то немедленно откликалась "культур-мультур", если "молодец" -- то "молодец среди овец" (независимо от ситуации, в которой звучало это "молодец"). Автоматизм, практически бессознательная выдача самых разных мемов, высекаемая слышимыми ключевыми словами. У моей тёщи всё то же самое: мемы в ответ на какие-то слова вылетают из неё без запинки, к месту они, или не к месту. На то они и мемы. Наверное, у тёщи тоже в голове RNN.

И вот RNN сейчас нам посадят в каждое приложение эдакими суфлёрами, чтобы они откликались мемами на наши попытки что-то сказать.

Пример первый: программа, которая будет сыпать молодёжными мемами из эмотиконов, к каждому "культур" она будет добавлять подходящий эмотиконный "мультур", для говорящих исключительно мемами подростков можно просто расслабиться и даже не запоминать и не понимать этих мемов и не знать эмотиконных значков, всю эту шибко интеллектуальную работу сделает для них суфлёр: http://getdango.com/emoji-and-deep-learning.html

В этой статье интересуются языком Emoji, этим визуальным олбанским. А меня интересует, что будет с человеками, которым программы-суфлёры будут делать соответствующий автокомплит -- подсказывая, что уместно говорить в разговорах о свадьбах и похоронах. К каждому культур добавляя строго индивидуализированный и культурно выверенный мультур. Личную реакцию заменяя на общественную.

Вот суфлёр для написания фантастических рассказов, натренированный на мемах из этих же самых рассказов: https://www.robinsloan.com/notes/writing-with-the-machine/

Вот ещё один пример того же самого, но в профессиональной сфере: автокомплит в программистском IDE -- http://cs229.stanford.edu/proj2015/312_report.pdf. Эта идея суфлёра сейчас расцветёт довольно бурно. Вот суфлёр должен подсказать целую программу из намерения программиста: https://arxiv.org/abs/1510.07211. Есть и более умеренные варианты, ограничивающиеся спеллчеком, но на базе выученых закономерностей из корпуса кода: http://techcrunch.com/2016/04/14/kite-wants-to-be-every-developers-pair-programming-buddy/.

Вот и мучайтесь: то ли считать, что это ход на автоматизацию, где за человеком остаётся намеревание, intent какого-то действия, сообщения, программы, а всё остальное берёт на себя уже отнюдь не тупой компьютер, или ход на опрощенчество, когда вся мощь отнюдь не тупого компьютера сводится к добавлению мультур к высказываемому культур. Куда вымощена дорога благими намерениями создателей автокомплитов, нам всё одно не понять. Наверное, в пользовательский рай. Но мультур победит культур, конечно. Он добавится к каждому и всякому культур, ибо неживые суфлёры будут повсюду, и они будут дьявольски удобны в этом раю.

UPDATE:
-- Smart Reply: Automated Response Suggestion for Email, http://arxiv.org/abs/1606.04870
-- фантастический рассказ про приложение для поддержания светских разговоров с подсказками тем и реплик: http://cacm.acm.org/magazines/2016/2/197432-future-tense-chatterbox/abstract (очень точно отражает пойт, который я пытался тут отразить -- насколько "подсказанная" речь может считаться искренней, если переходить от производственных ситуаций через художественные к личным, типа личной переписки, флирта и семейной жизни).
6:27 pm
lytdybr
Отдежурить по вечности: done. Мой текст "Игеоибиоценозы. А разум пахнет разумом, ты как ни назови" в свежем "Если" 3/2016 (http://esli.ru/) прямо на третьей странице, в рублике "Дежурный по вечности".

Семинар по будущему в пятницу прошёл бодро, пробежались по всем 117 слайдам -- но последние полчаса бежали очень-очень быстро, тезисы проговаривались без разворачивания аргументации. Материала там всё-таки на пару полноценных дней, я спрашивал, что нужно вычеркнуть в http://ailev.livejournal.com/1267068.html, потом решил спросить у самих участников семинара -- и в итоге аудитория разделилась поровну: половине была интересна теория будущего, а половине -- заметки по конкретным технологиям. Пришлось рассказывать всё, по факту 2/3 времени было про мышление о будущем (мой голос был решающим в этом акценте), а 1/3 про технологии. Эту тему про будущее потихоньку буду копать и дальше, мой вчерашний пост про "не только эволюцию" (http://ailev.livejournal.com/1268678.html) как раз из этой серии.

Несколько человек на семинаре по будущему были и на моих других тренингах, а пара человек с этого семинара появилась ещё и вчера на первом тренинге из шестидневного курса системного мышления. Разобрали огромное количество примеров на activity-как-физический объект и даже в порядке обсуждения 4D и методологического времени немножко заехали на жизненный цикл и V-диаграмму. Второй день тренинга -- через неделю, 19 июня (http://system-school.ru/event/trening-v2-zhiznenny-tsikl-sistem-i-proekta-2016-06-19/).

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

14 июня 2016 выйдет ArchiMate 3.0, но Archi его поддержит отнюдь не сразу: http://forum.archimatetool.com/index.php?topic=217.0. Будем ждать. Самым любопытным можно попасть на вебинар по презентации изменений (увы, я сам не смогу на него попасть, у меня запланирована другая встреча): https://opengroupevents.webex.com/ec3100/eventcenter/enroll/join.do?siteurl=opengroupevents&confId=1756481924

На несколько дней пропадали мои юзерпики из ЖЖ и ВКонтакте. Ко вчерашнему вечеру всё наладилось само собой, хотя ВКонтакте для окончательной наладки пришлось чистить кэш браузера (https://yandex.ru/support/common/browsers-settings/browsers-cache.xml). Но вот прямо сейчас юзерпик в ЖЖ опять перестал отображаться. Что у них там у всех происходит?!

А ещё идёт лавина каких-то спамовых френдований в фейбсуке и линкедине. Я отбиваюсь, как могу, но это трудно.

Таки досмотрел Голос.Дети. В этом году получилось как-то совсем не гуд, хотя детки-таланты там ой-ой-ой. Вроде и таланты, но восторга от большинства их номеров почему-то нет. Может потому, что там стало больше патриотики, попсы и меньше рока и джаза.
2:36 am
Моя космонтика: короткая теория всего
Жанр трактатов, в которых традиционно излагались "теории всего", как-то измельчал в последние годы, буквально. Я вот тоже не буду писать трактат, а изложу свой обрывок теории всего, свой обрывок метафизики (не полноценную онтологию-космологию, а прикладной кусочек, онтику-космонтику) в коротеньком посте, вот прямо здесь.

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

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

Да, моя космоонтика -- эдакая современная помесь всяких эволюционно-вычислительных "теорий всего" Вольфрама (https://en.wikipedia.org/wiki/A_New_Kind_of_Science, там principle of computational equivalence), Дойча (http://digitalphysics.ru/pdf/The_Fabric_of_Reality--David_Deutsch.pdf -- там прямо первая глава называется "Теория всего", а глава 6 "Универсальность и пределы вычислений") и Гегеля (http://philosophica.ru/gusev/35.htm -- но Гегель мутный, древний и путаный, так что ну его: в его гипотезах мы не так уж и нуждаемся, но некоторым моим читателям его упоминание будет приятно). Ну, или Докинза (http://ethology.ru/library/?id=318), Стенли (http://bookzz.org/book/2556650/4f33f2) и Домингос (https://www.amazon.com/Master-Algorithm-Ultimate-Learning-Machine-ebook/dp/B0147SEZ92/). Можно даже Кена Уилбера сюда записать, с его системно-просветленческим подходом, он ведь тоже про эволюцию, хотя и "в свете духовности", аки такой современный Гегель, который в отличие от Гегеля ещё и джип может водить (http://lib100.com/book/transpersonal/uilber_kratkaja_istoria_vsego/uilber_kratkaja_istoria_vsego.doc -- там в первой же главе его "Краткой истории всего" приводятся "двадцать принципов: модели, которые нас объединяют").

Много их таких, это уже общее место. Неуклонное развитие мастер-модели (назовём наше "нечто разворачивающееся-развивающееся" по примеру доминговского мастер-алгоритма) на разных подручных вычислительных средах. Конечно, мастер-модель может очень по-разному "выполняться" или "оцениваться" (evaluate) -- один "выполнитель" может считать модель алгоритмом и вычислить что-то по его указаниям, другой эту же модель "оттранслирует" с одного языка на другой, для каких-то случаев (например, 3D модели) выполнение/оценка модели будут означать воплощение в реальности, для метамодели выполнение может оказаться созданием самой модели -- и их там будет целая цепочка, на разных уровнях моделирования, разных логических уровнях, разных уровнях абстракции. Ну, и модели совершенно необязательно будут текстовыми (в локальных представлениях), они могут быть и в распределённых представлениях (коннективистские), голографические, всякие. Жизнь сложна, никто не обещал, что её моделировать просто.

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

и многое другое -- это всё непрерывное усложнение модели природы (включая саму модель), всё более и более точное моделирование, отражение мастер-моделью природы. Это всё идёт от работ Stephen Jay Gould (вот пересказ от Stanley и Lehman):
in evolution, once all the simple ways to live are exhausted, the only way to create a new species or niche is to become more complex [48]. In other words, there are only so many ways of being a bacteria. That’s why increasing complexity is almost inevitable if evolution is to continue.

But these increases in complexity are not arbitrary. Rather, they reflect the properties of the world in which evolution takes place: Eyes represent the presence of light in the universe. Ears signify mechanical vibration. Legs are reflections of gravity, and lungs of oxygen.

In the usual interpretation of evolution, innovations like eyes or lungs might be considered objective improvements, increasing a creature’s ability to survive. But they can also be viewed as the inevitable tendency of a search with no final objective to accumulate information about its world. After all, there was nothing particularly wrong with the original single-celled organisms that possessed none of these fancy additions. They were surviving just fine. The only problem was that to do something new required reflecting some aspect of the natural world back into the DNA. Sightdriven behavior isn’t strictly necessary—it’s just that if you keep trying new designs through mutation, even though there’s no objective, eventually you will hit upon the fact that light exists. Then it will become a part of evolution’s accumulated inventory of information.

In a sense, over eons our bodies have become a kind of encyclopedia of facts about the universe in which they exist. Not only are many physical aspects of reality reflected in our bodies’ structure (for example, light, sound, gravity, heat, air, etc.), but evolution has continued for so long that we now actually encode incredibly specific details of the universe somewhere within us: Our brains remember which planets revolve around the sun and even the price of a bagel at the corner shop. The ability to learn and adapt over our lifetime has propelled the evolutionary information accumulator to a recent extreme. Of course, that doesn’t mean the process will stop with us. But what we observe again is that a search without a clear objective (evolution in this case) accumulates information as it moves from the most simple single-celled organisms to the most complex animals. That’s why the creatures of Earth have become a kind of mirror held up to the world that reflects back in tremendous diversity the physical possibilities enabled by our universe.
То есть можно говорить про эволюцию как об "обучении", но не менее интересный разговор получается при разговоре о "поиске" и "открытии" (познании, отражении). Моделирование -- это ведь необязательно "ручное моделирование", модель или какую-то её подмодель можно выучить (как в машинном обучении), найти, открыть.

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

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

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

Действительно, моделей в мастер-модели и алгоритмов моделирования много разных. Скажем, ДНК это модель, исполнение которой приводит к воплощению закодированного ей организма. Эта ДНК была получена мастер-моделированием, и для меня уже неважно, что там было "выучено" эволюцией, а что затем "вручную отмоделировано человеком" (и засунуто в эту самую модель через CRISPR-редактирование генома). Мышление унифицировано, я вполне могу думать о "гибридной эволюции" (есть и такое): часть её придумывается людьми, часть придумывается машинами по какому-то алгоритму (например, байесовскими алгоритмами), часть идёт по линии природной эволюции. Одни модели редактируют другие модели, задаваясь при этом третьими моделями, выстраивая гирлянды языков этих моделей и гирлянды собственно моделей (про многоуровневость см. http://ailev.livejournal.com/1193158.html, а ещё логические уровни Бейтсона, а ещё уровни абстракции и соответствие им уровней представления в глубоких нейросетях -- http://ailev.livejournal.com/1266411.html, и т.д. -- вплоть до шести значений "мета" в http://ailev.livejournal.com/1053878.html). Такие рассуждения никакого студента computer science, физика или математика, или философского логика не смутят.

При этом будут расцветать сто цветов, все сто видов мастер-моделирования: место найдётся для самых разных оптимизаций-поисков-адаптаций-обучений (глубоких и мелких). Ибо есть no free lunch theorem: https://en.wikipedia.org/wiki/No_free_lunch_theorem, https://en.wikipedia.org/wiki/No_free_lunch_in_search_and_optimization. Эта теорема означает, что универсального мастер-алгоритма моделирования, универсальной мастер-модели нет. Универсальность тут означает, что если какой-то алгоритм влёгкую (с малой памятью и малым временем вычисления) справляется с каким-то одним типом проблем, то у него будет полный караул с другим типом проблем. А у другого алгоритма всё с этими проблемами будет наоборот. Поэтому больше проблем -- больше алгоритмов. Это означает, что с какими-то проблемами справятся эволюционные алгоритмы, а с какими-то другими байесовские, а с третьими -- коннекционистские, а с какими-то четвёртыми -- дикие их гибриды, или вообще ещё неизвестные. Хотя да, формально-математически все эти алгоритмы универсальны. Но практически они очень разнятся для разных проблем. Так что всяких видов моделирования будет хватать, их будет по мере роста сложности мастер-модели всё больше и больше, они сами будут всё сложней и сложней и моделировать при этом всё больше и больше аспектов мира, потихоньку в ходе этого мастер-моделирования открываемой/выучиваемой/находимой вселенной. Повторюсь: я избегаю тут слова "эволюция" потому как это только один из видов алгоритмов мастер-моделирования.

Это означает, что обращение к эволюции и её бесцельности (http://ailev.livejournal.com/1254147.html) это ещё не вся картинка. Если мы говорим о всей планете в целом, то можно считать, что предприниматели по факту обеспечивают эволюцию продуктов и сервисов. Но вот если мы говорим о какой-то фирме, то просто быть частью мировой эволюции уже не хочется, есть ведь и другие способы поучаствовать в мастер-моделировании ("пусть загнётся твой продукт сегодня, а мой завтра" -- и для этого уже нужно что-то планировать, а не просто тыркаться по-эволюционному со случайными мутациями и скрещиваниями и смотреть, что получится). С одной стороны, я втаскиваю в разговор о предпринимательстве техноэволюцию, с другой стороны я открываю дорогу и другим рассмотрениям. No free lunch позволяет сказать, что где-то предпринимать лучше одним методом, где-то другим. Какие-то одни варианты стратегирования сработают в одной ситуации, какие-то другие -- в другой. Но итог будет один и тот же: совокупная сложность продуктов и услуг возрастёт, они будут лучше и лучше отражать наш запредельно сложный мир, включающий, впрочем, и нас самих (и наших роботов, которые тоже потихоньку подключаются к мастер-моделированию).

Через слово "модель" втаскивается и системный подход. Модель несёт на себе какие-то главные черты моделируемой системы, а главность определяется интересом деятеля. Натурфилософы и физики могут "деятеля" заменить на "наблюдателя", но я бы предпочёл оставить деятеля и его интересы -- и в мастер-моделировании тем самым появляется деятель, даже если речь идёт о мастер-самомоделировании прородой самой себя. Спросите физиков про квантовую физику и наблюдателя, они вам ответят про "а какие были законы квантовой физики, когда из наблюдателей были только динозавры, или микробы, или ещё и их не было". Вот примерно по этой линии рассуждения можно строить и мою короткую космонтику, обобщая понятие деятельности до такого же уровня, как физики обобщили понятие наблюдения. Запутано, да (pun intended, все эти quantum entanglement, обычно связанные с наблюдателями -- только все эти "описания состояний" нужно будет распространить и на "деяния"). Нет, у нас тут не квантовая физика, смело считайте, что я тут рассуждаю метафорически, но поскольку речь идёт о космонтике, то "в каждой метафоре есть доля метафоры". А так как до этого места мало кто дочитает, то электроды мы сделаем из дерева ценных пород.

Ну, и завершу отдельным соображением для гегельянцев и уилберовцев, которые не могут жить без Духа и Сознания соответственно. Схема -- это модель (обычно такая модель, которая сохраняет топологию моделируемой системы). Одна из первых "механистических" моделей сознания -- это attention schema theory (http://ailev.livejournal.com/1193568.html), теория сознания как схемы внимания. Тут я подмигиваю, и говорю: как вам, гегельянцы и интегральщики, мастер-модель как схема внимания = сознание бытия/природы, а? ;)

Disclaimer: вся эта космонтика -- чистые спекуляции, относиться к тексту нужно без звериного пафоса. Скажем, Гегель тут чисто философов подразнить, по этому пункту серьёзные комментарии сразу не стоит писать. Но после разбирательств с тем, как работают распределённые представления, я вполне могу себе позволить писать тексты не для формальных человеков-компьютеров, а для интуитивных (и при этом помним, что теории про различия левополушарного мышления и правополушарного оказались преувеличенными, и все эти "интуитивности" отличненько потом сериализуются в словах и поверяются логически, равно как в словах и логике потом находятся свои интуиции -- но я начну сейчас с обращения к интуиции, дам "поток сознания", не ищите строгой логики и точных фактов. Не теряйте леса за деревьями, не цепляйтесь к словам или даже предложениям, оцените направленность текста).
Friday, June 10th, 2016
12:58 am
lytdybr
Чего я не успеваю:
-- читать статьи по deep learning, хотя там ой-ой сколько интересного идёт. Из моделей активно отжимается вода: типовая фраза в половине сегодняшних работ "we obtain state-of-the-art results with almost an order of magnitude fewer parameters than previous work". Во второй половине сегодняшних работ -- всевозможные differentiable architectures, которые всё кучерявей и кучерявей. Ну, и результаты ползут по проценту-два в месяц. Медленно, но десяток процентов ошибки в год исчезает. Так, Natural Language Comprehension у людей на датасете CBT-NE 81.6%, а у неживого EpiReader 71.8% (http://arxiv.org/abs/1606.02270), а когда в дело вступает команда с участием Yoshua Bengio, то нежить отыгрывает ещё две десятых процента - 72.0% (http://arxiv.org/abs/1606.02245). Дальше можно обсуждать: эти 10% проигрыша людям вай-вай-вай ещё как плохо, или вай-вай-вай как уже хорошо. Правильный ответ тут в обсуждении общей скорости улучшений, а не конкретного этих результатов. Пост об этом нужно было бы написать хотя бы для памяти, в какие восхитительные времена я жил. Это как первые годы жизни компьютеров, первые годы развития интернета.
-- попрограммировать. Впервые за долгие годы зачесались руки (это я решил пару десятков задач на Питоне, чтобы показать отроку "как надо"). Но это точно блажь, я даже не заморачиваюсь. Это и не нужно успевать.
-- поглядеть более внимательно, что там происходит с Julia. Там какие-то тектонические подвижки идут на всех фронтах. Я понимаю, что у меня зуд из той же серии, что "попрограммировать", тем не менее. Вот, полюбуйтесь на keynote talk открывающейся через пару недель тамошней конференции: http://juliacon.org/ (абстракты -- http://juliacon.org/abstracts.html, там есть ну очень аппетитные темы). Но родных пакетов для Julia пока чуть более тысячи http://pkg.julialang.org/, этого, конечно, мало. Хотя Julia берёт пакеты на си и питоне и даже R как родные, так что это не должно сильно жать. Ух, пока писал этот абзац таки что-то поглядел )))

Зато участникам завтрашнего семинара "про будущее" выслано 117 слайдов, и первым делом мы будем там разбираться, в чём их интерес: побольше теории о том, как об этом необъятном будущем структурированно думать, или побольше пересказа содержания новостных лент с моими персональными оценками по тем или иным технологиям. Организаторы семинара склонялись ко второму, я считаю более ценным первое. Поэтому мы решили послать им всё сразу и спросить про предпочтения -- а я буду готов к любому ответу. Сделаем customization-on-the-fly, вполне в духе времени.

oetar на лебедевских чтениях подарил мне книжку "Глина" Дэвида Брина (http://royallib.com/book/brin_devid/glina.html), аплоад личности в глину (трансгуманисты всех стран, объединяйтесь!). Големы с биркой на лбу, големы на глиняных ногах и много-много зарисовок из мира будущих технологий. Вот, например, как раз к дискуссии по поводу неудачной рекламки коллаборативного нейронета (https://www.facebook.com/groups/nevronet/permalink/646886058811052/): "Ни угроз, ни обещаний. Ни предупреждений не лгать. Наверное, нас будут слушать какие-то сложные нейросетевые программы. Их нельзя назвать разумными в строгом смысле слова, но чтобы их обмануть, требуются немалая концентрация и удача. Альберт это умел, а потому я должен суметь тоже" -- это 2001 год, Дэвид Брин всё знал про нейросети ))) Мне роман понравился, хотя последние пятьдесят страниц всё в нём стало ужасно, нудно и притянуто за уши. Интересно, читал ли Хирому Аракава "Глину"? Ибо в его "Стальном алхимике" (https://en.wikipedia.org/wiki/Fullmetal_Alchemist) подозрительно много тамошних идей (спойлить не буду, каких), а манга начала выходить тоже в 2001 году. Ну, или всё это "висело в воздухе", и в 2001 году вышло ещё несколько менее знаменитых произведений на этих идеях, просто я до них не добирался.

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

Ну, и началась "обязательная программа домашнего чтения по литературе", выданная в лицее. Ха, они проходят "Ревизора"! Я даже был вынужден выслушать за завтраком что-то про Добчинского и Бобчинского. А ещё говорят, что в школе сегодня не проходят мёртвых языков! Ничего подобного! Проходят, и с каждым годом это всё больше и больше походит на латынь и древнегреческий: изучение ради изучения, предмет застыл и догматизировался. Когда я поинтересовался в школе, ещё старшеклассником, почему мы меньше всего изучаем литературу как литературу, а всё больше норовим использовать эти книжки для разбирательств по психологии, я не получил внятного ответа от учителей. Они что-то пытались мне высказать про "типичных героев в нетипичных обстоятельствах", а я им говорил, что глупо изучать жизнь по выдуманным историям, если уж так хочется, нужно учить жизнь по случаям из самой жизни -- брать и разбирать так же, как выдуманные истории. Но хотя бы было понимание, что разбираешь что-то реальное, а не фантазии часто полусумасшедших авторов! Впрочем, у моего отрока совершенно другое мнение на этот счёт: он полностью игнорирует пока эту манипуляцию с разбирательством значения текстов и относится как к просто книжке: "там все действия были не смешные, хоть это и комедия, но вот последнее действие было действительно смешное". Вот и весь "Ревизор" в восприятии современного отрока.

Бычок таки не выдержал улитки и сдох. Правильно в книжках написано, что улитки в аквариумах -- зло. И да, это уже не улитка, а улитки, их уже парочка.

В фейсбуке и линкедине какое-то запредельное число попыток френдования ботами и "социальными маркетёрами". Мамы должны сейчас детей воспитывать не просто "не ври, не воруй", но "не ври, не воруй, не спамь" -- но все встреченные мной профессиональные спамеры категорически отказываются свои действия называть спамом или чем-то плохим, "ничего личного, это просто работа", отвлекать миллионы и миллионы людей, хотя бы на пару секунд каждого. Бытовой фейсбук позволяет легко delete request, то профессиональный линкедин предлагает либо сразу зафрендовать, либо просто посмотреть, а вот отказать -- это уже сложная и долгая операция с нажатием множества кнопок.

Как я понимаю, вышли две мои публикации в новом "Если" (первом и последнем), но самих журналов у меня нет, они в закрытом доступе. Так что читайте меня в бумаге, потом расскажете, как оно.
Wednesday, June 8th, 2016
11:39 pm
Образование по машинному обучению
Провёл сегодня двухчасовую лекцию "Образование по машинному обучению" на семинаре РАБО (Российская ассоциация бизнес-образования) и МТИ (Московский технологический институт) "Нейротехнологии: новая перспектива в бизнес-образовании".

На этом семинаре были организаторы дополнительного образования из разных ВУЗов. Лекция перед моей была о том, чем обычно занимается стартап в области машинного обучения. А я в своей лекции поставил вопрос: как подготовить такого работника, которого радостно наймёт такой стартап? Что должны знать выпускники, какие предметы у них должны быть в учебном плане и на каких кафедрах искать преподавателей этих предметов, сколько лет нужно эти предметы учить, чтобы выпускники смогли понравиться хорошей команде "машинных обучателей"? Можно ли обойтись "трёхдневным тренингом для подготовки инженера машинного обучения", как это сейчас принято в "бизнес-образовании"?

Мне кажется, ответить на эти вопросы вполне удалось, и довольно подробно. Видео или аудиозаписи, увы, не было, но слайды вот (http://www.slideshare.net/ailev/ss-62869750):


Надеюсь, из слайдов какие-то идеи будут понятны (тем более что многие слайды были уже прокомментированы в других моих докладах по инженерии машинного обучения, а ещё я на эти темы уже неоднократно писал в блоге).
[ << Previous 20 ]
About LiveJournal.com