首页 > 应用与设计 > 中国新基建  > 深度学习简介 >

人工智能

最新课程

热门课程

深度学习简介

大家好! 我是 Monisha [? Agrivad。?] 在本视频中, 我将要介绍 深度学习。 本视频面向的是 初入深度学习领域 并且想要熟悉 该领域的人。 在这段视频中, 您将会获得 对深度学习 技术的概括认识, 学习深度学习语言, 了解深度学习 解决方案的开发流程 以及可使用 该技术的 一些应用领域。 人工智能或 AI 是 以智能方式完成 某项工作的 计算机程序的统称。 机器学习是 AI 的一个分支, 深度学习则又是 机器学习的一个分支。 为什么深度 学习和机器学习 都属于更宽泛的 人工智能的范畴呢? 深度学习是 与人类 最相似的人工 智能的基础。 与机器学习 模型不同的是, 深度学习模型 无需您明确告知 如何进行准确地预测, 它能够通过自己的 计算方法 进行自学, 因此拥有所谓的自己的大脑。 它的设计灵感 来自人类的大脑结构, 尤其擅长 对象分类、 模式识别 和预测分析。 它是否实用呢? 我们来看一下汽车 使用案例中的这个例子。 您可能对这个比较熟悉, 或者使用过类似的东西。 这是来自一个演示的 屏幕截图,该演示 由 TI 的驾驶员辅助 系统团队编制而成, 展示了如何 使用深度学习 对从汽车前置 摄像头看到的对象 进行分类。 在该演示中, 深度学习用于 将图像中的 各个像素 分类成以下五个类别: 车辆、道路、标志、 行人和背景。 然后,该演示会对 图像进行适当配色, 从而实现种族化。 深度学习是实现 自动驾驶车辆的 关键技术之一。 深度学习还能 对哪些事物进行分类? 图片或视频,正如 您在汽车示例中看到的, 但它可以是任何类型的 数据,音乐、语音、雷达、 飞行时间或机器数据, 几乎涵盖了您想要进行分类的 任何类型的数据。 前面曾提到, 深度学习的 设计灵感来自 人类的大脑结构。 它所具备的思考能力 在一定程度上 是通过使用神经网络实现的。 大多数现代化 深度学习模型 都是基于 人工神经网络, 即粗略模仿 人类大脑的 成套算法, 专门用于 识别模式, 就像人类大脑可以识别 模式一样,而且可帮助 我们对信息进行分类。 人工神经网络会为 计算机完成相同的工作。 神经网络的核心 是人工神经元, 也就是节点。 它模仿了 生物神经元。 一个生物神经元 主要由三个 主要功能元素组成, 树突、细胞体和轴突。 它仅通过 树突接收信号。 然后,该信息, 或者说信号 被传递到胞体, 或者说细胞体。 在细胞体内, 所有的信息 被整合在一起, 生成一个输出。 在累积的结果 达到阈值后, 神经元会产生 神经冲动,信息 将经由轴突 通过其突触 传递到与之连接的 其他神经元。 两个神经元之间 传输的信号量 取决于它们 之间的连接强度。 人工神经元 也具有与生物神经元 相同的组成部分。 它具有输入、权值、 处理单元和输出。 它借鉴了生物 神经元的处理流程。 在人工神经网络中, 您可以将树突 想象成基于 其突触互联的 加权输入。 加权输入会在 人工神经网络的 细胞体内 汇总在一起。 如果生成的输出 大于相应阈值, 神经元会产生神经冲动, 该神经元的输出 便会传输到 另外一个神经元。 人工神经元,或者说节点, 是神经网络的基本 计算单元。 一个节点可以 连接至多个节点, 可同步将输入 馈送至其他 节点的节点 被称为一个层, 它们通常表示为 垂直堆叠的节点, 比如图中组成一个 网络层的一列绿色节点。 层是神经网络的 下一级构建块。 简单的神经网络 具有三个层。 第一层称为输入层, 而且是唯一可接触到 外部信号的网络层。 输入层将信号传输至 下一层的神经元, 这一层称为 隐藏层。 隐藏层会 从收到的信号中 提取出相关的 特性或者说模式。 然后,该层会将它认为 重要的特性或模式 传输至输出层, 这是该网络的 最后一层。 当有许多 隐藏层时, 便会形成堆栈式 神经网络。 增加的层数越多, 堆栈越深。 这些网络被称为 深度网络。 使用这些深度 网络的算法 便是逐渐为人们 所熟知的深度学习。 深度学习会在 将结果传递至 后续层的其他 节点之前,先对 上一层的信息和特征 进行分类,从而 逐层学习结构化的 大数据表示方法。 为了更直观地 了解这个过程, 您可以看一下 下面这个非常简单的例子, 深度神经网络收到 一张画着一条狗的图片, 并且正在尝试对其进行分类。 该网络的 第一层可能会 只是识别 该图像内的边缘。 后续层会 获取这些信息, 并尝试将其集结 在一起,从而形成形状, 然后基于这些形状, 给出与某种图像 对应的概率。 后续的层会 获得这些形状, 并将它们组合在一起, 形成一个完整的结构, 然后为它认为 该输入最可能 对应的结构分配一个概率值。 它以概率的 形式报告输出。 该网络通过 尝试比较这一 生成的概率报告 与期望输出 来进行学习。 如果报告的输出 与期望输出不匹配, 它会调整它的 网络参数, 然后重复该过程, 直至它完成学习, 因而报告的 图像是狗的概率 高于其输入图像的 其他类别的概率。 如本例中所示, 当该网络完成学习后, 在收到的输入 为狗狗图像时, 它会报告说 收到的图像 有 90% 的可能是狗, 有 10% 的可能是狼。 在深度学习中, 有许多不同的神经网络 架构。 这些不同的 架构适合解决 不同类型的问题。 在本视频中,我们将 介绍三个深度神经网络 架构,MLP、CNN 和 RNN。 MLP 或者说 多层感知架构 或许是最传统的 DL 架构类型之一。 当时上一层中的 每个元素 都要与下一层中的 每个元素连接。 MLP 的过气一定程度上 是因为它们很难完成训练。 虽然这种困难是由许多 方面的原因造成的, 但其中一个原因 便是它们的密集连接 使得它们无法通过轻松 扩展来解决各种计算机视觉 问题。 这便是卷积神经 网络或者说 CNN 产生的原因。 它包含多层感知器, 这些感知器旨在 使用最少数量的 预处理。 CNN 是一个前馈 深度神经网络。 在前馈神经 网络中,信息 只能向一个方向传播, 即向前,从输入节点, 经过隐藏节点, 移动到输出节点。 该网络中没有 循环或回路。 CNN 会获得固定大小的输入, 并生成固定大小的 输出。 这种网络主要用于 计算机视觉应用, 而且在光学检测、 分类和语义分割方面 具有理想的 图像和视频 处理效果。 我们在前面讨论了 汽车前置摄像头中 使用的深度 学习网络和 关于狗狗图像的 网络识别,这两个 例子都是基于 CNN。 另外一种类型的 网络是循环神经网络 或者说 RNN。 说 RNN 循环是因为 这种网络会接收输入, 根据前面的计算 更新隐藏状态, 并为序列中的 每个元素提供保护。 RNN 利用 前馈连接, 然后扩展纳入反馈连接, 从而形成一个循环。 这种网络具有记忆, 会保留有关至今为止 所处理的内容的信息。 RNN 对于时间 系列的数据非常有用, 该网络假设代表 过去的特性 会对未来有影响。 RNN 非常适合用于 文本和语音分析, 不管是从语音转换为文本, 还是从一种语言转换为另一种语言, 而且它还对预见性 维护非常有用。 前面曾提到,所有 这些深度神经网络 都包含多个层。 例如在 CNN 中, 一些关键层包括 卷积层、ReLu 层、最大值 池化层和全连接层。 卷积层是 CNN 中的 关键层。 这是一个过滤层, 具有最高的计算密度, 而且可以决定 指定 CNN 架构的 性能。 ReLu 层,或者说 修正线性单元, 通常用于 激活函数层。 池化层是一个 用于减少计算 成本的降采样层。 全连接层是 CNN 中的 最后几个层之一, 可帮助进行数据分类。 CNN 中还有 很多其他层, 但这里提到的都是 典型 CNN 中的常见层。 指定的一组网络层 以及这些层的交互方式 便构成了一个网络模型。 您需要了解网络模型 在深度学习中的使用情况, 这一点很重要。 在设计神经 网络模型时, 设计者必须考虑 要使用哪些层、 每层有多少个神经元、 如何布置各层, 等等诸如此类的问题。 设计这种结构 会稍微有一点复杂。 现在有很多标准 CNN 模型都可以很好地 处理很多标准问题。 其中一些 很知名的例子包括 AlexNet、GoogleNet 和 Inception-ResNet。 这些模型都是之前的 ILSVRC 竞赛中的优胜者。 ILSVRC 是指 ImageNet 大规模视觉识别 挑战赛。 这是一个由 ImageNet 举办的年度软件竞赛, 它要求研究团队 在指定的数据集上 评估他们的算法, 并力争在多个 视觉识别任务上 实现较高的 准确度。 AlexNet 是首批 提高了 ImageNet 分类 准确度的深度 网络之一,并且是 2012 年的优胜模型。 从那之后,网络虽然 由于提高准确度而变得 更加复杂, 但却也找到了 实现更高效 性能的方法。 这些模型通常会 用作开发工作的 切入点和基准。 但需要注意的是, 这些模型都不属于 嵌入友好型网络。 对于功率、大小和成本 通常会成为设计中的 限制因素的嵌入式系统, 在考虑要使用的网络模型时, 设计的网络 一定要具有 较高的计算效率, 且能够采用 一些技术来在稍微 牺牲计算准确度的 条件下提高 计算效率。 利用深度学习 构建解决方案 对数据科学家和 工程师来说是一个巨大的挑战。 框架是可用于简化 深度学习解决方案构建工作的 工具。 框架可提供 一个抽象级别, 并简化可能存在 困难的编程任务。 可用的开源 框架越来越多, 且这些框架通常 都是为特殊目的而打造的, 可提供独特的 功能范围。 目前最流行的 两个开源框架是 TensorFlow 和 Caffe。 TensorFlow 的 开发商是 Google, 而且其在 Github 上的 “Star”数量和“Fork”数量 以及 Stack Overflow 上的 活动数量表明,该框架是当今 最常用的深度学习框架。 Caffe 的开发者是 伯克利视觉与学习 中心。 它依赖自己的 社区支持、在卷积 神经网络建模中的 主要应用以及 对预先训练的模型的 选择,也就是 Model Zoo, 而受到人们的青睐。 这些框架还有基于 C++ 或 Python 的 更高级别的热门包装器, 它们都能够简化编程 工作。 我们已经了解了 深度学习网络的 基本组成部分 和构建工具, 下面我们来了解 一下网络的开发流程。 网络训练的目标是 尽可能获得 能够可靠地解决 相应问题的 最佳网络参数值。 寻找最佳参数集 依赖的是一个 称为反向传播的过程, 也就是,您首先采用 一个随机参数集, 然后不断改变 这些权值, 直至每个训练图像 都可以得到正确的输出。 例如,在尝试构建一个 区分猫和狗的分类器时, 我们希望找到具有 以下效果的参数: 对于所有的狗狗图像, 输出给出的 是狗的概率为 1, 或者至少要高于是猫的概率, 而对于所有猫咪的图像, 给出的是猫的概率为 1, 或者至少要高于是狗的概率。 为了完成这一步, 我们需要收集大量有关 猫和狗的训练图像。 每个输入上都标记有 期望的输出值。 该网络会使用一个 随机参数集实现初始化。 然后获取各个输入。 该网络会处理相应的图像, 并为该图像分配一个 分类概率。 如果图像分类错误, 也就是说 报告的正确 分类的概率 低于其他分类, 那么系统会通过 调整权值来计算 并返回概率误差。 然后重复 该过程,直至 每个训练图像 都能报告正确的输出。 这种利用标记图像 训练网络的方法 叫做监督训练, 这种方法有可能 会耗费较长的时间。 根据要解决的问题 和需要的准确度, 网络模型可能 需要使用高性能台式机、 GPU 或云计算训练 数周或数月的时间。 训练完成后, 这些参数和架构 会保存在一个叫做 模型的二进制文件中。 在生产设置阶段, 我们将该模型加载到 相同的网络架构中, 然后计算新图像 是猫还是狗的概率。 这个过程称为 推理或预测。 该模型可能会 运行性能远低于 训练时的计算系统, 该模型通常会被 部署在嵌入式部件中, 运行与训练时 所用处理器 完全不同 等级的处理器。 以下是打造 深度学习解决 方案的整个 开发流程。 选择用于进行 网络训练的数据集。 选择用于开发 网络模型的框架。 然后设计初始网络。 然后,通过转换来进行 网络设计迭代。 例如,边缘、深度、 宽度等,直至达到 相应应用 所需的性能。 在 PC 上进行离线 训练并确定准确度,然后 酌情对网络 设计进行微调。 重复执行到第 4 步, 直至达到性能和准确度 目标。 在达到网络的 性能和准确度目标后, 对模型进行转换, 并基于推理工作对其进行部署。 前面曾提到, 深度学习 可用于解决需要 进行数据分类的 问题。 许多问题都可以 归结为分类问题。 下面试举几例。 ADR 工厂 自动化与控制 具有许多使用深度 学习解决方案的机会, 从提高拾取和放置 系统所用的工业 机器人的准确度, 到改进装配线上的 检查系统,再到 分析工业机器的数据, 从而实现对这些 机器的预见性维护, 比比皆是。 就工厂自动化 和控制领域而言, 深度学习 可用于许多地方。 如果您想要 了解一些不太一样 的例子,可以 看看农业领域, 深度学习可帮助 确定作物的健康情况, 并开发优化的 灌溉和收割技术。 零售业也在 依靠深度 学习来提高 自动结账的 速度和准确度, 以及了解 购物者的 需求和偏好, 并提供能够吸引 特定购物者的促销激励。 能够使用 深度学习来 提高性能或增加 新功能的领域 可谓是数不胜数。 这里我们只列举几个 可能会用到深度学习 的领域,从更智能的 家用扫地机器人 到更安全的交通监控, 到游戏中优化的手势识别, 再到先进的监控系统, 不一而足。 很显然,这些 只是其中的一部分, 因为深度学习的使用 案例还会继续增加。 让我们来回顾一下我们 在这段视频中所学到的东西。 我们学到了 什么是深度学习以及 它与 AI、机器学习、 人工神经元和人工神经 网络的关系。 我们学习了深度 学习社区中使用的术语, 像节点、层、网络 模型和框架等, 了解了深度 学习解决方案的 开发流程和 应用领域。 感谢您 观看本视频。

