关于大数据,现在有两个概念,一个是数据大,另一个就是容量大。“大”确实是一个问题,随之而来的大数据处理问题也是一个老问题。之所以说这是个老问题就在于,之前在气象数据的处理里,有各种不同的图象、文本,动态情况带来的变化也很多,导致我们也遇到很大的数据量。因此数据大并不是网络时代才有的问题,只是现在更加严重。
网络数据面临的根本困难
网络数据跟以往数据的不同在于网络时代的数据虽然量很多,但是有用的不到30%、40%,好用的更不多,只有7%,经过“清洗”的不到1%。这和我们以往的数据大不一样, 气象数据尽管有噪声问题,但是从来没有数据虚假、无用、造谣的,但是在网络里就不一样了。
此外,网络数据跟用户和社会关联,也就是说这种数据是在社会间产生,在人与人之间不断传播,因此它所造成的影响和效果是跟以往的数据不一样的。
以往,我们比较多的是从形式、规模这些维度来考虑大数据,在形式上它很复杂,规模上它数量很大,但网络数据还将涉及更多我们之前没有涉及的维度,如语义的维度、内容的维度。
首先是人机交互的变化。通常我们在用计算机的时候只是把程序输入进去,计算机根据程序来完成计算,然后把结果输出给用户,这中间计算机不需要了解用户的意图或数据的来源。因为所有的数据有在计算机存在的语音和语义,但计算机并没有理解这些内容。到了网络时代,人机界面起到非常大的变化。也就是说人们把自己的需求用文本、图象、语音输入到计算机里,计算机必须得通过这些了解用户意图,然后根据用户意图输出用户需要的信息,在此信息的内容已经需要计算机考虑了。
在网络时代计算机必须要涉及到信息的内容,这意味着计算机不仅需要了解用户意图,同时要了解用户的兴趣等,这是语义的维度。
如果要了解网络计算机新的需求以及了解用户意图、兴趣和体验等,我们要做到两点。首先就是把没用上的或者“不好”的数据转变成知识,或者我们通过理解这些数据的内容、信息的内容,把它们变成网络时代信息处理的新需求。其次,如果计算机要从文本、图象、语音去理解用户的意图,那这个理解必须涉及三个层面的问题。第一个方面,计算机得了解某句话的字面意思,即自然语义;第二个方面,用户输入这句话的用意何在,潜意识里想要做什么;第三个方面,这句话的真实含义是什么,判断用户是否赞同此说法等。因此我们提供一条网络信息,计算机至少需要了解这三层意思。但过去计算机信息处理里没有此要求,这就是我们现在传统信息面临的最根本的挑战。
用人工智能处理网络数据
传统的信息处理方法显然是能不能解决上述问题的,原因在于我们所有的信息处理方法是建立在与语义无关的假设上,不管是通信理论、控制理论或者信息处理理论都是跟语义无关的,也就是说在传统理论里必须把信息内容抽掉,这就是所有信息理论建立的依据,因为不采取这样的方法就不能建立一般的内容。
到了网络时代传统的方法遇到困难了,当我们输入信息X送到机器上,阅读者或者接收者者接受信息X,中间都没有误差,但我们接下来从机器那里我们能不能了解到X背后的含义呢?显然传统的剥离信息内容的处理方法解决不了这个问题。
但我们现在还是在采用传统方法进行网络上的信息处理。具体是把X映射到词空间,或者图象的特征里,然后试图找到这个特征到语义的映射。那么特征空间到语义空间是否存在一对一的映射?如果存在,如何去找?我们现在把图象、文本、语音统称为数据,到计算机里它们都表现为0和1、1和0,我们要从这些0和1、1和0里找出来具体的0和1是哪个概念,它背后是什么,并要找到这个映射。现实中,我们不能准确把0和1、1和0进行准确的归类,这个一般情况映射是不存在的。也就是说从底层的数据时代词的组合,从颜色、纹理、视频等,我们没法找到其文本的含义,去识别这个图象代表什么,或者识别语音,因为距离太远。
但是有幸的是这种映射在特定数据处理之下,通过使用合理的方法这个映射是存在的,也就是说它只在特定的条件下用特定的方法才存在。我们现在在做的文本机器翻译、图象识别、语音识别都是在这个前提下实现的。所以我们每当看到人家输出各种结果时,首先想到的是在什么样的数据库下做出来的。我们现在常听到的机器学习、深度学习就是用这个方法进行训练,再独立开,进而对没有见过的数据进行分类。
现在很多图象识别做得比较好,原因在于其图象库的图片以及所给的图片是规格化的、对齐的,而且是正面人脸,保证了其相对高的识别率,这也是在特定条件下可以做得非常好的效果。而如果我们图象没有规格化,大小不一,不仅有正面图象还有侧面图象,或者有一定角度的图象,这样识别率就会变低。
目前计算机做的人脸识别都是上面提到的必须在一定的图片下面进行比较,方法无论好坏,大家都必须在同样的数据库下做实验。这也是我们传统的信息处理方法。
多层神经网络并非完美
人工智能试图直接去处理语义,这也是人工智能的一个重大试探。这个试探的结果是基于语义观察学这一假设。而人工智能认为人脑和计算机都是物理符号系统,我们就有可能用计算机来模拟人脑功能。这一假说是人工智能领域几个创始人提出来的主张,早期的人工智能也是在这个主张下开展的。
虽然这个主张也有人提出了反对意见(不能把人脑的所有的过程都看成是符号处理),但我们确实在实践上取得了很多进展。这就是在计算机应用的所谓符号模型,但是这个模型有它的局限性。
这个模型可以模拟深思熟虑的行为,还可以用来做问题的处理、诊断和决策。
当我们把决策和诊断过程用符号系统处理,会有成功也有不成功的,最主要的成功就是用这套方法来做模式识别,但是在感知和语音识别方面行不通。后来便提出了多层神经网络,现在多层神经网络多指深度学习。也就是说我们固然可以用知识推动的方法来解决人类深思熟虑的行为,像推理、诊断、规划等,但是这类方法很难用到感知处理上,而感知处理用多层神经网络来做,语音、图象的识别率比传统的方法提高了两位数的百分点,这是非常了不起的。
但是这个方法也不是完美的,并不能完全解决问题。概率统计方法存在局限性,多层神经网络也不是完美的,不能简单地以为深度学习已经完全可以超过人类的水平,这只是在一定的条件和环境下。
未来的大方向是把传统信息处理和人工智能结合起来,传统信息处理是概率统计的方法,是数据驱动的方法,要解决大数据处理的问题以及语义问题,就要做到“数据驱动+知识驱动”。
(以上内容系根据张钹院士在“2015第七届云计算大会”上的演讲整理而成)