Некатегориальные, распределённые представления

Nov 16, 2015 23:43

Разговоры последней пары недель показывают, что главная точка непонимания -- это некатегориальные, распределённые представления знания. Нелогические, несводимые даже к нечёткой логике (которая ведь тоже логика) многомерные представления знания. 160млрд. параметров как представление знания по аналогиям слов -- это дало 58% улучшение ошибки по сравнению с лучшими результатами по синтаксическим методам: http://arxiv.org/abs/1506.02338, http://spectrum.ieee.org/tech-talk/computing/software/biggest-neural-network-ever-pushes-ai-deep-learning. Никаких "правил", "формул", "категорий", да и сами слова там представлены отнюдь не символами.

Переход к таким распределённым представлениям (https://www.google.com/search?q=distributed+representations) -- это отход от принципа локальности, аналог перехода от механики макротел с чёткими границами к квантовой физике с "распределениями" и spooky actions в работе со знанием. Знание оказывается не привязано к символу или классифицировано категориально, а растворено-размазано в какой-то вязкой многомерной аналоговой структуре. Нет "частицы", и даже "волны" с чётким фронтом, привычные представления с таким знанием перестают работать. Категории, знаки, символы оказываются поверхностными тенями на стене от какой-то глубокой структуры распределённого представления знания -- и можно описывать механизм отбрасывания теней примерно так же, как механизм формирования вокселя объемной голограммы из её пиксельного плоского голографического представления.

Конечно, символьный и категориальный мир никуда не уходит. Но он оказывается верхушкой айсберга разлитого нейронных сетках (хотя распределённые представления -- это не только нейронные сетки) распределённого, нелокального знания. Ибо распределённые представления возможны не только для картинок, звуков и прочих "почти аналоговых", природных сущностей. Распределённые представления возможны и для символьных знаний (например, http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/). Эти символьные знания, такие разные в символьном и категориальном мире, живущие в несовместимых друг с другом принципиально онтологиях, принадлежащие к разным языкам -- они вдруг оказываются рядом в каком-то многомерном (200-500 измерений) пространстве.

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

Лингвисты, конечно, не останутся без работы. Просто содержание их работы меняется, меняются их модели -- http://www.mitpressjournals.org/doi/pdfplus/10.1162/COLI_a_00239

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

Логики-онтологи-семантики-агентщики-классики AI никуда не денутся. Они сейчас квинтэссенция цивилизации, динозавры. Пара тысяч лет развития, её никуда не денешь. Эти выскочки из deep learning бегают среди этих динозавров, как мелкие крысоподобные зверьки. Но при этом решают задачки, которые всем этим классикам недоступны. Не нужно игнорировать этого факта. Динозавры, конечно, породили курочек и воробушков. Но мелкие крысоподобные зверьки породили в том числе и людей.

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

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

Хотя я считаю, что главная проблема -- это отсутствие понимания того, какими методами решать какие проблемы, и как сочетать эти методы. Суп вилкой не едят, ибо неудобно. Но для того, чтобы выбирать вилку, ложку или половник, нужно хотя бы знать об их существовании и возможностях. Увы, такого знания сейчас нет. Про логику-онтологию-классическую лингвистику и т.д. знают массы, этому учат тысячи лет в университетах, вся система научных ценностей на это нацелена. Про deep learning массы знают только название, мало кто знает, в чём там фишка. А ведь это только часть representation learning! Более того, кроме находящегося сейчас на пике славы коннекционизма и замёрзнувшего в зиме AI символьного есть ещё и разные другие "лёрнинги" -- эволюционные, байесовские, по аналогиям. И сейчас они все взаимно начинают смешиваться (не устану повторять тут ссылку на книжку The Master Algorithm ровно про это: http://www.amazon.com/dp/0465065708/). Вообще, переход от массовой инженерии знаний к массовому выучиванию знаний (с учителем, без учителя, с умным учителем и т.д.) это тоже революция, эволюционный скачок. Я думаю, в этом направлении будет ещё много новостей. Алгоритм, выучивающий модель языка за ночь и алгоритм, модель языка в котором настраивают пять лет пять онтологов и лингвистов -- это, как говорят в Одессе, две большие разницы.

Я вовсе не противник традиционных логических, синтаксических, категориальных (и даже теоркатегорных) методов знаниевой/эпистемологической работы. Ньютоновская механика, как вы помните, не была отменена квантовой механикой. Но квантовая механика позволила решить множество "неразрешимых загадок" и открыла новый инженерный мир. Сейчас в знаниевой науке и инженерии ровно такой поворотный момент. И я не хочу промахнуть мимо этого поворота.
Previous post Next post
Up