После стандартизации языков представления знания, таких как «среда описания ресурса» (англ.Resource Description Framework, RDF) и «язык описания онтологий» (англ.Web Ontology Language, OWL), много исследований проводилось в этой области, особенно относительно преобразования реляционной базы данных в RDF, способности распознавания[англ.], обнаружения знаний и обучения онтологий. Основной процесс использует традиционные методы извлечения информации и методы «извлечения, преобразования и загрузка» (англ.extract, transform, load, ETL), которые преобразуют данные из исходных форматов в структурированные форматы.
Следующие критерии могут быть использованы для попыток категоризации в этой теме (некоторые из них обеспечивают извлечение знаний из реляционных баз данных)[2]:
Источник
Какие данные могут быть обработаны: Текст, Реляционная база данных, XML, CSV
Представление
Как извлечённые данные могут быть представлены для использования (файл онтологии (объектной модели), семантическая база данных)? Как можно запрашивать информацию из полученного представления?
Синхронизация
Выполняется ли извлечение знания один раз для получения дампа или результат синхронизируется с источником? Извлечение статическое или динамическое? Записываются ли изменения в результате обратно в источник (двунаправленность)?
Повторное использование словаря
Позволяет ли средство извлечения повторное использование существующих словарей при извлечении. Например, столбец таблицы 'firstName' может быть отражён в столбец foaf: firstName. Некоторые автоматические подходы не способны к отображению словаря.
Автоматизация
Степень участия/автоматизации извлечения: Ручной режим, есть GUI, полуавтоматический, автоматический.
Необходимость объектной модели предметной области
Требуется ли наперёд заданная объектная модель для отображения в неё. Таким образом, либо отображение создаётся, либо схема получается из источника путём (обучения онтологий[англ.]).
Президент Обама призвал в среду Конгресс включить расширение налоговых каникул для студентов в пакет экономического стимулирования, утверждая, что эта политика даст более крепкую поддержку.
Так как Президент Обама связан в DBpedia с ресурсом LinkedData, дальнейшая информация может быть извлечена автоматически и Семантический механизм рассуждений может, например, сделать вывод, что упомянутая сущность является неким типом личности (используя FOAF) и президентом США (используя YAGO[англ.]). Контрпримеры: Методы, которые только распознают сущности и не связывают со статьями в Википедии или другими объектами, не обеспечивают извлечение дальнейших структурированных данных и формального знания.
Преобразование реляционной базы данных в RDF
Triplify, D2R Server, Ultrawrap и Virtuoso[англ.] прредставления RDF являются средствами, которые преобразуют реляционную базу данных в RDF. В течение это процесса эти средства позволяют повторное использование словарей и онтологии в процессе преобразования. Когда преобразуется типичная реляционная таблица с названием users, один столбец (например, name) или группа столбцов (например, first_name и last_name) должны обеспечивать унифицированный идентификатор создаваемой сущности. Обычно используется главный ключ. Любой другой столбец может быть извлечён как связанный с этой сущностью[4]. Затем используются (и повторно используются) свойства с формально определённой семантикой для интерпретации информации. Например, столбец таблицы user, названный marriedTo (женат на/замужем за) может быть определён как семантическое отношение, а столбец homepage (домашняя страница) может быть преобразован в свойство из словаря FOAF с названием foaf: homepage, тем самым квалифицируя его как обратную функциональность. Тогда каждый вход таблицы user может быть сделан экземпляром класса foaf:Person (онтология Население). Кроме того, предметная область (в виде онтологии) может быть создана из status_id путём вручную созданных правил (если status_id равен 2, строка таблицы принадлежит классу Учитель) или (полу-)автоматическими методами (Обучение онтологий[англ.]). Ниже приведён пример преобразования:
Отображение 1:1 из таблиц/представлений реляционной базы данных в RDF сущности/атрибуты/значения
При построении представления реляционной базы данных (РБД, англ.relational database) стартовой точкой часто служит диаграмма сущность-связь (англ.entity-relationship diagram, ERD). Обычно каждая сущность представлена как таблица базы данных, каждое свойство сущности становится столбцом в этой таблице, а связь между сущностями показывается внешними ключами. Каждая таблица обычно определяет конкретный класс сущностей, а каждый столбец определяет одно из свойств этой сущности. Каждая строка в таблице описывает экземпляр сущности, однозначно определённый главным ключом. Строки таблицы вместе описывают набор сущностей. В эквивалентном RDF представлении того же набора сущности:
Каждый столбец в таблице является свойством (то есть предикатом)
Каждое значение в столбце является свойством атрибута (то есть является объектом)
Каждый ключ строки представляет ID сущности (то есть субъектом)
Каждая строка представляет экземпляр сущности
Каждая строка (экземпляр сущности) представляется в RDF коллекцией кортежей с общим субъектом (ID сущности).
Таким образом, чтобы выразить эквивалентное представление, основанное на семантике RDF, базовый алгоритм будет выглядеть следующим образом:
создаём схему RDF (RDFS) класса для каждой таблицы
преобразуем все главные ключи и внешние ключи в IRI идентификаторы
назначаем IRI предикат каждому столбцу
назначаем rdf: type предикат каждой строке, связывая его с IRI идентификатором RDFS класса
Для каждого столбца, не являющегося ни частью главного ключа, ни частью внешнего ключа, строим тройку, содержащую IRI главного ключа в качестве субъекта (подлежащего), IRI столбца в качестве предиката и значения столбца в качестве объекта.
Раннее упоминание базового или прямого отображения можно найти в сравнении Тимом Бернерсом-ЛиER-модели с RDF моделью[4].
Сложные отображения реляционных баз данных в RDF
1:1 отображение, упомянутое выше представляет старые данные как RDF напрямую, а дополнительная доработка может быть использована для улучшения полноценности вывода RDF соответственно заданному сценарию использования. Как правило, информация теряется в течение преобразования диаграммы сущность-связь (англ.entity-relationship diagram, ERD) в реляционные таблицы (детальное описание можно найти в статье «Объектно-реляционная потеря соответствия[англ.]») и должна быть восстановлена путём обратного проектирования. С концептуальной точки зрения подходы для извлечения могут прийти с двух направлений. Первое направление пытается извлечь или обучить (с помощью машинного обучения) OWL схему из заданной схемы базы данных. Ранние подходы использовали фиксированное количество созданных вручную правил отображения для улучшения 1:1 отображения[5][6][7]. Более тщательно разработанные методы использовали эвристические или обучающие алгоритмы для порождения схематической информации (методы частично совпадают с обучением онтологий[англ.]). В то время как некоторые подходы пытаются извлечь информацию из структуры, присущей SQL схеме[8] (анализируя, например, внешние ключи), другие подходы анализируют содержимое и значения в таблицах для создания концептуальных иерархий[9] (например, столбцы с малым числом значений являются кандидатами стать категориями). Второе направление пытается отобразить схему и её содержимое в существующую онтологию предметной области (см. также «Отображение онтологий»). Часто, однако, подходящая онтология предметной области не существует и её сначала следует создать.
XML
Поскольку XML структурирован в виде дерева, любые данные легко представить в формате RDF, который структурирован в виде графа. XML2 RDF является одним примером подхода, который использует пустые узлы RDF и преобразует элементы и атрибуты XML в свойства RDF. Случай, однако, более сложен, чем в случае реляционных баз данных. В реляционных таблицах главный ключ является идеальным кандидатом для субъекта выделенных троек. XML элемент, однако, может быть преобразован — в зависимости о контекста — как субъект, как предикат или как объект тройки. XSLT может быть использован как стандартный язык преобразования для ручного преобразования XML в RDF.
Наибольшая порция информации, содержащаяся в бизнес-документе (около 80 %[11]), закодирована в естественном языке и потому не структурирована. Поскольку неструктурированные данные является, скорее, сложной задачей для извлечения знания, требуются более изощрённые методы, которые обычно дают худшие результаты по сравнению со структурированными данными. Однако возможность приобрести огромное количество извлечённых знаний компенсирует увеличивающуюся сложность и ухудшающееся качество извлечения. Далее источники на естественном языке понимаются как источники информации, в которых данные приведены как неструктурированные текстовые данные. Если данный текст вставлен в документ с разметкой (например, HTML-документ), упомянутые системы обычно удаляют элементы разметки автоматически.
Традиционное извлечение информации
Традиционное извлечение информации (англ.information extraction, IE[12])[13] — это технология обработки естественного языка, которая извлекает информацию из текстов на естественном языке и структурирует их подходящим образом. Виды информации, которые следует извлечь, должны быть указаны в модели перед началом процесса обработки, вот почему весь процесс традиционного извлечения информации зависим от рассматриваемой предметной области. ИЗ (англ.IE) распадается на следующие пять подзадач.
Построение элементов шаблона (ПЭ, англ.Template element construction, TE) (или Добавление атрибутов к сущностям)
Выявление связей между сущностями (ВС, англ.Template relation construction, TR)
Построение полного описания события (ППО, англ.Template scenario production, ST)
Задача распознавания именованных сущностей заключается в узнавании и категоризации всех именованных сущностей, содержащихся в тексте (назначение именованным сущностям предопределённые категории). Это работает путём применения методов, основанных на грамматике, или на статистических моделях.
Разрешение кореференции устанавливает эквивалентные сущности, которые были распознаны в тексте алгоритмом NER. Есть два связанных вида отношения эквавалентности. Первое отношение относится к связи между двумя различными сущностями (например, IBM Europe и IBM), а второе относится к связи между сущностью и её анафорической ссылкой (например, it и IBM). Оба вида могут быть распознаны разрешением кореференции.
Во время построения элементов шаблона система IE устанавливает описательные свойства сущностей, распознанные системами NER и CO. Эти свойства соответствуют обычным качествам, как «красный» или «большой».
Выявление связей между отдельными сущностями устанавливает отношения, которые существуют между элементами шаблона. Эти отношения могут быть нескольких видов, такие как работает-для или расположено-в, с ограничением, что как область, так и диапазон соответствуют сущностям.
Полные описания событий, которые проводятся в тексте, распознаются и структурируются согласно сущностям, распознанных системами NER и CO, а отношения распознаются системой ВС.
Извлечение информации на основе онтологий
Извлечение информации на основе онтологий (англ.Ontology-based information extraction, OBIE)[11] является подобластью извлечения информации, в которой используется по меньшей мере одна онтология для управления процессом извлечения информации из текста на естественном языке. Система OBIE использует методы традиционного извлечения информации для распознавания понятий, сущностей и отношений использованных онтологий в тексте, которые будут структурированы в онтологию после процесса. Таким образом, вводимые онтологии формируют модель извлекаемой информации.
Обучение онтологий (англ.Ontology learning, OL) это автоматическое или полуавтоматическое создание онтологий, включая извлечение соответствующих терминов объектной области из текста естественного языка. Так как построение онтологий вручную требует крайне интенсивной работы и затрат времени, существует большой стимул для автоматизации процесса.
Семантическое аннотирование
Во время семантического аннотирования (англ.semantic annotation, SA)[14] текст на естественном языке сопровождается метаданными (часто представимы в атрибутах RDF[англ.], англ.Resource Description Framework in Attributes), которые должны сделать семантику содержащихся элементов понимаемыми машинами. В этом процессе, который обычно является полуавтоматическим, знания извлекаются в том смысле, что устанавливается связь между лексическими элементами и, например, понятиями из онтологий. Таким образом получаем знания, которые открывают значение сущности в обрабатываемом контексте, а потому определяет значение текста в воспринимаемой машиной информации[англ.] с возможностью делать логические выводы. Семантическая аннотация обычно расщепляется на следующие две подзадачи.
Извлечение терминологии
Связывание именованных сущностей
На уровне извлечения терминологии из текста извлекаются лексические термины. С этой целью лексический анализатор сначала определяет границы слов и выделяет аббревиатуры. Затем из текста извлекаются термины, которые соответствуют понятиям, с помощью словаря специфичных области исследования для связывания сущностей.
При связывании сущностей[15] устанавливается связь между извлечёнными лексическими членами из текста-источника и понятиями из онтологии или базы знаний, такой как DBpedia. Для этого кандидаты в понятия выявляются согласно определённым значениям элемента с помощью словаря. Наконец, анализируется контекст терминов для определения наиболее подходящего разрешения многозначности и термину назначается правильное понятие.
Средства
Следующие критерии могут быть использованы для категоризации средств, которые извлекают знание из текстов на естественном языке.
Источник
Какие входные форматы могут быть обработаны (простой текст, HTML или PDF, например)?
Парадигма доступа
Может ли средство запросить часть данных из источника или необходим полный дамп для процесса извлечения?
Синхронизация данных
Синхронизирован ли результат извлечения с источником?
Использование объектной модели
Связывает ли средство результат с объектной моделью?
Автоматизация отображения
Насколько автоматизирован процесс извлечения (ручной, полуавтоматический или автоматический)?
Требование объектной модели
Требует ли средство наличия объектной модели для извлечения?
Использование GUI
Имеет ли средство графический пользовательский интерфейс (англ.Graphical User Interface, GUI)?
Подход
Какой подход (IE, OBIE, OL или SA) средство использует?
Извлекаемые сущности
Какие типы сущностей (например, именованные сущности, концепции или отношения) могут быть извлечены средством?
Применяемые техники
Какие техники применяются (например, NLP, статистические методы, кластеризация или машинное обучение)?
Выходная модель
Какая модель используется для представления результата средства (например, RDF или OWL)?
Поддерживаемые предметные области
Какие предметные области поддерживаются (например, экономика или биология)?
Поддерживаемые языки
Какие языки могут быть обработаны (например, английский, немецкий или русский)?
Следующая таблица описывает некоторые средства для извлечения знаний из источников естественного языка.
извлечение именованных сущностей, разрешение сущностей, извлечение связей, атрибутов, понятий, мультивекторный анализ тональности высказывания, геопривязка, идентификация языка, машинное обучение
Обнаружение знаний описывает процесс автоматического поиска больших объёмов данных для моделей, которые могут считаться знаниемо данных[33]. Это часто описывается как извлечениезнания из входных данных. Обнаружение знаний разрабатывается для анализа данных и тесно связано как с методологией, так и терминологией[34].
Наиболее известная ветвь интеллектуального анализа данных — обнаружение знаний, известное также как обнаружение знаний в базах данных. Как и многие другие формы обнаружения знаний, этот анализ создаёт абстракции входных данных. Знание, приобретённое в результате этого процесса, может стать дополнительными данными, которые могут быть использованы для дальнейшего использования и поисков. Часто выходные данные процесса обнаружения знаний не имеет практической ценности, так что обнаружение активного знания[англ.], известное также как «Анализ данных по предметной области[англ.]»[35], предназначено для обнаружения и извлечения (имеющего практическое значение) активного знания и выводов из этого знания.
Другое перспективное приложение обнаружения знаний находится в области модернизации программного обеспечения[англ.], обнаружения слабых мест и соответствия стандартам, которое вовлекает понимание существующего программного обеспечения. Этот процесс связан с понятием обратной разработки. Обычно знание, получаемое из существующего программного обеспечения, представляется в виде моделей, к которым могут быть сделаны конкретные запросы, если необходимо. Модель сущность — связь является частым форматом, представляющим знание и получаемым из существующего программного обеспечения. Консорциум Object Management Group разработал спецификацию метамодели обнаружения знаний[англ.] (англ.Knowledge Discovery Metamodel, KDM), которая определяет онтологию для программных ресурсов и их связей, предназначенную для обнаружения знаний в существующем коде. Обнаружение знаний из известных программных систем, известное также как интеллектуальный анализ программного обеспечения[англ.], тесно связано с интеллектуальным анализом данных, поскольку существующие программные находки имеют огромное значение для управления рисками и коммерческую ценность[англ.], которые служат ключевыми элементами для анализа и развития программных систем. Вместо анализа индивидуальных наборов данныхинтеллектуальный анализ программного обеспечения[англ.] фокусируется на метаданных, таких как производственный поток (например, поток данных, поток управления, схема вызовов), архитектуре, схемах баз данных и деловых правилах/терминах/процессах.
Cao L. Domain driven data mining: challenges and prospects // IEEE Trans. on Knowledge and Data Engineering. — 2010. — Т. 22, вып. 6. — doi:10.1109/tkde.2010.32.
Life in the Linked Data Cloud // www.opencalais.com. — 2009. Архивировано 24 ноября 2009 года. Выдержка: Википедия имеет двойника с именем DBpedia. DBpedia имеет ту же структурированную информацию, что и Википедия, но преобразованную в понимаемый машинами формат.
Syed Hamid Tirmizi, Daniel P. Miranker, Juan Sequeda.Translating SQL Applications to the Semantic Web // Database and Expert Systems Applications. — 2008. — Т. 5181/2008. — (Lecture Notes in Computer Science).
Man Li, Xiaoyong Du, Shan Wang.A Semi-automatic Ontology Acquisition Method for the Semantic Web // WAIM. — Springer, 2005. — Т. 3739. — С. 209—220. — (Lecture Notes in Computer Science). — doi:10.1007/11563952_19.
Aldo Gangemi, Valentina Presutti, Diego Reforgiato Recupero, Andrea Giovanni Nuzzolese, Francesco Draicchio, Misael Mongiovì. Semantic Web Machine Reading with FRED // Semantic Web Journal. — 2016. — doi:10.3233/SW-160240.
Philipp Cimiano, Johanna Völker.Text2Onto - A Framework for Ontology Learning and Data-Driven Change Discovery // Proceedings of the 10th International Conference of Applications of Natural Language to Information Systems. — 2005. — Т. 3513. — С. 227 – 238.
Stephen Dill, Nadav Eiron, David Gibson, Daniel Gruhl, R. Guha, Anant Jhingran, Tapas Kanungo, Sridhar Rajagopalan, Andrew Tomkins, John A. Tomlin, Jason Y. Zien.SemTag and Seeker: Bootstraping the Semantic Web via Automated Semantic Annotation // Proceedings of the 12th international conference on World Wide Web. — 2003. — С. 178 – 186.
Erdmann M., Maedche A., Schnurr H.-P., Staab S.From Manual to Semi-automatic Semantic Annotation: About Ontology-based Text Annotation Tools // Proceedings of the COLING. — 2000.
Пожалуйста, после исправления проблемы исключите её из списка параметров. После устранения всех недостатков этот шаблон может быть удалён любым участником.