Шляпник (russhatter) wrote,
Шляпник
russhatter

Нейронные сети: прорыв или не прорыв. Часть II- прорывы.

Начало тут.

2. Прорывы.

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

А. Человечеству более или менее впервые в этом веке принесли и продемонстрировали настоящее обещанное будущее. И все - рады.

Б. Нейронные сети в нынешней реинкарнации вызвали мощнейший прилив энтузиазма.

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

Многие тут скажут - и будут в определённом смысле правы: Шляпник, поздравляем! Ты открыл то, что и так все знают!

И что мне тут отвечать? Смотрите, я написал первую часть этого опуса - и она вызвала интерес. А ведь там тоже были только общие слова - и никаких подробностей! Так что, может, всё же почитаете мои комментарии? Может там я чем-то вас развлеку?

3. Про эпоху НТР

Начнём с конца - с эпохи НТР. Давно это было, "игроком" на поляне я застал только самый-самый конец той эпохи. Но тем не менее, что-то сам видал, о чём-то читал, о чём-то догадался. Что в ней мне сейчас важно?

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

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

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

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

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

В принципе, у "системы управления будущим", которая рулила процессом в эпоху НТР, у грозных конструкторов и суровых директоров, сложились патологически унылые отношения с программированием. В области информационных технологий вообще - вроде бы ничего, а как вспомнишь именно про программирование - так увы и ах. Вот, к примеру, один из ярчайших эпизодов: несколько программистов, до чёртиков уставших писать гигантскую операционную систему OS Multix, объединяются и за полгода пишут первую версию OS Unix. Которая как раз живёт и поныне, и помирать не собирается. Оговорюсь: это, собственно, не история, а короткий анекдот по её следам, но ведь он основан на реальных фактах. Гигантоманские проекты по программированию в эпоху НТР неизбежно проваливались, гора рождала очередную мышь. Но: начав свою личную карьеру в первой половине 80-х, я искренне считаю программистов 60-х и 70-х - героями - раз у них хоть что-то получилось написать и отладить! Это был просто героизм. И идеи, которые у них тогда родились - многие, очень многие из них я также искренне признаю гениальными. (Ближе всего мне - стандарт SGML, но если бы только о нём шла речь.) Но вот управляться этим процессом руководство эпохи НТР не сумело. И это, наверное, как-то оправдывает то, что эпоха взяла - да в 90-х и закончилась. (Как раз решения, принадлежащие последующей эпохе, нет-нет, да шокируют своей безграмотностью. Во что обошлось человечеству решение раннего Микрософта использовать для перевода строки два символа вместо одного, и породить т.н. "текстовые файлы" - ... да при таких друзьях человечеству никакие враги не страшны. Но я отвлёкся...)

4. Про инженеров

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

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

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

5. Про шахматы и Гагарина.

Можете удивляться, можете нет, но историю с победой Компьютера над Человеком в шахматы и в Го - я ставлю в один ряд с полётом Гагарина - а до того с первым спутником и собаками Белкой и Стрелкой. Более того, по размышлению, мне даже почти нечего добавить в этот ряд, скажем так, с 30-х годов XX века. Почему? Да потому, что это уникальные события, разовые, и как правило Будущее приходит к Людям по-другому. А тут случается просто чудо: когда-то обещали, что так будет - в какой-то момент оно и случилось - и все счастливы.

Кого впечатлил полёт Гагарина? - всех, кто хоть как-то представлял, что такое Космос. Если это и не всё Человечество, то всё равно это очень-очень много людей. И все они получили свою долю восторга, простого и искреннего.

Теперь: под впечатлением вся та часть Человечества, которая понимает, что такое шахматы и Го. Это - примерно столько же, сколько и тогда. И радость - может, и ослабленная, может, и распределённая как-то по времени, она - для всех.

Теперь с другой стороны: а так ли уж нужно было Человечеству видеть Гагарина в Космосе? Так ли уж важно людям, что компьютер обыграл человека? Какую пользу мы - Вы конкретно, я, он, она - имеем? Ответ-то - если честно - простой: а нет такой конкретной пользы! Но зато есть Радость.

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

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

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

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

* * *
Третья часть: работа над ошибками.
Будет ещё третья часть: про перспективы.
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

  • 72 comments