Сергей Горшков (serge_gorshkov) wrote,
Сергей Горшков
serge_gorshkov

Categories:

Семейное положение: «все сложно!»

Слова, предназначенные для одного человека, ничего не дадут другому
В. Пелевин, "Т"


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

Успешно достигнув своей цели, мы получим невиданную доселе информационную систему, способную «переводить с русского на русский» – автоматически конвертировать знания из контекста одного субъекта в контекст другого, работать в условиях полифонии мнений и интересов, не навязывая никому чужой точки зрения. Эта задача кажется нам крайне актуальной.

Начнем рассказ с описания модели, на которой будем приводить все примеры. Нет ничего более подверженного субъективизму и множественным интерпретациям, чем личные отношения между людьми. Познакомьтесь с одним семейством: Мария Троицкая давно живет вместе со своим любимым человеком, Алексеем Воронцовым, и даже имеет от него дочь Ольгу. Вот только Алексей предпринимает героические усилия, чтобы не регистрировать свой брак в ЗАГСе… Что ж, бывает. В этом месте нашего рассказа, готов поспорить, у разных читателей уже возникли весьма разные оценки описанной ситуации :)



Разные мнения возникают и у самих наших героев, и у тех, кто смотрит на них со стороны.

2.png

Для подруги Марии может быть истинным утверждение о том, что «Маша замужем», а для сотрудника любого государственного учреждения, куда Мария обратится по какому-нибудь поводу, она будет одинокой матерью. Научившись отображать такие факты в модели, мы получим возможность видеть одни и те же объекты и явления с разных сторон, свободно переключаться между разными контекстами и точками зрения, видеть между ними различия и совпадения. Забегая чуть вперед, покажем два графа отношений Марии Троицкой с двух разных точек зрения, которые выводит наш программный продукт АрхиГраф.СУЗ. В бытовом контексте отношения Марии выглядят так:

3.png

В законодательном контексте граф будет другим:

4.png

Как же реализовать представление разных точек зрения в модели? Сначала поговорим о том, откуда вообще берется субъективизм и разные точки зрения на одни и те же объекты и системы. Нам кажется существенным следующее разделение:


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

  2. Частная точка зрения может быть актуальной для какого-либо конкретного субъекта, либо для группы единомышленников. Например, Мария Троицкая может считать, что она замужем, и даже говорить об этом подругам – однако для Алексея Воронцова это не будет истиной, и любой юрист с ним согласится.


Граница между двумя случаями довольно зыбка, но мы решили ее провести по следующей причине. Контексты применяют собственный понятийный аппарат, и используют его преимущественно для выражения фактов, истинность которых не оспаривается большинством вовлеченных в этот контекст людей. То есть, субъективность состоит в том, как говорится, а не в том, что говорится. Под «истинностью» здесь мы понимаем, конечно же, общественный консенсус по поводу некоторых утверждений, а не их «объективный» характер – если не впадать в крайность позитивизма, нужно признать, что любое высказывание истинно лишь с определенными допущениями.

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

Рассмотрим последовательно реализацию в моделях обоих типов субъективных взглядов на мир. В начале нашего рассказа мы описали в качестве примера семью, и для читателя очевидно, как выделить в бытовом контексте объект «семья», из кого она состоит. Однако – возможно, вы будете удивлены – в Семейном кодексе РФ отсутствует понятие «семья». Законодательство трактует и использует только бинарные отношения между людьми: муж-жена, ребенок-родитель, но не берется за описание комплексного отношения «семья». Вместе с тем, в отдельных нормативных актах оно все-таки применяется: например, в постановлении, определяющем порядок получения субсидий на жилье молодыми семьями, говорится о том, что молодая семья – это семья, состоящая из как минимум 1 молодого родителя и как минимум 1 ребенка, где возраст каждого из родителей не превышает 30 лет. То есть, в нашем примере Мария Троицкая и Ольга Воронцова образуют «молодую семью». В то же время, с бытовой точки зрения семью образуют Мария Троицкая, Ольга Воронцова и Алексей Воронцов (в отношении Алексея здесь есть нюанс, который мы раскроем далее).

Итак, мы можем сделать первые выводы о том, чем отличаются разные общепринятые контексты:


  1. Разные контексты выявляют в одних и тех же системах различные типы объектов и типы связей, и используют для их описания разные термины (понятия, концепты).

  2. Частным случаем такого разделения является ситуация, когда один и тот же объект (экстенсионал) называется различными терминами в разных контекстах (используются разные интенсионалы). Например, квартира Марии Троицкой с бытовой точки зрения называется квартирой, а с законодательной – объектом жилой недвижимости.

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


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

  • Понятия (концепты), выражающие типы объектов и связей, которые в нем существуют;

  • Актуальные для него правила получения логических выводов.

