“深度学习是统计机器学习技术的集合,用于基于人工神经网络的概念来学习特征层次结构。”

人工智能是使机器能够模拟人类行为的技术。
人工智能的子集

机器学习
机器学习是一种人工智能(AI),它使计算机无需进行显式编程即可学习。
机器学习的类型:
- 监督学习
- 无监督学习
- 强化学习

机器学习的局限性

- 在处理高维数据时(这是我们有大量输入和输出的地方)时,它没有用。
- 无法解决关键的AI问题,例如NLP,图像识别等。
- 传统机器学习模型的最大挑战之一是称为特征提取的过程。
- 对于诸如对象识别或手写识别之类的复杂问题,这是一个巨大的挑战。
深度学习进行救援:
—深度学习模型能够自己专注于正确的功能,而程序员几乎不需要指导。
—这些 模型还部分解决了尺寸问题。
为什么我们需要深度学习?

深度学习
深度学习是机器学习的一种形式,它使用的计算模型非常受大脑结构的启发。
人工神经网络:
神经网络是在人脑中的神经元操作之后构图的硬件和/或软件系统。神经网络也称为人工神经网络,是一种实现深度学习的方法。
生物神经元与人工神经元

生物神经网络使计算机能够像人类一样学习和互动。它具有与树突相连的神经元,这些树突接收输入,并基于这些输入产生电信号,即通过轴突输出。
通常将人工神经网络描述为具有不同的层。第一层是输入层,它拾取输入信号并将它们传递到下一层。下一层进行各种计算和特征提取-称为隐藏层。通常,会有不止一个隐藏层。最后,还有一个输出层,可以提供最终结果。
为什么我们需要人工神经元?

我们需要一个系统来区分两个物种。

借助人工神经元,我们可以将两种花分开

一种单一的人工神经元,称为感知器。

神经网络如何工作?
要了解神经网络,我们需要将其分解并了解神经网络的最基本单元,即感知器。
- 单层感知器
- 多层感知器
什么是感知器(单层感知器)
感知器是用于对线性数据进行分类的单层神经网络的基本部分。
感知器学习规则:

步骤1:将输入与权重相乘并进行求和,再加上一个
偏差
步骤2:将输入的加权总和传递给激活函数,以确定神经元是否触发。
步骤3: Perceptron接收输入信号,并且如果输入信号的总和超过某个阈值,则Perceptron要么输出信号,要么不返回输出。
步骤4:输出中的错误会反向传播,权重也会更新,以最大程度地减少错误。
基本的人工神经元的组成:
- 输入:输入是我们需要为其预测输出值的一组值。可以将它们视为数据集中的要素或属性。
- 权重:权重是与每个功能关联的实数值,表明了该功能在预测最终值中的重要性。(我们将在本文中对此有更多了解)
- 偏差:偏差用于将激活函数向左或向右移动,在线性方程式中可以称为y截距。(我们将在本文中对此有更多了解)
- 求和函数:求和函数的作用是将权重和输入绑定在一起,以求和。
- 激活功能:激活功能将“输入和偏差((w * x)+ b)的加权总和”作为函数的输入,并决定是否触发。它用于在模型中引入非线性。
激活功能的类型:

乙状结肠功能
用于需要预测输出概率的模型。它存在于0和1之间

门限功能
它是基于阈值的激活功能。如果X值大于某个值,则该功能被激活,否则不触发。

ReLU(线性整流器)功能
它是使用最广泛的激活函数,如果X为正,则给出X的输出,否则为0。

双曲正切函数
此函数类似于Sigmoid函数,并绑定到range(-1,1)
单层感知器的局限性:
有两个主要问题:
- 单层感知器无法对非线性可分离数据点进行分类。
- 单层感知器无法解决涉及很多参数的复杂问题。
多层感知器:
多层感知器(MLP)包含一个或多个隐藏层(一个输入层和一个输出层除外)。虽然单层感知器只能学习线性函数,但是多层感知器也可以学习非线性函数。 因此被认为是一个深层的神经网络。
深度神经网络由以下几层组成:
- 输入层
- 隐藏层
- 输出层

一个简单的神经网络包括一个输入层,一个输出(或目标)层,以及在它们之间的一个隐藏层。这些层通过节点连接,这些连接形成了互连节点的“网络”(神经网络)。
反向传播和反向传播?
让我们看一下手写字母图像分类示例的正向和反向传播。
必须训练这个简单的神经网络来识别手写字母“ a”,“ b”,“ c”。

