
Задания для самостоятельной работы по WizWhy
1. Поработайте с файлами анкета и heap.xls. Сформулируйте (письменно) правила составления анкет.
Сформулируйте 3 гипотезы выявляющие взаимосвязи между различными структурами выявленных данных (они в файле heap.xls). И проанализируйте их, используя WizWhy. Результаты представьте в виде отчета, рассмотренного в примере.
2. Откройте файл Shares.xls, предскажите возможность роста доходности от акций с высоким риском.
3. Выполнить по два задания из файла WizWhy_задания.doc (сами таблицы берутся из файла WizWhy_задания.xls), номера заданий согласовывать с преподавателем.
4. Определитесь с темой своего проекта. Предложите набор данных для анализа при реализации проекта (можно результаты опросов по анкетам, можно просто какие-то статистические данные).
WizWhy и экспертные системы (ЭС)
(теория по экспертным системам файлы:..)
Моделируем экспертную систему.
Допустим, Вы хотите узнать, какое животное больше подходит для опрашиваемого.
Вы задаете ему ряд вопросов и делаете определенные выводы, предлагая «рейтинг» подходящих животных.
Для того, чтобы иметь возможность составить такой рейтинг, необходимо анализировать ответы опрашиваемого «в совокупности», т.е. хранить информацию о том, как он отвечал на предыдущие вопросы. Этим в моделируемой ЭС «занимается» вычисляемая по формулам Байеса для каждого следующего ответа априорная вероятность.
Итак, Вы предполагаете, что человек может держать дома: собаку, кошку, грызуна (крыса, хомяк, шиншилла, морская свинка), черепаху, попугая (или другую птицу), рыбок.
Таким образом, у Вас есть 6 вероятных исходов. Для того, чтобы начать моделировать Вашу ЭС, Вы должны (как эксперт и автор), сделать определенные предположения о том, с какой вероятностью какое животное держится дома.
Допустим, Вы предполагаете следующие начальные априорные вероятности:
|
Начальная априорная вероятность (мы предопределяем) |
Возможные исходы |
Р |
Собака |
0,2 |
Кошка |
0,3 |
Грызун |
0,1 |
Черепаха |
0,1 |
Попугай |
0,1 |
Рыбки |
0,2 |
Общая суммарная вероятность по исходам (на этом этапе она обязательно равна 1) |
1 |
371 28 57
Теперь Вы должны продумать вопросы, на которые будет отвечать опрашиваемый. Заметьте, чем больше вопросов, тем больше всевозможных вариантов исходов Вы получите.
Объясняю почему:
Вот Ваши вопросы: В1, В2, В3 и т.д. Например:
В1 – Любите ли Вы гулять?
В2 – Боитесь ли Вы собак?
В3 – Часто ли Вы отсутствуете дома? и так далее.
На каждый вопрос, в самом простом случае, возможны два варианта ответа: Да и Нет.
|
|
|
Задали В1 |
|
|
|
|||||||
2 ответа |
|
В1 - Да |
|
|
|
В1 - Нет |
|
|
|||||
|
|
|
Задали В2 ЭС анализируя ответ на В2 должна «держать в памяти», каков был ответ на В1. Возможны следующие варианты: |
|
|
|
|||||||
4 ответа |
В1- Да |
В1- Да |
|
|
|
В1- Нет |
В1- Нет |
|
|||||
В2 -Да |
В2- Нет |
|
|
|
В2- Да |
В2- Нет |
|
||||||
|
|
|
Задали В3 ЭС анализируя ответ на В3 должна «держать в памяти», каковы были ответы на В1 и В2. Возможны следующие варианты: |
|
|
|
|||||||
8 ответов |
В1- Да В2- Да В3- Да |
В1- Да В2- Нет В3- Да |
В1- Нет В2- Да В3- Да |
В1- Нет В2- Нет В3- Да |
В1- Да В2- Да В3- Нет |
В1- Да В2- Нет В3- Нет |
В1- Нет В2- Да В3- Нет |
В1- Нет В2- Нет В3- Нет |
Таким образом, количество исходов растет пропорционально 2 в степени номера вопроса.
(В1 – 21 = 2, В2 – 22 = 4, В3 – 23 = 8 и т.д.).
Теперь Вы должны самостоятельно (как эксперт) предопределить вероятности исходов при ответах «Да» и «Нет» на каждый из вопросов (не задумываясь при этом о том, какой ответ был дан на предыдущие вопросы).
Так, Вы считаете, что если на первый вопрос: «Любите ли Вы гулять?» опрашиваемый ответил «Да» (заполняем графу Ру), то Ваши предположения как эксперта состоят в том, что ему с наибольшей вероятностью подходит собака (например – 0,7), с несколько меньшей кошка (например – 0,5) и с приблизительно равными вероятностями остальные исходы.
Аналогично анализируем второй и последующие вопросы:
|
Начальная априорная вероятность (мы предопределяем) |
В1 |
В2 |
В3 |
|||
|
Р |
Ру |
Рн (1- Ру) |
Ру |
Рн (1- Ру) |
Ру |
Рн (1- Ру) |
Возможные исходы |
|
Да |
Нет |
Да |
Нет |
Да |
Нет |
Собака |
0,2 |
0,7 |
0,3 |
0,1 |
0,9 |
0,1 |
0,9 |
Кошка |
0,3 |
0,5 |
0,5 |
0,8 |
0,2 |
0,2 |
0,8 |
Грызун |
0,1 |
0,2 |
0,8 |
0,2 |
0,8 |
0,3 |
0,7 |
Черепаха |
0,1 |
0,2 |
0,8 |
0,2 |
0,8 |
0,5 |
0,5 |
Попугай |
0,1 |
0,2 |
0,8 |
0,2 |
0,8 |
0,3 |
0,7 |
Рыбки |
0,2 |
0,2 |
0,8 |
0,2 |
0,8 |
0,6 |
0,4 |
Общая суммарная вероятность по исходам
|
1 (на этом этапе она обязательно равна 1) |
≠ 1 |
≠ 1 |
≠ 1 |
≠ 1 |
≠ 1 |
≠ 1 |
Теперь у Вас есть все исходные данные для моделирования экспертной системы.
Формулы Байеса для расчета новых априорных вероятностей :
При ответе «Да» вероятность считается по формуле:
РАy = Py * P / (Py * P + Pн * (1 - P))
При ответе «Нет» вероятность считается по формуле:
РАn = (1 - Py) * P / ((1 - Py) * P + (1 - Pн) * (1 - P))
где:
Предопределенные:
P — начальная априорная вероятность
Pн — вероятность ответа НЕТ
Py — вероятность ответа ДА
Рассчитываемые:
РАy — новая начальная априорная вероятность при ответе ДА
РАn — новая начальная априорная вероятность при ответе НЕТ
Моделируемая в Excel ЭС будет выглядеть так (помним, что после ответа на первый вопрос у нас вместо одной начальной априорной вероятности появляется две начальные априорные вероятности для второго вопроса - РА1y и РА1n, каждая из которых хранит в себе вариант ответа на предыдущий вопрос).
При ответе «Да» вероятность считается по формуле:
РА1y = P1y * P / (P1y * P + P1н * (1 - P))
При ответе «Нет» вероятность считается по формуле:
РА1n = (1 – P1y) * P / ((1 – P1y) * P + (1 – P1н) * (1 - P))
Эти две вероятности будут исходными для перерасчета априорных вероятностей после второго вопроса. Таким образом, четыре новые априорные вероятности после второго вопроса считаются так:
При ответе «Да» вероятность считается по формуле:
РА21y = P2y * РА1y / (P2y * РА1y + P2н * (1 - РА1y)) мы посчитали новую вероятность при ответе «Да» на второй вопрос с учетом того, что на первый вопрос был дан ответ «Да».
РА22y = P2y * РА1n / (P2y * РА1n + P2н * (1 - РА1n)) )) мы посчитали новую вероятность при ответе «Да» на второй вопрос с учетом того, что на первый вопрос был дан ответ «Нет».
При ответе «Нет» вероятность считается по формуле:
РА21n = (1 – P2y) * РА1y / ((1 – P2y) * РА1y + (1 – P2н) * (1 - РА1y)) мы посчитали новую вероятность при ответе «Нет» на второй вопрос с учетом того, что на первый вопрос был дан ответ «Да».
РА22n = (1 – P2y) * РА1n / ((1 – P2y) * РА1n + (1 – P2н) * (1 - РА1n)) мы посчитали новую вероятность при ответе «Нет» на второй вопрос с учетом того, что на первый вопрос был дан ответ «Нет».
|
|
В1 |
В2 |
||||||||
|
Начальная априорная вероятность |
Предсказания эксперта |
Рассчитанные априорные вероятности |
Предсказания эксперта |
Рассчитанные априорные вероятности |
||||||
Возможные исходы |
Р |
Р1у |
Р1н (1- Ру) |
РА1y |
РА1n |
Р2у |
Р2н
|
РА21y |
РА22y |
РА21n |
РА22n |
Как отвечал: |
|
Да |
Нет |
Да |
Нет |
Да |
Нет |
Да-Да |
Да-Нет |
Нет-Да |
Нет-Нет |
Собака |
0,2 |
0,7 |
0,3 |
0,368421053 |
0,096774194 |
0,1 |
0,9 |
|
|
|
|
Кошка |
0,3 |
0,5 |
0,5 |
0,3 |
0,3 |
0,8 |
0,2 |
|
|
|
|
Грызун |
0,1 |
0,2 |
0,8 |
0,027027027 |
0,307692308 |
0,2 |
0,8 |
|
|
|
|
Черепаха |
0,1 |
0,2 |
0,8 |
0,027027027 |
0,307692308 |
0,2 |
0,8 |
|
|
|
|
Попугай |
0,1 |
0,2 |
0,8 |
0,027027027 |
0,307692308 |
0,2 |
0,8 |
|
|
|
|
Рыбки |
0,2 |
0,2 |
0,8 |
0,058823529 |
0,5 |
0,2 |
0,8 |
|
|
|
|
Общая суммарная вероятность по исходам
|
1 |
≠ 1 |
≠ 1 |
|
|
≠ 1 |
≠ 1 |
|
|
|
|
И так далее…
Задания:
1. Промоделируйте данную ЭС в Excel. В ней 6 исходов и 4 вопроса. В итоге Вы должны получить 16 (24) всевозможных исходов.
Проанализируйте полученные результаты. Для этого, в каждом из 16-ти итоговых столбиков найдите строчку с максимальной вероятностью. Выделите эти ячейки цветом. В верхней строчке (Как отвечал) прочитайте, на какие вопросы, как отвечал опрашиваемый. Проверьте Вашу ЭС.
2. Приведите примеры (не менее 2-х) как можно использовать WizWhy при получении исходных данных для данной ЭС. (необходимо представить: таблицы для анализа и сам анализ в WizWhy).
3. Придумайте свою ЭС. Смоделируйте ее в Excel, а после этого на VBA. Условие: не менее 5-ти исходов и не менее 3 вопросов (при модели в Excel) и не менее 7 вопросов при моделировании на VBA.