[从0到1]关于深度学习,这里比你想的还要全

youhaofy 7年前
   <p>作为目前计算机科学领域最前沿和最具神秘色彩的学科,自 2006 年以来,人工智能领域随着云计算对大数据的并行处理能力的支持,其算法也取得突破性进展,这个算法就是深度学习(Deep Learning)的相关理论。</p>    <p>特斯拉自动驾驶、Face++人脸识别、Apple Siri、谷歌翻译……这些我们所耳熟能详的创举,其实皆为深度学习的成功应用场景。</p>    <p>大数据的积累、算法的改进、硬件的提升,使得人工智能 已经在很多细分的领域成为专家,辅助人类甚至超过人类。那么,如何掌握深度学习,你又是否真的了解深度学习呢?</p>    <p>接触一个新的领域,第一步是尽快 了解全貌并且搭建出相应的知识体系 , 接下来就让我们详细地看一下深度学习的知识提纲,在本文中将先对深度学习的开发技能、开源框架等做一详解:</p>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/64cc934e5691efdd6ee42582ef298663.gif"></p>    <p>【深度学习开发语言】</p>    <p>深度学习开源项目中,基本是用 python和C++两大类基础开发语言完成的 ,从部署成本看,众多机器学习的框架都支持Python API。Python已经成为机器学习的第一语言,至于为什么,知乎(https://www.zhihu.com/question/30105838?sort=created)中有非常不错的解释。</p>    <p>要做更深入的开发,那么C++开发就是必要的技能。微软的CNTK则是依据其C++开发环境完成的开源项目,目前看也是性能最好的开源平台,同时GPU相关的基础开发架构CUDA类库也是需要C++的技术。</p>    <p>此外R语言和matlab是更容易学习上手的专业数学分析的工具语言。 R语言是开源项目,较适合个人研究者;matlab则是功能强大的商业应用系统,部署成本较高。</p>    <p>【并行计算为你加速】</p>    <p>矢量化编程技术是提高算法速度的一种有效方法,神经网络等数学模型中有大量矩阵计算,利用GPU的众核体系结构包含数千个流处理器,可将矩阵运算并行化执行,大幅缩短计算时间。 随着NVIDIA、AMD等公司不断推进其GPU的大规模并行架构支持,面向通用计算的GPU已成为加速并行应用程序的重要手段。NVIDIA公司的并行架构平台CUDA开发是进阶掌握的技能。</p>    <p>这里附上一份英伟达的CUDA官方开发指南:</p>    <p>http://www.nvidia.cn/object/cuda_education_cn_old.html</p>    <p>云计算的发展推动了大数据和人工智能的应用,涉及到超大规模数据的深度学习应用,计算集群Spark等相关架构技术则应该是必备的技能。</p>    <p>Spark的官方api文档,支持java,scala,R,python四种语言,供参考:</p>    <p>http://spark.apache.org/docs/latest/api.html。</p>    <p>【深度学习开源框架】</p>    <p>深度学习的开源框架有TensorFlow、CNTK、Torch、Caffe、Theano、Mxnet等。</p>    <p>TensorFlow和CNTK由于有谷歌和微软的后续技术支持,可以作为研究学习的开发工具平台。</p>    <p>zer0n和bamos在GitHub上发表了一篇文章,对Caffe、CNTK、TensorFlow、Theano和Torch等深度学习工具从网络、模型能力、接口、部署、性能、架构、生态系统、跨平台等方面做了比较。</p>    <p>如下是翻译的相关内容,可以初步了解各框架的优劣:</p>    <p>http://www.infoq.com/cn/news/2016/01/evaluation-comparison-deep-learn?utm_campaign=infoq_content&</p>    <p>附上tesorFlow的官方学习教程,供参考:</p>    <p>https://www.tensorflow.org/versions/master/tutorials/index.html</p>    <p>另外还有Github上微软CNTK的资源和学习资料:</p>    <p>https://github.com/microsoft/cntk</p>    <p>Torch、Caffe、Theano也是业内常用的人工智能的开源框架,基于这些框架可以很容易搭建机器学习的平台。至于相关开源架构的学习资料,Github上面有一份非常详尽的学习路径:(https://github.com/JustFollowUs/Machine-Learning) </p>    <p>【深度学习的广阔应用前景】</p>    <p>互联网与物联网大数据的产生与分析促进了AI的方法发展完善和应用的实现;云计算服务为AI提供可靠的、超大规模的计算能力,并使AI计算开始成为服务输出。</p>    <p>现在以深度学习为代表的人工智能已经跳出学术界的研究框架, 深度学习在图像/语音识别、自然语言处理、数据挖据等基础应用领域与产业结合的业务中取得了很大的突破。</p>    <p>深度学习在金融行业领域也取得了很多成功的应用,在 市场预测、量化投资分析、研报解析、舆情分析、风险评估、智能客服等等都可以应用到深度学习相关方法。</p>    <p>我们要理解深度学习模型适用的业务数据场景,将深度学习的回归预测、分类和聚类以及关联规则等基本应用方法同金融业务的需求相结合起来,针对金融行业的各细分应用业务场景,采用相应的AI模型解决问题。</p>    <p>投资者从金融市场中获取到的数据差别越来越小,能否从中挖掘到机会,取决于是否拥有足够好的模型和算法。从科技前沿技术中获取先进的方法和思路,是量化投资者获取灵感的重要手段。</p>    <p>人工智能与传统行业相结合造成了前所未有的裂变,将颠覆社会经济和生活,AI也被称为第四次工业革命的基石。在未来5-10年之内,专业领域的定向智能化将是AI主要的应用发展方向。</p>    <p>后续如果仿生的人脑芯片等硬件架构能有所突破,运算能力有极大提高,则专用智能将逐步进化成为跨场景跨上下游应用的通用智能。在这过程中,深度学习和神经网络将扮演重要的角色。</p>    <p>如果说机器是人类手的延伸,交通工具是人类腿的延伸,那么人工智能就是人类大脑的延伸,而正是这些黑科技在一点一点重塑我们的生活。</p>    <p> </p>    <p>来自:http://rdcqii.hundsun.com/portal/article/668.html</p>    <p> </p>