Правила отражают разные способы делать логические умозаключения, принятые в разных контекстах. Правила необходимы еще и для того, чтобы переходить от одного контекста к другому – примеры мы приведем далее.
Сказанное приводит нас к способу реализации контекстов в онтологии (средствами семантических технологий, OWL). Наш подход состоит в следующем:

  • Определяется набор самих контекстов, которые являются объектами специального класса онтологии, то есть содержатся внутри самой модели.

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

  • Для перехода от одного контекста к другому можно задать правила логического вывода.

Проиллюстрируем сказанное на примере. Выберем два контекста – «Бытовой» и «Законодательный». Одна часть классов и свойств нашей демонстрационной модели («Персона», «Проживает вместе с») не будет относиться ни к одному контексту – эти определения будем считать универсальными. Другая часть классов и свойств будет принадлежать к определенному контексту: например, класс «Семья» и свойство «Входит в семью» относятся к бытовому контексту, а класс «Молодая семья» и «Входит в молодую семью» – к законодательному. При этом целостность единой модели не разрушается, поскольку «Семья» и «Молодая семья» могут принадлежать к одному надклассу – например, «Социальная группа».
Зададим также правила, по которым будут делаться логические выводы. В нашем примере мы использовали следующие правила:

Правило Контекст
1. Если А состоит в законном браке с Б,
то А является супругом Б.
Законодательный => Общий
2. Еслиявляется родителем Б, или Б является родителем А, или А является супругом Б) и А проживает вместе с Б,
то А является членом семьи Б, и Б является членом семьи А
Общий => Бытовой
3. Для любой группы объектов, связанных между собой свойством «является членом семьи»,
Создается объект типа «Семья», и каждый объект группы входит в состав данной семьи*
Бытовой
4. Если А является родителем Б, и Б имеет возраст менее 18 лет,
то А является законным представителем Б
Общий => Законодательный
5. Если А является родителем Б, и А имеет возраст менее 30 лет, и, возможно, А состоит в браке с В, и В имеет возраст менее 30 лет,
то создается объект типа «Молодая семья», и А, Б и В (при наличии) входят в состав данной молодой семьи.
Общий => Законодательный

* то, как мы формализовали такое правило в онтологии, само по себе интересно, поскольку мощности обычных правил логического вывода для этого недостаточно; об этом мы расскажем в другой статье

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

5.png

Перейдем на страницу информации о Марии Троицкой, и посмотрим на ее связи в бытовом контексте:

6.png

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

7.png

Контексты учитываются и в поисковом интерфейсе АрхиГраф.СУЗ. Например, если мы начнем набирать запрос, связанный с персоной, в бытовом контексте, то увидим один набор подсказок, соответствующий терминологическому аппарату этого контекста, а в законодательном контексте – другой:

8.png

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

9.png

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

10.png

Чтобы продемонстрировать, как в разных контекстах меняется конструкция объекта, обратимся к «Домохозяйству Воронцовых». В бытовом контексте в состав домохозяйства входят квартира и три человека, проживающих в ней:

11.png

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

Но довольно о контекстах. Обратимся к точкам зрения конкретных людей. Как мы помним, разные субъекты имеют разные мнения относительно одних и тех же фактов: Мария Троицкая считает, что является супругой Алексея Воронцова, однако тот не разделяет этого мнения. Для отражения такого когнитивного диссонанса :) в онтологической модели необходимо приписывать точке зрения конкретные факты, а не только типы объектов, связей и правила. Каким образом мы технологически решили эту задачу – пока умолчим; скажем только, что без использования внешних хранилищ метаданных и без нарушения стандартов семантических технологий мы храним в одной модели наборы фактов, истинных как для определенных субъектов, так и в общепринятых контекстах рассмотрения этой модели.

Оба подхода отлично сочетаются между собой, то есть и общепринятые контексты, и частные точки зрения могут быть представлены в одной онтологии. Это имеет и практический смысл: размышляя о своем семейном статусе, Мария как профессиональный юрист может прийти к одному выводу, а как женщина – к другому. Удивительно, но в онтологии можно отразить и это.

Для иллюстрации сказанного, установим переключатель «Точка зрения» в положение «Мария Троицкая» (мы пометили ее в этой онтологии как единственного субъекта, имеющего собственную точку зрения), и посмотрим на свойства Марии:

13.png

Поскольку Мария верит в свой брак с Алексеем, при просмотре в таком режиме мы увидим, что она состоит с ним в браке! Более того – в ее персональном мире будут сделаны и все логические выводы, основанные на этом факте. Например – вывод о том, что она, Алексей и Ольга образуют семью. В других же точках зрения такой вывод сделан не будет, и семья Марии будет состоять только из нее, и ее дочери Ольги.

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

Статья написана в соавторстве с maxstroy
Tags: семантические технологии
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 32 comments