机器学习、数据挖掘及其他
在本书中,我们不断地提及“智能”,到底什么是“智能”?我们说的是人工智能吗?或者是机器学习?它跟数据挖掘和软计算有什么关系?在学术界,对于本书中所介绍的内容的精确定义也已经争论了好几年。从实践的角度看,这些概念并没有实质性的区别,更多的是指应用环境的不同。本书融合了上述所有领域的精华,让我们逐个来看看吧。
以其首字母缩写AI而广为人知的人工智能是一个起源于20世纪50年代的计算领域。最初,AI的目标是极具野心的,试图开发出能像人类一样思考的机器(Russell and Norvig, 2002; Buchanan, 2005)。随着时间的推移,目标变得更加可行和具体。遥不可及的目标不得不屈服于残酷的现实,但是我们之前提及的很多领域都源自人工智能,比如机器学习、数据挖掘、软计算等。
现在,即使是最先进的计算智能系统也无法理解四岁小孩所阅读的小故事。所以,如果我们无法让计算机“思考”,是否能让计算机“学习”呢?可以教会计算机根据动物的特征来判断物种吗?识别不良的次级房贷呢?更复杂的事情,诸如语音识别并用自然语言答复,计算机能做到吗?所有这些问题的答案都是肯定的。然而你有可能会好奇,“这些问题到底说明了什么?”。解决上面这些问题,一个最简单的方法就是在计算机中构建一个庞大的数据表,把所有可能的问题的答案都存放在里面,然后在回答问题时只需在表中搜索现成的答案即可。
当然,这个查询数据表的方法是可行的,但其中也有一些问题。首先,在实际的产品系统中,包含所有问题和答案的表肯定是非常大的。所以,从效率的角度考虑,这肯定不是一个最优的解决方案。其次,如果数据库中没有某个问题的答案,就无法给出回答,如果真有用户问这些问题,你就只能用“敏感词”来搪塞他了。最后,还必须安排人来构建和维护这个查询表,而且随着表的增长,所需的人数也会不断增长,这估计会让公司的财务部门比较恼火。所以,查询表并不是一个好办法,我们需要更好的解决方案。
机器学习指的是软件系统能从已有的经验中抽象出普遍的规则,然后利用这些规则回答各种问题,包括曾经遇到过的和不曾见过的。有些算法对于人类是透明的,意思就是说,人类可以理解算法所抽象出来的规则。透明算法的典型例子有决策树,以及所有基于规则的学习方法。还有一类算法对人类是不透明的,例如,神经网络和支持向量机(SVM)就属于这一类算法。
时刻要记住,跟人类智能一样,机器智能也是不可靠的。在智能应用领域,你将学会如何处理不确定性和模糊性。就像真实世界一样,所有问题的答案都有一个可信度,而不是绝对可靠的。虽然在我们的日常生活中,我们总是简单地假设某些事情是一定会发生的。正因为如此,在使用智能应用时,我们需要解决可信度、有效性以及错误代价等方面的问题。
本文节选自《智能WEB算法》一书。
图书详细信息:http://www.cnblogs.com/broadview/archive/2011/08/19/2145944.html