人脑可以轻松识别字母,但是如果计算机必须识别它们,该怎么办。这就是深度学习的到来。
这是一个经过训练可识别手写字母的神经网络,每个字母都以28 * 28像素的图像形式出现。

现在总共有784个像素的神经元,神经网络的核心实体是进行信息处理的地方,这784个像素中的每一个都被馈送到我们神经网络第一层的神经元。

这形成了输入层。在另一端,我们有一个输出层,每个神经元代表字母,并且在它们之间存在隐藏层。
信息通过连接通道从一层传输到另一层,每个通道都附加有随机值,因此称为加权通道。
使用加权通道进行初始预测。
所有神经元都有一个与之相关的唯一数字,称为“偏见”。
将此偏差添加到到达神经元的输入的加权总和,然后将其应用于称为激活函数的函数。
激活功能的结果确定神经元是否被激活。每个激活的神经元都将信息传递到下一层,该信息一直持续到最后一层。
在输出层中激活的一个神经元对应于输入字母,不断调整权重和偏差以生成训练有素的网络。
我们的网络预测输入为’b’的可能性为0.5

将预测的概率与实际概率进行比较,并计算误差。

大小表示变化量,而符号表示权重的增加或减少。

信息通过网络传回(反向传播)


调整整个网络的权重以减少预测损失
网络通过选择权重的随机值来开始训练自己。

在第一次迭代中,我们得到


在第二次和第三次迭代之后,

让我们专注于找到变量’ a ‘的最小损失。

梯度下降:
找到一个函数最小值的优化算法或图形方法称为梯度下降。

- 负斜率表示重量减轻。
- 零斜率表示合适的重量。
我们的目标是到达斜率为零的点。
现在,我们绘制体重与损失的关系图。
让我们假设以下是我们的图表,该图表显示的是变量a与第二倒数第二层所占的权重相比所产生的预测损失。

现在通过网络向后传播在图表上选择的随机点,以调整权重。

网络将使用新的权重再次运行。该过程会重复多次,直到提供准确的预测为止。

进一步调整权重以识别“ b”和“ c”

神经网络的类型
深度神经网络有不同的种类-每个神经网络都有其优点和缺点,这取决于用途。示例包括:
- 卷积神经网络(CNN)包含五种类型的层:输入,卷积,池化,完全连接和输出。每层都有特定的目的,例如汇总,连接或激活。卷积神经网络已经普及了图像分类和目标检测。但是,CNN也已应用于其他领域,例如自然语言处理和预测。
- 递归神经网络(RNN)使用顺序信息,例如来自传感器设备的语音数据或口语句子(由一系列术语组成)。与传统的神经网络不同,递归神经网络的所有输入都不是彼此独立的,每个元素的输出取决于其先前元素的计算。RNN用于预测和时间序列应用程序,情感分析以及其他文本应用程序。
- 前馈神经网络,其中一层中的每个感知器都连接到下一层中的每个感知器。信息仅在向前的方向上从一层转发到下一层。没有反馈回路。
- 自动编码器神经网络用于创建称为“编码器”的抽象,该抽象是从一组给定的输入中创建的。尽管与更传统的神经网络相似,自动编码器会设法对输入本身进行建模,因此该方法被认为是无监督的。自动编码器的前提是使不相关的内容脱敏,并使相关的内容脱敏。随着添加层,在更高的层(最靠近引入解码器层的点的层)中制定了进一步的抽象。然后,线性或非线性分类器可以使用这些抽象。
人工神经网络的未来
- 神经网络将用于医学,农业等领域。
- 神经网络工具将嵌入到每个设计图面中。
- 神经网络将来会更快。
- 面向全球用户和客户的更多个性化选择。
- 超级智能虚拟助手将使生活更轻松。
- 将会发现新形式的算法或学习方法。
流行的深度学习框架
深度学习的应用:
玩游戏:深度学习使我们能够构建可以玩游戏的机器。
创作音乐:通过使计算机学习乐曲中的模式,可以使用Deep Neural Nets来产生音乐。
自主驾驶猫:无需人工干预即可区分不同类型的物体,人员,道路标志和驱动器。
建造机器人:深度学习用于训练机器人执行人类任务。
医学诊断:深层神经网络用于识别肺癌患者中的可疑病变和结节