大家好!

我是 Monisha [? Agrivad。?]

在本视频中, 我将要介绍

深度学习。

本视频面向的是 初入深度学习领域

并且想要熟悉 该领域的人。

在这段视频中, 您将会获得

对深度学习 技术的概括认识,

学习深度学习语言,

了解深度学习 解决方案的开发流程

以及可使用 该技术的

一些应用领域。

人工智能或 AI 是 以智能方式完成

某项工作的 计算机程序的统称。

机器学习是 AI 的一个分支,

深度学习则又是 机器学习的一个分支。

为什么深度 学习和机器学习

都属于更宽泛的 人工智能的范畴呢?

深度学习是 与人类

最相似的人工 智能的基础。

与机器学习 模型不同的是,

深度学习模型 无需您明确告知

如何进行准确地预测, 它能够通过自己的

计算方法 进行自学,

因此拥有所谓的自己的大脑。

它的设计灵感 来自人类的大脑结构,

尤其擅长 对象分类、

模式识别 和预测分析。

它是否实用呢?

我们来看一下汽车 使用案例中的这个例子。

您可能对这个比较熟悉, 或者使用过类似的东西。

这是来自一个演示的 屏幕截图,该演示

由 TI 的驾驶员辅助 系统团队编制而成,

展示了如何 使用深度学习

