Ранее в статье "Почему нейросети не заменят прикладных специалистов: простая логика против вероятностных подходов" рассматривались общие вопросы поиска решений управляемого данными. Кратко: это механизм динамического связывания отдельных фрагментов решения в виде информационных блоков в последовательности для определения запрошенных параметров. Эта информационная технология, основанная на простой логике, позволяет оперативно вести диалог с пользователем, используя накопленные в процессе поиска решения данные. Для того чтобы общаться с системой на естественном языке необходим терминологический словарь предметной области.
В статье рассматривается роль терминологического словаря в процессе поиска решений, требования к составу словаря и содержанию словарных статей. Именно словарь позволяет описывать фрагменты решения на естественном языке и создавать прикладные приложения с минимальным привлечением специалистов по информационным технологиям. Отдельное внимание уделяется важности указания иерархических связей терминов, которые по своей сути являются параметрами решаемой задачи.
Терминологический словарь - важный компонент экспертной системы, к созданию которого предполагается привлекать прикладных специалистов узкого профиля.
ПРИМЕЧАНИЕ. В качестве примера выбрана реальная задача из медицинской практики связанная с назначением антирабической помощи. Антирабическая помощь необходима для исключения заболевания бешенством после контакта с домашним или диким животным. Бешенство смертельно опасное заболевание. От правильности врачебных назначений зависит жизнь обратившегося за медицинской помощью. Имеется инструкция, регламентирующая действия по оказанию антирабической помощи, которая и является первоисточником базы знаний. Несмотря, на кажущуюся простоту выбор лечения (профилактики) требует чёткого анализа ситуации и учёта многих факторов. Экспертная система в диалоге управляемом данными не позволит ничего пропустить и предложит безошибочное решение.
ВАЖНОЕ ЗАМЕЧАНИЕ: Примеры взяты из реального приложения, но в ряде случаев данные на иллюстрациях искусственно изменены, исключительно с целью показать принципы обработки данных, не застревая на подробностях.
Для любых задач, вне зависимости от выбранных средств программной реализации, должны быть перечислены данные, с которыми будет оперировать система. Естественно предположить, что предметному специалисту, использующему экспертную систему, привычней работать со знакомыми терминами. Тогда как механизмам поиска решений всё равно, как будут идентифицироваться заданные, промежуточные и выходные параметры задачи. Таким образом, перечень параметров задачи организованный в виде терминологического словаря удобен для восприятия и прикладными специалистами и механизмами поиска решений.
Что обязательно должно быть в словаре:
Наименование параметра.
Тип значения (число, текст, дата, …).
Для текстовых типов параметров - список возможных значений. Для числовых типов значений - диапазоны допустимых значений.
Возможный вид терминологического словаря представлен на рисунке ниже (рис. 1).
В статье "Поиск решений управляемый данными. Информационный блок" было отмечено, что в информационном блоке перечислены используемые параметры с их допустимыми значениями. Таким образом, информационные блоки могли бы выступить источником наполнения словаря, но есть важное ограничение. Предметная терминология должна быть единообразной и в этом плане первичным должен быть, конечно, словарь. Словарь составляется исключительно прикладными специалистами с использованием общеупотребительных и стандартизованных терминов и понятий конкретной предметной области. Однако если вернуться к основной идее предоставления прикладным специалистам удобного инструмента сохранения знаний, можно предложить более рациональный подход к составлению словаря. Вначале формируются информационные блоки "как есть" и автоматически собирается словарь. Потом терминология приводится к единообразию, и информационные блоки корректируются (рис. 2).
В словаре не должно быть ничего лишнего. Это легко проверяется поиском параметров словаря, которые нигде в информационных блоках не используются.
С возможными значениями текстовых параметров и допустимыми значениями числовых параметров дело обстоит с точностью до наоборот. Информационные блоки отличный источник для автоматического формирования (объединения) списков (рис. 3) и диапазонов допустимых значений (рис. 4).
Термины предметной области (параметры задачи) взаимозависимы и в разной степени влияют на процесс поиска решений. Например, "Вид иммунизации" в большей степени влияет на направление поиска решений, чем "Дата травмы". В свою очередь "Дата травмы" важнее, чем "Масса тела пострадавшего, кг". Таким образом, приходим к необходимости ранжировать параметры задачи (термины предметной области) по степени их влияния на процесс поиска решений (рис. 5). Уровни определяют важность параметров. Чем выше уровень – тем параметр важнее. Внутри уровня параметры упорядочиваются по значимости. Чем меньшее условное число задающее значимость, тем выше положение параметра на уровне. Комбинация уровня и значимости определяют место параметра в иерархии понятий предметной области. Эта иерархия может не совпадать (и чаще всего так и будет) со структурой типа физических связей "Объект -> составляющие объекта -> …". Иерархия параметров в задачах поиска решений управляемых данными служит для управления направлением поиска (выбором предпочтительной последовательности определения параметров) или выяснения, какой параметр следует запросить первым в диалоге.
Первоначально ранжирование терминов выполняется предметными специалистами на этапе подготовки информационных блоков. Когда, необходимое для выполнения поиска решений количество информационных блоков создано, становится возможным автоматизированный контроль правильности (целевой направленности) иерархической структуры словаря.
Если будут исчерпаны все возможности определить значение параметра, используя имеющиеся информационные блоки, начнётся диалог с пользователем. В очереди на ввод данных в диалоге может оказаться более одного параметра (рис. 6). В таком случае первым будет запрашиваться параметр, расположенный в терминологическом словаре выше остальных. Что логично, так как именно этот параметр может сильнее всех повлиять на выбор информационных блоков для продолжения поиска решений.
Словарная статья может включать иллюстрации (рис. 7), которые будут отображаться при вводе данных, например, в диалоге. Или визуализировать параметры в таблицах информационных блоков.
В словарных статьях может содержаться справочная информация полезная для понимания специальных терминов или сути задачи. Справочная информация так может отображаться по запросу пользователя при вводе данных (рис. 8).
Текстовые параметры содержат списки наименований значений. Но наименования могут относиться, например, к изображениям, иллюстрирующим текст. Так же наименования значений может сопровождать звукозапись или видеозапись. Например, в диалоге вместе с текстом будет отображаться видеоролик соответствующий объекту выбора; или звукозапись. В словаре для задачи оказания антирабической помощи таких параметров нет. А вот, например, в случае с диагностикой острых респираторных заболеваний будет оправдано сопроводить значения параметра "Вид кашля" звукозаписями образцов, например, сухого и влажного кашля.
Для сравнительно небольших узкоспециализированных задач использование современных технологий, связанных с языковыми моделями, скорее всего не целесообразно. Хотя для приведения терминологии к единообразию может пригодиться.
Для сложных и тиражируемых задач, технологии нейросетевых моделей будут весьма полезны. Например, для анализа состава информационных блоков на предмет правильности отражения связей в иерархической структуре словаря. И наоборот, достаточности условий применимости информационных блоков для правильной работы механизмов поиска решений.
Можно не сомневаться, что правильно обученная нейросеть позволит трансформеру самостоятельно подготовить комплект информационных блоков, сгенерировать словарь и протестировать работоспособность поиска решений. Прикладному специалисту останется убедиться в качестве результатов и, при необходимости, подкорректировать информационное наполнение. Хотя, скорее всего, всё будет совсем не так просто и гладко, как хотелось бы.
Словарь важная составляющая механизма поиска решений управляемого данными.
Словарь обеспечивает возможность прикладным специалистам работать, используя привычную терминологию.
Иерархическая структура словаря способствует осмысленному управлению механизмами поиска решений.
Иллюстративные и справочные материалы в словарных статьях помогают организовать дружественный интерфейс.
Использование в качестве значений параметров визуальной, аудио- и видеоинформации многократно расширяет возможности прикладного применения рассматриваемой информационной технологии.
Современные нейросетевые решения могут упростить и ускорить реализацию прикладных приложений выполняющих поиск решений управляемый данными.
В следующей статье будут рассмотрены детали механизма поиска решений на множестве информационных блоков с использованием словаря в качестве списка параметров задачи.
Источник


