【神经网络】0.深度学习基础:解锁深度学习,重塑未来的智能新引擎

个人主页:Icomi

相信大家已经顺利完成了 PyTorch 基础知识的学习旅程,我们一起探索了 PyTorch 中张量的各种操作、自动微分的神奇奥秘、如何搭建线性回归模型以及模型的保存与加载等等重要内容。这些知识就像是我们在深度学习领域中建造高楼大厦的基石,为我们后续的学习和实践打下了坚实的基础。

现在,我们即将踏入一个全新的、更加精彩的领域 ------ 神经网络的学习。神经网络可以说是深度学习的核心组成部分,它就像是一个充满智慧的大脑,能够让计算机从海量的数据中学习到复杂的模式和规律,从而实现各种强大的功能,比如图像识别、语音识别、自然语言处理等等。

在接下来的学习中,我们将深入了解神经网络的基础部分。首先,我们要对深度学习和神经网络建立基本的认识,明白它们的基本概念和工作原理,就像我们要了解一座建筑的设计蓝图和建造理念一样。

然后,我们会学习激活函数的作用。激活函数就像是神经网络中的 "开关",它能够决定神经元是否被激活,从而让神经网络能够处理非线性的问题,使模型变得更加灵活和强大。

接着,我们会探究神经网络参数更新算法,这是让神经网络能够不断学习和优化的关键,就好比给汽车加油和定期保养,让它能够持续高效地运行。

我们还会了解常见的神经网络参数初始化方法,这一步就像是为神经网络的 "起跑" 做好准备,合适的初始化能够让模型更快地收敛和取得更好的性能。

另外,常见的梯度下降优化方法也是我们学习的重点,它能够帮助我们在神经网络的训练过程中找到最优的参数,就像在迷宫中找到一条通向出口的最佳路径。

同时,我们也要学习神经网络正则化的方法,这可以防止模型过拟合,让我们的模型能够更好地泛化到新的数据上,提高模型的稳定性和可靠性。

最后,我们会了解批量归一化的作用,它就像是一个 "调节器",能够让神经网络的训练更加稳定和高效。

学完这些知识后,我会带着大家一起运用所学,亲手构建一个全连接神经网络。我们将根据历史手机价格数据,结合手机的各项参数,构建一个能够预测手机价格的模型。这将是一次非常有趣且有意义的实践,让我们能够将理论知识运用到实际中,进一步加深对神经网络的理解和掌握。

1. 什么是深度学习

在介绍深度学习之前,我们先看下人工智能,机器学习和深度学习之间的关系:

机器学习是实现人工智能的一种途径,深度学习是机器学习的一个子集,也就是说深度学习是实现机器学习的一种方法。与机器学习算法的主要区别如下图所示:

传统机器学习算术依赖人工设计特征,并进行特征提取,而深度学习方法不需要人工,而是依赖算法自动提取特征。深度学习模仿人类大脑的运行方式,从经验中学习获取知识。这也是深度学习被看做黑盒子,可解释性差的原因。

随着计算机软硬件的飞速发展,现阶段通过深度学习来模拟人脑来解释数据,包括图像,文本,音频等内容。目前深度学习的主要应用领域有:

  1. 语音识别
  2. 机器翻译
  3. 自动驾驶

当然在其他领域也能见到深度学习的身影,比如风控,安防,智能零售,医疗领域,推荐系统等。

2. 发展历史(了解)

深度学习其实并不是新的事物,深度学习所需要的神经网络技术起源于20世纪50年代,叫做感知机。当时也通常使用单层感知机,尽管结构简单,但是能够解决复杂的问题。后来感知机被证明存在严重的问题,因为只能学习线性可分函数,连简单的异或(XOR)等线性不可分问题都无能为力,1969年Marvin Minsky写了一本叫做《Perceptrons》的书,他提出了著名的两个观点:1.单层感知机没用,我们需要多层感知机来解决复杂问题 2.没有有效的训练算法。