对从汽车前置 摄像头看到的对象

进行分类。

在该演示中, 深度学习用于

将图像中的 各个像素

分类成以下五个类别:

车辆、道路、标志、 行人和背景。

然后,该演示会对 图像进行适当配色,

从而实现种族化。

深度学习是实现 自动驾驶车辆的

关键技术之一。

深度学习还能 对哪些事物进行分类?

图片或视频,正如 您在汽车示例中看到的,

但它可以是任何类型的 数据,音乐、语音、雷达、

飞行时间或机器数据, 几乎涵盖了您想要进行分类的

任何类型的数据。

前面曾提到, 深度学习的

设计灵感来自 人类的大脑结构。

它所具备的思考能力 在一定程度上

是通过使用神经网络实现的。

大多数现代化 深度学习模型

都是基于 人工神经网络,

即粗略模仿 人类大脑的

成套算法, 专门用于

识别模式, 就像人类大脑可以识别

模式一样,而且可帮助 我们对信息进行分类。

人工神经网络会为 计算机完成相同的工作。

神经网络的核心 是人工神经元,

也就是节点。

它模仿了 生物神经元。

一个生物神经元 主要由三个

主要功能元素组成, 树突、细胞体和轴突。

它仅通过 树突接收信号。

然后,该信息, 或者说信号

