一条钥匙开一把锁,开锁前第一件事就是先看看应该用哪条钥匙。用下象棋的思路去下围棋是肯定不行的。所以第一步应该是先判断将要应对是什么事。说话方面的?动作方面的?学习方面的?
学习方面其实就是增加自身拥有钥匙的数量。比如去游戏平台玩,有象棋,有围棋、、、你的选择就是AI决定用象棋还是用围棋程序来应酬你。如果这游戏平台原本没扑克,但检测到有扑克游戏后,多了一个扑克选项出来,那么这游戏平台就是有学习能力的。人也不是全能的,有人不会游泳,有人不会煮饭、、、这只是一个“量”的问题。
这样的程序我们并不觉得它有AI的,但它的确是有AI的。它知道用哪条钥匙开哪把锁。只是不完整,它不知怎么找钥匙。要等着你指明要用哪把钥匙才能有下一步动作。
“找钥匙”这个问题其实也是一把锁,可以编个方法出来,然后象棋围棋程序一样等着在某个条件下被执行。
钥匙与锁的思路可以细分到各个方面。
比如聊天方面,如果句子有“几点”这样的关键词语,基本上可以确定是说时间上的话题。在回答应方面就有了明确的方向,要去找时间方面的钥匙来用。
但钥匙与锁的思路也有个很大的缺点。AI聪不聪明要看它带的钥匙够不够多。这意味着很庞大的子程序群。