390.16K

СППР (1)

1.

Об автоматическом
формировании
онтологических графов
знаний в системах поддержки
принятия решений
Грибова В.В.

2.

Содержание
• Системы поддержки принятия решений (СППР). Методы
реализации, их преимущества и недостатки
• Графы знаний, их использование и методы создания
• Подход к автоматическому формированию графов знаний с
использованием LLM
• Пример использования графов знаний для СППР в области
планирования лечения
• Проблемы и ограничения
12-14 сентября 2024
2

3.

Системы поддержки принятия решений
(СППР). Основные методы реализации
• Математическое моделирование
• Машинное обучение и интеллектуальный анализ данных
• Системы на основе знаний
• Гибридные подходы и методы
3

4.

СППР на основе знаний
• Недостатки:
• Не все модели представления знаний обеспечивают понятность для
специалистов, возможность удобного сопровождения и расширения
знаний
• Метод формирования экспертами – тяжелый и затратный
4

5.

СППР на основе знаний
• Преимущества:
• Объяснимость решений
• Возможность точно описать различные ситуации, в том числе редко
встречающиеся; настроить СППР на конкретные условия эксплуатации
• Использование в ПО и задачах, где другие методы не являются
эффективными
5

6.

СППР на основе знаний. Основные области
применения
• Решения должны формироваться на основе набора
регламентирующих документов (нормативнометодические документы, методики, рабочие
инструкции, ГОСТы, ОСТы, своды правил…)
• Исторические данные быстро устаревают, их
накопление неэффективно
• Данных мало
6

7.

Графы знаний
• Графы знаний: мощный инструмент для представления и
обработки знаний (семантический контент в
машинопонимаемом формате)
• Применение: вопросно-ответные системы, генерация
рекомендаций и аналитических сведений, поддержка
принятия решений, предикативная аналитика
• Графы знаний могут быть «общими», а также
ориентированными на конкретные сценарии использования, и
именно это их применение считается наиболее актуальным
7

8.

Класс систем поддержки принятия
решений
Входная
спецификация
(Проект, ТЗ,
История
болезни)
База знаний
База знаний
База знаний
База знаний
?
Регламентирующий
документ
Решатель
Результат с
обоснованием
решения
LLM
Особенность – формирование графа знаний точно по
конкретному документу
8

9.

Онтологические графы знаний
• Формирование графов знаний «напрямую» или с соответствии с онтологией
• Онтология обеспечивает стандартизацию представления знаний, точное
описание структуры, семантики, ограничений целостности
• Онтология должна разрабатываться для класса задач; чем больше класс
охватывает онтология, тем шире область применения СППР (она становится
оболочкой)
• Формирование онтологии для класса задач не автоматизируется
• Для автоматического формирования графов знаний онтология – «путеводитель»
к извлечению информации из текстов
9

10.

Пример: онтология
планирования
персонифицированного
лечения
set(+)
Воздействие
set(+)
Характеристика
set(+)
Модель лечения
set(+)
Схема лечения
set(+)
Цель лечения
seq(Ʌ)
Этап лечения
seq(Ʌ)
Комплекс
воздействий
seq(Ʌ)
Блок
альтернативных
воздействий
seq(Ʌ)
Блок
характеристик
set(+)
Характеристика
Date
Блок
условий
seq(Ʌ) Блок совместных
воздействий
set(+)
set(+)
Воздействие
Воздействие
seq(Ʌ)
Блок
характеристик
set(+)
Характеристика
seq(Ʌ)
Блок
характеристик
10

11.

