如何在python中生成不正确的选项

如何在python中生成不正确的选项,python,auto-generate,pydictionary,Python,Auto Generate,Pydictionary,我正在开发一个问题生成器,到目前为止,我已经从一个句子中生成了一些问题。我现在需要做的是生成3个与答案类似的其他选项,这样我就可以使它成为MCQ类型 我所面临的问题是,当我产生类似的单词时,我会得到令人讨厌的东西,或者通常是重复词 例如,对于“how”,我得到hello,hi,hullo 对于“氢”,我得到原子序数1,化学元素,气体 我需要一个更可靠的方法(我正在使用pydictionary生成类似的单词) 我在天网方面也面临类似的问题 感谢所有帮助:) 你可能不想用反义词,因为那太明显了。还有

我正在开发一个问题生成器,到目前为止,我已经从一个句子中生成了一些问题。我现在需要做的是生成3个与答案类似的其他选项,这样我就可以使它成为MCQ类型

我所面临的问题是,当我产生类似的单词时,我会得到令人讨厌的东西,或者通常是重复词

例如,对于“how”,我得到hello,hi,hullo

对于“氢”,我得到原子序数1,化学元素,气体

我需要一个更可靠的方法(我正在使用pydictionary生成类似的单词) 我在天网方面也面临类似的问题

感谢所有帮助:)


你可能不想用反义词,因为那太明显了。还有,氢的反义词是什么

你也不需要像“车”或“房子”这样武断的词,因为这也太明显了,很可能会让答案变得可笑

你想要一种相关的词语,甚至可能有困难。也许“铀”很容易排除,但“氧”和“氮”很难排除

我在猜谜游戏方面的经验是:需要大量的思考和手工工作才能得到好的问题和足够多的错误选项来回答

我对猜谜游戏的建议:

  • 尝试找到多个正确答案,否则玩家会很容易记住。(不幸的是,有时没有)
  • 找到比需要更多的错误答案。如果您在屏幕上显示3个错误答案,请查找至少10个错误答案以供选择。这将需要玩家花时间阅读,并使其对新来者更加公平
总的来说,您可能需要一个用于生成句子的模板引擎,以及一个“数据库”(JSON或任何东西)来放入您精心制作的单词

很抱歉,我没有为这项任务建议一个奇特的AI算法。人工智能应该如何判断一个原子的有效(或无效)选择是基于重量、结合能、自由电子、放射性还是其他标准


我发现,上述情况甚至适用于数学问题。当然,通常更容易找到错误的答案。但您仍然希望数字范围符合某些标准(如一年级为1到10)。人工智能算法如何知道您针对的是特定的儿童年龄?

MCQ是什么意思?@ThomasWeller我猜是“多项选择问题”(MCQ)向我们展示您使用的代码,以生成不满意的答案。即使它不是直接有用的,它也会向我们展示代码运行的框架,因此答案也可以放在该上下文中。@Blckknght我在代码中编辑过。我想质疑这样一种观点,即如果自动化系统对问题一无所知,它可能会产生有用的错误答案。对于复杂的机器学习技术(学习问题的含义并猜测答案的合理形式),这可能不是完全不可能的,但它不会像您的示例那样是一行代码。谢谢,但是我如何生成错误的答案呢?除了手动操作之外?@IdhikashJaishankar:使用模板引擎+手动输入。模板类似于“答案是{}.”,“{}是答案,{}将起作用。”和“解决方案是{}”,其中{}是占位符。占位符可以是答案或非答案,如“氢”、“氧”、“氮”和“铀”。这个例子给出了16个句子。是的,但我正在尝试删除所有的手工工作,无论如何感谢你的帮助,我找到了一个更好的方法(我想),我要尝试一下,它叫gensim
from PyDictionary import PyDictionary

dictionary=PyDictionary()
answer = dictionary.synonym(word)