Случай специальных запросов
Почему в портрете испытуемого присутствует фраза «...»? Как в профиле испытуемого получено значение фактора «...»? и т. д. Для устранения непониманий все запросы на объяснения после анализа перефразируются и выдаются эксперту в виде эхо-вопросов. И только в случае, если его «устраивает» интерпретация запроса, данная системой, происходит формирование текста объяснения. Так, например, эхо-запрос для последнего из общих вопросов — Вас интересуют правила поглощения противоречивых факторов в данном портрете?, а для последнего из специальных вопросов — Вы хотели бы узнать, каким образом сформировано значение фактора «...» - «..»? Примеры объясняющих текстов для тех же запросов, к которым приведены эхо-вопросы системы — следующие: Фактор «...» = «...» поглощен фактором «...» = «...», так как на шкале «ОН-Н-СР-В-ОВ» значение «...» выражено «сильнее» значения «...». Общая формула, которая является ключом теста, выглядит следующим образом:
Для фактора «...» она трансформируется в формулу: F_value («...») = ответ (q3)*вec-отвeтa(q3) +...+ ответ(q176)*вес-ответа (q176); С учетом ответов испытуемого эта формула приводится к выражению вида: F_value («...») – 2 +...+ 2 = «...» Таким образом сформировано значение фактора «...» = «...». Как следует из приведенных примеров, объяснения в ЭС «Cattell» достаточно подробные и позволяют получить психологу-эксперту практически всю интересующую его информацию. Понятно, что поддержка объяснений такого уровня существенно сложнее, чем выдача аннотаций к трассе вывода решения и требует своей базы знаний (согласованной с предметной БЗ) и своей программы вывода. Основные моменты построения этих компонентов и рассматриваются ниже.
В целом подсистема объяснения системы «Cattell» строится по «полной» схеме: прием запроса от пользователя; анализ запроса; генерация эхо-вопроса; прием подтверждения на системную интерпретацию запроса и вывод собственно текста объяснения. Формирование запросов на объяснения осуществляется на основе меню, в корневых опциях которого находятся темы объяснений, а на листьях — ЕЯ-шаблоны конкретных вопросов. В зависимости от типа запроса он может сопровождаться параметрами, которые выбираются пользователем непосредственно из портрета или профиля испытуемого. Система, «зная» описание текущего испытуемого, дополняет запрос пользователя и формирует структуру вида
«тема» «тип-запроса» «имя объясняемого фрейма-экземпляра» «контекст»),
которая, по существу, является внутренним представлением запроса на объяснение. Таким образом, удается избежать построения Л-процессора для анализа запросов и вместе с тем обеспечить естественное общение. Анализ внутреннего представления осуществляется параллельно с генерацией эхо-вопроса. При этом сама внутренняя структура является управляющей цепочкой, которая задает поверхностную структуру эхо-вопроса. Фрагмент соответствующего множества ATN показан на рис. 7.5.
Рис. 7.5.Фрагмент ATM-представления анализатора запросов и генератора эхо-вопросов
В результате анализа запросов на объяснения и генерации эхо-вопросов, а также уточнений, которые отражают процесс согласования мнений системы и пользователя, в базе знаний ПОЭС (подсистемы объяснений ЭС) «Cattell» формируется окончательная редакция запроса — фрейм-экземпляр следующего прототипа:
[ expl_request is_a prototype; rq_team frame; rq_type int; rq_context {string}; expl_fr frame; expl_sl {string}; expl_fun string; echo_txt{string}; expl_txt{string} ];
В начальный момент вывода текста объяснения в этом экземпляре заполнены слоты rq_team (темаобъяснения из БЗ ПОЭС); rq_type (тип запроса, — WHY, HOW или WHAT, — сформированный анализатором); rq_context (параметры запроса, если они требуются) и echo_txt (поверхностное представление «согласованного» эхо-вопроса). Слоты expl_fr (объясняемый фрейм-экземпляр из предметной БЗ теста); expl_sl (объясняемые слоты объясняемого фрейма-экземпляра) и expl_fun (имя процедуры вывода текста объяснения) заполняются самой ПОЭС. Значение слота expl_txt представляет результат работы.
Собственная БЗ ПОЭС — статическая и содержит совокупность поддерживаемых моделей объяснений, определяемых как экземпляры следующих основных прототипов:
[ explain is_a prototype; expl_slt{string}; expl_fncstring; expl_knw frame ]; [ v_expl is_a prototype; why_slt {string}; why (frame); how_slt {string}; how (frame); what_slt{string}; what(frame) ];
[ p_expl is_a prototype; why {frame}; how {frame} ];
[ c_expl is_a prototype; noneframe; contra frame ];
[ wh is_a prototype; path{frame}; process string ];
[ path is_a prototype; typeint;nm_framestring; nm_slot {string} ]; [ rule is_a prototype;
r_fact {string}; r_part {string} ]; В нашем случае это множество экземпляров представляется следующими фреймами: [ port is_a explain; expl_slt= { «Ы»,«Ь2»,«ЬЗ»,«Ь4» }; expl_fnc= «portret»; expl_knw= portret ]; [ prfl is_a explain; expl_slt ={«A»,«B»,«C»,«E»,«F»,«6»,«H»,«I»,«L»,«M»,«N»,«0»,«Q1»,«Q2»,«Q3»,«Q4» }; expl_fnc=«profile»; expl_knw=profile ];
[comn is_a explain; expl_slt = { }; expl_fnc=«com_que»; expl_knw=common];
Анализ их показывает, что в ЭС «Cattell» поддерживаются модели объяснения всех групп интерпретируемых в вербальном портрете факторов, всех факторов в профиле испытуемого и модели общих запросов. Так, например, знания, необходимые для объяснения вербального портрета конкретизируются фреймом-экземпляром portret, где заданы ссылки на объясняемые тексты («bl_txt», «b2_txt», «b3_txt», «b4_txt») и способы доступа к релевантной информации из предметной БЗ теста (whl, wh2, wh3, wh4):
[ portret: v_expl; why_slt ={ «b1_txt», «b2_txt», «b3_txt», «b4_txt» }; why ={ wh1, wh2, wh3, wh4 }; how_slt ={ «b1_txt», «b2_txt», «b3_txt», «b4_txt» }; how ={ wh1, wh2, wh3, wh4 }; what_slt={ «b1_txt», "«b2_txt», «b3_txt», «b4_txt» }; what={ whl, wh2, wh3, wh4 } ];
При такой модели процессор объяснений интерпретирует последовательно описания экземпляров типа wh, где описываются пути, ведущие от запроса на объяснение к тем данным, которые и составляют внутреннее представление ответа. Наиболее сложной является модель объяснения поглощения факторов, активируемая подмножеством общих вопросов. В этом случае ПОЭС должна иметь в своей БЗ модели всех правил поглощения и объяснять рассуждения машины вывода «Cattell». Для конкретности дальнейшего обсуждения предположим, что обрабатывается запрос вида «Как разрешались противоречия при построении данного портрета?» и пользователь согласился с интерпретацией системы, специфицированной в эхо-вопросе «Лас интересуют правила поглощения противоречивых факторов в данном портрете?» Пусть также, для определенности, единственным поглощенным фактором при выводе вербального портрета был фактор А. Для этого фактора в модели существуют два правила объяснения поглощения, соответствующие очень низкому (ОН) и очень высокому (ОБ) значению этого фактора в семантическом профиле испытуемого:
[ АОН is_a rule; [ AOB is_a rule; r_fact ={«E», «L»}; r_fact ={«E», «L»}; r_part ={«EOH»,»LOH»} ]; r_part ={«EOB»,«LOB»} ];
Однако реально поглощение фактора А наблюдается лишь тогда, когда значения факторов Е и L тоже ОН или ОБ. Понятно, что в такой ситуации подсистема объяснения должна сравнивать не семантические профили по вышеуказанным факторам, а их числовые профили. Учитывая вышесказанное, продукционная система вывода объяснения поглощений содержит 98 правил, аналогичных правилам для фактора А:
section EXPL-COLLAPSE-A removeall; if ([$curr_s_prfl: A] == [$curr_s_prfl: E]){ if ([$curr_s_prfl: A] == «OH») insert (AOH-COLLAPSED-E); if ([$curr_s_prfl: А] == «08») insert (AOB-COLLAPSED-E); break }; if ([$curr_s_prfl: A] == [$curr_s_prfl: L]){ if ([$curr_s_prfl: A] == «OH») insert (AOH-COLLAPSED-L); if ([$curr_s_prfl: A] == «OB») insert (AOB-COLLAPSED-L); break }; rule AOH-COLLAPSED-E :: (?[$curr_n_prfl: $curr_A = A]) && (?[$curr_n_prfl: $curr_E = E]) && ($curr_A <- $curr_E) ==> [expl_request_001: expl_txt]= {«Фактор A = «, $curr_A», «(ОН,) поглощен», «фактором Е = «, $curr_E, «(ОН), т.к. числовое», «значение Е выражено сильнее значения А.»} ]; …………………………………………………………………………………… rule AOB-COLLAPSED-L :: (?[$curr_n_prfl: $curr_A = A]) && (?[$curr_n_prfl: $curr_L = L]) && ($curr_A <= $curr_L) ==> [expl_request_001: expl_txt]= {«Фактор A = «, $curr_A», «(OB) поглощен», «фактором L = «, $curr_E, «(OB), т.к. числовое», «значение L выражено сильнее значения А.»} ];
Таким образом, осуществляется генерация объяснений в ЭС «Cattell». В данной версии каждый запрос на объяснение приводит к генерации одного и того же экземпляра прототипа expl_request. Однако нетрудно модифицировать обсуждавшуюся продукционную программу так, чтобы в БЗ объяснений сохранялась история работы с ней пользователя. В таком случае БЗ объяснений может использоваться для обучения специалистов интерпретации результатов по тесту Кеттелла.
Выше описаны основные проектные решения, использованные при создании психодиагностической ЭС «Cattell». Однако читателям должно быть ясно, что зти решения являются достаточно общими и характерными не только для данной экспертной системы, но и для большинства ЭС диагностики.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|