被传递到胞体, 或者说细胞体。

在细胞体内, 所有的信息

被整合在一起, 生成一个输出。

在累积的结果 达到阈值后,

神经元会产生 神经冲动,信息

将经由轴突 通过其突触

传递到与之连接的 其他神经元。

两个神经元之间 传输的信号量

取决于它们 之间的连接强度。

人工神经元 也具有与生物神经元

相同的组成部分。

它具有输入、权值、 处理单元和输出。

它借鉴了生物 神经元的处理流程。

在人工神经网络中, 您可以将树突

想象成基于 其突触互联的

加权输入。

加权输入会在 人工神经网络的

细胞体内 汇总在一起。

如果生成的输出 大于相应阈值,

神经元会产生神经冲动, 该神经元的输出

便会传输到 另外一个神经元。

人工神经元,或者说节点, 是神经网络的基本

计算单元。

一个节点可以 连接至多个节点,

可同步将输入 馈送至其他

节点的节点 被称为一个层,

它们通常表示为

垂直堆叠的节点,

比如图中组成一个 网络层的一列绿色节点。

层是神经网络的 下一级构建块。

简单的神经网络 具有三个层。

第一层称为输入层,

而且是唯一可接触到 外部信号的网络层。

输入层将信号传输至

下一层的神经元, 这一层称为