Онтология как алгоритм
получения графа знаний
set(+)
Модель лечения
set(+)
Схема лечения
set(+)
Цель лечения
seq(Ʌ)
Этап лечения
seq(Ʌ)
Комплекс
воздействий
seq(Ʌ)
Блок
альтернативных
воздействий
Легкое течение, Тяжелое течение, Лечение беременных, Лечение детей,
Стационарное лечение, Амбулаторное лечение…..
Симптоматическая терапия, Антибактериальная терапия, Противовирусная
терапия…
Этап 1, Этап 2, Подготовительный этап, Основной этап, Медикаментозное
лечение, Восстановительное лечение, Хирургическое лечение…..
Блок
условий
{Амоксициллин И….} И (Парацетамол ИЛИ Аспирин ИЛИ Цитрамон) И
(Физраствор И Аскорбиновая кислота)
set(+)
Воздействие
seq(Ʌ) Блок совместных
воздействий
…..
set(+)
Характеристика
seq(Ʌ)
Блок
характеристик
set(+)
Характеристика
set(+)
set(+)
Воздействие
Воздействие
seq(Ʌ)
Блок
характеристик
set(+)
Характеристика
seq(Ʌ)
Блок
характеристик
11

12.

Структура блока условий
Date
Your Footer Here
12

13.

Пример исходного
текста с условием
Схема лечения
Условие (схематично):
Патологические изменения в легких
Возраст >= 60
Ожирение – имеется
Сердечно-сосудистые заболевания {….}
Артериальная гипертензия
Хронические заболевания легких {}
Бронхиальная астма
ХОБЛ

Условие: хотя бы один признак
ИЛИ
И
SPO2: 97-100 Условие: без признаков
одышки
СРБ: 3N-6N
t: 37.5-37.9 С Условие 3-5 дней

Условие: не меньше 2 признаков
Your Footer Here
13

14.

Общий подход
Регламентирующий
документ
Адаптер
для класса
задач
Fine-tuning
Пример: сердечно-сосудистые
заболевания порок сердца,
аритмия, инфаркт миокарда....
Онтология
Класса документов в
формате Json
Алгоритм
формирования
графа знаний
Онтологический
граф знаний в
формате json
LLM
(LLama3.1 70B)
База знаний
релевантных
документов
RAG
Алгоритм
уточнения графа
знаний
Онтологический
граф знаний для
СППР в json
14

15.

