Онтология и онтодизайн: тексты, видео, картинки

Выучить онтологию, а потом творить с её помощью

Выучить онтологию, а потом творить с её помощью

by Евгений Волков -
Number of replies: 0

Пишет Anatoly Levenchuk (ailev)

2016-08-27 18:41:00

http://ailev.livejournal.com/1289718.html

Выучить онтологию, а потом творить с её помощью

Вот ещё одно исследование по культурно-обусловленной кривизне в картине мира, выучиваемой из больших объёмов текста — Semantics derived automatically from language corpora necessarily contain human biases, http://arxiv.org/abs/1608.07187. В естественном языке присутствует довольно много остатков древних вариантов онтологии, в текстах они часто встречаются, и из-за этого выученное семантическое пространство оказывается кривоватым. Я в http://ailev.livejournal.com/1281819.html цитировал из этой линии работ Quantifying and Reducing Stereotypes in Word Embeddings https://arxiv.org/abs/1606.06121 и Man is to Computer Programmer as Woman is to Homemaker? Debiasing Word Embeddings,http://arxiv.org/abs/1607.06520.

Если приглядеться, то в этой линии исследований по выявлению и устранению культурно-обусловленных biases можно выделить следующие проблемы:

1. Разница между семантикой и онтологией (семантика — это про язык, "как говорят". Онтология — это про мир, "что есть в мире". Если обсуждаются biases, то это сдвиги того "как говорят" по отношению к тому, "что есть в мире"). Тем самым в данной линии работ выходят на различия представлений лингвистических (семантика, про "понятия", "значения") и онтологических (непротиворечивая структура мира, данная в рамках непротиворечивого описания — обратите внимание на разницу мира и описания!). Многие нам известные лингвисты приходили к выводу, что чисто лингвистических представлений для понимания языка (NLU, natural language understanding) недостаточно, и нужно как-то обращаться к онтологии. Но как именно? Ведь нет более мёртвой вещи, чем жёстко определённая раз и навсегда картина мира — метафизику ведь не зря критикуют, а онтология это её часть. И без онтологических рассуждений обойтись не удаётся.

2. Но если мы и хотим выучить из каких-то текстов картину мира, онтологию, а хоть и в виде "семантического пространства" (разные варианты предварительно выучиваемых embeddngs, и не забываем критику Nando de Freitas в http://ailev.livejournal.com/1240509.html — это именно про "значения", а ведь есть ещё смысл! выучивание значений интересно только как база для определения смысла!), то все проблемы онтологов будут нашими, даже если мы-лингвисты о них не знали. Например, ontology revision (вы можете прихватить какой-то один факт, который приведёт к необходимости переструктурирования всей вашей онтологии). Или одновременное выучивание нескольких онтологий, "исторических" (скажем, "земля плоская") и "современных" ("земля круглая", "земля геоидная"). Или винегрет из онтологий нескольких близких и далёких научных школ (в психологии, например, до сих пор нет хоть какого-то единства по поводу тамошней онтологии — сравните, например, с физикой или химией).

3. Важность слова shared в определении онтологии: в момент появления нового знания оно не онтология, это просто чьи-то личные мысли. Но по мере того, как знание овладевает массами, оно становится онтологией. Большинство современных подходов предполагают выучивание онтологии у масс, т.е. выучиваются только фолк-онтологии, со всеми их biases, ошибками и суевериями. Онтологическая инженерия понимается часто именно как запечатление этой народной онтологии в формальном языке. Но это не позволяет говорить о прямой онтологической инженерии, применении принципов радикального конструктивизма. Меня этот аспект очень трогает, я ведь и сам радикальный конструктивист, поэтому для меня важны и аспекты эпистемологические, и аспекты деятельностные (http://ailev.livejournal.com/661094.html,http://ailev.livejournal.com/860017.html), с ними тоже нужно разбираться.

4. И ещё хотелось бы напомнить "мою космонтику" http://ailev.livejournal.com/1268678.html, где тоже поднимаются проблемы онтологизирования, моделирования в связи с эволюцией и развитием, так что "выучить онтологию" и расслабиться не получится, всё это нужно как-то переводить на life-long learning. Все эти biases плывут во времени, плывут в разных социумах, обучение на материале учебников будет сильно отличаться от обучения на материале коммунистической прессы или статей в arxiv — и это всё тоже нужно как-то разводить, застывшие канонические семантические пространства не будут работать, часть возражений от Nando de Freitas из http://ailev.livejournal.com/1240509.html сюда.

Онтологические (и по сопричастности метафизические) проблемы, конечно, будут вылезать не только из работ по human biases, не только из необходимости обеспечивать рассуждения (логический вывод) в понимании естественного языка, не только из связанных с решением инженерных задач работ. Для меня, например, связь текстов-описаний и реального физического мира (например, фотографий — буквально, "картины мира") это тоже часть выхода на онтологии. Вот, например, https://github.com/paarthneekhara/text-to-image — Text To Image Synthesis Using Thought Vectors. Посмотрите, какая интересная архитектура, где по описаниям генерируются картинки:

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

А кто учить будет? Судя по Вашим записям, Вы считаете, что IA, и, наверное, это так. Распределенное представление для человека должно быть помечено словом или фразой. И мы снова выдумываем языки для деятельности на новом абстрактном уровне. Где-то наступит насыщение. И тогда путь или в киборги или в потребители результатов деятельности AI. Грустно это.
 
Учить у меня тут строго в смысле machine learning, никакого general artificial intelligence у меня в тексте нет. Ну, и жизнь в симбиозе с AI у меня грусти не вызывает, наоборот, только радость. С Гуглём и калькулятором, да ещё в очках веселее, чем без них.
 

Rinat Enikeev

28 августа 2016, 06:23:42 Комментарий изменен: 28 августа 2016, 06:24:46

Спасибо за пост.

1. Скажите, пожалуйста, разработчик технологии text-to-image - это Деятель, Эпистемолог, Онтолог, Инженер, Исследователь, Другое?

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

Вы пишите - "творение мира text-to-image" - инженерный ход. А делание наличным... эмм... "куста" (text-to-image), приносящего бог знает какие плоды - это позиция кого? Не родителя же smile

2. И второй вопрос. Внутри text-to-image сидит моделирование? Хоть в какой нибудь части? Я често не вижу моделирования внутри функционирующего text-to-image, но, мне кажется, по причине своей неграмотности и не понимая смысла, вкладываемого вами в понятие моделирования.

Спасибо

Если нужно разработать что-то, то это обычно командная работа, требует множества позиций. Слово "технология" при этом я склонен использовать терминологически, как "практика=дисциплина+технология". В описываемом случае разрабатывается практика — там и исследования (дисциплина, научная статья), и технология (программный код, поддерживающий положения статьи).

Внутри text-to-image, конечно, сидит моделирование. У меня в учебнике http://techinvestlab.ru/systems_engineering_thinking/ есть глава про моделирование, там приведено традиционное (не моё! я тут не изобретаю что такое "моделирование", не наделяю это слово какими-то новыми значениями!) определение моделирования. Рекомендую начать с этой главы (а лучше с самого учебника в целом), а затем заглянцевать текстами типа http://ailev.livejournal.com/1272169.html

Знания о мире можно разделить на две группы: документированное - зафиксированное на естественном языке и казуальное знание, которым обладают участники деятельности в этом мире. SADT методология решает задачу формализации знаний о деятельности в этом мире за счет: 1. формализации знаний в виде диаграмм деятельности; 2. приведение в соответствие диаграмм деятельности казуальным знаниям за счет цикла автор/читатель. В результате этого процесса будет получено описание деятельности в рамках поставленной цели и принятой точки зрения.
Можно ли считать методологию SADT одним из практических подходов для построение онтологического описания для конкретной сферы деятельности, позволяющего достичь общего понимания (преодоление кривизны частных онтологий)?
SADT ни разу не является рекомендуемым онтологическим языком (и я особо оговариваю на своих семинарах на неуместность использования SADT в 2016 году). В частности: а) SATD практически не является формализацией, это такой "псевдокод", и б) SADT формализует только один тип объектов, функциональный, в) SADT в силу (б) нещадно путается с формализацией шагов процессов, т.е. развёртками по времени, т.е. используется не для демонстрации декомпозиции функций, а для декомпозиции процессов, что просто неверно и ошибочно.

