Ссылка на статью:
// Наука и Образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2017. №7. С. 248-261.
Б01: 10.7463/0717.0001228
Представлена в редакцию: 15.05.2017 © МГТУ им. Н.Э. Баумана
УДК 004.023
Алгоритм связывания именованных сущностей
Л "к Л
Пантелеев М. Ф. ' , Самарёв Р. С. Vnteleevmf@gmail.com
1МГТУ им. Н.Э. Баумана, Москва, Россия
В статье рассматривается задача связывания именованных сущностей. Выдвигаются предположения о взаимосвязи сущностей между собой и в предложении в целом, на основании которых предлагается и подробно описывается алгоритм её решения, представляющий из себя сочетание графового подхода и подхода на основе машинного обучения.
Ключевые слова: связывание именованных сущностей; БВреШа; граф; машинное обучение; алгоритм
Введение
В задаче обработки текста на естественном языке связывание именованных сущностей (Named Entity Linking) представляет собой задачу определения и связывания какой-либо встреченной в тексте сущности с некоторой сущностью в базе знаний (например, DBpedia) [1].
К примеру, рассмотрим предложение "Titanic was filmed by James Cameron". В этом предложении можно выделить две сущности: "Titanic", являющуюся фильмом 1997 года и "James Cameron" — сущность, являющуюся режиссером этого фильма. По сути, задача связывания именованных сущностей (NEL — Named Entity Linking) является логическим продолжением задачи распознавания именованных сущностей (NER — Named Entity Recognition) и отличается от нее тем, что в задачу NER не входит определение того к какой именно сущности относится то или иное слово в предложении. В случае NER необходимо установить, что "Titanic" и "James Cameron" относятся к некоторым сущностям классов Object и Person соответственно, тогда как в случае NEL необходимо связать эти сущности с конкретными сущностями в базе знаний (в нашем случае http://dbpedia.org/page/Titanic_(1997_film) и http://dbpedia.org/page/James_Cameron).
В настоящее время существует всего четыре свободно распространяемых средства с открытым исходным кодом, решающих задачу связывания именованных сущностей: DBpedia Spotlight [2], Yahoo FEL [3], Dexter [4], Babelfy [5].
Наука и Образование
МГТУ им. Н.Э. Баумана
Сетевое научное издание
ISSN 1994-0408
Работу каждой из этих систем можно условно разделить на два этапа — выявление из предложения набора сущностей-кандидатов и снятие неоднозначностей — отбор из этого набора множества релевантный кандидатов. Большинство современный систем, решающих задачу связывания именованнык сущностей, показывают на первом этапе достаточно высокую точность (свыше 90%), поэтому наибольший интерес на сегодняшний день представляет именно второй этап, качество разрешения которого значительно ниже — около 70%.
Принцип работы DBpedia Spotlight следующий: сперва происходит выявление из предложения поверхностных форм (ключевык слов), которые могут быть потенциально связаны с сущностями DBpedia, на базе который формируется набор сущностей-кандидатов. Далее следует этап снятия неоднозначностей — на нем для каждой поверхностной формы и связанных с ней сущностей-кандидатов вычисляется их многомерное векторное представление (вектор, представляющий поверхностную форму, строится на основе контекста этой формы в анализируемом предложении, а вектор, представляющий сущность-кандидат, строится на основе контекстов всех упоминаний этой сущности в Wikipedia), после чего для каждой поверхностной формы выбирается описывающая ее сущность-кандидат на основе минимальности расстояния между их векторными представлениями.
Принцип работы Yahoo FEL схож с принципом работы DBpedia Spotlight — снятие неоднозначностей также происходит на основе векторных представлений сущностей, при этом дополнительно учитывается статистика частоты встречаемости сущности.
Babelfy использует графовый подход — для каждой сущности базы знаний Babelfy предварительно вычисляется ее семантическая интерпретация (сигнатура) — множество ассоци-ированнык с ней сущностей. Эта операция выполняется всего один раз и никак не зависит от входных данных. После этого из предложения выявляются все сущности-кандидаты, и на базе их сигнатур строится семантический граф, из которого затем извлекается плотный подграф при помощи эвристического алгоритма. Далее на основе этого подграфа вычисляется оптимальная сущность-кандидат для каждого фрагмента на основе введенной графовой метрики.
Принцип работы Dexter похож на принцип работы Babelfy — для снятия неоднозначностей также используется графовый подход с тем отличием, что в Dexter не используются сигнатуры сущностей — сущности-кандидаты ранжируются непосредственно согласно метрике, предложенной в работе.
Недостаток подходов систем, изложенный выше, заключается в том, что семантическое ранжирование сущностей-кандидатов является поверхностным в том смысле, что оно в первую очередь учитывает слова или сущности, встреченные в предложении, при этом практически не используя априорные семантические сведения о самих сущностях-кандидатах (их атрибуты в базе знаний). Это приводит к тому, что данные подходы будут показывать высокое качество в том случае, когда анализируемое предложение содержит набор слов/сущностей, схожий с набором слов/сущностей в статьях из обучающей выборки, либо в случае суще-
ствования путей между вершинами, представляющими сущности-кандидаты в графе базы знаний, что в общем случае гарантировать невозможно.
В статье предлагается алгоритм связывания именованных сущностей, который основан на способе снятия неоднозначностей, использующем более глубокое семантическое понимание сущностей-кандидатов за счет введения меры их совместности на уровне атрибутов базы знаний.
1. Выбор опорной базы знаний
В качестве примеров открытых баз знаний можно привести DBpedia [1], Freebase [6], OpenCyc [7], Wikidata [8], YAGO [9]. Принимая во внимание сравнительный анализа этих баз, выполненный в [10], а также анализ существующих наборов данных [11] для решения задачи связывания именованных сущностей, целесообразно использовать DBpedia, как одну из наиболее полных баз знаний общего назначения (только для английского языка на 2017 год DBPedia содержит онтологию для порядка 4,5 млн. сущностей), которая также связана с другими коллекциями Linked Data [12].
Так как база DBpedia в основном генерируется автоматически на основании Википедии, в общем случае она может содержать неструктурированную или плохо структурированную, ошибочную информацию, а также описания сущностей, не являющимися релевантными для задачи NEL. Сама DBpedia разбита на несколько наборов данных и доступна для скачивания по ссылке: http://downloads.dbpedia.org/2016-04/.
Целесообразно использовать следующие наборы данных:
1) article ^categories _en.ttl — категории концептов;
2) instanceJypes_en.ttl — типы концептов;
3) mappingbasedJiterals_en.ttl, mappingbasedjobjectsjsn.ttl — данные, извлеченные из информационных таблиц статей;
4)persondata_en.ttl — информация о людях;
5) skos ^categories _en.ttl, topicaLconcepts_en.ttl, transitive .redirects jen.ttl — описания концептов и коллекция для устранения неоднозначностей, как это предложено в [13], а также для отфильтровывания нерелевантных предикатов [14].
2. Основные идеи алгоритма
Алгоритм основывается на следующих предположениях:
1) сущности DBpedia образуют вершины графа, а ребра представлены атрибутами (предикатами);
2) существует зависимость между атрибутами различных сущностей базы знаний, идентифицирующих сущности, выявленные в предложении;
3) связанные контекстом сущности будут расположены «ближе» друг к другу в графе DBpedia (одна из тривиальных мер — подсчет числа ребер).
Для построения такого алгоритма необходимо решить задачи, естественным образом вытекающие из сформулированных выше предположений.
Первая задача — выявление зависимости между атрибутами, — требует использования некоторой модели, которая позволила бы получить меру совместности атрибутов различных сущностей, встреченных в одном контексте. В качестве такой модели можно предложить Латентное размещение Дирихле (LDA — Latent Dirichlet allocation) [15].
Вторая задача представляет собой графовую задачу, в которой необходимо выявить оптимальные наборы связанных сущностей согласно некоторой метрике, характеризующей расстояние между этими сущностями в графе DBpedia.
3. Реализация алгоритма
Алгоритм состоит из следующих этапов:
1) выявление поверхностных форм в предложении, которым могут соответствовать сущности базы знаний;
2) поиск в базе знаний сущностей-кандидатов, отвечающих поверхностным формам;
3) выявление связей между сущностями-кандидатами, агрегация этих связей в цепочки;
4) взвешивание цепочек при помощи LDA-модели;
5) получение результирующих цепочек.
Выявление поверхностных форм. На данном этапе происходит выявление поверхностных форм (или ключевых слов) в предложении, которым могут соответствовать некоторые сущности в базе знаний. Для решения этой задачи можно использовать различные NER и POS-анализаторы (несмотря на существующие проблемы, например, в русском языке [16]), при помощи которых можно выявить релевантные части речи и сущности — к примеру, для выделения контекста или поверхностных форм в первую очередь представляют интерес существительные в общей форме и имена собственные [17].
Таким образом, получив на вход некоторое предложение на естественном языке, на выходе мы имеем некоторое множество поверхностных форм, которые потенциально могут быть сопоставлены с сущностями DBpedia.
Поиск сущностей-кандидатов. Это этап, на котором осуществляется поиск наборов сущностей DBpedia, которые могут быть связаны с данной поверхностной формой. Для ускорения поиска рекомендуется предварительно сформировать текстовый индекс, состоящий из документов, включающих в себя название именованной сущности, а также набор ассоциированных с ней атрибутов (последнее необходимо для обеспечения возможности быстрого контекстного поиска).
Для того, чтобы учесть контекст, разобьем запрос к индексу на 2 части. Первая часть запроса будет описывать «обязательное» (must) совпадение (поиск будет осуществляться по конкретной поверхностной форме), а вторая — «необязательное» (should), в которую поместим ключевые слова предложения.
Текстовые индексы и запросы такого типа можно реализовать самостоятельно или с использованием существующих поисковых средств, таких как Elasticsearch, Lucene, Solr.
В случае использования Elasticsearch результат выполнения запроса будет включать от-ранжированный по полю score (поле score содержит некоторое вещественное число, характеризующее точность совпадения документа с запросом) набор документов, отвечающих заданным критериям.
Результатом работы данного этапа являются наборы сущностей-кандидатов, отвечающих извлеченному из предложения набору поверхностных форм.
Выявление связей между сущностями-кандидатами. Это этап, на котором осуществляется выявление оптимальных наборов сущностей-кандидатов. Под оптимальными наборами здесь понимаются такик наборы сущностей-кандидатов, для которых суммарное расстояние ребер, соединяющих сущности, входящие в эти наборы, минимально. Для взвешивания ребер в графе DBpedia можно воспользоваться мерами Information Content (IC) и Pointwise Mutual Information (PMI) [9], которые основываются на том, что характеризующая способность предиката обратно пропорциональна частоте его встречаемости. IC и PMI определяются следующим образом:
ICxpred (^Pred) = - log(P(Wpred)), г>ЫТ( \ log(P (^Pred^Obj))
PMI (Wol,) = P^d) x P •
Здесь P(wPred) — вероятность появления предиката Pred; P(wObj) — вероятность появления объекта Obj; P(wPred,wObj) — вероятность совместного появления предиката Pred и объекта Obj.
Альтернативную меру можно ввести на основании глубины дерева онтологий DBpedia, которую образуют предикаты: http://mappings.dbpedia.org/server/ontology/classes/.
Задача выявления оптимального набора связанных сущностей-кандидатов может быть сформулирована следующим образом: пусть есть ориентированный взвешенный граф G = (V,E). Пусть мы выделили в нем некоторые небольшие подмножества вершин V1, V2, . .., Vn, |Vi| = M. Необходимо из каждого подмножества V1, V2, .. ., Vn выделить вершины-представители vi, v2, ..., vn таким образом, чтобы суммарный вес ребер, соединяющих их, был минимален. При этом не гарантируется существование пути между вершинами в V и Vj.
Данная задача является NP-трудной. Один из способов ее решения предполагает использование алгоритма Дейстры. Принимая во внимание временную сложность алгоритма Дейкстры, можно сделать заключение, что решать данную задачу прямым перебором или с использованием различных эвристических методов (к примеру, метода ветвей и границ) для большого графа не является приемлемым.
Хранение предварительно вычисленных кратчайших путей между узлами графа существенно ускорит процесс поиска, однако, сделав предположение, что один узел связан не
более, чем с 10% узлов графа, можно показать, что даже для оптимизированного варианта хранения такой таблицы потребуется несколько ТБ дискового пространства, что также не является приемлемым.
Таким образом, приходим к заключению, что напрямую (с учетом объема БВре&а) эту задачу решить не представляется возможным, поэтому модифицируем ее.
Можно предложить следующее решение: будем последовательно искать кратчайшие пути для пар массивов сущностей-кандидатов при помощи введения псевдовершин в и Ь в графе. Пары будем выбирать, проходясь «окном» размером в 3 по массиву сущностей кандидатов.
Для каждой из пар массивов сущностей-кандидатов имеет смысл выделять несколько связей, для этого можно временно исключать из графа вершины, включенные в найденные кратчайшие пути. Данный процесс проиллюстрирован на рис. 1 и 2.
Пара 2
Рис. 1. Выявление сущностей-кандидатов
На рис. 2 продемонстрирован пример построения цепочки — псевдовершина в соединяется с каждой из сущностей первого набора, а псевдовершина Ь — с каждой из сущностей второго ребрами с весом и>0 = 0. При этом зелеными стрелками обозначены пути в графе между этими двумя наборами.
Рис. 2. Выявление связей между сущностями-кандидатами
После выявления таких цепочек их необходимо соединить между собой таким образом, чтобы в одной цепочке не оказалось несколько сущностей из одного набора кандидатов. При этом следует учитывать суммарный вес и длину выявленных путей между парами сущно стей-кандидатов.
Взвешивание цепочек при помощи LDA-модели. LDA [15] представляет собой пример тематической модели, используемой для латентной тематической разметки документов. Если имеются наборы слов, собранные в документы, утверждается, что каждый документ представляет собой смесь небольшого количества тем и что появление каждого слова связано с одной из тем документа. Обученные тематические модели способны осуществить тематическую разметку нового документа на основании слов, содержащихся в нем.
В нашем случае «документом» будет являться некоторое предложение, а «словами» в нем — набор свойств встреченных в нем сущностей DBpedia. Основной задачей модели на этом этапе является анализ выявленных цепочек на предмет их тематической близости.
Предварительно необходимо провести обучение модели. Для этого были использованы обучающие выборки, описанные в [18].
В качестве примера результата обучения приведем распределения атрибутов сущностей DBpedia (предикатов) для нескольких тем (topic) LDA:
• Topic 1: country (0.084), areaTotal (0.069), populationTotal (0.057), type (0.051), areaLand (0.045), areaWater (0.045), timeZone (0.043), elevation (0.039), isPartOf (0.038), populationDensity (0.033).
• Topic 2: industry (0.069), type (0.067), numberOfEmployees (0.059), product (0.048), keyPerson (0.045), locationCity (0.045), revenue (0.044), foundingYear (0.042), location (0.040), foundedBy (0.034).
4. Эксперименты
Граф сущностей был построен на основании следующих наборов данных: article categories jen.ttl и mappingbased_objects_en.ttL
Тестовый набор данных. После анализа существующих наборов данных [11, 19], было принято решение сформировать тестовую выборку самостоятельно в следствие неудобного представления данных в них, их тривиального содержимого или плохого контекста в предложениях. Сформированная тестовая выборка из предложений доступна по ссылке: https://gist.github.com/panteleevmf/d9a7414dec2cf4c3a8de477f088d2c13.
Размер выборки составляет 55 предложений, которые включают в сумме 148 сущностей.
Тестовая выборка была сформирована таким образом, чтобы в нее входили предложения с неоднозначными интерпретациями сущностей — к примеру, в выборку включены такие предложения.
• Titanic was written by Clive Cussler.
• Titanic was filmed by James Cameron.
• Titanic is a White Star Line ship which sank in 1912.
• Paris is the capital of France.
• Paris is a famous female american film and television actress, pop singer, model, philanthropist, who was born in New York.
В приведенном примере у сущности "Titanic" есть 3 интерпретации, каждая из которых может быть определена при помощи контекста, а "Paris" в зависимости от контекста может являться столицей Франции или человеком. Сравнение производилось с системами DBpedia Spotlight, Dexter и Babelfy (Yahoo FEL не был включен в анализ из-за отсутствия подробной инструкции по установке и настройке системы и демонстрационной веб-версии).
Тестирование проводилось по стандартным критериям precision, recall и f1-measure.
Результаты. Результаты тестирования приведены в табл. 1.
Таблица 1
Тестирование средств
Макет системы DBpedia Spotlight Dexter Babelfy
p 0.85 0.59 0.79 0.76
r 0.69 0.69 0.61 0.64
f1 0.76 0.63 0.69 0.69
Из представленных результатов можно сделать следующие выводы. • DBpedia Spotlight показала плохую работу с контекстом и не оказалась способна различить ни одну из сущностей "Titanic", графовые системы Dexter и Babelfy отработали верно на двух интерпретаций сущности "Titanic" в тестовом наборе из трех. Сущность "Paris" всеми
системами была интерпретирована исключительно как столица Франции, в то время как система, построенная на основании предложенного алгоритма оказалась способна предложить релевантные интерпретации для каждой из указанных выше сущностей.
• Предложенный алгоритм способствует выделению дополнительной информации. Tак, например, для предложения Cassini probe dives through Saturn's rings были выявлены следующие сущности: Saturn Atmospheric Entry Probe, Cassini-Huygens, Saturn mission, Rings of Saturn, Cassini-Huygens, Saturn, Category:Missions to Saturn.
• Mакeт системы продемонстрировал более качественное выявление поверхностных форм в предложении при меньшей скорости работы, что объясняется использованием средств Stanford NER и Stanford POS.
Возможны следующие направления развития.
• Для увеличения скорости работы алгоритма целесообразно исследовать применимость различных эвристических алгоритмов поиска кратчайшего пути между узлами в больших графах, исследовать альтернативу NER-и POS-подходам для выявления поверхностных форм, исследовать возможность предварительного вычисления матрицы расстояний для N вершин с наибольшими степенями.
• Для более качественного выявления поверхностных форм в предложении целесообразно провести исследование качества работы систем, осуществляющих NER-разбор предложения.
• Представляется перспективным использование дерева синтаксического разбора предложения с целью более качественного выявления контекста поверхностной формы, а также использование лемматизаторов.
• Для повышения качества отбора сущностей-кандидатов целесообразно исследовать применимость подходов с выделением тематики анализируемого предложения.
Заключение
В статье была рассмотрена задача связывания именованных сущностей и предложен алгоритм ее решения, основанный на способе снятия неоднозначностей, использующем более глубокое семантическое понимание сущностей-кандидатов, чем в алгоритмах других открыто распространяемых систем.
Mакeт, построенный на основании предложенного алгоритма, показал невысокую скорость работы по сравнению с остальными системами. Однако то, что качество работы оказалось выше, обуславливает перспективность работ в данном направлении.
Список литературы
1. Auer S., BizerC., KobilarovG., Lehmann J., CyganiakR., IvesZ. Dbpedia: A nucleus for a web of open data // The Semantic Web: 6th Intern. semantic web conf. (Busan, Korea, November 11-15, 2007): Proc. B.: Springer, 2007. Pp. 722-735. DOI: 10.1007/97S-3-540-7629S-0_52
2. Mendes P.N., Jakob M., Garcia-Silva A., Bizer C. DBpedia spotlight: shedding light on the web of documents // I-Semantics'11: 7th Intern. conf. on semantic systems (Graz, Austria, September 7-9, 2011): Proc. N.Y.: ACM, 2011. Pp. 1-8. DOI: 10.1145/2063518.2063519
3. Pappu A., Blanco R., Mehdad Y., Stent A., Thadani K. Lightweight multilingual entity extraction and linking // 10th Intern. conf. on web search and data mining: WSDM'17 (Cambridge, UK, February 6-10, 2017): Proc. N.Y.: ACM, 2017. Pp. 365-374. DOI: 10.1145/3018661.3018724
4. Ceccarelli D., Lucchese C., Orlando S., Perego R., Trani S. Learning relatedness measures for entity linking // 22nd ACM Intern. conf. on information & knowledge management: CIKM'13 (San Francisco, CA, USA, October 27 - November 01, 2013): Proc. N.Y.: ACM, 2013. Pp. 139-148. DOI: 10.1145/2505515.2505711
5. Moro A., Raganato A., Navigli R. Entity linking meets word sense disambiguation: a unified approach // Transactions of the Association for Computational Linguistics. 2014. Vol.2. Pp. 231-244.
6. Bollacker K., Evans C., Paritosh P., Sturge T., Taylor J. Freebase: a collaboratively created graph database for structuring human knowledge // 2008 ACM SIGMOD Intern. conf. on management of data: SIGMOD'08 (Vancouver, Canada, June 9-12, 2008): Proc.N.Y.: ACM, 2008. Pp. 1247-1250. DOI: 10.1145/1376616.1376746
7. Curtis J., Cabral J., Baxter D. On the application of the cyc ontology to word sense disambiguation // 19th Intern. Florida Artificial Intelligence Research Society Conf.: FLAIRS'2006 (Melbourne Beach, FLA, USA, May 11-13, 2006): Proc. Menlo Park: AIAA Press, 2006. Pp. 652-657.
8. Vrandecic D., Krotzsch M. Wikidata: a free collaborative knowledgebase // Communications of the ACM. 2014. Vol. 57, iss. 10. Pp. 78-85. DOI: 10.1145/2629489
9. Suchanek F. M., Kasneci G., Weikum G. Yago: a core of semantic knowledge unifying WorldNet and Wikipedia // 16th Intern. conf. on world wide web: WWW'2007 (Banff, Alberta, Canada, May 8-12, 2007): Proc. N.Y.: ACM, 2007. Pp. 697-706. DOI: 10.1145/1242572.1242667
10. Farber M., Ell B., Menne C., Rettinger A. A Comparative Survey of DBpedia, Freebase, OpenCyc, Wikidata, and YAGO // Semantic Web. 2915. July.
11. Van Erp M., Mendes P.N., Paulheim H., Ilievski F., Plu J., Rizzo G., Waitelonis J. Evaluating entity linking: An analysis of current benchmark datasets and a roadmap for doing a better job // 10th Intern. conf. on language resources and evaluation: LREC'2016 (Portoroz, Slovenia, May 23-28, 2016): Proc. P.: ELRA, 2016. Pp. 4373-4379.
12. Heath T., Bizer C. Linked data: Evolving the web into a global data space // Synthesis lectures on the semantic web: theory and technology. 2011. Vol. 1, no. 1. Pp. 1-136. DOI: 10.2200/S00334ED1V01Y201102WBE001
13. Schafer B. Exploiting DBpedia for graph-based entity linking to Wikipedia: Master thesis. Mannheim, 2014. 82 p. Available at: https://ub-madoc.bib.uni-mannheim.de/37152, accessed: 10.07.2017.
14. Hulpus I., PrangnawaratN., Hayes C. Path-based semantic relatedness on linked data and its use to word and entity disambiguation // The Semantic Web: 14th Intern. semantic web conf.: ISWC 2015 (Bethlehem, PA, USA, October 11-15, 2015): Proc. Pt. 1. Hdlb.: Springer, 2015. Pp. 442-457. DOI: 10.1007/978-3-319-25007-6.26
15. Blei D.M., Ng A.Y., Jordan M.I. Latent dirichlet allocation // J. of Machine Learning Research. 2003. Vol.3. Pp. 993-1022.
16. Пантелеев М.Ф., Самарёв P.C. Некоторые проблемы синтаксического анализа предложений на русском языке // Современные компьютерные системы и технологии: Сборник трудов кафедры «Компьютерные системы и сети» МГТУ им. Н.Э. Баумана. М.: НИИ радиоэлектроники и лазерной техники, 2014. С. 114-124.
17. Toutanova K., Klein D., Manning C.D., Singer Y. Feature-rich part-of-speech tagging with a cyclic dependency network // Conf. of the North American Chapter of the Association for Computational Linguistics on human language technology: NAACL'03 (Edmonton, Canada, May 27-June 01,2003): Proc. Vol. 1. Stroudsburg: Association for Computational Linguistics (ACL), 2003. Pp. 173-180. DOI: 10.3115/1073445.1073478
18. Roder M., Usbeck R., Hellmann S., Gerber D., Both A. N3-A collection of datasets for named entity recognition and disambiguation in the NLP interchange format // 9th Intern. conf. on language resources and evaluation: LREC 2014 (Reykjavik, Iceland, May 26-31, 2014): Proc. P.: ELRA, 2014. Pp. 3529-3533.
19. Chang A.X., Spitkovsky V.I., Manning C.D., Agirre E. A comparison of named-entity disambiguation and word sense disambiguation // 10th Intern. conf. on language resources and evaluation: LREC 2016 (Portoroz, Slovenia, May 23-28, 2016): Proc. P.: ELRA, 2016. Pp. 860-867.
Science Ü Education
of the Bauman MSTU
Electronic journal
ISSN 1994-0408
Named entity linking algorithm Panteleev M. F.1*, Samarev R. S.1
Science and Education of the Bauman MSTU, 2017, no. 7, pp. 248-261.
DOI: 10.7463/0717.0001228
Received: 15.05.2017
© Bauman Moscow State Technical University
* pantelee vmf@gmail. com 1 Bauman Moscow State Technical University, Russia
Keywords: named entity linking, DBpedia, graph, machine learning, algorithm
In the tasks of processing text in natural language, Named Entity Linking (NEL) represents the task to define and link some entity, which is found in the text, with some entity in the knowledge base (for example, Dbpedia). Currently, there is a diversity of approaches to solve this problem, but two main classes can be identified: graph-based approaches and machine learning-based ones. Graph and Machine Learning approaches-based algorithm is proposed accordingly to the stated assumptions about the interrelations of named entities in a sentence and in general.
In the case of graph-based approaches, it is necessary to solve the problem of identifying an optimal set of the related entities according to some metric that characterizes the distance between these entities in a graph built on some knowledge base. Due to limitations in processing power, to solve this task directly is impossible. Therefore, its modification is proposed. Based on the algorithms of machine learning, an independent solution cannot be built due to small volumes of training datasets relevant to NEL task. However, their use can contribute to improving the quality of the algorithm. The adaptation of the Latent Dirichlet Allocation model is proposed in order to obtain a measure of the compatibility of attributes of various entities encountered in one context.
The efficiency of the proposed algorithm was experimentally tested. A test dataset was independently generated. On its basis the performance of the model was compared using the proposed algorithm with the open source product DBpedia Spotlight, which solves the NEL problem.
The mockup, based on the proposed algorithm, showed a low speed as compared to DBpedia Spotlight. However, the fact that it has shown higher accuracy, stipulates the prospects for work in this direction.
The main directions of development were proposed in order to increase the accuracy of the system and its productivity.
References
1. Auer S., Bizer C., Kobilarov G., Lehmann J., Cyganiak R., Ives Z. Dbpedia: A nucleus for a web of open data. The Semantic Web: 6th Intern. semantic web conf. (Busan, Korea, November 11-15, 2007): Proc. B.: Springer, 2007. Pp. 722-735. DOI: 10.1007/978-3-540-76298-0.52
2. MendesP.N., Jakob M., Garcia-Silva A., Bizer C. DBpedia spotlight: shedding light on the web of documents. I-Semantics'11: 7th Intern. conf. on semantic systems (Graz, Austria, September 7-9, 2011): Proc. N.Y.: ACM, 2011. Pp. 1-8. DOI: 10.1145/2063518.2063519
3. Pappu A., Blanco R., Mehdad Y., Stent A., Thadani K. Lightweight multilingual entity extraction and linking. 10th Intern. conf. on web search and data mining: WSDM'17 (Cambridge, UK, February 6-10, 2017): Proc.N.Y.: ACM, 2017. Pp. 365-374. DOI: 10.1145/3018661.3018724
4. Ceccarelli D., Lucchese C., Orlando S., Perego R., Trani S. Learning relatedness measures for entity linking. 22nd ACM Intern. conf. on information & knowledge management: CIKM'13 (San Francisco, CA, USA, October 27 - November 01, 2013): Proc. N.Y.: ACM, 2013. Pp. 139-148. DOI: 10.1145/2505515.2505711
5. Moro A., Raganato A., Navigli R. Entity linking meets word sense disambiguation: a unified approach. Transactions of the Associationfor Computational Linguistics, 2014, vol. 2, pp. 231244.
6. Bollacker K., Evans C., Paritosh P., Sturge T., Taylor J. Freebase: a collaboratively created graph database for structuring human knowledge. 2008 ACM SIGMOD Intern. conf. on management of data: SIGMOD'08 (Vancouver, Canada, June 9-12, 2008): Proc. N.Y.: ACM, 2008. Pp. 1247-1250. DOI: 10.1145/1376616.1376746
7. Curtis J., Cabral J., Baxter D. On the application of the cyc ontology to word sense disambiguation. 19th Intern. Florida Artificial Intelligence Research Society Conf.: FLAIRS'2006 (Melbourne Beach, FLA, USA, May 11-13, 2006): Proc. Menlo Park: AIAA Press, 2006. Pp. 652-657.
8. Vrandecic D., Krotzsch M. Wikidata: a free collaborative knowledgebase. Communications of the ACM, 2014, vol. 57, iss. 10, pp. 78-85. DOI: 10.1145/2629489
9. Suchanek F. M., Kasneci G., Weikum G. Yago: a core of semantic knowledge unifying World-Net and Wikipedia. 16th Intern. conf. on worldwide web: WWW'2007 (Banff, Alberta, Canada, May 8-12, 2007): Proc. N.Y.: ACM, 2007. Pp. 697-706. DOI: 10.1145/1242572.1242667
10. Farber M., Ell B., Menne C., Rettinger A. A comparative survey of DBpedia, Freebase, OpenCyc, Wikidata, and YAGO. Semantic Web, 2915, July.
11. Van Erp M., Mendes P.N., Paulheim H., Ilievski F., Plu J., Rizzo G., Waitelonis J. Evaluating entity linking: An analysis of current benchmark datasets and a roadmap for doing a better job. 10th Intern. conf. on language resources and evaluation: LREC'2016 (Portoroz, Slovenia, May 23-28, 2016): Proc. P.: ELRA, 2016. Pp. 4373-4379.
12. Heath T., Bizer C. Linked data: Evolving the web into a global data space. Synthesis lectures on the semantic web: theory and technology, 2011, vol. 1, no. 1, pp. 1-136. DOI: 10.2200/S00334ED1V01Y201102WBE001
13. Schafer B. Exploiting DBpedia for graph-based entity linking to Wikipedia. Master thesis. Mannheim, 2014. 82 p. Available at: https://ub-madoc.bib.uni-mannheim.de/37152, accessed: 10.07.2017.
14. Hulpus I., PrangnawaratN., Hayes C. Path-based semantic relatedness on linked data and its use to word and entity disambiguation. The Semantic Web: 14th Intern. semantic web conf.: ISWC 2015 (Bethlehem, PA, USA, October 11-15, 2015): Proc. Pt. 1. Hdlb.: Springer, 2015. Pp. 442-457. DOI: 10.1007/978-3-319-25007-6,26
15. Blei D.M., Ng A.Y., Jordan M.I. Latent dirichlet allocation. J. of Machine Learning Research, 2003, vol.3, pp. 993-1022.
16. Panteleev M.F., Samarev R.S. Nekotorye problemy sintaksicheskogo analiza predlozhenij na russkom iazyke [Some problems of syntatic analysis of sentences in Russian]. Sovremennye kompyuternye sistemy i tekhnologii: sbornik trudov kafedry "Kompyuternye sistemy i seti" MGTU im. N.E. Naumana [Modern computer systems and technology: proc. of the Department "Computer systems and networks" BaumanMSTU]. Moscow, 2014. Pp. 114-124. (in Russian).
17. Toutanova K., Klein D., Manning C.D., Singer Y. Feature-rich part-of-speech tagging with a cyclic dependency network. Conf. of the North American Chapter of the Association for Computational Linguistics on human language technology: NAACL '03 (Edmonton, Canada, May 27-June 01,2003): Proc. Vol. 1. Stroudsburg: Association for Computational Linguistics (ACL), 2003. Pp. 173-180. DOI: 10.3115/1073445.1073478
18. Roder M., Usbeck R., Hellmann S., Gerber D., Both A. N3-A collection of datasets for named entity recognition and disambiguation in the NLP interchange format. 9th Intern. conf. on language resources and evaluation: LREC 2014 (Reykjavik, Iceland, May 26-31, 2014): Proc. P.: ELRA, 2014. Pp. 3529-3533.
19. Chang A.X., Spitkovsky V.I., Manning C.D., Agirre E. A comparison of named-entity disambiguation and word sense disambiguation. 10th Intern. conf. on language resources and evaluation: LREC 2016 (Portoroz, Slovenia, May 23-28, 2016): Proc. P.: ELRA, 2016. Pp. 860-867.