При наличии обширной размеченной обучающей выборки алгоритмы машинного обучения демонстрируют высокую эффективность при решении самых разных задач [1], однако достаточный объем учебных данных доступен далеко не всегда. Еще с середины 1970-х годов одной из главных тем исследований в области искусственного интеллекта было символическое представление знаний, что привело к появлению ряда специально подготовленных баз знаний. В 1980-х годах для обозначения таких справочных корпусов начали применять термин «онтология» [2]. В 2000 году был оформлен патент, описывающий применение баз знаний в основе коммерческих систем семантического поиска, персонализации и размещения рекламных объявлений [3]. Затем готовые базы знаний стали широко использовать при решении задач поиска, классификации и предоставления персональных рекомендаций, а сегодня начали изучать возможности применения справочных сведений для оптимизации задач, связанных с обработкой естественного языка и машинным обучением.

В 2012 году компания Google представила Knowledge Graph — базу знаний, используемую в качестве ключевого компонента поисковой системы компании [1]. Существует ряд других способов представления знаний, но граф стал самым популярным форматом для репрезентации знаний в конкретной области [2]. Помимо Google, графы знаний используются в цифровых ассистентах Apple Siri и Amazon Alexa, а также в других системах.

Граф знаний представляет собой собрание фактов: объекты (узлы) соединены друг с другом типизированными связями. Информация, сохраняемая в графе, может быть различной: знания из многих областей (как в базах DBpedia и Yago); знания из какой-то конкретной области (к примеру, в Bio2RDF и UMLS содержатся знания из области биологии и медицины); знания, относящиеся к конкретной отрасли или предприятию. Чтобы из обширной базы знаний извлечь граф для конкретной области, выполняют его обход начиная с одного или более начальных объектов (концепций). Этот способ не всегда эффективен, так как даже после всего двух-трех переходов в субграф может войти больше 50% исходного содержимого. Чтобы ограничить обход для энциклопедических источников, выбираются релевантные связи (ребра) путем подсчета индекса специфичности — принадлежности к интересующей области. Такие домен-специфичные субграфы стали активно использоваться в ряде перспективных применений.

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

Дополнение данных с помощью графа знаний

Графы знаний могут содержать вспомогательные фактические сведения об элементах, входящих в обучающую выборку, что позволяет ее расширить. Пример — задача квалификации тональности высказываний в записях Twitter. Допустим, в твите упоминается президент США, а в графе знаний, например в DBPedia, может присутствовать информация о том, что нынешний президент США — Дональд Трамп. В этом случае представление записи можно дополнить концепциями из DBpedia, имеющими связь с президентом США. Этот способ использовался в реальности, и было показано, что при использовании метрики взвешенного среднего (F1-score) он повышает точность классификации. Каждый извлеченный из записи элемент, например «смартфон iPhone», дополнялся новым признаком — семантической аннотацией (в данном случае — «продукт Apple»), затем выполнялась оценка корреляции признака с негативным или позитивным оттенком высказывания. При использовании графа знаний точность классификации тональности высказываний увеличивалась на 6,5%.

Графы знаний содержат сведения о типах концепций и связей между ними. При дополнении обучающих данных содержимым графа знаний проводят сравнительную оценку весов концепций из учебной выборки; концепций из графа, соответствующих элементам учебных данных (например, твит о Дональде Трампе соответствует вхождению dbpedia: Donald Trump из DBpedia); элементов графа знаний, соединенных связями разных типов с концепцией из обучающей выборки (например, вхождение dbpedia: President of the United States ассоциировано с вхождением Donald Trump из DBpedia связью, имеющей тип «отношение»).

Графы знаний в глубинном обучении

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

