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

Информацию в автоматизированной системе независимо от способа ее представления, следуя Людвигу Витгенштейну [1], можно описать как набор высказываний о фактах. Истинность каждого факта можно определить только для определенного субъекта или группы – что верно для одного, не обязательно верно для другого. Инструментом проверки истинности любых фактов является опыт общения индивида с окружающим миром, который сильно зависит от особенностей его восприятия и имеющихся паттернов действий. Такой опыт формирует субъективный мир индивида, для обозначения которого в биосемиотике используется термин «умвельт», то есть описание совокупности убеждений человека или группы. Часть умвельта (рис. 1) составляет концептуальный фреймворк – совокупность знаков и вкладываемых в них смыслов, которые человек или группа людей использует для анализа окружающего мира. Другую часть умвельта образует набор выраженных с помощью концептуального фреймворка аксиом, которые человек или группа людей считает истинными.

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

Рис. 1. Умвельт – совокупность убеждений человека

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

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

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

Итак, если автоматизированная система используется для поддержки принятия решений, то ценность и практическая пригодность системы непосредственно связаны с возможностью установить достоверность содержащихся в ней фактов с точки зрения лиц, принимающих решения. Это может быть критически важно, особенно в случаях, когда намеренное искажение информации может отвечать личным интересам лиц, ответственных за сбор и ввод данных. Принятие решения обычно заключается в определении готовой схемы, которой соответствует следующая ситуация: лицам, принимающим решения нужно быть уверенным в том, что полученные с помощью автоматизированной системы факты выражены в их концептуальном фреймворке. Например, в концептуальной схеме, используемой в работе торговой компании, «недобросовестный контрагент» может быть определен как субъект, допустивший просрочку оплаты поставленного товара более чем на N дней. С другой стороны, по личному субъективному мнению менеджера, работающего с этим контрагентом и вносящим о нем информацию в базу данных, «недобросовестность» может заключаться и в нарушении каких-то обещаний, или даже в неготовности способствовать получению менеджером повышенных бонусов. Возможна и обратная ситуация: для менеджера контрагент «добросовестный» – предоставил все документы, требуемые для оформления сделки, а с точки зрения интересов организации – не добросовестный, так как часть документов была подделана, что менеджер не смог обнаружить. В любом случае, если менеджер установит в базе данных признак «недобросовестности» контрагенту не на основании принятого в организации регламента, а на основании своих представлений о добросовестности, это может привести к запуску неверных, с точки зрения выгоды организации, действий в отношении контрагента.

Две причины появления ложной информации в базе данных:

  • несоответствие концептуальных фреймворков человека, выразившего факт, и человека, воспринимающего высказывание. Менеджер, вносящий информацию, может искренне считать контрагента недобросовестным, хотя, с точки зрения ЛПР, это не так;
  • намеренное внесении в систему фактов, не отвечающих условиям истинности ни для субъекта, выражающего факт, ни для воспринимающего факт субъекта. Такое искажение обычно соответствует прагматическим интересам выражающего.

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

В рамках традиционных информационных систем, опирающихся на реляционные базы данных и «зашитую в коде» модель данных, удовлетворительного решения проблемы не найти. Современные системы, предназначенные для поддержки принятия решений в организации, работающей в динамичной окружающей среде, когда регулярно пересматривается сам концептуальный фреймворк, создаются уже на основе онтологических моделей данных [2]. Использование онтологий для представления набора концептов, аксиом и схем пока альтернатив не имеет. Концептуальный уровень онтологии (TBox, Terminology Box — «набор концептов») моделирует фрагменты концептуальных фреймворков определенных субъектов, а фактографический (ABox, Assertions Box — «набор утверждений») – высказывания о конкретных объектах, сделанные при помощи концептов.