Создание адаптера - формирование
датасета
Набор образцов
распознавания блоков
текста
Блок текста содержит образец текста, описывающего некий набор
данных и/или логическое условие, с ним связанное.
Пример блока текста, описывающего вложенные блоки данных и
логическое условие:
Блок текста:
К факторам риска прогресии заболевания относятся: • пожилой возраст
≥ 60 лет; • ожирение; • сердечно-сосудистое заболевание, включая
артериальную гипертензию;
При наличии патологических изменений в легких и/или факторами
риска прогрессии заболевания в сочетании с двумя и более
нижеуказанными признаками: • SpO2 - 97 и выше, без признаков
одышки; • 3N ≤ уровень СРБ ≤ 6N; • температура тела 37,5-37,9 °C в
течение 3-5 дней;
Образец выдачи LLM в формате Json для данного блока текста:
[{"Имя":"Факторы риска прогресии
заболевания","Элементы":[{"Имя":"Пожилой
возраст","Значения":[{"Условие":"Больше либо
равно","Значение":60,"Единица
измерения":"годы"}]},{"Имя":"Ожирение"}]},{"Условие":[{"Имя":"Патоло
гические изменения в легких"},{"Условие":"Или"},{"Имя":"Факторы
риска прогресии заболевания"},{"Условие":"И"},{"Объект":"Вложенные
элементы","Значения":[{"Условие":"Больше либо
равно","Значение":2}]}],"Элементы":[{"Имя":"SpO2","Значения":[{"Услов
ие":"Больше либо
равно","Значение":97},{"Имя":"Одышка","Значение":"Отсутствует"}]},{"И
мя":"Уровень СРБ","Значения":[{"Условие":"Больше либо
равно","Значение":3,"Единица измерения":"N"},{"Условие":"Меньше
либо равно","Значение":6,"Единица измерения":"N"}]}]}]
Алгоритм
формирования
последовательностей
образцов
распознавания текста
Алгоритм
формирования
датасета с
промптами и
образцами
ответов LLM
Датасет для
распознавания текста в
структуры графа
Date
знаний
Набор образцов распознавания
последовательностей блоков текста
Последовательность из двух блоков текста:
К факторам риска прогресии заболевания относятся: • пожилой возраст ≥ 60 лет; • ожирение; • сердечно-сосудистое
заболевание, включая артериальную гипертензию; При наличии патологических изменений в легких и/или факторами риска
прогрессии заболевания в сочетании с двумя и более нижеуказанными признаками: • SpO2 - 97 и выше, без признаков
одышки; • 3N ≤ уровень СРБ ≤ 6N; • температура тела 37,5-37,9 °C в течение 3-5 дней;
При наличии изменений в легких и/или факторов риска прогрессии заболевания в сочетании с двумя и более признаками:
SpO2 ≤ 93%, одышка в покое/прогрессирующая одышка в течение первых 2-3 дней; • температура тела > 38 °C в течение 2-3
дней ;
Образец выдачи LLM в формате Json для данной последовательности блоков текста :
[{"Имя":"Факторы риска прогресии заболевания","Элементы":[{"Имя":"Пожилой возраст","Значения":[{"Условие":"Больше
либо равно","Значение":60,"Единица измерения":"годы"}]},{"Имя":"Ожирение"}]},{"Условие":[{"Имя":"Патологические
изменения в легких"},{"Условие":"Или"},{"Имя":"Факторы риска прогресии
заболевания"},{"Условие":"И"},{"Объект":"Вложенные элементы","Значения":[{"Условие":"Больше либо
равно","Значение":2}]}],"Элементы":[{"Имя":"SpO2","Значения":[{"Условие":"Больше либо
равно","Значение":97},{"Имя":"Одышка","Значение":"Отсутствует"}]},{"Имя":"Уровень СРБ","Значения":[{"Условие":"Больше
либо равно","Значение":3,"Единица измерения":"N"},{"Условие":"Меньше либо равно","Значение":6,"Единица
измерения":"N"}]}]},
{"Имя":"Факторы риска прогресии заболевания","Элементы":[{"Имя":"Пожилой возраст","Значения":[{"Условие":"Больше
либо равно","Значение":60,"Единица измерения":"годы"}]},{"Имя":"Ожирение"}]},{"Условие":[{"Имя":"Патологические
изменения в легких"},{"Условие":"Или"},{"Имя":"Факторы риска прогресии
заболевания"},{"Условие":"И"},{"Объект":"Вложенные элементы","Значения":[{"Условие":"Больше либо
равно","Значение":2}]}],"Элементы":[{"Имя":"SpO2","Значения":[{"Условие":"Больше либо
равно","Значение":97},{"Имя":"Одышка","Значение":"Отсутствует"}]},{"Имя":"Уровень СРБ","Значения":[{"Условие":"Больше
либо равно","Значение":3,"Единица измерения":"N"},{"Условие":"Меньше либо равно","Значение":6,"Единица
измерения":"N"}]}]},



]
15

16.

Создание адаптера – файн-тюнинг модели
Датасет для
распознавания текста в
структуры графа
знаний
Алгоритм
дообучения модели
по методу LoRA (Low
Rank Adaptatation) с
квантизацией до 4
бит
Адаптер
для класса
задач
LLM
(LLama3.1 70B)
16

17.

Алгоритм
Date
Your Footer Here
17

18.

Алгоритм Шаг 1
Поиск релевантных разделов в тексте
• При наличии оглавления или заголовков
• Поиск элементов оглавления и заголовков, определение соответствующих им
блоков исходного текста
• без LLM Выборка элементов оглавления и заголовков, соответствующих регулярным
выражениям для релевантных разделов. Вход: Текст + регул. выраж. для рел. разделов; Выход:
Тексты релевантных разделов
• Классификация оставшихся элементов оглавления и заголовков на соответствие заданной
онтологии с помощью LLM. Вход: Текст, элементы оглавления и заголовки; Выход: Тексты
релевантных разделов
Date
Your Footer Here
18

19.

Алгоритм Шаг 1
Поиск релевантных разделов в тексте
• Настройка LLM под задачу классификации заголовков
В зависимости от предметной области:
• Использование промпт инжиниринга
• Использование файн-тюнинга
Date
Your Footer Here
19

20.

Алгоритм Шаг 1
Поиск релевантных разделов в тексте
• Датасет для классификации заголовков
• Пример заголовков: Лечение {заболевание}, Рекомендации при {заболевание}
• Примеры терминов: острый ларингит, ринит и т.д.
• Метод формирования: комбинирование вариантов заголовков и терминов
Множество
вариантов
заголовков
Множество
терминов
Множество вариантов
заголовков для
каждого термина
Date
Your Footer Here
20

21.

Алгоритм Шаг 1
Поиск релевантных разделов в тексте
• В случае отсутствия оглавления и заголовков
• Классификация абзацев текста на соответствие заданной онтологии с помощью LLM
• Пример промпта: «Определите, содержит ли текст описание конкретного
медикаментозного или терапевтического лечения (например, упоминание препаратов,
дозировок, методов лечения, процедур и т.д.). Ответьте только: да или нет. Текст:
{paragraph_text}»
• Пример выдачи LLM: «Абзацы с лечением от модели: 7, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22 Абзацы с лечением эталон: 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22 Точность:
0.92 Полнота: 1.00»
Date
Your Footer Here
21

22.

Алгоритм Шаг 1
Поиск релевантных разделов в тексте
• В случае отсутствия оглавления и заголовков
• Классификация абзацев текста на соответствие заданной онтологии с помощью LLM
• Настройка LLM под задачу классификации абзацев
В зависимости от предметной области:
• Использование промпт инжиниринга
• Использование файн-тюнинга
Date
Your Footer Here
22

23.

Алгоритм Шаг 2
• Распознавание текста релевантных разделов:
• Распознавание в онтологический граф знаний в формате json
Онтологический граф знаний
• Логические конструкции
• Условия
• Характеристики
• Формирование датасета для дообучения LLM
Date
Your Footer Here
23

24.

Алгоритм Шаг 2
• Формирование датасета для файн-тюнинга LLM
Данные для генерации элементов датасета
Шаблон элемента датасета
{факторы:начало}
{факторы: alias1}{факторы: список элементов,
формат: “• {значение};”}
{факторы:конец}
{условие1:начало}
{условие1:конец}
{сущность: “факторы”,
имя: “факторы риска”,
alias1: [“К факторам риска прогресии
заболевания относятся:”],
alias2: “факторами риска”,
Элементы: [“пожилой возраст”, “ожирение”,
“сердечно-сосудистое заболевание, включая
артериальную гипертензию”]}
{сущность : “условие1”,
тип: “or”,
разделитель:”и/или”
элементы: [“При наличии патологических
изменений в легких”, {имя: факторы, текст:
“факторов риска прогрессии”]}
Date
Вариант текста:
К факторам риска прогресии
заболевания относятся: • пожилой
возраст; • ожирение; • сердечнососудистое заболевание, включая
артериальную гипертензию;
При наличии патологических изменений
в легких и/или факторов риска
прогрессии
Your Footer Here
Вариант данных в промежуточном формате:
{
“имя”: “факторы”,
“значения”: [“пожилой возраст”, “ожирение”,
“сердечно-сосудистое заболевание”,
“артериальная гипертензия”]
},
{
“тип”:“условие”,
“элементы”:
[
{“имя”: “При наличии патологических
изменений в легких”},
{“ссылка”: “факторы”}
}
24

25.

Алгоритм Шаг 3
• Уточнение графа знаний
• Сопоставление элементов данных вершинам онтологии
• Использование базы знаний релевантных документов
Date
Your Footer Here
25

26.

Заключение
• LLM являются эффективным инструментом для
автоматического формирования графов знаний
• Извлечение знаний из текстов целесообразно на основе
онтологии для классов документов
• Для повышения качества распознавания целесообразно
создавать адаптер для класса документов предметной области
26

27.

Заключение
• Качество распознавания зависит от размера LLM и от качества
созданного адаптера
• Для сложных документов пока не удалось обеспечить 100%
качество распознавания (сложные логические связки, связанный по
семантике текст находится «далеко друг от друга»)
• Для создания машинопонимаемых текстов использовать
технологии SMART-стандартов
27
English     Русский Rules