Akinator游戏背后有什么样的算法?

Des*_*ume 16 algorithm statistics artificial-intelligence machine-learning

我总是惊讶于Akinator应用程序如何通过询问几个问题来猜测一个角色.所以我想知道什么样的算法或方法让它做到这一点?是否有该类算法的名称,我在哪里可以阅读更多关于它们的信息?

ami*_*mit 19

是的,这类算法有一个名称 - 它在机器学习领域被称为分类算法.决策树是分类算法的一个例子.

在这个分类问题中,算法的特征是问题的答案.

决定接下来应该询问哪个问题可以以各种方式完成 - 例如通过尝试最大化来自下一个问题的预测(或平均).

  • @dualed:我们正在逐渐脱离主题 - 但没有理由忽略"我不知道"或使用"可能"与"是"相同.例如,想一想"你的角色是否曾经建模过" - 一个"我不知道"的答案将帮助代理人确定你可能不会谈论[Bar Refaeli](http://en.wikipedia.org/维基/芭儿·拉法莉). (2认同)

And*_*rew 7

    \n
  • Akinator的算法不是决策树,因为决策树没有错误放纵+没有下一题选择的智能系统

    \n
  • \n
  • 它也不是基于神经网络。因为 akinator 从 2007-08-31 就存在,当时神经网络还没有被广泛使用

    \n
  • \n
\n
\n

算法主要特点:

\n
    \n
  • 自学
  • \n
  • 错误——放纵
  • \n
  • 下题选择智能系统
  • \n
\n

Akinator博弈算法算法被称为“模糊逻辑专家系统”或“基于模糊逻辑的专家系统”。

\n

我前段时间写过一篇关于 C# 的文章,你可以通过链接找到它: https: //github.com/ukushu/AkinatorEngine

\n
\n

您可以在 wiki 上阅读其他信息:

\n

https://en.wikipedia.org/wiki/Expert_system

\n

https://ru.wikipedia.org/wiki/\xd0\xad\xd0\xba\xd1\x81\xd0\xbf\xd0\xb5\xd1\x80\xd1\x82\xd0\xbd\xd0\xb0\xd1 \x8f_\xd1\x81\xd0\xb8\xd1\x81\xd1\x82\xd0\xb5\xd0\xbc\xd0\xb0

\n


zig*_*tar 5

这场比赛有时被称为20个问题。关于SO有一些问题,例如: