opencl sdk中得到平台列表以后如何去选择一个平台

您所在的位置: &
群雄逐鹿的统一通信平台 你选择谁?(2)
群雄逐鹿的统一通信平台 你选择谁?(2)
在今年早些时候,微软发起了"Why Microsoft"的活动,#whymsft这一标签社受到了交网络世界的追捧。这一宣布口号特别适用于统一通信。什么选择微软?因为无论以哪种量化评估方式衡量它们都是最佳解决方案。
开放平台可最大限度向用户提供便利&
Paul McMillan为西门子企业通信统一通信技术前景与战略总监,以下是他的观点:
更重要的是,统一通信架构必须要具有高可用性、扩展性和灵活性,但是这些经常被提到的术语并没有明确的定义。不幸的是,这些术语却是开放通信平台的基础。
提高每名工人的生产效率,加速复杂业务流程,是企业成功的关键,统一通信平台必须要解决采用开放平台的企业在实际使用中所面临的所有问题
对于所有通信来说,语音是基础。简而言之,大多数业务是通过在两个或多个实体之间进行实时通信的方式被处理的。从我们的市场发展来看,作为任何统一通信平台的底线,所传输的东西不具备完整的语音功能是不可接受的。
除了标准的语音服务外,这种架构还必须获得包括联系中心在内的企业所有部门的支持,以及政府、医疗保健、财政等垂直市场的支持。这些部门中的每一个都有需要遵守特殊的规定和规范,而这些规定和规范是无法被忽视或绕过的。
更重要的是,统一通信架构必须要具有高可用性、扩展性和灵活性,但是这些经常被提到的术语并没有明确的定义。不幸的是,这些术语却是开放通信平台的基础。你能够靠最为直观的用户体验来开拓市场,但是如果这种架构需要花费大量的资金去维护,带有安全隐患,或是需要每天升级补丁,那么它的价值就大打折扣,用户体验也无从谈起。
随着用户需求的增加,一个统一通信平台必须要以可控和可管理的方式进行扩展以满足这些需求,同时还要让IT部分能够有效管理这些扩展。这又为我们带来了一个关于统一通信平台能够提供多大程度的灵活性的问题。一个开放的平台在应用和管理方面是不可知的。其可以单独使用,也可以作为中间件使用,还可以被虚拟化或物理部署。此外,其还可以通过特有的多租户功能向单个客户域或多个客户提供服务。
当然,一个开放的通信平台要能够与多种其它厂商的技术进行整合和交互操作,最大可能的优化体验和性能。SIP是这种开放中的重要元素,但是除了SIP外,优化定向服务的不同软件架构也越来越重要。
对于开放的通信架构来说,开发出丰富的API很重要。这些API不能对客户进行限制,允许整合现有组件,以及进行更深层次的定制。
安全性不仅是统一通信平台的重要基础,同时也是执行更为复杂应用的基础。在应用中,来自统一通信平台的软件将内置在一系列业务应用中。如何进行保护呢?如果你的基础平台经常受到病毒、恶意软件、僵尸网络的侵害,那么评估你能向终端用户带来多少好处根本就不现实。
你的平台需要能够向用户提供上述一切,同时还要向用户提供一个适合他们角色和责任的界面。这些用户包括移动办公的雇员、在办公室办公的雇员、高协作性的团队以及ERP工作流中的雇员。对于个人来说,能够让用户根据他们的工作角色进行定制最为重要。
除了个人软件套件、电子邮件、即时通信或联系中心工具外,这也是企业所需要的功能。开放统一通信平台甚至还包括了垂直市场上所需的缝隙应用。在这一市场,特殊的软件平台是医疗保健集团或金融贸易公司的命脉。
这样案例表明,用户界面必须要被嵌入至整个应用生态环境中,以提供相似或一致的用户体验。
随着统一通信平台开始整合社交软件,以及向业务程序管理和人员互动管理等领域扩展,只有开放的通信平台才能满足这些新兴的需求,向用户提供额外的优势,和不同的用户体验。
【责任编辑: TEL:(010)】
内容导航&第 1 页: &第 2 页:
关于&&&&的更多文章
统一通信进一步发展了IP通信的概念,通过使用SIP协议(Session I
如何帮助客户定制现有IT投资?您会在ACI的全新思路中找到答案!
对于购票网站不断宕机,让许多购票回家的朋友们泪奔不
飞视美是知名网络设备制造商飞鱼星经过10年积淀,推出
燕山石化借助思科统一统一计算系(UCS)实现高效智能管
本书是《网管第一课》系列图书中的第一本,是专门针对高校和培训机构编写的,其主要特点是内容细而精、针对性强。书中内容全是经
51CTO旗下网站扫一扫下载手机客户端
扫描我,关注团购信息,享更多优惠
||网络安全
| | | | | | | | | | | | | | | |
||电子电工
汽车交通| | | | | | | | | |
||投资理财
| | | | | | | | | | | | | | | | |
| | | | | | |
| | | | | | | | | | | | | | | | | | |
| | | | | | |||
||外语考试
| | | | | | | | |
| 视频教程|
OpenCL编程指南(opencl领域公认的权威著作,由opencl核心设计人员亲自执笔)
定价:¥89.00
校园优惠价:¥64.08 (72折)
促销活动:
商品已成功飞到您的手机啦!快登录手机站看看吧!
下载客户端
> 微信关注“互动出版网”,便捷查询订单,更多惊喜天天有
原书名:OpenCL Programming Guide
原出版社:
ISBN:3上架时间:出版日期:2013 年1月开本:16开页码:404版次:1-1
所属分类:
  OpenCL核心设计人员亲自执笔,全面而深刻地解读了OpenCL规范和编程模型,公认的OpenCL权威著作!
注重实践,通过大量案例和代码演示了基于OpenCL编写并行程序和实现各种并行算法的原理、方法、流程及最佳实践!
OpenCL领域公认的权威著作,由OpenCL核心设计人员亲自执笔,不仅全面而深刻地解读了OpenCL规范和编程模型,而且通过大量案例和代码演示了基于OpenCL编写并行程序和实现各种并行算法的原理、方法、流程和最佳实践,以及如何对OpenCL进行性能优化,如何对硬件进行探测和调整。
《OpenCL编程指南》分为两大部分:第一部分(1~13章),从介绍OpenCL的核心思想和编写OpenCL程序的基础知识开始,对枯燥的OpenCL规范进行了深刻而系统的解读,旨在帮助读者全面、正确地理解OpenCL规范及其编程模型;第二部分(14~22章),提供了一系列经典的案例,如图像直方图、Sobel边界检测过滤器、并行实现Dijkstra单源最短路径图算法、Bullet Physics SDK中的布模拟、用快速傅里叶变换模拟海洋、光流、OpenCL与PyOpenCL结合使用,使用OpenCL完成矩阵相乘与稀疏矩阵矢量乘法等,目的是让读者通过案例熟练掌握编写复杂并行程序的方法和技巧。本书的附录收录了OpenCL规范定义的大量函数、命名常量和类型,可供程序员开发时查阅。
Aaftab Munshi,OpenCL核心设计小组的灵魂人物之一,同时他也是OpenCL、OpenGL ES 1.1、OpenGL ES 2.0规范的编辑,与DanGinsburg和Dave Shreiner合著了《OpenGLES 2.0 Programming Guide》。目前他任职于Apple公司。
Benedict R.Gaster,资深软件架构师,他的主要工作是为下一代异构处理器开发编程模型,具体工作是在包含CPU和加速器的新兴处理器(如GPU)上探索并行编程的高层抽象。他为OpenCL的设计做出了巨大贡献,在Khronos Group开放标准协会中他是AMD的代表。由于他在可扩展记录和变量的类型系统方面成绩卓著,因而获得了计算机科学的博士学位。
TimothyG.Mattson,资深并行编程专家,从20世纪80年代中期开始从事相关工作,一直持续到现在。在此期间,他使用过各种类型的并行计算机(矢量超级计算机、SMP、VLIW、NUMA、MPP、集群和多核处理器)。1993年加入Intel公司,专注于OpenCL相关技术的研究。他还是一位资深的技术作家,参与撰写了《Patterns for Parallel Programming》、《An Introductionto Concurrency in Programming Languages》等经典著作。他因自己在分子分散理论方面的工作获得化学博士学位。
James Fung,NVIDIA资深技术工程师,专注于图形硬件上的计算机视觉和图像处理的研究,已经从图形发展到通用计算,经验十分丰富。拥有多伦多大学的电子与计算机工程博士学位,在并行GPU计算机视觉和介导现实领域发表过多篇IEEE和ACM论文。
Dan Ginsburg,资深OpenGL和OpenCL专家,曾经在AMDT.作8年,是AMD技术部的高级成员,承担过多种工作,包括开发OpenGL驱动程序、创建桌面和手持3D演示应用,以及领导手持GPU开发工具的开发。他还曾在Still River Systems工作,为Monarch 250质子束放射线治疗系统开发GPU加速图像注册软件。目前在Boston儿童医院的新生儿神经影像和开发科学中心担任首席软件架构师,致力于使用OpenCL来提高神经影像算法的速度。他拥有Worcester Polytechnic学院的计算机科学学士学位和Bentley大学的MBA学位。
《OpenCL编程指南》
第一部分 OpenCL 1.1语言与API
第1章 OpenCL介绍2
1.1 什么是OpenCL,或者为什么需要这本书2
1.2 多核的未来:异构平台2
1.3 多核世界中的软件4
1.4 OpenCL的概念基础7
1.4.1 平台模型7
1.4.2 执行模型8
1.4.3 内存模型13
1.4.4 编程模型15
1.5 OpenCL与图形18
1.6 OpenCL的内容19
1.6.1 平台API19
1.6.2 运行时API20
1.6.3 内核编程语言20
  没有人否认现在是信息爆炸的时代,日常生活中需要处理的数据也日益增长。海量的数据带来了各式各样数据处理的需求,如网络浏览、平面或者3D图形加速、数据服务器、分布式云计算等,而现在各计算平台之间的兼容性却不容乐观。
  OpenCL 1.0规范在2008年12月浮出水面。OpenCL是Open Computing Language(开放计算语言)的缩写。设立OpenCL的目的就是为日益庞大的并行计算市场提供一个开放的、免费的行业标准。它让开发人员能够利用CPU、GPU等计算设备内部巨大的并行计算能力。OpenCL不仅得到了Apple等诸多大公司的支持,而且目前宣称支持OpenCL并参与其中的成员几乎涵盖了全球主要的处理器、计算芯片供应商,这一切要归功于OpenCL的开放、高度通用的设计原则。为了保证通用计算,OpenCL在五个方面进行了规定:系统调用全部的硬件资源;将C语言作为并行程序模型的基础,加快OpenCL程序的研发速度以及保证可移植性;做到与现有软件体系结构通用;实现硬件平台上的通用;提供承前启后,向前兼容的通用支持。
  尽管大多数人对OpenCL的并行计算和数据处理领域的突出地位有所了解,但对如何利用OpenCL规范编写复杂的并行程序还是一头雾水,不知如何下手。特别是,尽管OpenCL规范很全面,但从诸多繁杂的细节中找出直接需要的东西并不容易,这也让很多有心加入OpenCL编程队伍的人望而却步。
  不过,本书为OpenCL世界带来了福音。本书出自资深程序员之手,正是程序员需要的实用指南。本书第一部分介绍了OpenCL 1.1规范的全部内容,包括OpenCL的基本核心思想以及编写OpenCL程序的基础知识。第二部分给出了大量实际用例,可以从中了解OpenCL的各个方面在复杂应用中如何工作,学习如何在实际项目中使用OpenCL。
  正如作者们所说,“我们正处在一场计算变革当中,正如当年PC的出现。更准确地说,我们很有可能要迎接一场革命,因为如果没有并行软件,异构硬件提供的高度并行性就毫无意义。但事实上,在特定的小环境之外,并行软件相当稀缺”,所以“加入我们的行列吧”!读完本书,相信你能编写出可以合理分配计算负载的复杂并行程序,充分利用OpenCL实现性能优化。
  本书由苏金国、李璜、杨健康主译,乔会东、仝磊、王少轩、程芳、宋旭民、黄小钰分别对全书各章进行审阅。另外,姚曜、程龙、吴忠望、张练达、陈峰、江健、姚勇、卢釜、张莹参与了全书的修改整理,林琪、刘亮、刘跃邦、高强和王志淋统一了全书术语,并完善了关键部分的翻译。全体人员共同完成了本书的翻译工作。不过由于水平有限,译文肯定有不当之处,敬请批评指正。
  行业专家总喜欢戏剧性变化,不是通过改进现有产品来开发新产品,他们更喜欢“变革”,或者更好地定义一个“新模式”。当然,按照技术发展的方式,最终结果很少能像这些专家预期的那么戏剧性。
  不过,在过去的十年间,确实发生了一些革命性的变化。多核CPU的出现使得并行硬件无处不在。GPU不再只是专用的图形处理器,它们也成为重量级的计算引擎。另外,CPU和GPU的组合(也就是一般所称的异构平台)确实重新定义了计算的标准构成模块。
  我们正处在一场计算变革当中,正如当年PC的出现。更准确地说,我们很有可能要迎接一场革命,因为如果没有并行软件,异构硬件提供的高度并行性毫无意义。事实上,在特定的小环境之外,并行软件相当稀缺。
  为了与正在发生的(并行)异构计算变革同步,发动一场并行软件的革命,我们需要一个并行软件行业。不过,只有软件能够在平台之间迁移,既要保证跨开发商,也要保证跨代,这个行业才能发展壮大。解决之道就是建立异构计算的一个行业标准。
  OpenCL正是这样一个行业标准。OpenCL由Khronos Group(因OpenGL和其他标准而闻名)创建,最初萌生于软件开发商、计算机系统没计者(包括移动平台设计者)和微处理器(包括嵌入式处理器、加速器、CPU和GPU)制造商的一次合作。对于人们提出的问题:“在异构平台上编程时,如何保证现在创建的软件将来仍有效”,OpenCL给出了答案。
  OpenCL诞生于2008年,如今可在多种平台上由多个来源得到。它一直在稳步发展,以保持与最新的微处理器同步发展。在本书中我们将重点介绍OpenCL 1.1,全面介绍这个标准,并给出丰富的例子解释OpenCL在实际中的使用。
  本书读者对象
  本书出自程序员之手,同时面向程序员。对于要编写代码的人来说,这是一本非常注重实效的指南。我们认为读者已经了解C和C++(书中的某些部分要求有C++基础)。最后,我们还假设读者已经熟悉并行编程的基本概念。我们相信读者手边有一台计算机,可以编写软件,研究在书中学到的新知识。因此,本书提供了大量程序和代码段。
  我们会全面介绍OpenCL 1.1规范,并解释如何实现大量并行算法。学完本书后,你将能够编写复杂的并行程序,将工作负载分散到异构平台的多个设备上。你还将掌握OpenCL中性能优化的基础,了解如何编写软件,从而探查硬件,并相应地做出调整以得到最优性能。
  本书组织结构
  OpenCL规范大约有400页。这是一份晦涩、复杂的文档,其中满是乏味的具体细节。要想解释这个规范可不是件容易的事情,不过我们认为本书很好地做到了这一点。
  本书分为两部分。第一部分描述OpenCL规范。前两章介绍OpenCL的基本核心思想以及编写OpenCL程序的基础知识。然后开始系统地研究OpenCL 1.1规范。通过结合参考材料,并给出解释说明,使本书的风格有所改变。第二部分提供了一系列案例研究。通过这些简单的示例,可以了解OpenCL的各个方面在复杂应用中的工作方式,从而展示如何在正式的应用项目中使用OpenCL。下面给出更详细的介绍,帮助你了解本书。
  第一部分:OpenCL 1.1语言与API
  第1章:这一章高度概括了OpenCL。首先详细解释了为什么在可预见的将来异构并行平台将主宰计算领域,然后描述了OpenCL的核心模型和概念。在这个过程中,还将给出OpenCL中使用的术语,因此,即使你只打算快速浏览本书,把它作为一个OpenCL参考指南,这一章也很重要。
  第2章:真正的程序员要通过编写代码来学习。因此,作为对OpenCL介绍的补充,我们专门用一章来研究一个实际的OpenCL程序。通常在介绍一种编程语言时,首先会给出一个例子,在屏幕上输出“hello world”,这似乎已经成为一个惯例。但在OpenCL中,这是没有意义的(OpenCL根本没有输出语句)。在数据并行编程领域,与“hello world”对应的是另外一个简单程序:让两个数组逐元素相加。这个程序将作为这一章的核心。在这一章的最后,你会充分了解OpenCL,可以开始编写简单程序。我们强烈建议你立即着手编写自己的程序。只看书不动手编程,是无法学会一种编程语言的。动手写代码吧。
  第3章:从这一章开始,将系统研究OpenCL规范。要让OpenCL程序做些“有意思”的事情,首先需要找到可用的资源,然后准备好做有用的工作。换句话说,程序必须发现平台,为OpenCL程序定义上下文,并确定如何使用这些设备。这些重要内容都将在这一章介绍,并详细描述OpenCL平台APl。
  第4章:在OpenCL设备上运行的代码大多数情况下都使用OpenCLC编程语言来编写。在一个C99子集基础上,OpenCL C编程语言提供了内核有效利用OpenCL设备所需的支持,其中包括一组丰富的矢量指令。这一章将详细解释这种编程语言。
  第5章:OpenCL C编程语言API定义了一个庞大且复杂的内置函数集,将在这一章介绍。
  第6章:了解了用来编写内核的语言之后,接下来转向OpenCL定义的运行时API。首先介绍程序和内核的过程。要记住,OpenCL中程序一词有新的含义。在OpenCL中,程序专门指“动态库”,内核可以从中获取函数。
  第7章:这一章介绍缓冲区内存对象(1维数组),还会详细讨论子缓冲区。子缓冲区是OpenCL 1.1中新增的一个特性,因此有OpenCL 1.0经验的程序员会发现这一章尤其有用。
  过去几年间,由CPU和GPU组成的异构计算机为计算领域带来了一场革命。通过将工作负载的不同部分匹配到最适合的处理器,可以极大地提升计算机的性能。
  GPU等多核处理器的出现引发了这场革命。例如,现在可以购买一块每秒执行上万亿次浮点操作(teraflops)的图形卡。这些GPU专门设计用来渲染酷炫的图像,不过如果工作负载合适,这些GPU也可以用做高性能的计算引擎,来完成从科学计算到增强现实等一系列应用。
  人们很自然地提出一个问题:与传统的单核CPU相比,这些多核处理器为什么速度如此之快。最根本的驱动力来自创新的并行硬件。之所以并行计算比串行计算更为高效,是因为芯片本质上是并行的。现代芯片包含数十亿个晶体管。多核处理器将这些晶体管组织为多个并行处理器,分别由数百个浮点单元组成。多核处理器的速度提升还有一个重要的原因,这就是新的并行软件。要充分利用所有这些计算资源,就要求我们开发并行程序。由于软件和硬件带来的效率提升,使我们能够得到比单核CPU更大的每瓦特或每美元FLOP数。
  计算系统由硬件和软件共同组成。如果没有好的编程模型,硬件就没有多大用处。CPU的成功要归结于其编程模型的成功,具体体现为C语言及其后续语言。C语言很好地抽象了一个串行计算机。要充分利用异构计算机,我们需要新的编程模型能够很好地抽象一个现代并行计算机。可以参考图形领域成熟的技术,帮助建立异构计算所需要的新的编程模型。
  多年来,我一直对图形的编程模型很感兴趣,最早可以追溯到1988年。那时我是PIXAR的一名软件工程师,开发了一种RenderMan着色语言。十年后图形系统已经变得足够快,可以考虑为GPU开发着色语言了。通过与Kekoa Proudfoot和Bill Mark合作,我们开发了一种实时着色语言RTSL。RTSL在图形硬件上运行,可以将着色语言程序编译为像素着色程序(这是当今面向图形硬件的汇编语言)。后来BillMark加入了NVIDIA,在那里开发了Cs。最近,我与Tim Foley同在Intel工作,他开发了一种名为Spark的新的着色语言。Spark将着色语言提高到一个新的层次,可以抽象能提供镶嵌等新功能的复杂图像管线。
  在开发这些语言时,我很清楚GPU不仅仅可以用于处理图形数据。很多组织已经通过实验证明了图形硬件还可以用于图形以外的其他应用。这就催生了通用GPU(General―Purpose GPU,GPGPU)运动。通过使用图形库,对之前的展示实例进行调整。为了让GPU得到更广泛的使用,需要一个并不限定于图形的更通用的编程环境。为了满足这个需要,我们在斯坦福大学启动了针对GPU的Brook项目。Brook的基本思想是把GPU当做一个数据并行处理器。数据并行编程方法对于完成并行计算极为成功,通过Brook,我们能够展示在GPU上实现数据并行编程原语。Brook允许开发人员采用一种广泛使用的并行编程模型编写应用程序。
  Brook主要是一个概念验证项目。斯坦福大学的一名研究生lanBuck后来加入NVIDIA开发CUDA。CUDA在很多重要方面延伸了Brook。它引入了合作线程数组的概念,即线程块(thread block)。合作线程数组可以描述GPU核的局部性,执行相同程序的一组线程可以通过局部内存通信,并通过栅栏同步。更重要的是,CUDA为GPU Computing创建了环境,已经得到大量应用开发人员、中间件提供商和开发商的参与。
  开放计算语言(Open Computing Language,OpenCL)将GPU Computing的核心思想进一步延伸,带来了普适异构并行计算的新纪元。OpenCL由Khronos Group精心设计,并得到很多开发商和软件专家的支持。人们使用CUDA创建一个可以由多个开发商实现的软件标准时获得了很多经验,OpenCL的开发也得益于这些经验。现在OpenCL实现可以在广泛使用的硬件上运行,包括NVIDIA、AMD和Intel的CPU与GPU,还可以在基于DSP和FPGA的平台上运行。通过标准化编程模型,开发人员可以使用更多软件工具和硬件平台。
  关于OpenCL最令人兴奋的是,它不仅对已经完成的工作进行标准化,而且表现出一个积极群体正在为推进并行计算所投入的热情和努力。例如,OpenCL提供了在GPU上调度任务的创新功能。另外,OpenCL开发人员已经结合了任务并行和数据并行计算的最佳特性。希望OpenCL将来的版本有同样的创新性。与其前身OpenGL一样,OpenCL会在今后一段时间继续发展,开发出能提供更多功能的新版本。
  本书介绍了完整的OpenCL编程模型。合作者之一Aaftab是这个系统的灵魂人物。在他的号召之下,多位OpenCL核心设计人员加入,从而编写了这本容易理解的权威指南。欢迎来到异构计算的新世界。
  ―――Pat Hanrahan
  斯坦福大学教授
  “欢迎来到异构并行编程的新世界,凭借这本通俗易懂的权威指南,你将深入了解完整的OpenCL编程模型。”
  ――Pat Hanrahan,斯坦福大学教授
  第一部分OpenCL 1.1语言与API
  第1章OpenCL介绍
  第2章HelloWorld:一个OpenCL例子
  第3章平台、上下文和设备
  第4章OpenCL C编程
  第5章OpenCL C内置函数
  第6章程序与内核
  第7章缓冲区和子缓冲区
  第8章图像和采样器
  第9章事件
  第10章与OpenGL的互操作
  第11章与Direct3D的互操作
  第12章C++包装器API
  第13章OpenCL嵌入式简档
  第一部分OpenCL 1.1语言与API
  第1章OpenCL介绍
  第1章OpenCL介绍
  学习一种新的编程模型时,很容易迷失在繁杂的细节当中。总会有API和奇怪的新术语突然冒出来,这些新术语不仅增加了不必要的复杂性,而且特别容易混淆。关键是要从高层上有清楚的认识,这样可以提供一个路线图,在遇到困难时可以从中找到合适的解决方法。
  本章的目的就是帮助你建立这个路线图。首先,概述了OpenCL 1.1规范,并简要介绍了异构计算趋势,正是这一趋势促使OpenCL成为如此重要的一个编程标准。其次,描述OpenCL的底层概念模型,并用这些模型来解释OpenCL如何工作。此时,我们已经建立了OpenCL的理论基础,然后考虑OpenCL的组成。其中很关键的一个部分是OpenCL与图形标准的关系。最后,在这个OpenCL路线图中,我们会简要地介绍OpenCL标准与嵌入式处理器的关系。
  1.1什么是OpenCL,或者为什么需要这本书
770)this.width=770;' />
同类热销商品¥108.00¥81.00
订单处理配送
北京奥维博世图书发行有限公司 china-pub,All Rights Reserved阅读本文后已有0人给出评价,选你认同的表情后可看结果。
<span onclick='javascript:if(document.all){clipboardData.setData("Text",location.href);this.innerHTML="[文章地址已复制]";}'
class="btn">[与更多人共享]
休闲小游戏
新闻热点榜
新闻中心推荐
新游戏推荐25、谷俊丽:基于大数据的深度学习
嘉宾介绍:谷俊丽,博士学历,毕业于清华大学-美国University of
Urbana-champaign大学,在清华期间作为核心人员研发过超长指令字数字信号处理器,在美期间曾参与UIUC超级计算机上的研究工作,并工作实习于Google总部和创业公司Personify。现于AMD中国研究院高级研究员,从事异构计算平台、人工智能+Big
Data相关的研究。在计算机和高性能计算领域的国际顶级会议HPCA,Micro和Usenix
ATC上发表论文多篇。
&以下为分享实景全文:
&大家好,我是AMD中国研究院的研究员谷俊丽,带领AMD人工智能团队,研究大规模人工智能的在分布式硬件系统的实现和大规模物体识别的软件应用研究。今天主要跟大家分享:
&1. 目前业界主流的人工智能方法-深度神经网络学习模型
&2. 主流算法和应用分析
&3. 国内外主要的研究机构和目前进展
&4. 人工智能对系统设计的挑战
&5. AMD的研究实践及价值
&6. 基于大数据的人工智能的挑战和机遇
&第一个部分带有科普性质,讲解什么是深度神经网络和其原理。第二三部分是根据我平时的文献阅读和搜集的信息总结出来的,可供了解深度学习的主要应用和国内外都有什么研究正在进行。第四五两部分比较技术细节,做硬件系统的人可以多听听。第六部分是我个人根据在研究过程中的理解,和跟业界专家交流的经验,总结提炼出来的。人工智能是个比较复杂的算法,今天的讲稿都我在准备时尽量口语化,避免晦涩难懂,希望更多人能够理解。对该领域有研究的专家欢迎会后深入交流,有描述不准确的地方欢迎指正哈。
&一 Big Data +
深度神经网络
&人工智能是指让机器去认知、认识世界。这个过程毋庸置疑需要一定的算法放在计算机上来实现。最初的人工智能还是通过研究人员通过模仿人类来制定特定的认知和推理过程,21世纪出现了大数据,海量数据,结构复杂,种类繁多,然后人类定义的过程就不好使了。于是人们期待于希望机器自己能够从数据中学习,我今天讲的就是最近大火的基于深度神经网络的人工智能。
&深度神经网络是指我们在计算机上搭建一个很多层的神经网络,只需要制定多少层,并不需要给定具体的参数,计算机通过计算大数据来自动学习最终的网络参数,不一样的网络参数能够识别不同的物体。然后这个训练好的网络就可以自动识别物体了。深度神经网络的出现得益于大数据,因为数据量够大,计算机够强大,机器本身才能学习出各种复杂的特征。
&首先回忆一下什么是神经网络。
&神经网络在上世纪60年代提出,最初的神经网络非常简单,包括输入层,隐含层和输出层,共三层。输入和输出层通常由应用决定,隐含层包含神经元,隐含层跟输入和输出层之间的链接可供训练。通过训练神经网络实现从输入到输出的一个非线性映射过程。
&浅层学习是机器学习的第一次浪潮,在上世纪发生。深度学习是机器学习的第二次浪潮,正在兴起。
&2006年,加拿大多伦多大学教授、机器学习领域的泰斗GeoffreyHinton和他的学生在《科学》上发表了一篇文章,开启了深度学习在学术界和工业界的浪潮。深度神经网络,又称DNN,指包括3个层以上隐含层的神经网络,(现在主流的模型包含九个隐含层),通常每层都有上千上万级的神经元,整个网络有百万级至百亿级的参数空间,具有非常强大的学习能力和特征提取能力。看图一张:
&深度神经网络学习是近些年机器学习研究中的一个领军的方向,其本质在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本,最终认知真实世界。
&深度神经网络为什么这么强大?
&从算法角度上讲,没有任何人能够定义出一个由8层非线性函数、有万亿级参数,可以表达的公式或者算法,一是算法本身过于复杂,根本无法用通常的数学表达式去描述,一个是人类根据自己的理解去定义物体的特征,总是有限的特征,有限的表达力,一旦数据量变得非常大,场景变得复杂,人类定义的特征将不再好使。
&那么深度神经网络是如何做到的呢?
&这个是个技术关键点,希望大家通过今天的报告能够理解。深度神经网络是一个逐层提取特征的过程,并且是计算机从数据中自动提取,不需要人类干预其提取过程。
&深度神经网络,其本质思想就是堆叠多个神经元层,每个层都提取一定的特征和信息,这一层的输出作为下一层的输入。通过这种方式,就可以实现对输入信息进行分级表达了。以发现数据的分布式特征表示。以图像识别为例,第一层提取边界信息,第二层提取边界轮廓信息,然后轮廓可以组合成子部分,子部分组合成物体,这样一层层下来逐层提取特征,通过组合低层特征形成更加抽象的高层表示属性类别或特征,通过特征或者属性的不同组合来判定图片中是哪个种类的物体。
&下图显示的就是深度神经网络如何从底层的输入数据层,逐层提取边界、子部分以及组合成最后的物体模型的。请大家好好琢磨一下这张图,理解了这个你就理解了深度神经网络强大精髓的一部分。右边显示的是该过程本质上是模拟人类大脑的物体识别过程。
&深度神经网络在计算机上是如何训练呢?
&这个是个非常有意思的环节,神经网络是通过数据训练出来的,就是说开始的时候,那些万亿级的参数都是随机初始化的,这个网络一团糟,啥也不能识别。通过不停的给予数据,一遍一遍来训练,就能达到最终的识别模型,能够识别语音或者图像中的物体。酷吧。可见,数据是训练的关键,数据量要大,模型才能好,但是数据量大了,训练时间又很长。
&训练过程分为两种,一种是有监督的训练,比如数据加了标签,计算机知道正确答案。一种是无监督训练,只有数据,没有标签,不知道正确答案。无监督训练是对Big
Data很有实用价值了,你想啊,海量的实时数据,不可能都加上精准的标签啊。如果不加标签,机器就可以识别,那我们周围的世界机器就可以理解和认知了,就达到了人工智能的目的。目前,无监督学习还是一个待研究的问题,还未解决。
&毋庸置疑,Big Data +
深度神经网络,带领在人工智能的最新潮流和方向,被广泛应用于各种应用和问题上。现在做人工智能的,如果不懂DNN,那都有点不好意思出门说话。
&第一部分讲完了。接下来第二三部分是根据我平时的文献阅读和搜集的信息总结出来的,可供了解深度学习的主要应用和国内外都有什么研究正在进行。希望听完前三节,大家对人工智能的最新进展有了全面了解,今天的目的就达到一半了。
&二、主流算法和应用分析
&深度神经网络出现之后,被广泛研究应用于多种领域并取得了突破性进展。比如深度神经网络应用于语音识别将识别精度提升了20-30%,用于图像分类和识别,误差降低了10%,另外还用于OCR识别,信息检索,手写字识别,金融等等应用。
需要理解的是,DNN模型虽然都是多层神经网络,但是根据应用不同,其网络结构不一样,最常用的有三种模型MLP(multi-layer
perceptron,多层感知机),Autoencoder(自适应编码器)和CNN(convolutional neural
networks,卷积神经网络)。通常的网络复杂度是语音识别小于图像识别,大规模图像识别现在仍未研究重点,存在很多软件和硬件层挑战。我想主流的深度神经网络应用大家都很熟了,我接下来主要分享一些最新的学术论文中发表的应用,也是DNN模型在其他领域中的成功应用。
模型用于其他领域的应用
&DNN用于数据中心的功耗模型,Google已将深度神经网络用于服务器系统的功耗智能管理。AMD研究院也有相关研究,尚未公开发表。
&DNN用于计算机体系结构的设计空间探索,通常处理器的设计包含大量的设计参数,组成了庞大的设计空间,处理器设计的最终希望获得性能最优的参数配置点。如果采用传统的搜索的方法非常耗时,采用DNN的方法去自动学习参数变化带来的性能变化趋势,可以辅助设计人员选择设计参数,缩短设计周期,中科院计算所在体系结构的在国际会议上已经发表了文章。
&采用DNN识别医学图像中的病变,比如癫痫病,辅助医生进行临床诊断。一个有意思的点在于DNN可以识别医生识别不准确的,和医生没有注意到的异样点,辅助全面诊断。这个我个人认为非常酷,医生诊断失误会耽误病人性命,可以通过DNN来降低这种误诊风险。美国的大学和医院已经联合在研究了,中国目前不知道有没有相关的研究。
&采用DNN识别卫星图像中的珍稀物种,比如今年最新出来的学术文章中通过高清卫星图像在自然环境下的,来探测珍稀鸟类的巢居,以便于定位和统计该鸟类的数量。这个问题的价值在于,卫星图像实时探测,海量图片,人眼是无法逐个去识别和观测的哈。
&三、国内外研究机构和目前进展
&国外主要在做人工智能的有Google、Facebook、Microsoft、Amazon,、Netflix等,国内对他们的研究进展了解不是很深入,只能根据我搜集的信息大概讲讲。
&&#8210; Google ‘Brain’
project: 在2012多伦多大学的机器学习领域的泰斗Geoffrey Hinton和他的学生参加国际大规模图像识别竞赛
(Lsvrc),采用深度神经网络的方法将图像识别误差一下降低了10%,在业界引起震惊和轰动(10%的精度区别在图片识别领域是个鸿沟)。Google以迅雷不及掩耳之势重金收购了Geoffrey
Hinton和他的两个学生,致力于人工智能的研究。可惜Google具体在做什么我们并不清楚,只能简单说说公开的著名的
Google猫脸实验。
&Google猫脸实验是指:google建立了一个9层的深度神经网络,在16000个CPU组成的服务器上运行,然后让Youtube的视频作为神经网络的输入,在没有人工干预的情况下运行几天,结果,机器就学会了识别视频中所有的猫脸。这个实验的神奇和震惊之处在于没有人告诉计算机什么是猫脸啊,其实没有人告诉计算机任何东西,是它自己通过“看视频”学出来的。这就是Machine
learning的本质哈。当时Google猫脸实验被各方媒体火热报道了。
&&#8210; Facebook,
Facebook挖走了人工智能的第二个泰斗-纽约大学的Yann Le
Cunn,成立了人工智能实验室。具体做什么他们好像没有讲过,7月初Yann Le
Cunn来北京开会时讲过一些他们做的机器人以及图像实时识别的应用。Facebook聚集了世界上那么多人的照片,我猜在侧重图像识别和分类?期待着更多状态更新~
&&#8210; Microsoft,
在语音识别上和实时翻译上带领国际前沿,大家可能都知道。微软亚洲研究院也率先在国内展开研究深度学习上的研究并占据领先地位,他们不仅研究算法,也研究硬件系统。
&大概在两年前,微软研究院和多伦多大学的研究人员们取得了一项突破,利用模拟人脑行为的‘深度神经网络(DeepNeural
Networks)’技术,能让语音识别器更具辨别能力,其性能优于以往的方法。通过这种技术,我们让语音识别的错词率比以往的方法降低了30%,也就是说以前每4到5个词里面便有一个是错误的,而现在每7到8个词里才错1个,达到了人类可以直接利用的层面。基于此,微软研究了实时翻译。2013年微软首席研究官瑞克&拉希德(Rick
Rashid)在天津解释并演示了其在实时语音翻译上的重大进展,瑞克对该系统讲了大约1小时左右的英语以后,系统就可以用他的语音语调说普通话了。有兴趣的可以看看当时的视频,非常有意思。.cn/it/csj//.shtml
&顺便提一句,语音实时翻译技术下一步要被用于skype上面,实现各国语种无障碍通话。
Netflix是北美最大的在线电影点播系统,他们采用深度神经网络的方法来实现用户的电影推荐系统;Amazon也成立了人工智能实验室,他们好像通
过人工智能的方法分析用户行为,更有效实现商品推荐系统。
&国外的讲完了,该国内的啦。在国内,主要是BAT三家,这些都是我个人平时参加他们的报告和讲座后总结的,有我个人的理解成分。
百度,在2013年初就成立了深度学习研究院Institute of Deep Learning,
相继将深度神经网络模型用于10多项产品中,取得了很多突破性效果。2014年5月百度宣布BaiduBrain项目,称起正在搭建大规模系统用于模拟人脑的认知能力,并宣称其平台已具备2岁孩童的智力水平。百度是将人工智能作为它的一个增强科技核心力量的追求了,挖掘了大量的该领域的国内外人才。
&比如百度挖掘的人工智能领域的第三个泰斗-斯坦福的教授Andrew
Ng,在北美成立人工智能实验室,正在招兵买马,Andrew最近在公共场合讲过,他们以后将会利用百度的大数据攻克大规模物体的无监督识别以及自然语言的理解等难题。百度的深度学习研究院的总监于凯曾经在国际会议上讲过百度在学习大数据时面临的挑战,一个是如何有效处理不断增加的海量数据,二是分布式系统的可扩展性正面临瓶颈,这个挑战需要人工智能算法专家和硬件系统的专家联合解决。
&人工智能领域学术界的三个泰斗分别被Google,
Facebook和百度挖走,形成三家分立的局面,这三家公司又都具备大数据的宝贵资源,我们拭目以待其各自的未来突破哈。我个人认为肯定会有非常让人兴奋的研究成果和产业应用出炉,三家争鸣,希望能在算法角度大力推进人工智能领域的突破性演变。
Alibaba,阿里的产品大家都知道哈,淘宝、天猫、阿里金融等,阿里在14年6月在计算所讲过其大数据,有一些细节可以跟大家分享一下。阿里目前已经攒下了超过100PB的已处理过的数据,相当于一亿个GB大小,相当于4个西雅图中央图书馆。具体来说阿里的大数据,包括一下:总数量超过数十PB的用户数据和商品数据,每天新产生数十亿条用户行为日志,全网有几十亿的商品,几亿用户的状态数据。
&阿里在搜索和广告系统中采用了机器学习的方法,优化器CTR预估,搜索结果页排序以及个性化体系。阿里的性化体系中面临的挑战包括,大数据的稀疏性、长尾效应和大量的噪音,网购行为本身的复杂性,阿里在多样性和准确性面临双重挑战。
腾讯,语音识别、图片搜索、广告点击率预测以及微信的语音合成和自然语言理解等应用中。腾讯在最近的会议上指出其在人工智能在GPU平台上的并行实现已经初步搭建起来了,在小规模的CPU+GPU集群加速,效果貌似还不错。
华为在香港的诺亚方舟实验室也在做人工智能,具体现在做到什么程度不是特别清楚,没有太多公开的资料可以借鉴。个人感觉还是在研究阶段。
&前三节讲完了,不知道大家感觉如何啊?能够对人工智能的现状有个全面了解吗?第四五两部分比较技术细节,做硬件系统的人可以多听听。
&四、深度学习对系统提出的挑战
&Big Data +
深度神经网络的机器学习模型,带领了现在人工智能发展的方向,近几年在国内外引发了新一轮机器学习的热潮。由于其模型庞大,计算量非常大,模型训练时间经常要几个月的时间,单个计算机根本在短期无法完成,需要在分布式系统上通过并行计算来加速。现有主流的有基于CPU服务器的实现,和基于CPU+GPU的系统实现,下面来具体分析一下系统模型和各自存在的挑战。
&基于GPU集群的实现,这个当属Google大哥大啊,人家有的是机器,Google大神Jeff
Dean带领人马用16000个CPU,组成1000个计算节点搭建了一个大集群,做了著名的Google
猫脸实验。还有几家大互联网公司都有大规模的CPU集群,一个直接的实现都是先从已有集群开始。这种实现的缺点是需要大量的CPU资源,非常昂贵,这个小规模的公司,学术界的研究根部负担不起。
&Big Data +
深度学习模型本身包括大量的计算并行和数据并行,其实非常匹配利用GPU的硬件结构进行加速。2013年斯坦福的Andrew
Ng带领团队实现了一个16个节点CPU+GPU的集群,大大降低了系统造价和成本。不幸的是,该系统现在在解决大数据问题时也遇到了瓶颈问题。
下图显示了Andrew搭建的系统和其性能瓶颈。
&每个节点包括2个CPU和4个GPU,一共16个节点组成集群,每层的大量神经元的计算是完全独立的,可以并行进行。
&参考文献 Stanford Univ.
Andrew Y. Ng etc., “Deep learning with COTS HPC
systems”,International Conference on Machine Learning, 2013
CPU+GPU系统的瓶颈问题是由算法本身的并行切分造成的,这个问题比较复杂,今天可能讲不清楚。有感兴趣的私下讨论吧。
&五、AMD的研究实践和价值
&总结上面所述,Big
Data+深度神经网络带来的挑战包括多个层面:算法、应用以及硬件系统设计。AMD
DNN团队包括AMD中国研究院和工程团队联合而成,我们从实现加速、硬件系统搭建和大规模应用同时解决。
DNN项目致力于研发基于DNN的软件和硬件解决方案,在软件层面我们实现了主流的多种DNN模型和算法,正在搭建不同规模的语音和图像识别应用,系统设计涵盖两个方向,基于CPU+GPU的硬件解决方案,和基于APU的高密度系统前瞻性研究。AMD的DNN软件解决方案由OpenCL编写而成,OpenCL可以兼容在不同的异构平台上运行。今天时间有限,主要跟大家共享一下基于APU系统设计以及其相对于已有系统的架构优势。
&前面我们描述过,DNN的算法非常适合通过GPU加速,然而现在基于CPU+GPU的方式搭建的集群存在GPU存储空间受限和CPU-GPU之间通信代价太大。这个问题从硬件的角度来讲,揭示的是CPU和GPU的耦合程度太松了。AMD的APU架构很好的解决了这个问题
&APU是AMD将CPU和GPU整合到同一个芯片上的异构多核处理器,能够实现CPU和GPU的紧耦合和逻辑上的紧密协同合作。下张图显示了APU的体系结构和其架构优势。
&我们知道CPU的体积同一个CPU的大小,比GPU要小非常多,因此基于APU可以实现高密度的集群,在同样的空间内集成更多的CPU和GPU的计算能力,提高系统吞吐率,同时降低系统能耗。
&设计此系统光有APU还不够,还需要有专门定制的快速互联硬件和系统框架。AMD2012年收购了高密度server公司SeaMicro,使得我们具备了研制高密度APU系统的条件。下图显示采用高密度集成和定制互联我们可以在一个有限物理空间内,采用3D互联集成512个计算节点。该图显示的不是产品,而是示意图。
&总线访问,APU上有多个总线,根据不同的访问情况选择不同总线,AMDDNN研究小组,初步的研究结果显示APU集群系统相比于CPU+GPU集群存在的潜在优势如下:
&&APU系统在同等功耗条件下可以取得2.5倍加速比;在同等性能下可以节省2.5倍系统功耗;
&&APU系统在同等性能条件下可以节省1.8倍的造价;
&&在解决 Big Data问题时,
APU解决了CPU+GPU集群在的存储空间不够用和节点通信代价太高的两大瓶颈问题。
&因此我们看到了APU可以提供一个高密度低功耗的人工智能系统,这是AMDDNN团队的一个研究点之一,希望后续有更多成熟的研究成果跟大家共享。
&当然了,我们也在同时搭建基于AMD自己产品的CPU+GPU的分布式平台,已有相关公司采用我们的硬件解决方案。最后提一句,如何最有效的搭建人工智能依赖的硬件系统是一个学术研究课题,除了今天提高的高层次系统搭建方法,还有一些从更底层硬件进行的前瞻性探索和研究,比如在FPGA上的实现(百度和微软美国),设计专门的集成电路(中科院计算所的陈云霁老师设计神经计算机)。
&六基于大数据的人工智能的挑战和机遇
&第六部分是我个人根据在研究过程中的理解,和跟业界专家交流的经验,总结提炼出来的。供大家借鉴和讨论交流哈。
&现有的数据量虽然已经很大,但是还不够多,常见数据的冗杂,维度和多样化不够,不能涵盖真实世界可能出现的各种边界情况
&现有的分布式系统上的实现方法,节点间需要传输大量数据和参数,通信代价太高,当节点数目超过一定数量时,不能获得持续的加速比。分布式系统如何设计,需要DNN算法专家和系统专家共同协同解决,解决的方法可能既要修改算法使之跟底层硬件架构匹配,又要求系统专家设计计算能力强大的单机器,又要设计高密度整合、高效通信的服务器。
深度神经网络的人工智能模型,其数据量和计算量都非常大,经常需要几个星期甚至几个月的训练时间,势必要求并行训练以提高训练速度,但是多个节点间训练不同数据时如何协调和同步,可能需要从算法角度重新设计。
&人工智能的新浪潮将引领未来20年的技术和系统革命,这个浪潮首先在互联网公司掀起,由Google,
Facebook和百度形成的三家分立的局面正在如火如荼的进行研究。光有算法是解决不了最终问题的,硬件平台是大数据算法的enabler。硬件领域也需要抓住此时机,回答硬件系统如何设计具有人工智能的本领,这是系统研究人员面临的机遇。
&在这个方面,IBM的沃森处理器是一个好的研究成果,并且已经投入使用解决一些大数据的金融分析、实时语音翻译等应用,取得业界非常高的肯定和反响。非常值得学习,几年之后也许会出现更多类似沃森的智能机器或者“机器人”。
&非监督学习解决真实世界中超大规模物体的识别,通过使用不加标签的数据直接训练,在不需要人工模型干预的情况下学习大规模数据中的规律、模式和特征等,理解通常人类大脑不能直接提取和抽闲出来的问题,为人类所用,解决实际问题。充分挖掘大数据中隐藏的价值,为人类生活服务。
最后,有感兴趣合作的欢迎跟我们联系,AMD
DNN研究小组是研究院和产品部联合的一个项目,我们平时也跟互联网公司等合作,致力于研发DNN的软件解决方案和底层的硬件系统。我们初步的研究结果已经发表在2014年6月的Asian-Pacific
System(亚太地区系统峰会)上,后续还会有更多成熟结果发表,敬请关注。
&全部讲完,下面是提问时间。
&互动问答:
&王昊奋:打断一下,DNN相比shallow
model在功耗管理和体系结构设计方面,会多少优势呢?因为对这方面的论文不是特别了解,请@junli 说说
&谷俊丽:对于复杂的多核体系结构,有共享资源和核私有资源之分,传统的Shallow
模型不能很好的建模,模型的层次,取决于问题本身的层次和复杂度哈
&王昊奋:是因为表达能力不够么?具体的shallowmodel比较了哪些(SVM,
logistic regression, bayes network?)
&谷俊丽:不光是表达能力,是因为问题本身需要多层次来表达,MLP模型
&尚硕:隐约觉得系统内存负担比较重,需要堆砌更多内存,此时如果多系统并联时的系统通信成本,应该会多少抵消掉一些优势,内部速度相比PCI-E总线延迟低些、速度快些,但如果继续增加规模,隐约觉得可能会遇到更大的瓶颈。
&武新 :AMD的APU
是否已经商业化了?
&谷俊丽:已经商用了,现在主要用于桌面电脑,公司有倾向集成系统
&赖兆红:谷俊丽你们对前期数据,在训练前做过滤分析吗?
&谷俊丽:暂时还没有,只做预处理
&尚硕:预处理的程度是?进行完整的数据清洗、整理,还是只做简单的数据归集?
&谷俊丽:预处理包括:图像截取,移位,不同图像打成batch一起处理
&新疆武新:关于非标签的DNN,比如那个Google
猫的案例,我怎么感觉这是个鸡和蛋的问题。如果我们没有给系统提供任何关于猫的定义或描述,系统即便能识别出猫这个形状,怎么可能告诉我们这是猫哪?就像个小孩子,从来没见过猫,也没人告诉他猫是什么样,有一天他见到一个猫,是没有办法从嘴里说出这是猫的。
&谷俊丽:是google研究员在分析机器学习出来的特征时,看到了有神经元识别出来的是猫脸。
&huailin:弱弱问一个问题:您是系统/体系结构背景,还是AI/图像的?懂的真多。真心佩服。
&谷俊丽:@新疆武新,您这个问题其实非常sharp,一个好的神经网络训练完之后,不同的神经元代表不一样的特征,比如有的对猫脸,有的对人脸,有的对人的背影。
&尚硕:请问dnn中mlp、卷积等目前有比较系统化的应用方向么?
&俊丽:大家看看这张图片,就是学习出来的不同物体的特征,有人脸,汽车,大象等
&俊丽:MLP应用比较广泛,语音识别用的就是它;图像识别主要用卷积神经网络
&武新:我好像明白了:要先有一个训练后能识别锚脸的神经元网络,然后用它去识别具体图像,不断迭代下去,识别会越来越精准。是这样吧?
&谷俊丽:应该这么理解,神经网络学习到的是一堆各种各样的特征,有的物体可能一个特征能够描述,有的需要不同特征组合起来能够描述;输入的图像总类越多呢,网络越能知道什么物体需要什么特征组合来描述。
&谷俊丽:再多说一句,现在的图像识别能分类两万多种物体。现实世界的常见物体都能识别了
&董振江:类似于找最大公约数
Lai:今天的课题太有意义了对大数据 感谢@junli
&陈新河:今天技术够深,把群中搞技术的都唤醒了
&彭永辉 :MLP有overfit
问题,卷机网络学动态数据好。NN对输入敏感,所以预处理部分的作用异常重要。
&俊丽:一个主流模型可能有十亿个参数,可以表达很多物体的,因为里面可能有亿亿个神经元,各种互联
&卿刚:APU的物理尺寸如何?集群上的并行计算编程环境易用吗?@AMD谷俊丽
&谷俊丽:现在的APU跟传统的CPU大小一样,看不出来区别;以后未必;编程环境用的是OpenCL,AMD的GPU和APU都用OpenCL,OpenCL可以运行在多种异构平台上,多家公司都在支持OpenCL,NVidia平台上也可以运行,亿亿的神经元,具体数目可能不准确,但是人类大脑神经元数目远比我们现在的深度神经网络要大的多,所以才有强大的学习能力,推理\归纳能力。
&新疆武新: OpenCL 可以和C/C
混搭使用吗? 是不同的进程空间吧?
&谷俊丽:OpenCL可以混合C、C++
&Brian Lai: @junli
是不是一种类别,就需要一个neural network 模型呢?还是都放在一起?
&谷俊丽:都在一个模型中
MLP有overfit 问题,卷机网络学动态数据好。NN对输入敏感,所以预处理部分的作用异常重要
&卿刚:感觉Nvidia这类公司,可能要重金请你,因为技术创新可能省掉一张卡呀
&追逐自由:@junli
这个介绍很有意义,既从水平层面步道终生,让所有人都知道高大上的技术是什么,又在垂直层面介绍深度,还指出多条大道找未来。厉害!符合阮教授期望的学术/技术对接企业/商业/业务的目的。
&谷俊丽:@YH@Peng,欢迎交流哈
&夏明武: @junli
在北大现场我邀请Yann
LeCun到中国发展,如Ng一样。燕大侠表示目前在Facebook工作很愉快,暂时不考虑来中国发展。但他表示不排除将来会来北京发展。他也很看好中国这个大市场。
APU计算最难的是任务的划分。并行粒度的把握很难。最后估计还是经验。
Wu:人类的大脑为什么能够识别多种物体,这个问题更fundamental?
的确,人类的大脑well-organized的程度远不是电脑所能比拟的。什么时候请一个或一批pure Neuroscintist or
Computional Neuroscientist来讲一讲,或许能激发出重大的、真正原创性的成果. pure
Neuroscientist . 目前人类对大脑的认识实在太肤浅
Lai:如果认识了大脑,那危害比核弹严重多了
&黄磊:电脑的图像识别只是对对象非属性的识别,例如猫脸识别,机器能识别出重复出现的猫脸,但不能知道猫脸和其他猫科动物之间的关系。ontology与有监督识别的图像处理结合起来,是一个方向。基本本体模型建立之后,可以依靠机器学习扩展,包括本体概念的扩展和之间的关系。是语义分析的基础,也是决策支持、规划分析、企业资源调度的基础之一。
&Brian Lai :@黄磊
是的这对大数据的应用扩展非常具有现实意义
&黄磊:是的,这是机器思维的方法。需要机器硬件的进化的支撑。今天谷俊丽的报告是基于深度神经网络学习这一机器图像识别的思维方法,提出的机器进化方法。呵呵,一己之见。领域本体就很难建设,跨领域本体就更难了。尝试研究过2个领域,作为语义分析、智能调度的基础。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 opencl openmp 的文章

 

随机推荐