Как посчитать вероятность по формуле Байеса в экспертной системе?
Совершенно не совпадают расчёты по формуле байеса в эксперной системе - сравниваю с программой "Малая экспертная система".
Формула расчёта - формула Байеса.
Вот вероятности для расчёта определения кошки на вопрос "Живёт в аквариуме (или другом резервуаре с водой)?" Py = 0, Pn = 0.5, априорная вероятность 0,2, коэффициент ответа -3/5 = -0,6
В программе "Малая экспертная система" результат равен 0,28.
Считаю по верхней формуле формуле - результат равен нулю (P = 0), считаю по нижней формуле, результат = 0,2 . В документации есть разночтение, только если поставить априорную вероятность 0,4, то результат будет - 0.3428 - что тоже не совпадает с программой. То есть я суммирую и грубо получаю значения в два раза выше чем нужно.
И так я пересчитал многократно по распознаванию по всем вопросам, вообще не совпадает.
Алгоритма расчёта найти не могу. В книге Нейлор "Как построить экспертную систему" ответ запутан во многих главах, выбирайте любой, у меня тоже результат не получается.
Автор программы Бухнин Алексей Викторович , его почтовый адрес вероятно уже не существует. Пересмотел массу материалов по теме, ничего подходящего не нашёл, везде перепечатка друг друга или вообще ошибочные переводы.
Кто нибудь подскажет алгоритм расчёта по итерациям?
Чтобы получить результат 0.28, программа, вероятно, использует модифицированную формулу Байеса, которая учитывает вес свидетельства и нормализует результат. В данном случае подходит альтернативная модификация:
Спасибо вам, вероятно без дебагера ответ не найду. Я использовал показанный вами подход и получил примерно похожий тренд расчётов как и в исходной программе. Что очень странно, поскольку эта программа приведена в учебных материалах разных учебных заведений как эталон и основа для применения, но вероятно разработка своего движка как цель не ставится.