20世纪80年代末期,用于人工神经网络的反向传播算法(也叫Back Propagation算法或者BP算法)的发明,给机器学习带来了希望,掀起了基于统计模型的机器学习热潮。这个热潮一直持续到今天。人们发现,利用BP算法可以让一个人工神经网络模型从大量训练样本中学习统计规律,从而对未知事件做预测。这种基于统计的机器学习方法比起过去基于人工规则的系统,在很多方面显出优越性。这个时候的人工神经网络,虽也被称作多层感知机(Multi-layer Perceptron),但实际是种只含有一层隐层节点的浅层模型。

2006年,杰弗里·辛顿以及他的学生鲁斯兰·萨拉赫丁诺夫正式提出了深度学习的概念。

2012年,在著名的ImageNet图像识别大赛中,杰弗里·辛顿领导的小组采用深度学习模型AlexNet一举夺冠。AlexNet采用ReLU激活函数,从根本上解决了梯度消失问题,并采用GPU极大的提高了模型的运算速度。

同年,由斯坦福大学著名的吴恩达教授和世界顶尖计算机专家Jeff Dean共同主导的深度神经网络------DNN技术在图像识别领域取得了惊人的成绩,在ImageNet评测中成功的把错误率从26%降低到了15%。深度学习算法在世界大赛的脱颖而出,也再一次吸引了学术界和工业界对于深度学习领域的关注。

2016年,随着谷歌公司基于深度学习开发的AlphaGo以4:1的比分战胜了国际顶尖围棋高手李世石,深度学习的热度一时无两。后来,AlphaGo又接连和众多世界级围棋高手过招,均取得了完胜。这也证明了在围棋界,基于深度学习技术的机器人已经超越了人类。

2017年,基于强化学习算法的AlphaGo升级版AlphaGo Zero横空出世。其采用"从零开始"、"无师自通"的学习模式,以100:0的比分轻而易举打败了之前的AlphaGo。除了围棋,它还精通国际象棋等其它棋类游戏,可以说是真正的棋类"天才"。此外在这一年,深度学习的相关算法在医疗、金融、艺术、无人驾驶等多个领域均取得了显著的成果。所以,也有专家把2017年看作是深度学习甚至是人工智能发展最为突飞猛进的一年。

2019年,基于Transformer 的自然语言模型的持续增长和扩散,这是一种语言建模神经网络模型,可以在几乎所有任务上提高NLP的质量。Google甚至将其用作相关性的主要信号之一,这是多年来最重要的更新。

2020年,深度学习扩展到更多的应用场景,比如积水识别,路面塌陷等,而且疫情期间,在智能外呼系统,人群测温系统,口罩人脸识别等都有深度学习的应用。

相关推荐
Monkey-旭几秒前
Android JNI 语法全解析:从基础到实战
android·java·c++·c·jni·native
小徐不徐说2 分钟前
RTSP协议详解与C++实现实例
开发语言·c++·qt·通信·rtsp
lingling00923 分钟前
艾利特机器人:光伏机器人如何重塑清洁能源制造新格局
大数据·人工智能·算法
新讯网23 分钟前
智合新材携先进陶瓷材料亮相2025西安先进制造及国防科技产业博览会
大数据·人工智能·制造
流星白龙24 分钟前
【C++算法】75.优先级队列_数据流中的第 K 大元素
开发语言·c++·算法
Monkey的自我迭代24 分钟前
python线性回归:从原理到实战应用
开发语言·python·机器学习
斯普信专业组29 分钟前
Ubuntu系统深度学习环境配置全指南(下)
linux·深度学习·ubuntu
机器之心42 分钟前
刚刚,OpenAI推出学习模式,AI教师真来了,系统提示词已泄露
人工智能
刚入坑的新人编程44 分钟前
暑期算法训练.10
数据结构·c++·算法·排序算法
字节高级特工1 小时前
【Linux篇】补充:消息队列和systemV信号量
linux·运维·服务器·c语言·数据库