隐藏层。

隐藏层会 从收到的信号中

提取出相关的 特性或者说模式。

然后,该层会将它认为 重要的特性或模式

传输至输出层, 这是该网络的

最后一层。

当有许多 隐藏层时,

便会形成堆栈式 神经网络。

增加的层数越多, 堆栈越深。

这些网络被称为 深度网络。

使用这些深度 网络的算法

便是逐渐为人们 所熟知的深度学习。

深度学习会在 将结果传递至

后续层的其他 节点之前,先对

上一层的信息和特征 进行分类,从而

逐层学习结构化的 大数据表示方法。

为了更直观地 了解这个过程,

您可以看一下 下面这个非常简单的例子,

深度神经网络收到 一张画着一条狗的图片,

并且正在尝试对其进行分类。

该网络的 第一层可能会

只是识别 该图像内的边缘。

后续层会 获取这些信息,

并尝试将其集结 在一起,从而形成形状,

然后基于这些形状, 给出与某种图像

对应的概率。

后续的层会 获得这些形状,

并将它们组合在一起, 形成一个完整的结构,

然后为它认为 该输入最可能

对应的结构分配一个概率值。

它以概率的 形式报告输出。

该网络通过 尝试比较这一

生成的概率报告 与期望输出

来进行学习。

如果报告的输出 与期望输出不匹配,

它会调整它的 网络参数,

然后重复该过程, 直至它完成学习,

因而报告的 图像是狗的概率

高于其输入图像的

其他类别的概率。

如本例中所示, 当该网络完成学习后,

在收到的输入 为狗狗图像时,

它会报告说 收到的图像

有 90% 的可能是狗,

有 10% 的可能是狼。

在深度学习中, 有许多不同的神经网络

架构。

这些不同的 架构适合解决

不同类型的问题。

在本视频中,我们将 介绍三个深度神经网络

架构,MLP、CNN 和 RNN。

MLP 或者说 多层感知架构

或许是最传统的

DL 架构类型之一。

当时上一层中的 每个元素

都要与下一层中的 每个元素连接。

MLP 的过气一定程度上 是因为它们很难完成训练。

虽然这种困难是由许多 方面的原因造成的,

但其中一个原因 便是它们的密集连接

使得它们无法通过轻松 扩展来解决各种计算机视觉

问题。

这便是卷积神经 网络或者说 CNN

产生的原因。

它包含多层感知器,

这些感知器旨在 使用最少数量的

预处理。

CNN 是一个前馈 深度神经网络。

在前馈神经 网络中,信息

只能向一个方向传播, 即向前,从输入节点,

经过隐藏节点, 移动到输出节点。

该网络中没有 循环或回路。

CNN 会获得固定大小的输入, 并生成固定大小的

输出。

这种网络主要用于 计算机视觉应用,

而且在光学检测、 分类和语义分割方面

具有理想的 图像和视频

