- PVSM.RU - https://www.pvsm.ru -
Хайп? Философия? Повседневность? Будущее?
Давайте разбираться.
TL;DR:
Онтология в IT - это способ структурировать знания о мире в виде связанных категорий и их свойств.
Например, в онтологии "Игры престолов" есть категории "дома", "персонажи" и связи между ними. Когда мы наполняем онтологию реальными данными, получается граф знаний.
Семантический слой - это более абстрактное понятие, включающее все способы придания смысла данным.
Вместе они помогают ИИ-системам лучше понимать контекст и давать более точные ответы.
Динамические онтологии используются для выявления скрытых связей в больших объемах данных, что помогает принимать более обоснованные бизнес-решения.
Онтология - это формальное представление категорий объектов, их свойств и взаимодействий.
Если для примера взять Игру Престолов [1], то онтология будет включать такие категории как "великие дома", "замки", "персонажи", и т.д.
В этой же онтологии связи между категориями могут быть следующими:
a → союзничает с → b
x → правит → y
z → принял присягу → w
В применении к LLM, онтология - это описание информации в структурированном виде. А если мы к этой структуре добавим саму информацию (например, Баратеоны, Старки, Винтерфелл, и т.д.), то получим граф.
То есть если онтология - это модель данных, то граф - это реализация этой модели.
Задача онтологии - создать мост между сырыми данными и их смысловыми концепциями, и тем самым предоставить удобный формат, который и понятен человеку, и может быть обработан алгоритмически.
Многие современные системы, использующие большие языковые модели, применяют RAG-подходы - то есть сначала из структурированного хранилища данных выбирается информация, релевантная пользовательскому запросу, а потом эта выборка скармливается LLM для формирования осмысленного ответа. Так вот часть таких RAG-систем строятся на графовых базах данных, например Neo4j [2].
Используя схему графа, включающую сущности и их отношения, LLM-системы могут лучше понимать контекст, более точно выбирать релевантную информацию и минимизировать галлюцинации [3] при формировании ответа.
В простом случае, создание схемы графа, или онтологии, предполагает определения концепций предметной области и их взаимосвязей, и выполняется, как правило, экспертно.
Однако если работать с большим объёмом данных, то рано или поздно начинают проявляться скрытые взаимосвязи, например, зависимость продаж от прогноза погоды, или связь качества доставки заказов с футбольными матчами чемпионата мира. И такие зависимости, как правило, очень сложны в понимании и предсказании. Экспертно выделить такие связи практически невозможно.
На помощь приходит динамическая онтология. Существуют системы, позволяющие на основании сырых данных строить онтологии автоматически. То есть система сама выделяет значимые сущности и их взаимосвязи.
Платформы подобные Palantir [4] позволяют аккумулировать сырые данные из различных источников (например, ERP, CRM, IoT датчики, кликстрим, видеопоток, и т.д.), выявлять в них паттерны, прогнозировать ход бизнес-процессов, и формировать логические и аргументированные решения.
Интегрируя и обрабатывая данные, прогнозируя события и действия, в подобных платформах выстраивается цифровая модель нашего мира, с которой можно взаимодействовать как пользователям, так и ИИ-агентам.
Можно пойти ещё дальше. Если у нас есть система, к которой подключены все наши бизнес-приложения и хранилища данных (скажем, SAP, Salesforce, Jira, Ms Office и пр.), и эта система умеет формировать бизнес-решения (например, нужно ли заказать техобслуживание автомобиля, или отправить напоминалку клиенту), то эта же система сможет не только подсказать, что нужно сделать, чтобы увеличить бизнес-метрики, но и сделать это самостоятельно.
Но как бы ни были привлекательны перспективы создать сверхразум для бизнеса, подобные технологические платформы несут за собой ряд новых задач. Динамически создаваемая онтология всё равно нуждается в человеческой валидации. Отсюда вырастают процессы управления, контроля, версионирования, тестирования и мониторинга онтологий. Уже представили себе департамент, который будет заниматься Ontology Governance [5]? Про техническую сложность я вообще молчу.
Неужели онтология - это настолько сложно?
На самом деле, онтологии в графовых структурах достаточно распространены. Существуют даже стандарты для описания онтологий. Самые известные - это RDF и OWL.
Resource Description Framework (RDF) - это фреймворк для моделирования и обмена данными в сети интернет. Он включает набор спецификаций для представления данных в виде триплетов: субъект-предикат-объект.
Например: Sansa Stark → Ruler of → Winterfell
Web Ontology Language (OWL) - это язык для создания онтологий в интернете. Он основывается на RDF и предоставляет способ описания концептуальных сущностей (классов) и их взаимосвязей.
В заключении несколько слов про семантику.
В отличие от онтологии, которая выражается в структурированном виде (в виде кода или графа), имеет стандарты, фреймворки и свой язык, семантика (или семантический слой) - это обобщённое понятие, суть которого - придание смысла данным.
Семантический слой - это зонтичный термин, который может представлять собой описание модели данных, метаданных, правил взаимодействия, политики, спецификации API, механизмы кеширования и преобразования данных и любую другую информацию, которая позволит нашим данным иметь какой-то смысл.
Задача семантического слоя - обеспечить согласованность и прозрачность данных.
Представьте, что у нас есть данные о продажах из CRM и данные о доставках из логистической системы. Семантический слой может включать определение «проблемного заказа», описание меппинга заказов между системами, формулы расчета времени доставки и пр.
В отличие от строгой структуры онтологии, семантический слой может быть представлен в текстовом формате, конфигурационных файлах, коде, схемах и т.д.
Автор: anton_mosharov
Источник [8]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/grafy/398485
Ссылки в тексте:
[1] Игру Престолов: https://github.com/neo4j-examples/game-of-thrones
[2] Neo4j: https://neo4j.com/developer-blog/knowledge-graph-rag-application/
[3] минимизировать галлюцинации: https://blog.palantir.com/reducing-hallucinations-with-the-ontology-in-palantir-aip-288552477383
[4] Palantir: https://blog.palantir.com/connecting-ai-to-decisions-with-the-palantir-ontology-c73f7b0a1a72
[5] Ontology Governance: https://graph.build/resources/ontology
[6] Foundational Ontologies in Palantir Foundry (Medium): https://dorians.medium.com/foundational-ontologies-in-palantir-foundry-a774dd996e3c
[7] Semantic Model vs Ontology vs Knowledge Graph (Medium): https://medium.com/@cassihunt/semantic-model-vs-ontology-vs-knowledge-graph-untangling-the-latest-data-modeling-terminology-12ce7506b455
[8] Источник: https://habr.com/ru/articles/848274/?utm_source=habrahabr&utm_medium=rss&utm_campaign=848274
Нажмите здесь для печати.