Данный метод показал свою эффективность при решении нижеперечисленных задач.

  • Дополненное глубинное обучение для анализа тональности высказываний. Предложен метод анализа эмоциональной окраски высказывания, при котором слова из входного текста дополняются концепциями из графа знаний WordNet. При этом используется двунаправленная нейронная сеть с долговременной и краткосрочной памятью, имеющая несколько слоев. Ее обучают прогнозировать тональность высказывания заданного предложения из учебной выборки.
  • Предоставление новостей, рекомендованных конкретному пользователю. Использование графа знаний показало свою эффективность при формировании персональных рекомендаций новостей для прочтения, в частности при прогнозировании вероятности перехода по ссылке. Система создает репрезентацию пользователей с учетом истории их прежних переходов. При обучении каждая новость была представлена в виде обнаруженных в ней ключевых слов и соответствующего контекста из графа знаний. Сверточная сеть объединяет информацию о словах новости со сведениями из графа знаний, а другая сеть использует результат для прогнозирования вероятности перехода.
  • Машинный перевод с помощью графа знаний. Исследователям удалось преодолеть проблему, связанную с несовпадением контекста слова из входного текста, который читает машина, со сведениями, связанными с тем же словом из графа знаний, — это часто не позволяет дополнить текстовые данные справочной информацией. Задачу решили с использованием двунаправленной сети с краткосрочной и долговременной памятью, которую обучили нужным образом ограничивать использование информации из графа знаний.
  • Граф знаний для предоставления рекомендаций. Граф знаний позволяет решить проблему нехватки данных, возникающую при использовании метода совместной фильтрации (прогнозирования предпочтений пользователя с учетом уже известных предпочтений его группы) в системах выдачи рекомендаций предметов. В частности, эффективность совместной фильтрации увеличивалась при объединении визуального представления предмета и его текстового описания из графа знаний. В другой работе по аналогичной теме граф знаний рассматривается как гетерогенная информационная сеть, из которой извлекались скрытые признаки, позволяющие выявлять связи между пользователями и предметами.

Проблемы использования графов знаний в машинном обучении

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

Граф знаний представляет информацию о понятии и связанных с ним понятиях, указывая тип связи. Например, в DBPedia понятие dbr: ohio («Огайо») соединено с понятием dbr: USA («США») иерархической связью dbo: country («страна»), а с концепцией «Колумбус» — связью dbo: Capital («столица»). Алгоритмы обхода графа знаний должны учитывать различия между типами связей и оценивать веса разных связей с точки зрения конкретной задачи, а не пользоваться общим набором весов, который был выявлен при обучении на графе в целом.

Для преодоления этих сложностей предложены специальные алгоритмы — методы итеративной оптимизации.

Итеративная оптимизация машинного обучения, дополненного графом знаний

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

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

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

  • Рекомендации, улучшенные с помощью графа знаний. Предложен многозадачный метод обучения признакам для системы предоставления рекомендаций, улучшенной с помощью графа знаний. В методе используются матрицы взаимодействия пользователя с элементом и граф знаний, содержащий сведения о похожих элементах. Входные данные и сведения из графа комбинируются и оптимизируются в итеративном режиме с учетом задачи определения сходства. В итоге создается специфичная для приложения репрезентация графа знаний, которая, с одной стороны, увеличивает эффективность совместной фильтрации, а с другой — дает возможность объяснить полученные результаты.
  • Распознавание и оценка характеристики сообществ с использованием графа знаний. Графы знаний помогают эффективнее анализировать данные, структурированные в виде сетей, — например, в работе с социальными сетями. Такая сеть состоит из узлов, ассоциированных с ними атрибутов и отношений (связей), соединяющих узлы. В социальной сети: пользователи — это узлы; данные о местонахождении или записи — атрибуты; пользователи соединены отношениями «дружбы». Считается, что группа пользователей образует сообщество, если плотность связей внутри нее становится больше, чем между различными группами в социальной сети в целом. Выделить сообщества в графе бывает непросто. Иногда их можно определить по атрибутам узлов, но часто сообщества формируются по принципу принадлежности к какой-либо территории. Например, пользователи в группе могут быть «друзьями» лишь потому, что живут в одном округе. При этом более очевидные атрибуты, например название города, не позволяют сразу понять, что группа образовалась среди жителей одного округа. Графы знаний, созданные по принципу краудсорсинга, например DBPedia, предоставляют информацию, которая позволяет связать город с округом.

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

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

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

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

***

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

Литература

1. Alon Halevy, P. Norvig, F. Pereira. The unreasonable effectiveness of data // IEEE Intell. Syst. — 2009 (Mar/Apr). — Vol. 24, N. 20. — P. 8–12.

2. T. R. Gruber. Toward principles for the design of ontologies used for knowledge sharing? // Int. J. HumanComput. Stud. — 1995. — Vol. 43, N. 5/6. — P. 907–928.

3. A. Sheth et al. System and method for creating a semantic web and its applications in browsing, searching, profiling, personalization and advertising. U.S. Patent No. 6311194B1. 30 Oct. 2001.

Шреяш Бхатт ( bhattshr@amazon.com ), Цзиньцзинь Чжао ( jinzhao@amazon.com )  —  научные сотрудники, Amazon.com; Амит Сетх ( amit@sc.edu )  —  научный сотрудник, IEEE; Валери Шалин ( valerie.shalin@wright.edu )  —  профессор, Университет Райт.