处理效果。

我们在前面讨论了 汽车前置摄像头中

使用的深度 学习网络和

关于狗狗图像的 网络识别,这两个

例子都是基于 CNN。

另外一种类型的 网络是循环神经网络

或者说 RNN。

说 RNN 循环是因为 这种网络会接收输入,

根据前面的计算 更新隐藏状态,

并为序列中的 每个元素提供保护。

RNN 利用 前馈连接,

然后扩展纳入反馈连接, 从而形成一个循环。

这种网络具有记忆, 会保留有关至今为止

所处理的内容的信息。

RNN 对于时间 系列的数据非常有用,

该网络假设代表 过去的特性

会对未来有影响。

RNN 非常适合用于 文本和语音分析,

不管是从语音转换为文本, 还是从一种语言转换为另一种语言,

而且它还对预见性 维护非常有用。

前面曾提到,所有 这些深度神经网络

都包含多个层。

例如在 CNN 中, 一些关键层包括

卷积层、ReLu 层、最大值 池化层和全连接层。

卷积层是 CNN 中的 关键层。

这是一个过滤层, 具有最高的计算密度,

而且可以决定 指定 CNN 架构的

性能。

ReLu 层,或者说 修正线性单元,

通常用于 激活函数层。

池化层是一个

用于减少计算 成本的降采样层。

全连接层是 CNN 中的 最后几个层之一,

可帮助进行数据分类。

CNN 中还有 很多其他层,

但这里提到的都是 典型 CNN 中的常见层。

指定的一组网络层 以及这些层的交互方式

便构成了一个网络模型。

您需要了解网络模型 在深度学习中的使用情况,

这一点很重要。

在设计神经 网络模型时,

设计者必须考虑 要使用哪些层、

每层有多少个神经元、

如何布置各层, 等等诸如此类的问题。

设计这种结构 会稍微有一点复杂。

现在有很多标准 CNN 模型都可以很好地

处理很多标准问题。

其中一些 很知名的例子包括

AlexNet、GoogleNet 和 Inception-ResNet。

这些模型都是之前的 ILSVRC 竞赛中的优胜者。

ILSVRC 是指 ImageNet 大规模视觉识别

挑战赛。

这是一个由 ImageNet 举办的年度软件竞赛,

它要求研究团队 在指定的数据集上

评估他们的算法, 并力争在多个

视觉识别任务上 实现较高的

准确度。

AlexNet 是首批 提高了 ImageNet 分类

准确度的深度 网络之一,并且是

2012 年的优胜模型。

从那之后,网络虽然 由于提高准确度而变得

更加复杂, 但却也找到了

实现更高效 性能的方法。

这些模型通常会 用作开发工作的

切入点和基准。

但需要注意的是, 这些模型都不属于

嵌入友好型网络。

对于功率、大小和成本 通常会成为设计中的

限制因素的嵌入式系统, 在考虑要使用的网络模型时,

设计的网络 一定要具有

较高的计算效率, 且能够采用

一些技术来在稍微 牺牲计算准确度的

条件下提高 计算效率。

利用深度学习 构建解决方案

对数据科学家和 工程师来说是一个巨大的挑战。

框架是可用于简化 深度学习解决方案构建工作的

工具。

框架可提供 一个抽象级别,

并简化可能存在 困难的编程任务。

可用的开源 框架越来越多,

且这些框架通常 都是为特殊目的而打造的,

可提供独特的 功能范围。

目前最流行的 两个开源框架是

TensorFlow 和 Caffe。

TensorFlow 的 开发商是 Google,

而且其在 Github 上的 “Star”数量和“Fork”数量

以及 Stack Overflow 上的 活动数量表明,该框架是当今

最常用的深度学习框架。

Caffe 的开发者是 伯克利视觉与学习

中心。

它依赖自己的 社区支持、在卷积

神经网络建模中的 主要应用以及

对预先训练的模型的 选择,也就是 Model Zoo,

而受到人们的青睐。

这些框架还有基于 C++ 或 Python 的

更高级别的热门包装器, 它们都能够简化编程

工作。

我们已经了解了 深度学习网络的

基本组成部分 和构建工具,

下面我们来了解 一下网络的开发流程。

网络训练的目标是

尽可能获得 能够可靠地解决

相应问题的 最佳网络参数值。

寻找最佳参数集 依赖的是一个

称为反向传播的过程,

