深度学习是机器学习的一个领域,都属于人工智能(AI)的范畴。深度学习主要研究的是人工神经网络的算法、理论、应用。
自从2006年Hinton等人提出来之后,深度学习高速发展,在自然语言处理、图像处理、语音处理等领域都取得了非凡的成就,受到了巨大的关注。在互联网概念被人们普遍关注的时代,深度学习给人工智能(AI)带来的影响是巨大的,人们会为它隐含的巨大潜能以及广泛的应用价值感到不可思议。
事实上,人工智能(AI)是上世纪就提出来的概念。1957年,Rosenblatt提出了感知机模型(Perception),即两层的线性网络;1986年,Rumelhart等人提出了后向传播算法(Back Propagation),用于三层的神经网络的训练,使得训练优化参数庞大的神经网络成为可能;1995年,Vapnik等人发明了支持向量机(Support Vector Machines),在分类问题中展现了其强大的能力。以上都是人工智能历史上比较有代表性的事件,然而受限于当时计算能力,AI总是在一段高光之后便要陷入灰暗时光——称为:“AI寒冬”。
然而,随着计算机硬件能力和存储能力的提升,加上庞大的数据集,现在正是人AI发展的最好时机。自Hinton提出DBN(深度置信网络)以来,人工智能就在不断的高速发展。在图像处理领域,CNN(卷积神经网络)发挥了不可替代的作用,在语音识别领域,RNN(递归神经网络)也表现的可圈可点。而科技巨头也在加紧自己的脚步,谷歌的领军人物是Hinton,其重头戏是Google brain,并且在去年还收购了利用AI在游戏中击败人类的DeepMind;Facebook的领军人物是Yann LeCun,另外还组建了Facebook的AI实验室,Deepface在人脸识别的准确率更达到了惊人的97.35%;而国内的巨头当属百度,在挖来了斯坦福大学教授Andrew Ng(Coursera的联合创始人)并成立了百度大脑项目之后,百度在语音识别领域的表现一直十分强势。
而FPGA(Field Programmable Gate Array)是在PAL、GAL、CPLD等可编程逻辑器件的基础上进一步发展的产物。它是作为专用集成电路领域中的一种半定制电路而出现的,既解决了全定制电路的不足,又克服了原有可编程逻辑器件门电路数有限的缺点[3]。FPGA的开发相对于传统PC、单片机的开发有很大不同。FPGA以并行运算为主,以硬件描述语言来实现;相比于PC或单片机(无论是冯诺依曼结构还是哈佛结构)的顺序操作有很大区别。FPGA开发需要从顶层设计、模块分层、逻辑实现、软硬件调试等多方面着手。FPGA可以通过烧写位流文件对其进行反复编程,目前,绝大多数 FPGA 都采用基于 SRAM(Static Random Access Memory 静态随机存储器)工艺的查找表结构,通过烧写位流文件改变查找表内容实现配置。
FPGA在GPU和ASIC中取得了权衡,很好的兼顾了处理速度和控制能力。一方面,FPGA是可编程重构的硬件,因此相比GPU有更强大的可调控能力;另一方面,与日增长的门资源和内存带宽使得它有更大的设计空间。更方便的是,FPGA还省去了ASIC方案中所需要的流片过程。 |