Любые высказывания истинны только по мнению конкретных людей или при условии принятия определенных допущений, ограничений. Чаще всего сведения о субъектах и принятых ограничениях «выносятся за скобки» онтологии, то есть считается, что модель построена в интересах определенной группы людей, разделяющих общие представления. На практике нельзя игнорировать различие точек зрения разных людей – онтологическая модель позволяет не только отразить эволюцию концептуального фреймворка, но и сохранить вместе с самой информацией сведения об ее происхождении. Также онтология может содержать правила, по которым выполняется автоматическое формирование новых фактов на основе уже известной информации, например присвоение признака «недобросовестности» контрагента может быть достигнуто как средствами правил логического вывода (например, SHACL Rules, https://www.w3.org/TR/shacl-af), так и путем моделирования в онтологических моделях выражений деонтической логики (один из видов модальной логики, оперирующий такими понятиями, как обязательство, разрешение, норма), выражающих нормативные требования и обязательства.

Рассмотрим некоторые средства, применяемые в онтологических моделях для выражения информации о происхождении фактов и подтверждения их истинности. Онтология PROV позволяет сохранять в обычной онтологической модели RDF/OWL метаданные о том, каким образом был получен тот или иной факт: описать источник информации, цепочку расчетов или преобразований, приведших к выраженному в данных факту. Спецификация RDF* предоставляет инструмент для выражения фактов о фактах, например: «По мнению A, B является недобросовестным контрагентом». Однако каждое такое метавысказывание тоже нужно привязать к контексту – не понятно, выражено ли здесь мнение самого A, или представление кого-то третьего о мнениях A (возможно, намеренно искаженное). Попытки уточнить это средствами RDF* приведут лишь к рекурсии. Таким образом, какая-то часть описания контекста неизбежно оказывается вне онтологической модели и может быть реализована в платформе, обеспечивающей работу с ней. Возможным техническим решением для удостоверения авторства сведений может стать использование электронной подписи или блокчейна для заверения фактов, вносимых в онтологическую модель.

При создании модели нужно описать и то, чей именно концептуальный фреймворк использован во всей модели или ее части. Если разные части модели используют разные концептуальные фреймворки, как это часто бывает в корпоративной автоматизации (например, одна часть модели описывает активы предприятия с точки зрения бухгалтерского учета и финансов, другая – с точки зрения ремонта и эксплуатации), то сведения об этом нужно выражать внутри самой модели с помощью средств RDF*, онтологии PROV или именованных графов. Обзор способов выражения подобных сведений приведен в [5].

Еще одна причина появления ложных данных может заключаться в том, что высказанный факт имеет определенную модальность: описывает то, что может, должно или могло бы произойти, произошло в воображении говорящего и т. д. Например установка признака «недобросовестный контрагент» может выражать модальное суждение автора («этот контрагент может стать недобросовестным») или степень уверенности автора факта в его истинности в вероятном будущем («с вероятностью 99% этот контрагент вовремя не погасит задолженность»).

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

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

Возможности систем подтверждения и проверки истинности фактов в корпоративных системах можно проиллюстрировать на примере инструментов, используемых в платформе «АрхиГраф» [4].

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

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

Проверка истинности информации
Рис. 2. Отображение сведений о наличии электронной подписи данных

3. Расчет значения производных показателей на основе исходных данных с помощью формул, заданных аналитиком. Такой расчет позволяет в любой момент проверить истинность любых рассчитанных в системе значений, заново воспроизведя цепочку вычислений (рис. 3). При выполнении любых вычислений их результат аннотируется средствами онтологии PROV, что позволяет увидеть всю цепочку вычислений, которая привела к получению того или иного значения, включая и саму актуальную на момент расчета формулу и все подставленные в нее значения. Этот алгоритм рекурсивен и позволяет осуществлять детализацию (drill-down) вычисленных значений на любую глубину.

Проверка истинности информации
Рис. 3. Отображение информации о происхождении значения показателя, сохраненной средствами онтологии PROV

4. Аннотирование определенных элементов или частей онтологической модели как относящихся к определенным точкам зрения или принадлежащим определенным субъектам. Это относится и к показателям, с которыми работает система сбора отчетности.

5. Явное описание значений используемых терминов, их связывание с элементами модели предметной области. Это позволяет в какой-то степени формализовать и выявить возможные расхождения концептуальных схем разных групп пользователей. Например, с одним классом онтологии может быть связано несколько терминов, используемых разными группами – или, наоборот, один термин может быть связан с несколькими элементами модели.

6. Распознавание смысла текста на естественном языке на основе лексической модели и модели предметной области для извлечения структурированных высказываний из документов. Многие документы – различные протоколы, заявления, обращения и др. – можно связать с точкой зрения определенного лица или коллективного органа [3]. Извлечение фактов из этих документов позволяет проверять истинность имеющихся структурированных данных, или создавать новые структурированные данные, аннотированные источником и точкой зрения.

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

***

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

Литература

1. Витгенштейн Людвиг. Логико-философский трактат. – Москва, АСТ, 2022.

2. Елена Гайдукова. Ключ к гиперавтоматизации: онтологические модели. // Открытые системы. СУБД. — 2021. — №3. — С.21-22. URL: https://www.osp.ru/os/2021/03/13056023 (дата обращения: 21.03.2022).

3. Сергей Горшков, Константин Кондратьев, Роман Шебалов. Онтологии: от текста к фактам. // Открытые системы. СУБД. — 2020. — №4. — С.26-29. URL: https://www.osp.ru/os/2020/04/13055699 (дата обращения: 21.03.2022).

4. Сергей Горшков. Единая точка доступа к данным предприятия. // Открытые системы. СУБД. — 2018. — №4. — С.33-35. URL: https://www.osp.ru/os/2018/04/13054596 (дата обращения: 20.03.2022).

5. Baclawski, K. et al. Коммюнике онтологического саммита 2018 «Контекст к контексте». Онтология проектирования, 2018, т. 8, №2 (28).

Сергей Горшков (serge@trinidata.ru) – директор, компания «ТриниДата» (Екатеринбург). Статья подготовлена на основе материалов доклада на конференции «Качество данных — 2022».