Элементы семантической паутины

    Сложность структуры современного информационного общества постоянно растёт. В связи с этим, требования к эффективности алгоритмов обработки информации также увеличиваются. В последнее время наиболее популярными направлениями в этой области являются Data Mining (DM), Knowledge Discovery in Databases (KDD) и Machine Learning (ML). Все они предоставляют теоретическую и методологическую базу для изучения, анализа и понимания огромных объёмов данных.
    Однако этих методов не достаточно, если сама структура данных будет настолько плохо пригодной для машинного анализа, как исторически сложилось на сегодняшний момент в Internet.
    Для решения данной проблемы предпринята глобальная инициатива реорганизации структуры данных Internet в целях преобразования его в Семантическую Паутину предоставляющую возможности по эффективному поиску и анализу данных как человеком так и программным агентам.
    В этой статье рассмотрены основные технологии позволяющие реализовать Semantic WEB.


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

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

    Важнейшие понятия Semantic WEB


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

    Semantic WEB


    Понятие семантической паутины является центральным в современном понимании эволюции Internet. Считается, что в будущем данные в сети будут представлены как в обычном виде страниц, так и в виде метаданных, примерно в одинаковой пропорции, что позволит машинам использовать их для логических заключений реализуя все преимущества от использования методов ML. Повсеместно будут использоваться унифицированные идентификаторы ресурсов (URI) и онтологии.
    Однако, не всё так радужно, существуют и сомнения в возможности полной реализации семантической паутины. Основные тезисы в пользу сомнения в возможности создания эффективной семантической паутины:
    • Человеческий фактор люди могут врать, ленится добавлять метаописания, использовать неполные или просто неправильные метаданные. Как вариант решения данной проблемы можно использовать автоматизированные средства создания и редактирования метаданных.
    • Излишнее дублирование информации, когда каждый документ должен иметь полное описание как для человека так и для машины.
    Это отчасти решается внедрением микроформатов.

    Кроме самих метаданных, важнейшей составной частью SW является семантические Web сервисы. Они являются источниками данных для агентов семантической паутины, изначально нацелены на взаимодействие с машинами, имеют средства рекламы своих возможностей.

    URI (Uniform Resource Identifier)


    URI является унифицированным идентификатором любого ресурса. Может указывать как на виртуальный так и на физический объект. Представляет собой уникальную символьную строку. Самым известным URI на сегодня является URL, являющейся идентификатором ресурса в Internet и дополнительно содержащий информацию о местонахождении адресуемого ресурса.
    Базовый формат URI
    Базовый формат URI

    Онтологии


    Применительно к области Machine Learning под онтологией понимается некая структура, концептуальная схема, описывающая (формализующая) значения элементов некоторой предметной области (ПРО). Онтология состоит из набора терминов и правил описывающих их связи, отношения.
    Обычно онтологии строятся из экземпляров, понятий, атрибутов и отношений.
    • Экземпляр — элементы самого нижнего уровня. Главной целью онтологий является именно классификация экземпляров, и хотя их наличие в онтологии не обязательно, но как правило они присутствуют. Пример: слова, породы зверей, звёзды.
    • Понятия — абстрактные наборы, коллекции объектов.
      Пример: Понятие «звёзды», вложенное понятие «солнце». Чем является «солнце», вложенным понятием или экземпляром (светилом) — зависит от онтологии.
      Понятие «светило», экземпляр «солнце».
    • Атрибуты — каждый объект может иметь необязательный набор атрибутов позволяющий хранить специфичную информацию.
      Пример: объект солнце имеет такие атрибуты как
      • Тип: жёлтый карлик;
      • Масса: 1.989 · 1030 кг;
      • Радиус: 695 990 км.
    • Отношения — позволяют задать зависимости между объектами онтологии.

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

    Рассмотрим общую структуру применения онтологий.
    Часть возможной онтологии адресов
    Часть возможной онтологии адресов

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

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


    Конечно, остаётся много вопросов, к примеру, как в начале агент найдёт сайт требуемого университета? Однако для этого уже сейчас разработаны средства. К примеру, Язык Онтологии Сетевых Сервисов (Web Services Ontology Language, OWL-S) который позволяет сервисам рекламировать свои возможности, услуги.

    Таксономии


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

    Современные языки описания онтологий


    RDF (Resource Description Framework) язык описания метаданных ресурсов, главной его целью является представление утверждений в виде одинаково хорошо воспринимаемом как человеком, так и машиной.
    Атомарным объектом в RDF является триплет: субъект — предикат — объект. Считается, что любой объект, можно описать в терминах простых свойств и значений этих свойств.
    Пример таблицы с выделенными параметрами
    Пример таблицы с выделенными параметрами
    Пример таблицы с выделенными параметрами

    Перед двоеточием должен указываться Уникальный Идентификатор Ресурса URI (Uniform Resource Identifier), однако в целях экономии трафика допускается указать только пространство имён.
    Также, в целях улучшения восприятия человеком, существует практика представления схем RDI в. виде графов.

    Пример схемы RDI в виде графа
    Пример схемы RDI в виде графа

    OWL (Web Ontology Language)язык Веб онтологий, созданный для представления значения терминов и отношения между этими терминами в словарях. В отличии от RDF, данный язык использует более высокий уровень абстракции, что позволяет языку наряду с формальной семантикой использовать дополнительный терминологический словарь.
    Важным преимуществом OWL является то, что его основу положена чёткая математическая модель дескрипционных логик
    Место OWL в общей структуре Semantic WEB с точки зрения консорциума W3C
    Место OWL в общей структуре Semantic WEB с точки зрения консорциума W3C
    • XML — предоставляет возможности создания структурированных документов, но не предъявляет к ним никаких семантических требований;
    • XML Schema — определяет структуру XML документов и дополнительно позволяет использовать конкретные типы данных;
    • RDF — предоставляет возможность описывать абстрактные модели данных некоторых объектов и отношения между ними. Использует простую семантику на основе XML синтаксиса;
    • RDF Schema — позволяет описывать свойства и классы RDF — ресурсов, а также семантику отношений между ними;
    • OWL — расширяет описательные возможности предыдущих технологий. Позволяет описывать отношения между классами (к примеру непересекаемость), кардинальность (например «точно один»), симметрия, равенство, перечисляемые типы классов.

    По степени выразительности выделяют три диалекта OWL
    • OWL Lite — является подмножеством полной спецификации, предоставляющим минимально достаточные средства описания онтологий. Предназначен для снижения первичного внедрения OWL. А также для упрощения миграции на OWL тезаурусов и прочих таксономий. Гарантируется, что логический вывод на метаданных с выразительностью OWL Lite выполняется за полиномиальное время (сложность алгоритма принадлежит классу Р).
      Диалект основан на дескрипционной логике SHLF(D)
    • OWL DL — с одной стороны предоставляет максимальную выразительность, полноту вычислений (все они будут гарантированно вычисляемыми) и полную разрешаемость (все вычисления завершаются в определённое время). Но в связи с этим имеет строгие ограничения, к примеру на взаимосвязи классов и время выполнения некоторых запросов по таким данным могут требовать экспоненциального времени выполнения.
      Диалект основан на дескрипционной логике SHOLN(D)
    • OWL Full — предоставляет максимальную выразительную свободу, но не даёт никаких гарантий разрешаемости. Все созданные структуры опираются обоснованы только реализуемым алгоритмом. Считается маловероятным, что какое-либо рассудочное программное обеспечение будет в состоянии поддержать полную поддержку каждой особенности OWL Full.

      Не соответствует ни одной дескрипционной логике, так — как в принципе является не разрешимым.

    На данный момент язык OWL является основным инструментом описания онтологий.

    Программные (мобильные, пользовательские) агенты (SA)


    В рассматриваемой ПРО SA считается программой, действующей от имени пользователя, самостоятельно выполняющей сбор информации на протяжении некоторого, возможно длительного времени. Также важной их особенностью является возможность взаимодействовать с другими агентами и сервисами для достижения поставленной цели.
    В отличии от ботов поисковых машин, которые просто сканируют диапазоны WEB страниц, агенты перемещаются от сервера к серверу, т. е. на отправном сервере он уничтожается, а на принимающем создаётся с полным набором собранной ранее информации. Такая модель позволяет агенту использовать доступные серверу, источники данных, которые не доступны посредством WEB интерфейса.
    Понятно, что на сервере должна быть установлена платформа, позволяющая принять агента и обслужить его запросы. Также важно уделить внимание безопасности и целостности агентов. Для этого применяется подход выделенных пространств, когда агент работает в некотором безопасном окружении с ограниченными правами и возможностями воздействия на систему.
    Агенты по своей реализации делятся на обычные и обучающиеся.
    Если первые предназначены для выполнения чётко поставленных задач, то в основу вторых заложена гибкость, обычно они создаются на основе нейронных сетей. Использование нейронных сетей позволяет агенту постоянно подстраиваться под требования пользователя, а также более эффективно взаимодействовать с Internet.

    Микроформаты


    Микроформаты являются попыткой создать семантическую разметку разнообразных сущностей на Web-страницах одинаково хорошо воспринимаемую как человеком так и машиной. Информация в некотором микроформате не требует применения дополнительных технологий или пространств имён дополнительно к простому (X)HTML. Спецификация микроформата, это просто соглашение на стандарты поименования классов элементов оформления страницы позволяющих хранить в каждом из них соответствующие данные.
    Для примера разберём формат hCalendar.
    Данный микроформат является подмножеством формата iCalendar (RFC 2445) и предназначен для описания дат будущих или прошедших событий для предоставления возможностей их автоматической агрегации поисковыми агентами.

    <div class="vevent"><br>  <a class="url" href="http://www.web2con.com/"><br>    http://www.web2con.com/ <br>  </a><br>  <span class="summary"> <br>    Web 2.0 Conference <br>  </span>: <br>  <abbr class="dtstart" title="2007-10-05"> <br>    October 5 <br>  </abbr><br>  -<br>  <abbr class="dtend" title="2007-10-20"><br>    19<br>  </abbr><br>  ,at the <br>  <span class="location"><br>    Argent Hotel, San Francisco, CA <br>  </span><br> </div><br><br>* This source code was highlighted with Source Code Highlighter.


    В данном примере приведено описание создания корневого класса контейнера с датой (class=«vevent») и соотнесение с событием некоей даты в стандартном формате ISO date.

    На данный момент самыми распространёнными микроформатами являются
    • hAtom — формат рассылок новостей;
    • hCalendar — составление календаря и описание событий;
    • hCard — описание людей, компаний, мест;
    • hResume — формат описания резюме;
    • hReview — внедрение обзоров;
    • XFN — способ указания отношений между людьми;


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

    Поделиться публикацией
    Похожие публикации
    Ой, у вас баннер убежал!

    Ну. И что?
    Реклама
    Комментарии 31
      +1
      Можно добавить, что до сих пор не разрешена ключевая проблема на самой вершине стека технологий — «доверие».

      А так — хорошая статья. Поставлю звездявочку в бравзере на случай, если придется объяснить кому про семантик-веб =)
        +2
        Ну в принципе я написал косвенно о доверии в параграфе о Semantic WEB, вот тут более полный список проблем, которые мешают http://www.well.com/~doctorow/metacrap.htm если коротко, то People lie, People are lazy и People are stupid :D
          0
          Кстати вполне решаемая проблема, неправильно ввел метаданные — минус в карму.))) Хабр рулит.
            0
            Согласен. Тем более хочется надеется, что к хабру упомянутые выше особенности пользователей относятся в меньшей степени :D
        0
        Вопрос в том как в это вовлечь обывателя.
          0
          Надо либо софт на другом порту вешать либо какую-то приспособу…
          0
          ИМХО не стоит ждать что все кинутся дополнительно размечать свои статьи в RDFе :) но примером удобного применения может быть, например, интернет-магазин: у таких данных уже есть внутренняя структура и очень легко проставить маппинг категорий товаров в RDF-модель. Одно вот только не понимаю: кто же определит эти самые стандартные «понятия»? Как гарантируется, что представление мобильников на разных сайтах будет одинаковое (или любым другим образом понятное машинам)?
            0
            Я считаю, что это вопрос времени. Преимущества семантической паутины пока понятны малому количеству людей, но постепенно, с внедрением его во всякие полезные сервисы всё будет становится лучше.
            Если один магазин описывает все товары дополнительно в микроформате и активно используется агентами агрегаторов, то количество его продаж будет весьма доходчивым голосом за то, чтобы разобраться и внедрять!

            Ну и ещё много примеров можно придумать, как народ начнёт понимать все плюсы данного подхода. Надеюсь моя статья тоже этому поспособствует
              0
              Очень даже способствует! :)
              А всё-таки, кто же будет определять глобальные понятия? Где-то в документации видел пример винного магазина… но ведь вино нельзя описать одной общей моделью, как всегда — есть несколько подходов, в том числе — с разной степенью подробности :)
                +2
                во-первых, есть «стандарты де-факто» — кто-нибудь один придумал удачную конструкцию, ее подхватили остальные — вот и готов стандарт.
                во-вторых, для онтологий есть возможность «перевода» из одной в другую. Задача не самая тривиальная, но решаемая. Учитывая, что более-менее удачные решения не могут различаться чрезвычайно сильно (обычно, отличие идет на уровне словарей — одни вещи называют разными именами, разные вещи — одними), такой перевод может быть прост. Более того, с развитием семантической паутины и других сервисов на основе онтологий, возможно, будут созданы специальные инструменты для такого перевода. Сейчас, не смотря ни на что, онтологические концепции в ИТ являются очень передовой, а, следовательно, слабо исследованной областью.
                  0
                  Теперь более-менее понятно, спасибо :)
                    0
                    всегда пожалуйста =)
                      +1
                      к слову, перевод с одной онтологии в другую во многом напоминает перевод с одного языка на другой. С той лишь разницей, что языки часто имеют различные конструкции, формы которых требуют согласования (без этого получается «моя твоя не понимать»), а в онтологиях все эти моменты уже формализованы и, часто, созданы именно с расчетом на подобные преобразования. То есть перевод получается качественным, а не «лишь бы за конечное время», как в некоторых переводчиках =)
                      +1
                      Вот это Вы действительно всё хорошо объяснили. Вообще онтологии должны позволить корректно использовать терминологию незнакомой области, если для неё построена онтология.
                      А насчёт описания вина, так отличный пример, как раз на разных уровнях онтологии вина и будут интересующие Вас подробности. И даже больше, наиболее низкие уровни будут интересовать возможно только профи — сомелье :D
                +1
                Хорошая статья. Конечно не школьный уровень, но и я поставлю звездочку.
                  +2
                  Да, это не школьный уровень. Вообще это часть моей статьи в рамках научной работы в аспирантуре. Первая часть. Во второй рассматриваю метод Ontology Aware Classifiers описанный в диссертации Zhang J., «Learning ontology aware classifiers» который использует переменные уровни онтологий для автоматического построения классификаторов на основе сырых данных.
                  Но там много формул и уже не хабровского формата статья.
                  Я дождался публикации и вот запостил
                  0
                  «XML chemma» решает.
                    +1
                    Вообще-то можно было и в личку об этом, но спасибо, исправил. Глаз замылися
                    0
                    > Для решения данной проблемы предпринята глобальная инициатива реорганизации структуры данных Internet в целях преобразования его в Семантическую Паутину
                    Это утопия. Человеческий фактор все слишком сильно усложняет:)
                      +1
                      Согласен на все сто. НО не смотря на этот, такой неудобный фактор, инициатива предпринята ;)
                        0
                        более того, имеет шансы его преодолеть. в конце концов, semantic web направлен на более «человечное» использование информации — по смыслу, а не по буковкам и словам. Просто это пока не отработано.
                      0
                      Честно говоря, совершенно не верю в ручную разметку Интернета пользователями. На уровне отдельно взятого магазина — верю, если хозяин сочтёт, что ему это полезно.
                      но размечать каждый адрес компании, сигналы светофора и прочее — увольте.

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

                      Мне кажется, перспективнее развивать «умные» алгоритмы анализа текста. в конце концов, человек может вычленить адрес даже без специальной разметки.
                        0
                        Ручная точно не приживётся, а вот автоматизированная да. Больно много плюсов в итоге.
                        И кстати, семантическая разметка совершенно не мешает развитию средства умного анализа, Web Data Mining'a и Data Extraction'a
                          0
                          Хорошо, если получится :)

                          Меня порою совсем уж скепсис одолевает относительно извлечения информации из Сети.
                          Даже если не углубляться в глубины семантики, как только кому-то что-то надо пропихнуть, поиск сразу же становится невозможным.

                          Наберите ради прикола в Гугле «britney spears free mp3 download» и посмотрите, какова релевантность результатов. Она просто нулевая. Не уверен, что хотя бы один сайт из двадцатки реально даст вам что-либо бесплатно загрузить.

                          А семантическая разметка — совсем уж обоюдоострое оружие. Это как бы активный призыв: «я такой-то!» А на практике хз что там. Вон в html тоже есть тег meta, и там можно перечислить ключевые слова… да только ни один нормальный поисковик не принимает эти слова в расчёт.

                          Впрочем, ладно, хватит занудствовать :)
                            0
                            Всё будет нормально! Количество информации в сети удваивается всё быстрей, волей-неволей придётся использовать какие-то инструменты. А альтернатив пока не так и много
                              0
                              Так и получается. Анализ семантической разметки и выделение из нее полезных фактов — задача не менее сложная, чем работа с обычным HTML и текстами на естественном языке.
                            0
                            Относительно ручной разметки — правда, в первую очередь для микроформатов.

                            Мне кажется, что хозяева чаще бы считали микроформаты полезными, если бы поисковики давали бонусы при ранжировании страницам, в которых релевантная информация содержится внутри соответсвующих типу информации микроформатов — например, имя человека внутри hCard.
                            0
                            На мой взгляд барьеры очень серьезные для развития. Эти проблемы будут решены только когда будет достаточное количество людей, осознающих плюсы семантик веба. А достаточное количество будет только в том случае, если помимо ит-шников этой проблемой проникнуться еще и рядовые пользователи. А вот уж когда эволюция интеллекта в мировом масштабе дойдет до этого, вот тогда и будет семантик веб. Да, статья на хабре — это хорошо, но необходимо еще и пользователям на других блогах, с другими проблемами, которые можно облегчить семантик вебом сообщить об этом в доступной и понятной форме.
                              0
                              Начал писать комментарий, но он получился очень длинным, поэтому выделяю в отдельный топик: Тут
                                0
                                Отличная мысль! Я был-бы только рад такому комментарию к своей статье, но в виде отдельной статьи это выглядит намного лучше!
                                По поводу содержания, я оставил там своё мнение habrahabr.ru/blogs/sw/79371/#comment_2323576
                                  0
                                  на хабре явно нехвтает семантических отношений между статьями :)

                                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                Самое читаемое