Насчёт разбиения знаний на документированное на естественном языке и казуального — тоже бы не согласился. Если казуальное (трансакционное), то не знание, а просто информация. Знания — это такая информация, которая может быть использована в нескольких проектах, а не казуально. Опять же, многие тут путать будут два слова: казуально и каузально, поэтому я слова "казуальный" избегаю, а использую в одном случае "каузальный" (например, акаузальный язык имитационного моделирования Modelica) и трансакционный (как рекомендовано в ISO 15926).

Как понять Ваше утверждение, что SADT формализует функциональный тип объекта?
Ведь объект, это то по чему "можно постучать", а основным элементом SADT модели является SA - блок, определяющий активность в системе.
Вообще-то есть три основных типа структур в системе: компоненты (функциональные элементы и их связи), модули (конструктивные элементы и их интерфейсы) и размещения (элементы пространства). Ну, что из них закрывает SADT? В то же время в ArchiMate (который сейчас используют вместо SADT) закрывает все три типа элементов.
Разработчики SADT ставили единственную цель - разработать графический язык описания систем, понятный всем стейкхолдерам. Это позволяет аналитику путем последовательного уточнения "понять" систему - составить формализованное ее описание, позволяющее получить ответы на вопросы относительно этой системы с необходимой точностью. Именно поэтому, я позволил себе предположение, что разработка SADT модели формирует онтологическое описание в локальной области описания данной системы за счет согласования модели с экспертами.
ArchiMate решает другую задачу - задачу проектирования конкретных элементов будущей системы - сервисов и способов их реализации.
Это всё в сильно прошедшем времени: "давным давно ставили задачу". Плохо поставили, плохо решили, некоторое время назад (давно) это было модно. Покритиковали IDEF0, предложили другие решения (сначала дополнили другими IDEF, получили винегрет в синтетической парадигме из ISO 42010, потом поняли, что и это плохо и перешли к прожекторной парадигме — сделали тот же ArchiMate).

То, что вы пишете про ArchiMate, только часть правды. Дизайн-цель Архимейта — как раз представить графическое изображение архитектуры, которое в одной диаграмме может представлять интересные для разных стейкхолдеров объекты. Почему в мире использование IDEF0 практикуется сегодня по большей части пенсионерами, которые не хотят учить новое, а молодёжь тяготеет к использованию ArchiMate и указанным в его спецификации частным языкам (BPMN, BMM и т.д.).

 

buriy

30 августа 2016, 11:48:03 Комментарий изменен: 30 августа 2016, 11:48:52

В этом text-to-image, увы, на текущий момент, есть проблема "цельности" — желательно, чтобы все слова описательного текста описывали один объект (с разных сторон) — иначе результат может не соответствовать ожиданиям (в силу дистрибутивности модели текста...).
А вот на базе из цветочков, расположенных по центру, получаются такие хорошие результаты, чтобы уже вызвать "вау-эффект".
Но в целом конечно мне нравится, как раз за разом работы по DL громят скептиков (и классических онтологов тоже, в том числе ).

1794 words