关于 ARTS 的释义 ——
每周完成一个 ARTS:
● Algorithm: 每周至少做一个 LeetCode 的算法题
●Review: 阅读并点评至少一篇英文技术文章
● Tips: 学习至少一个技术技巧
● Share: 分享一篇有观点和思考的技术文章
主页传送门: 传送
深度学习是机器学习领域的一个分支,它是一种基于人工神经网络的学习方法,旨在让计算机模仿人类大脑的神经
结构和学习方式,从大量数据中学习并提取高层次的抽象特征,从而实现对复杂问题的解决和预测。
深度学习中的"深度"指的是神经网络的层数,通常包含多个隐藏层。这些隐藏层会逐层处理输入数据,并通过权重和
偏置的调整来学习特征的表示。每一层的输出作为下一层的输入,这样多层堆叠在一起的结构使得神经网络可以学习更加复杂的
特征和模式。
深度学习在图像识别、自然语言处理、语音识别等领域取得了显著的成就,它广泛应用于计算机视觉、自然语言处
理、推荐系统、智能机器人等领域。深度学习的成功离不开大规模数据集的支持和计算能力的提升,特别是GPU和TPU等加速硬
件的应用,使得深度学习模型的训练变得更加高效。
从 2006 年开始至今,在这一时期研究者逐渐掌握了训练深层神经网络的方法,使得神经网络重新崛起.
[Hinton et al., 2006] 通过逐层预训练来学习一个深度信念网络, 并将其权重作为一个多层前馈神经网络的初始化权重,再用反向
传播算法进行精调.这种“预训练 + 精调”的方式可以有效地解决深度神经网络难以训练的问题.随着深度神经网络在语音识别
[Hinton et al., 2012]和图像分类[Krizhevsky et al.,2012]等任务上的巨大成功,以神经网络为基础的深度学习迅速崛起.近年来,
随着大规模并行计算以及 GPU 设备的普及,计算机的计算能力得以大幅提高.此外,可供机器学习的数据规模也越来越大.在
强大的计算能力和海量的数据规模支持下,计算机已经可以端到端地训练一个大规模神经网络,不再需要借助预训练的方式.各
大科技公司都投入巨资研究深度学习,神经网络迎来第三次高潮
在深度学习中,一般通过误差反向传播算法来进行参数学习.采用手工方式来计算梯度再写代码实现的方式会非常低效,并且容易出错.此外,深度学习模型需要的计算机资源比较多,一般需要在CPU 和 GPU 之间不断进行切换,开发难度也比较大.因此,一些支持自动梯度计算、无缝CPU和GPU切换等功能的深度学习框架就应运而生.
比较有代表性的框架包括:Theano、Caffe、TensorFlow、Pytorch、飞桨(PaddlePaddle)、Chainer和MXNet等
在这些基础框架之上,还有一些建立在这些框架之上的高度模块化的神经网络库,使得构建一个神经网络模型就像搭积木一样容易.其中比较有名的模块化神经网络框架有:
1)基于 TensorFlow 和 Theano 的 Keras(目前,Keras 已经被集成到TensorFlow 2.0版本中.)
2)基于 Theano的Lasagne;
3)面向图结构数据的DGL1
想了解更全面的深度学习框架可以参考wikipedia
如果喜欢的话,欢迎 关注 点赞 评论 收藏 一起讨论 你的支持就是我✍️创作的动力!