我正在考虑编写一个程序,要求用户考虑一个对象(一个物理对象),然后它会询问有关该对象的问题,并试图弄清楚用户在想什么。 (类似于http://20q.net)
我试图在Python中做到这一点,但我认为我的方法很幼稚,效率很低。你们会怎么做?
答案 0 :(得分:3)
有效地执行此操作需要一种称为Kullback-Liebler Divergence的概率方法。应用于决策树(这是您想要做的),它通常被称为 Information Gain 。
但是不要让那阻止你!做一些搜索决策树的实现样本并从那里开始。在你解决20个问题之前,我会写一个更简单的程序。
另外,请查看http://www.20q.net/。点击“Think in English”,然后点击“Classic 20Q”。有时这很可怕。
答案 1 :(得分:1)
听起来你想制作一个计算机化的21问题游戏。我用一堆问题和答案来做。
这是一篇关于在python中实现树的很好的stackoverflow文章 How can I implement a tree in Python? Are there any built in data structures in Python like in Java?