Семантическая паутина потенциально способна привести к революции в принципах получения и передачи информации, а также управления ею конечными пользователями, однако, как отмечают авторы доклада о «самодельных» базах данных [1, 2], ситуация с инструментами достаточно мрачная. Выяснилось, в частности, что, не имея специальных приложений, в компаниях и организациях в большинстве случаев вынуждены пользоваться таблицами Excel, списками заданий из Outlook, а также бумажными листками, индексными карточками и скоросшивателями. Использование этого «инструментария» приводит к неразберихе с версиями документов, огромным затратам времени на ввод и передачу данных и трудностям организации, опроса и наглядного представления информации. При этом речь вообще не идет о Больших Данных — обычный сценарий работы служащих заключался в ответах на элементарные вопросы вроде «Кто из сотрудников отвечает за ту или иную деятельность?» или «Каков общий объем работы, проделанной таким-то специалистом?». Для опытного администратора базы данных SQL это тривиальные операции, но далеко не у всех сотрудников компаний есть такие навыки. Для всех, кто занимается базами данных и Семантической паутиной, такая ситуация — это просто позор. Мы заняты решением великих задач, в то время как рядовые пользователи не могут справиться с подобными простыми проблемами.

В чем проблема?

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

Кроме того, фиксированные схемы не позволяют соединять информацию из нескольких приложений — например, связать человека из адресной книги с написанной им музыкой в медиаплеере. Поскольку соответствующие приложения «не знают» схемы друг друга, они не могут работать с чужими данными и даже ссылаться на них [3].

Семантическая паутина

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

Haystack

Одной из попыток реализовать принцип гибких схем стала система Haystack (рис. 1), позволяющая сохранять произвольные заданные пользователем сущности, которые имеют произвольные свойства и связи с другими сущностями, а также формирующая произвольные наглядные представления сущностей [4]. Можно, к примеру, реализовать подобие традиционного приложения с любой удобной для пользователя схемой данных.

Рис. 1. Haystack. Управление наборами данных с различными схемами: сообщениями электронной почты, новостями и контактами, которые все представлены в едином списке. Информационные единицы каждого типа отображаются с использованием собственной «линзы» (шаблона). Слева фильтры и контекстные меню с допустимыми для каждого типа данных операциями
Рис. 1. Haystack. Управление наборами данных с различными схемами: сообщениями электронной почты, новостями и контактами, которые все представлены в едином списке. Информационные единицы каждого типа отображаются с использованием собственной «линзы» (шаблона). Слева фильтры и контекстные меню с допустимыми для каждого типа данных операциями

 

Первая версия Haystack была создана еще до появления концепции Семантической паутины, но позднее стало ясно, что это как раз приложение для нее, и когда была разработана стандартная модель представления данных RDF, то ее стали использовать в Haystack, которая реализует главное обещание Семантической паутины — поддержку «паутины» данных с многообразием схем. Разработчики баз данных посвятили немало усилий возможности их интеграции, классический пример — объединение крупных баз при слиянии двух компаний, однако ничего не было предложено для более «анархичной» ситуации с разнообразием схем данных, используемых на различных веб-сайтах.

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

Related Worksheets

Авторы Related Worksheets (рис. 2) — инструмента для управления информацией — решили, что раз уж пользователи «проголосовали» за электронные таблицы, то последние можно оптимизировать, обеспечив возможность управления данными с меняющейся схемой. В усовершенствованной электронной таблице лучше отображаются сущности и связи, а также проще навигация. Рассмотрим типичный документ: таблица с перечнем университетских курсов (по строке на каждый), которая ссылается на другую таблицу со списком литературы для каждого курса (по строке на каждое наименование) и на одну таблицу со списком преподавателей. В традиционной электронной таблице такая «ссылка» — это просто условное соответствие: в таблице курсов есть ячейка с названием публикации из таблицы со списком литературы.

Рис. 2. Related Worksheets перечисляет курсы, списки литературы и потоки. При выборе названия курса в других столбцах отображается соответствующая информация
Рис. 2. Related Worksheets перечисляет курсы, списки литературы и потоки. При выборе названия курса в других столбцах отображается соответствующая информация

 

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

Exhibit

Система Exhibit (рис. 3), как и Haystack, позволяет создавать интерактивные наглядные репрезентации данных с нефиксированной схемой для сайтов. Профессионалы могут строить очень сложные сайты с эффектными схемами визуализации, но у рядовых разработчиков нет необходимых для этого навыков программирования и администрирования баз данных, поэтому они ограничиваются текстом и статичными изображениями. Авторы Exhibit обратили внимание на то, что профессионально сделанные сайты часто имеют много общего и что можно было бы создать расширение HTML для описания типовых элементов таких сайтов. В таком расширении определены отображения (списки, таблицы, карты и оси времени), фильтры и «линзы» для данных (HTML-шаблоны для вывода единиц информации разного типа). Такой элемент можно буксировкой разместить на веб-странице и мгновенно опубликовать интерактивную наглядную визуализацию, перенеся на него файл данных (CSV, электронную таблицу или документ JSON). Для платформы Wordpress на базе Exhibit разработали расширение Datapress, которое позволяет публиковать визуализации в блоге.

Рис. 3. Система Exhibit показывает информацию об американских президентах на географической карте и оси времени. Слева — поисковое поле и меню, позволяющие фильтровать результаты по религиозной и партийной принадлежности
Рис. 3. Система Exhibit показывает информацию об американских президентах на географической карте и оси времени. Слева — поисковое поле и меню, позволяющие фильтровать результаты по религиозной и партийной принадлежности

 

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

Atomate

Приложение Atomate (рис. 4) позволяет составлять правила для автоматической обработки входящих информационных потоков, например из социальных СМИ. Руководствуясь идеями Семантической паутины, такие потоки можно было бы направлять в единую личную базу данных пользователя, где они автоматически обрабатывались бы с помощью постоянных запросов. Можно, к примеру, сделать так, чтобы пользователь получал предупреждение, когда одновременно в календаре появляется уведомление, что скоро выступает его любимая группа, а социальная сеть сообщает, что в город приехал его друг и можно вместе сходить на концерт. А еще можно обеспечить автоматическую отправку уведомления вашему секретарю, когда приложение, следящее за вашим местонахождением, определяет, что вы опаздываете.

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

 

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

Достаточно популярным стал похожий инструмент — онлайн-сервис If This Then That (IFTTT), на котором доступны информационные потоки, поступающие с различных онлайн-сервисов. Пользователи могут составлять «рецепты», в которых триггерам, реагирующим на информацию из каналов, ставятся в соответствие действия. IFTTT, по сути, реализует возможности, которые могла бы дать Семантическая паутина, но сейчас операторам сервиса для каждого источника данных приходится писать специальный код, с использованием соответствующих API для переноса информации в канал. Концепция Семантической паутины между тем предусматривает создание единого API для доступа к данным на всех сайтах. Такой API избавил бы от необходимости разрабатывать специальный код для каждого канала — пользователи бы просто писали триггеры и действия для любых сайтов, которые сочтут полезными.

Что делать?

Как видно по приведенным примерам, методы Семантической паутины позволяют создавать полезные инструменты, работающие с нефиксированными схемами данных. Учитывая, насколько широкие возможности управления пользовательской информацией могли бы дать такие инструменты, разочаровывает, как мало разработчики концепции Семантической паутины вкладывают в ее развитие. Исследования, посвященные приложениям для конечных пользователей, сегодня практически не ведутся. Например, в программу Европейской конференции по семантической паутине (ESWC) в 2013 году вошли 36 докладов, большинство из которых были посвящены базовым технологиям Семантической паутины и лишь один был по пользовательскому приложению. Аналогичная ситуация с нехваткой приложений наблюдалась и на Международной конференции по Семантической паутине (ISWC) 2013 года. Чем можно объяснить этот «дефицит»?

Меньше семантики, больше паутины

Судя по докладам на ESWC и ISWC, мало кто занимается вопросами применения Семантической паутины, а такими темами, как представление знаний, логические заключения и онтологии, уже десятки лет озабочены исследователи, работающие в области искусственного интеллекта. Эти задачи важны для достижения долгосрочных целей — моделирования процесса познания и создания истинного искусственного разума, но почему те же исследования выполняются и в сообществе Семантической паутины? Разве то, что логические заключения выводятся по данным из WWW, а не из базы знаний экспертной системы, меняет суть задачи?

Главные новшества, которые обещает Семантическая паутина, касаются WWW, а не семантики — революция WWW заключалась в том, что абсолютно всем стало проще готовить информацию, управлять и делиться ею, причем дело было не в новизне каких-то систем (все нужные элементы были созданы раньше) — благодаря определенному сочетанию элементов пользователи получили совершенно новые возможности. Теперь эту революцию могли бы продолжить структурированные данные, но при условии, что акцент по-прежнему будет делаться на конечных пользователях.

Молотки и гвозди

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

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

Нужно больше исследований начинать с обозначения конкретной пользовательской задачи, чтобы была реальная причина, требующая создания решения. Именно так поступили авторы перечисленных приложений, предложив средства управления личной информацией, усовершенствованную электронную таблицу, систему публикации интерактивных визуализаций без программирования и механизм автоматической обработки входящих потоков информации. Кстати, система Atomate похожа на агенты, предложенные в докладе Тима Бернерза-Ли о концепции Семантической паутины. И поскольку еще не известно, как создавать автономные агенты для такой паутины, то можно умерить амбиции, создать простой язык запросов и разработать что-то, что было бы полезным прямо сейчас. Если бы Семантическая паутина реально использовалась, то подобные решения нашлись бы для многих задач.

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

В качестве точечного решения можно было бы провести традиционный конкурс Semantic Web Challenge по созданию версии IFTTT, основанной на Семантической паутине. Можно было бы сравнить различные реализации по удобству использования и широте возможностей. Само существование IFTTT говорит о том, что, если бы создали аналогичный инструмент на основе Семантической паутины, на него бы явно был спрос.

***

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

Литература

  1. A. Voida, Harmon, B. Al-Ani. Homebrew Databases: Complexities of Everyday Information Management in Nonprofit Organizations. Proc. 2011 Ann. Conf. Human Factors in Computing Systems, 2011, P. 915–924.
  2. D.A. Norman. The Design of Everyday Things, Basic Books, 2002.
  3. D.R. Karger. It’s All the Same to Me: Data Unification in Personal Information Management. Personal Information Management, W. Jones and J. Teevan, eds., Univ. of Washington Press, 2007, P. 127–152. URL: http://people.csail.mit.edu/karger/Papers/pimchapter.pdf (дата обращения: 15.12.2014).
  4. D.R. Karger. Haystack: Per-User Information Environments. Beyond the Desktop Metaphor: Designing Integrated Digital Work Environments, V. Kaptelinin and M. Czerwinski, eds., MIT Press, 2007, P. 49–100. URL: http://people.csail.mit.edu/karger/Papers/desktopchapter.pdf (дата обращения: 15.12.2014).

Дэвид Каргер ( karger@mit.edu ) — профессор, Массачусетский технологический институт.

David R. Karger, The Semantic Web and End Users: What’s Wrong and How to Fix It. IEEE Internet Computing, November/December 2014, IEEE Computer Society. All rights reserved. Reprinted with permission.