也就是,您首先采用 一个随机参数集,

然后不断改变 这些权值,

直至每个训练图像 都可以得到正确的输出。

例如,在尝试构建一个 区分猫和狗的分类器时,

我们希望找到具有 以下效果的参数:

对于所有的狗狗图像, 输出给出的

是狗的概率为 1, 或者至少要高于是猫的概率,

而对于所有猫咪的图像, 给出的是猫的概率为 1,

或者至少要高于是狗的概率。

为了完成这一步, 我们需要收集大量有关

猫和狗的训练图像。

每个输入上都标记有 期望的输出值。

该网络会使用一个 随机参数集实现初始化。

然后获取各个输入。

该网络会处理相应的图像, 并为该图像分配一个

分类概率。

如果图像分类错误, 也就是说

报告的正确 分类的概率

低于其他分类, 那么系统会通过

调整权值来计算 并返回概率误差。

然后重复 该过程,直至

每个训练图像 都能报告正确的输出。

这种利用标记图像 训练网络的方法

叫做监督训练, 这种方法有可能

会耗费较长的时间。

根据要解决的问题 和需要的准确度,

网络模型可能 需要使用高性能台式机、

GPU 或云计算训练 数周或数月的时间。

训练完成后, 这些参数和架构

会保存在一个叫做 模型的二进制文件中。

在生产设置阶段, 我们将该模型加载到

相同的网络架构中, 然后计算新图像

是猫还是狗的概率。

这个过程称为 推理或预测。

该模型可能会 运行性能远低于

训练时的计算系统, 该模型通常会被

部署在嵌入式部件中,

运行与训练时 所用处理器

完全不同 等级的处理器。

以下是打造 深度学习解决

方案的整个 开发流程。

选择用于进行 网络训练的数据集。

选择用于开发 网络模型的框架。

然后设计初始网络。

然后,通过转换来进行 网络设计迭代。

例如,边缘、深度、 宽度等,直至达到

相应应用 所需的性能。

在 PC 上进行离线 训练并确定准确度,然后

酌情对网络 设计进行微调。

重复执行到第 4 步, 直至达到性能和准确度

目标。

在达到网络的 性能和准确度目标后,

对模型进行转换, 并基于推理工作对其进行部署。

前面曾提到, 深度学习

可用于解决需要 进行数据分类的

问题。

许多问题都可以 归结为分类问题。

下面试举几例。

ADR 工厂 自动化与控制

具有许多使用深度 学习解决方案的机会,

从提高拾取和放置 系统所用的工业

机器人的准确度, 到改进装配线上的

检查系统,再到 分析工业机器的数据,

从而实现对这些 机器的预见性维护,

比比皆是。

就工厂自动化 和控制领域而言,

深度学习 可用于许多地方。

如果您想要 了解一些不太一样

的例子,可以 看看农业领域,

深度学习可帮助 确定作物的健康情况,

并开发优化的 灌溉和收割技术。

零售业也在 依靠深度

学习来提高 自动结账的

速度和准确度,

以及了解 购物者的

需求和偏好, 并提供能够吸引

特定购物者的促销激励。

能够使用 深度学习来

提高性能或增加 新功能的领域

可谓是数不胜数。

这里我们只列举几个 可能会用到深度学习

的领域,从更智能的 家用扫地机器人

到更安全的交通监控, 到游戏中优化的手势识别,

再到先进的监控系统, 不一而足。

很显然,这些 只是其中的一部分,

因为深度学习的使用 案例还会继续增加。

让我们来回顾一下我们 在这段视频中所学到的东西。

我们学到了 什么是深度学习以及

它与 AI、机器学习、 人工神经元和人工神经

网络的关系。

我们学习了深度 学习社区中使用的术语,

像节点、层、网络 模型和框架等,

了解了深度 学习解决方案的

开发流程和

应用领域。

感谢您 观看本视频。

视频报错
手机看
扫码用手机观看
收藏本课程
  • 深度学习简介 未学习 深度学习简介

视频简介

深度学习简介

所属课程:深度学习简介 发布时间:2019.03.11 视频集数:1 本节视频时长:00:29:45
该培训提供了深度学习的介绍,深入学习源于神经网络,并在人脑之后松散地建模。 在本视频中,您将了解深度学习技术的概述,学习深入学习语言,了解深度学习解决方案开发流程,并了解可以使用此技术的各种应用程序空间。
TI培训小程序