Символьные онтологии и распределённые представления: нужны оба двое

Dec 19, 2015 22:13

Оригинал взят у ailev в Символьные онтологии и распределённые представления: нужны оба двое
Ну вот, я теперь в попечительском совете Ontolog Forum (http://ontolog-02.cim3.net/wiki/ONTOLOG_BoardOfTrustees), вместе с John Sowa, Matthew West и ещё десятком других профессоров-онтологов. Я не думаю, что онтологии быстро куда-то исчезнут. Отнюдь. Они просто перестают быть фронтиром и тем самым число активно занимающихся ими людей не будет быстро расти. Пять лет назад это было остромодно, теперь ontology engineering вышло на плато, а остромодным становится распределённое представление знаний. Всё, что я могу сделать в этом попечительском совете, так это обратить внимание на необходимость в computational ontology активней работать также и с распределёнными представлениями онтологий, не ограничиваться только логическими представлениями. Но это, конечно, terra incognito, этим практически никто пока не занимается.

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

Например, меня уже некоторое время занимает работа http://arxiv.org/abs/1511.06426 (Reasoning in Vector Space: An Exploratory Study of Question Answering -- это в которой на почти всех 20 фейсбуковских тестах ответов на вопросы достигли почти 100%). Она анализирует отношения и репрезентацию этих онтошений. Вот работа вдоль примерно той же линии http://arxiv.org/abs/1512.01715 (A Restricted Visual Turing Test for Deep Scene and Event Understanding).

Есть некоторая вероятность, что развитие нейронных сеток пойдёт по цивилизационному пути: сначала это будет behaviour reflex (ходьба, вождение, распознавание предметов), потом "интуиция" как mind behaviour reflex, а потом всё одно будут попытки выйти на эффективно вычисляемые формальные представления. Это будет некоторый возврат к логике и фон-неймановской архитектуре вычислений, ибо компьютерные нейронные сетки точно так же будут тормозить на логических вычислениях, как и мокрые нейронные сетки -- но множество вычислений представляет собой не "чуйку" и "интуицию", а вполне себе логические выводы, так что итоговая архитектура будет включать универсальное формальное представление (продолжение линии SysMoLan, как онтологического системного языка -- http://ailev.livejournal.com/1127145.html) и универсальное обобщённое векторное представление.

Ещё один аргумент в пользу работы с онтологиями -- это привычные человеку объяснения. Вот, например, https://papers.nips.cc/paper/1152-extracting-tree-structured-representations-of-trained-networks.pdf (Extracting Thee-Structured Representations of Trained Networks), из обученной нейронной сетки с "не-пойми-чего внутри" вытаскивают аппроксимирующие её деревья решений, которые для человека будут запредельно сложны (мы ж понимаем, что логические языки типа Agda и Coq не для слабонервных, к ним не все прорываются даже из тех, кто справляется с Haskell). Но в отличие от разглядывания миллионов или даже миллиардов коэффициентов там будет хотя бы шанс с ними разобраться. Вытаскивание логики происходит путём расспрашивания сетки о том, что она знает: accurately describe the networks' concept representations. We believe that our algorithm, which takes advantage of the fact that a trained network can be queried, represents a promising advance towards the goal
of general methods for understanding the solutions encoded by trained networks.

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

Заодно пара disclaimers:
1. Я ни разу не говорил, что deep learning это наше всё. Будущее за гибридными архитектурами. И эта гибридность будет приходить самыми разными путями. Вот, например, явный ход на стык нейросетей и глубоких деревьев решений: http://blogs.technet.com/b/inside_microsoft_research/archive/2015/12/16/microsoft-led-research-team-wins-marr-prize-outstanding-computer-vision-research.aspx (по ссылке приведён ход мыслей: берём наши алгоритмы, и привносим туда идеи, которые сработали в deep learning. Cама работа тут: http://research.microsoft.com/pubs/255952/ICCV15_DeepNDF_main.pdf -- We present Deep Neural Decision Forests - a novel approach that unifies classification trees with the representation learning functionality known from deep convolutional networks, by training them in an end-to-end manner. To combine these two worlds, we introduce a stochastic and differentiable decision tree model, which steers the representation learning usually conducted in the initial layers of a (deep) convolutional network. Our model differs from conventional deep networks because a decision forest provides the final predictions and it differs from conventional decision forests since we propose a principled, joint and global optimization of split and leaf node parameters).

2. Я никогда не говорил, что учебные алгоритмы deep learning будут выполнять весь reasoning. Отнюдь, формальный логический вывод они будут скидывать в логические ускорители, а сами использоваться как "дьявольская интуиция" и интерфейс с аналоговым окружающим миром.

3. Логика/онтологии совершенно необязательно будут в варианте OWL или даже классической Common Logic. Видно уже, что математика тихонько уходит в гомологические алгебры и теорию гомотопий, при этом теория категорий отражает как раз этот сдвиг. Где-то там и нужно искать будущие онтологические представления. И они, вполне возможно, придут по линии типов данных в языках программирования, а не по линии трипл-сторов и прочих NoSQL, не по линии "баз данных".

4. То, что я пишу про эпистемологию (озабоченность происхождением знания, оперирование знанием и т.д.) не отменяет вопроса про содержание знания: если знание описывает мир, то вопрос "что есть в мире" продолжает быть интересным. Хотя ответ на него может быть иногда уклончив: при behavioral reflex нам совсем необязательно знать/рефлектировать знание, достаточно только получать и использовать знание, какое бы оно ни было. Когда вы едете на велосипеде, вас мало волнует онтология ньютоновской физики в вашей голове, и это может не волновать и робота тоже: будет держать "выученное" равновесие. Но в какой-то момент вам захочется узнать явно эту физику, даже если она вам не нужна будет для программирования едущего на велосипеде робота. Другое дело, что компактифицированное символьное представление знания, эта неоонтология, может оказаться совсем непохожей на сегодняшние представления.

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

И про кубиты я пока сказал чисто метафорически, продолжая метафору начала прошлого века про ньютоновскую механику и квантовую! На собственно квантовый компьютинг в работе со знаниями у меня пока мозга не хватит, хотя тамошние люди и говорят, что через 10 лет полноценный квантовый компьютер, а не только annealing, будет вполне доступен -- и это наверняка породит очередную волну представлений знания и очередную волну алгоритмов работы с ним. В этом смысле "оба двое" в заголовке намеренно: "Собирательные числительные оба и двое обозначают одно и то же число - 2, но синонимами не являются. С помощью слова двое мы выделяем два предмета из большего количества. С помощью слова оба - называем конечное количество предметов -- только два" (http://school-collection.edu.ru/dlrstore-wrapper/ebbc76cf-46b6-4d51-ad92-d9a84db35cfa/%5BI-RUS_06-05%5D_%5BTE_14-SU%5D/%5BI-RUS_06-05%5D_%5BTE_14-SU%5D.html).

deep learning, нейросети, аналитика, онтологии, перепост, компьютеры

Previous post Next post
Up