Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >深度学习理论篇之 ---- 开山之石

深度学习理论篇之 ---- 开山之石

作者头像
用户5410712
发布于 2022-06-01 11:43:04
发布于 2022-06-01 11:43:04
3900
举报
文章被收录于专栏:居士说AI居士说AI

深度学习(DL, Deep Learning)是机器学习(ML, Machine Learning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能(AI, Artificial Intelligence)。

深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。

深度学习在搜索技术,数据挖掘,机器学习,机器翻译自然语言处理,多媒体学习,语音,推荐和个性化技术,以及其他相关领域都取得了很多成果。深度学习使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。

前言

在深度学习理论篇的上一次文章中,我们从总体上对深度学习、人工智能、机器学习进行了了解和他们的关系,并着重阐述了深度学习的现有方向和主流网络。今天的文章将继续铺开深度学习的理论基础,我们从零开始,不对,也不能说完全的从零开始,还是得具有一定的基础,不然,学起来还是有点吃力,一起来看看今天的文章吧!

、理论基础

1.1 专业基础

由于深度学习学科的特殊性和专业性,我们来看看学习深度学习的专业基础,何谓专业基础呢?通俗一点就是之前的专业是什么类型的?基础怎么样?之前的专业决定你对深度学习的促进作用,说到这个问题,我们要先了解深度学习细节部分,总的来说,深度学习=数学+计算机+逻辑思维能力。其实数学已经包括了一部分逻辑思维能力,但是逻辑思维能力并不是数学就可以完全概括的,逻辑思维能力可以在一定程度上决定你对深度学习的理解能力和今后的学习境界,通常来说,基本的逻辑思维的可以从高中到大学本科开始的,而这个时候,你的专业就显得特别重要了,可以单纯的想想,如果你的大学是文科专业,比如,音乐,艺术,管理等专业的话,可能逻辑思维能力得到锻炼的机会就较少,因此,如果以这样的文科专业进行深度学习的学习的话,可能有一点吃力,花费的时间也较长,但是也有不乏优秀者,学的很快。而这个问题面对理科专业的学生,如,电子,计算机,电气,机械等等专业,他们的逻辑思维能力就占据了优势,本身大学的专业基础课大部分是与数学、编程等相关的,特别是授课知识与实验大部分都是需要进行逻辑推理的,因此,他们的逻辑能力是一直在锻炼的,对于这样专业的学生来书,进入深度学习的话,正常情况下会学的快一点

一句话概括:专业基础决定逻辑思维能力,逻辑思维能力决定深度学习的起始速度和最终境界,尤为重要,因此,踏上深度学习的同学最好是理工科的学生,当然,文科的学生也不例外,有志者事竟成。

1.2 数学基础

深度学习的早期存在其实是数学的的不断推进,因此,数学能力是深度学习的基石也是以后更加高效算法开发的前提,举个简单的例子,会一般的数学,那么可能对于深度学习你就只会用,只会改,但是如果是高深的数学,那么,深度学习对你来说可能以为创造和超越,而不仅仅是会用。

就目前而言,深度学习的数学基础为:大学数学(主要是微积分和线性代数+概率论等等)+研究生数学,例如,深度学习的基础算法之一的BP算法,主要思想就是大学微积分的导数和偏导,梯度等等,这部分知识对于一个合格的大学生来说是必须要掌握的,也是深度学习入门的基础,否则后期进步空间有限,而研究生数学则是入进入深度学习其他领域的基石,例如,想要进如强化学习,你可能要先学习排队论等等。

二、计算机基础

2.1 硬件基础

说到硬件基础,其实是一个痛点,为什么这么说呢,因为深度学习的硬件配置要求比一般的办公硬件要高,CPU+内存条+显卡+固态都要给力才行,至于为啥没需要用到配置较好的硬件呢?深度学习有一个特点,大数据和训练,因此训练的时间快慢就决定了硬件的选择方向,而其中最重要的则是显卡,因为深度学习需要用到显卡才能达到加速的功能,否则你的模型可能需要训练一天,而别人的可能几个小时就搞定了,而且深度学习需要调试很多参数才能得到较好的模型,参数的每一次更改就是一次新的训练,所以,一个好的深度学习模型的诞生,无一不是经过多次的调试和较长时间的训练才能得出的结果,这一途,很少有捷径一说,硬件基础,深度学习之重器也!

2.2 编程基础

好的模型,好的算法,不光停留于思想,行驶于纸笔,而更应该看到实际的效果,深度学习的算法实现必然离不开计算机语言,因此,为什么说专业基础特别重要了吧,因为,编程基础可能就来自于你的专业基础了,如今的深度学习,编程基础主要是python、C++两门语言,Python是如今最受欢迎的语言,深度学习的很多网络都是用Python语言来实现的,而C++则多用于工业界的落地,一个好的深度学习算法诞生可能是用Python编写代码的,但是应用在实际的场景时通常会采用C++重写代码,便于后期维护,集成和嵌入等等。

因此,如果大学的时候就拥有了编程基础,那么对于深度学习将会是很大的助力,这一点对于计算机、电子等专业的同学来说,十分具有优势,毋庸置疑,期待深度学习遇见更好的你们。

2.3 深度学习框架

深度学习的广泛使用和传播,开源框架在一定深度上起到了推动作用,目前的深度学习大多数是基于几个著名的开源框架实现的, 这里主要介绍三个平台。

1.Tensorflow

TensorFlow™是一个基于数据流编程(dataflow programming)的符号数学系统,被广泛应用于各类机器学习(machine learning)算法的编程实现,其前身是谷歌的神经网络算法库DistBelief 。

Tensorflow拥有多层级结构,可部署于各类服务器、PC终端和网页并支持GPU和TPU高性能数值计算,被广泛应用于谷歌内部的产品开发和各领域的科学研究 。

TensorFlow由谷歌人工智能团队谷歌大脑(Google Brain)开发和维护,拥有包括TensorFlow Hub、TensorFlow Lite、TensorFlow Research Cloud在内的多个项目以及各类应用程序接口(Application Programming Interface, API) 。自2015年11月9日起,TensorFlow依据阿帕奇授权协议(Apache 2.0 open source license)开放源代码 。

2. Keras

Keras是一个由Python编写的开源人工神经网络库,可以作为Tensorflow、Microsoft-CNTK和Theano的高阶应用程序接口,进行深度学习模型的设计、调试、评估、应用和可视化 。

Keras在代码结构上由面向对象方法编写,完全模块化并具有可扩展性,其运行机制和说明文档有将用户体验和使用难度纳入考虑,并试图简化复杂算法的实现难度 。 Keras支持现代人工智能领域的主流算法,包括前馈结构和递归结构的神经网络,也可以通过封装参与构建统计学习模型 。在硬件和开发环境方面,Keras支持多操作系统下的多GPU并行计算,可以根据后台设置转化为Tensorflow、Microsoft-CNTK等系统下的组件 。

3. Pytorch

PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序。2017年1月,由Facebook人工智能研究院(FAIR)基于Torch推出了PyTorch。它是一个基于Python的可续计算包,提供两个高级功能:1、具有强大的GPU加速的张量计算(如NumPy)。2、包含自动求导系统的的深度神经网络。

PyTorch的前身是Torch,其底层和Torch框架一样,但是使用Python重新写了很多内容,不仅更加灵活,支持动态图,而且提供了Python接口。它是由Torch7团队开发,是一个以Python优先的深度学习框架,不仅能够实现强大的GPU加速,同时还支持动态神经网络,这是很多主流深度学习框架比如Tensorflow等都不支持的。

PyTorch既可以看作加入了GPU支持的numpy,同时也可以看成一个拥有自动求导功能的强大的深度神经网络。除了Facebook外,它已经被Twitter、CMU和Salesforce等机构采用 。

关于深度学习平台的实践,我们在代码实践环节会进行讲解,主要设计Tensorflow和Keras框架,大家可以先进行了解,我们我们再来深入。

结语

深度学习的基础分享到此结束了,我们从理论基础与计算机基础出发,较为认真的分析了深度学习之路需要用到的数学基础,专业基础,硬件基础等等,由此说明,入门深度学习需要一定的条件,不是可以随便就可以入门的,但是,我依旧坚信,不管做什么研究和学习,兴趣和坚持是永远的动力和支撑,深度学习这一门新兴学科,是属于全人类的,任何人都可以自由,开放的可以学习,没有国籍,种族,性别,社会地位的限制,期待,深度学习的路上,遇见更好的,你们,我们!

编辑:玥怡居士|审核:小圈圈居士

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-08-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IT进阶之旅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
如此多的深度学习框架,为什么我选择PyTorch?
2017年1月,Facebook人工智能研究院(FAIR)团队在GitHub上开源了PyTorch,并迅速占领GitHub热度榜榜首。
博文视点Broadview
2020/06/11
1.9K0
如此多的深度学习框架,为什么我选择PyTorch?
机器学习者必知的 5 种深度学习框架
本文为雷锋字幕组编译的技术博客,原标题 The 5 Deep Learning Frameworks Every Serious Machine Learner Should Be Familiar With,作者为James Le。
AI研习社
2018/07/26
9730
机器学习者必知的 5 种深度学习框架
深度学习(二)框架与工具:开启智能未来之门(2/10)
深度学习框架在人工智能领域中扮演着至关重要的角色,堪称引领智能变革的利器。随着人工智能技术的飞速发展,深度学习框架不断崛起并迅速壮大。
正在走向自律
2024/12/18
2370
深度学习(二)框架与工具:开启智能未来之门(2/10)
蔚来数字座舱多模交互研发团队等你来拿Offer!
关注并星标 从此不迷路 计算机视觉研究院 公众号ID|ComputerVisionGzq 学习群|扫码在主页获取加入方式 计算机视觉研究院专栏 作者:Edison_G SAIT-China Lab是三星综合技术院(Samsung Advanced Institute of Technology)在海外的8个研究机构之一,于2008年6月在北京成立。 部门介绍 蔚来数字座舱软件团队负责汽车智能语音对话系统、舱内视觉和交互基础算法,座舱平台系统软件,车载信息娱乐软件等所有数字座舱相关的软件研发工作。软件
计算机视觉研究院
2022/04/02
1.2K0
蔚来数字座舱多模交互研发团队等你来拿Offer!
常见深度学习框架对比
目前研究人员正在使用的深度学习框架不尽相同,有TensorFlow、Caffe、Theano、Keras等,常见的深度学习框架如下图所示。
SeanCheney
2019/04/09
1.6K0
常见深度学习框架对比
从PyTorch到Mxnet ,对比7大Python深度学习框架
选自kdnuggets 作者:Madison May 机器之心编译 参与:王宇欣、李亚洲 选择什么深度学习框架一直是开发者非常关心的一个话题,而且深度学习框架之间的「战争」也越来越激烈。过去一段时间,机器之心发过多篇机器学习框架的对比文章,但随着 Python 逐渐成为机器学习社区最受欢迎的语言,支持 Python 的深度学习框架的性能也值得关注。Indico Data Solutions 的 CTO Madison May 根据他们公司在产品和开发过程中的经验对 7 大 Python 深度学习框架进行了
机器之心
2018/05/07
2.3K0
入门大爆炸式发展的深度学习,你先要了解这6个著名框架
Theano是在BSD许可证下发布的一个开源项目,是由LISA集团(现MILA)在加拿大魁北克的蒙特利尔大学开发的,其是以一位希腊数学家的名字命名的。
IT阅读排行榜
2019/08/05
8140
入门大爆炸式发展的深度学习,你先要了解这6个著名框架
了解机器学习/深度学习常用的框架、工具
scikit-learn 官方文档:https://scikit-learn.org/stable/#
叶庭云
2024/05/25
1.9K0
灵魂追问 | 教程那么多,你……看完了吗?
机器之心整理 参与:路雪、蒋思源 2017年,人工智能技术出现了很多新的技术和发展,在这一年中机器之心发布了很多教程类文章,有适合入门学习者的,有适合已经具备专业知识和实践经验的从业者的;有关于语言的,有关于框架的,有关于硬件配置的,甚至还有关于猫片、漫画的…… 教程那么多,你……看完了吗? 本文对这一年来机器之心发布的教程进行总结,共分为 What 和 How 两大部分,在两大板块下又进行细分,目录如下: What 概念 机器学习基础 深度模型基础 强化学习基础 数学 How
机器之心
2018/05/10
6.3K0
8个深度学习框架
随着越来越多的企业希望扩大其运营规模,它们已成为接受机器学习和预测分析的必要条件。人工智能与正确的深度学习框架相结合,真正放大了企业在其领域内可以实现和获得的整体规模。
February
2018/12/04
1.4K0
Python 向人工智能方向发展的技能树
有不少同学学习 Python 的原因是对人工智能感兴趣,有志于从事相关行业。今天我们来聊聊这个方向所需要的一些技能。
Crossin先生
2018/07/24
1.1K0
2017 深度学习框架发展大盘点——迎来 PyTorch,告别 Theano
深度学习是机器学习中一种基于对数据进行表征学习的方法,作为当下最热门的话题,谷歌、Facebook、微软等巨头纷纷围绕深度学习做了一系列研究,一直在支持开源深度学习框架的建设。 深度学习是机器学习中一种基于对数据进行表征学习的方法,作为当下最热门的话题,谷歌、Facebook、微软等巨头纷纷围绕深度学习做了一系列研究,一直在支持开源深度学习框架的建设。 过去一年间,在这些巨头的加持下,深度学习框架格局发生了极大改变:新框架横空出世,旧的框架也逐渐退出历史舞台,而框架与框架之间的联系也更加紧密,生态更为开放。
AI研习社
2018/03/16
1.3K0
2017 深度学习框架发展大盘点——迎来 PyTorch,告别 Theano
详解 6 大主流深度学习框架
导读:近几年,随着深度学习的爆炸式发展,相关理论和基础架构得到了很大突破,它们奠定了深度学习繁荣发展的基础。这其中涌现了几个著名的深度学习平台,本文将对这些平台进行简要介绍。
IT阅读排行榜
2022/03/11
4.7K0
详解 6 大主流深度学习框架
原创 | 让你捷足先登的深度学习框架
本文介绍了几种非常有用的深度学习框架、它们的优点以及应用,通过对每个框架进行比较,研发人员了解如何有选择地使用它们,高效快捷完成项目任务。
数据派THU
2023/03/29
5560
原创 | 让你捷足先登的深度学习框架
九大深度学习框架
开源的深度学习神经网络正步入成熟,而现在有许多框架具备为个性化方案提供先进的机器学习和人工智能的能力。那么如何决定哪个开源框架最适合你呢?本文试图通过对比深度学习各大框架的优缺点,从而为各位读者提供一个参考。你最看好哪个深度学习框架呢? 现在的许多机器学习框架都可以在图像识别、手写识别、视频识别、语音识别、目标识别和自然语言处理等许多领域大展身手,但却并没有一个完美的深度神经网络能解决你的所有业务问题。所以,本文希望下面的图表和讲解能够提供直观方法,帮助读者解决业务问题。 下图总结了在 GitHub 中最受
朱晓霞
2018/04/18
1.1K0
九大深度学习框架
译文:Python深度学习框架评价
原文链接https://indico.io/blog/python-deep-learning-frameworks-reviewed/ 麦迪逊月 - 2017年1月31日 ---- 我最近偶然发现了我在“神经网络的最佳python库”这个主题的一个旧的数据科学堆栈交换的答案,它让我深感python深度学习生态系统在过去的两年半内的快速发展。我在2014年七月推荐的一个库pylearn2,现在已经不再被积极地开发和维护,并且一大批深度学习的库已经占据它的位置。其实每一个库都有它的优势和弱点。我们已经使
小莹莹
2018/04/19
1.3K0
译文:Python深度学习框架评价
掌握深度学习,为什么要用PyTorch、TensorFlow框架?
【导读】如果你需要深度学习模型,那么 PyTorch 和 TensorFlow 都是不错的选择。
AI科技大本营
2019/09/05
1.5K0
深度学习轻松学:如何用可视化界面来部署深度学习模型
翻译 | AI科技大本营 参与 | 王赫 上个月,我有幸结识了 DeepCognition.ai 的创始人。 Deep Cognition (深度认知) 建立的深度学习工作室,为很多准备部署深度学习框架和采用人工智能技术的机构打破了诸多难以逾越的障碍。 究竟什么是深度学习? 在我们说明Deep Cognition是如何简化深度学习和人工智能之前,先让我们定义一些深度学习的主要概念。 深度学习,它的核心是用连续"层状"结构来逐级递进的学习有意义的特征表示,其作为机器学习的一个特定的子研究领域,现已成为
企鹅号小编
2018/01/23
2.4K0
深度学习轻松学:如何用可视化界面来部署深度学习模型
让你捷足先登的深度学习框架
大数据文摘授权转载自数据派THU 作者:陈之炎 对于据科学的初学者来说,利用开源的深度学习框架,可以大幅度简化复杂的大规模度学习模型的实现过程。在深度学习框架下构建模型,无需花费几天或几周的时间从头开始编写代码,便可以轻松实现诸如卷积神经网络这样复杂的模型。在本文中,将介绍几种非常有用的深度学习框架、它们的优点以及应用,通过对每个框架进行比较,研发人员了解如何有选择地使用它们,高效快捷完成项目任务。 深度学习框架概述 深度学习框架是一种界面、库或工具,它使编程人员在无需深入了解底层算法的细节的情况下,能够更
大数据文摘
2023/02/23
7140
让你捷足先登的深度学习框架
干货 | 5个常用的深度学习框架
对于学习数据科学的同学来说,从头开始实现神经网络,会让你理解很多有趣的东西。但是,我并不认为在真实数据集上构建深度学习模型是个明智的做法,除非你有数天或数周的时间来等待模型的构建。那么对于绝大部分无法获得无限资源的人来说,使用易于使用的开源深度学习框架,我们可以立即实现如卷积神经网络这样的复杂模型。
磐创AI
2019/05/05
2.1K0
干货 | 5个常用的深度学习框架
推荐阅读
相关推荐
如此多的深度学习框架,为什么我选择PyTorch?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档