深度学习的工程师,第2部分:处理合成数据
从系列:深度学习的工程师
布莱恩•道格拉斯
这个视频覆盖深度学习的第一步:确保你有数据训练网络。学习如果深度学习是正确的为您的项目是基于你对训练数据的类型和数量。还发现如何使用合成数据进行训练。
在第一个视频,我们覆盖深度学习如何可以用来解决实际的工程问题,具体问题你想把复杂的数据中的模式。我们离开在简要介绍了深度学习设计工作流。
在这个视频中,我们将关注此工作流的第一步:对数据的访问。现在我想重申这个系列的警告是,我不是想解释一切你需要知道的关于深入学习,我只想介绍一些概念和让你思考深度学习的场景可能是正确的选择来解决工程问题。在做出这样的决定,部分归结于数据的类型和数量,你可以访问。
和地面这跟一些现实主义,我们要用一个实际的工程实例:波形识别在雷达和通信的应用程序。这是一口!但如果你留下来,我将解释这是什么意思和如何访问数据和深度学习可以发挥重要作用在解决这个问题。我是布莱恩,欢迎来到MATLAB技术说话。
我要盖两个用例原因我们可能首先需要确定射频波形:这些都是通信和雷达。
我们将首先描述整体的问题——你知道需要什么吗?然后我们将讨论为什么传统分类方法可以是困难的,以及为什么它可能意义使用数据和深度学习来解决这个问题。然后我希望通过谈论我们如何通过模拟合成训练数据而不是直接与实地测量和收集它。
记住当我们走过这个非常特殊的射频波形分类的问题,得到一些有用的总体想法的困惑和混乱的时间序列数据是一种常见的工程问题;例如这是经常出现在预测性维护。所以,即使你不是在雷达或通讯,我们将讨论适用于许多其他工程问题。
好了,有了让我们回到沟通的方式。
通信距离我们需要能够发送信息从发射机到接收机。这是通过选择一个载波频率调制的编码信息的一些方法。例如,我们可以用一个数字调制的过程像二进制相移键控(BPSK)。简单地说,如果发射机发送0,那么相位载波信号的影响,当发送1,阶段转向180度。只要接收机和发射机预计相同的设置,这是相同的载波频率,调制方案,和波形参数,然后可以在目的地正确解码的信息。
然而,这并非总是如此,接收方提前意识到这一切。例如,信号情报和监视系统可能只是监听信号,任何信号,碰巧,通过检测的调制方案描述和识别发射器发送它的类型。或5 g和其他无线方案的情况下,如果有干扰和噪声淹没的信号,它有利于理解和标签干扰的来源,这样就可以知道频率和调制方案切换到为了减少这种干扰。即使避免不是最终的目标,它还有助于理解如果噪音是来自一个特定的外部信号,这样至少运营商知道他们看到它不是硬件问题。
这是一个类似的雷达系统。雷达跟踪和目标识别,我们发送无线电波探测环境和倾听他们的反映。一个常见的方法是脉冲雷达信号;交替之间传输和倾听。和脉冲本身可以有不同的波形如矩形,线性调频,巴克码作为例子。而是你发送脉冲,因此你知道反射波形将会是什么样子的,假设你想要探测雷达签名之前检测到你自己,那么它可能是有用的一个系统,可以搜索,说,一个4 GHz带宽,并找到和分类的任何已知的雷达脉冲输入信号波形,然后又能够确定雷达发射这个信号的类型。
这是是什么意思调制识别,波形识别。我们需要一个函数或一组函数,在原始IQ信号从天线和标签波形及其参数。所以,你可以开始看到这是如何塑造是一个深度学习的问题,我们可以学习这个分类模型使用标记的波形数据。
然而,我认为一个好的经验法则是不从深度学习或其他机器学习技术传统时,基于规则的方法将工作。所以,问题是,我们能依靠传统方法对波形进行分类吗?例如,为什么不使用我们的知识和技能在射频信号来编写一些代码或构建硬件处理输入信号在某种程度上使特征识别更加明显,然后挑出某些特性在处理数据,然后从编写代码,确定波形?那种感觉像建立一个系统,可以区分,说,这两个波形很简单——他们看上去很独特。不幸的是,事情可能会变得很复杂匆忙使模式识别与传统方法或者至少耗时。
向你们展示一个例子,左边的图是时域信号与随机扫描线性调频脉冲带宽、脉冲宽度、脉冲重复频率和扫描方向。和情节的频域表示。线性调频脉冲波形,调制载波信号是一个更高的频率也随机大约20 MHz地区,这就是线性调频脉冲波形的一个版本一个理想的样子。
然而,很多事情可以影响这个信号。天气和物理障碍可以以不同的方式影响不同的频率,从而改变波形的形状,因为它传播通过它们,还有从无线电电子硬件扭曲导致白噪声和其他相位和频率补偿,我建模以下通过添加高斯白噪声。附近也有障碍物反射天线从而导致的信号相互作用略阶段版本的本身。以及许多其他来源的噪声和错误会影响接收信号。
所以,这是一个嘈杂的中频采样波形,但这是另一个和另一个。这确实是我们的问题的症结所在。我们的波形分类器需要能够识别这些线性频率调节。,更重要的是,它还需要认识其他调节看起来非常类似于线性调频和占用相同的频率带宽,并且不断受到相同的噪声来源和错误。
因此,我们的解决方案空间,是整个组的条件和情况下,我们的分类算法需要的工作是巨大的。和设计一个分类模型,使用基于规则的方法,可以处理所有这些变化可能并不容易。但是寻找复杂的模式在大型、混乱和混淆数据集正是问题的类型,深度学习的方法可以是有益的…但要实现这一点,你需要对训练数据的访问。
作为一个简化的深度学习的问题,你可以建立一个网络架构,将完成所有的数据处理、特征提取和波形识别任务。如果你获得足够的带安全标签的数据时,您可以使用一个深学习算法来优化这个网络精确波形无标号数据进行分类。这是我们的目标。但是是什么意思有足够的带安全标签的数据时,这些数据是从哪里来的?
回答,首先,我想说,不管你选择什么方法设计你的分类算法,你所需要的数据。即使你正在构建一个基于规则的算法,你必须了解你的系统和信号,它将足以能够写这些规则。
这组数据之间的差异和深入学习系统所需要的主要是数量的问题。
当一个人正在设计一种算法,把多年的经验和知识的问题,帮助他们迅速把某些方法或思想显然不是解决问题的办法。或例如,他们明白什么是白噪声,所以他们可以更快地识别频率图。然而,除非你开始部分训练模型,我们设计的分类网络与深度学习没有经验或现有的知识。它不知道什么是显而易见的。
因此,它需要更多的例子标记数据网络的理解甚至像上升的边缘信号的基本概念,更不用说这些边缘结合成更抽象的概念,比如波形和噪音。
所以,这样我们使用更多的数据,以抵消人类通常会带来的经验和知识。现在,我想说这是一个完整的端到端深度学习方法,原始信号被送入应用网络和一个标签。这需要最数据训练,因为我们没有补充与任何人类知识网络。然而,这并非总是如此。例如,一个人可以用他们的知识来进行预处理数据先说过滤它,或通过改变它的方式让一些特色更加明显,或只要提取明显功能在机器学习算法决定了分类。通过这种方式,我们使用的是人类知识收缩剩下的分类问题,这是需要学习的一部分,因此一般需要较少的训练数据。
现在,不管你的问题适合在这条曲线上,底线是,你需要一些好的标签数据覆盖整个解空间,分类算法需要处理。在我们的例子中,这些数据需要跨越所有的调制方案,在许多不同的载波频率,噪声条件下,带宽等等。
所以,接下来的问题是,如何获得这种带安全标签的数据?和一个方法,如果你幸运的话是使用现有的数据库。如果您正在使用图像为例,你可以从一个图像数据库像ImageNet然后你可以用你自己的标签添加到数据库的数据来填写任何缺失的空白。然而,此刻我想大多数工程问题是独一无二的,增加或扩展现有数据库一样大的一个问题是从头创建自己的数据库。
所以,剩下的另一个选择就是收集自己的数据。可以通过将发射机和接收机的字段和发送各种不同波形参数,同时调整的环境——诸如噪音参数和其他射频源。但你可以想象,这可能是相当困难和耗时的,特别是如果你想控制天气,或不同的传播距离。
在某些情况下,与自主车辆,该领域仍是最好的方法收集数据,因为有数十亿的汽车在路上。的方法是将传感器在汽车人大量的场景和条件。然后随着时间的推移,数百万英里,驱动和无数小时的标签,一个数据库建立。
这也可能是我们使用的方法为我们的波形数据库。毕竟,世界上有数十亿的接收器,就好了如果他们记录下他们的接收信号,标记他们设计的调制方案,然后保存在一个全球数据库。
然而,在这种特殊情况下,有一个更快、更便宜的方式来访问标记数据;通过仿真,通过生成它。
只要你理解解决方案空间的范围,你想解出,然后你可以建立一个模拟,考虑了所有这些。
例如,我们可以列出调制方案我们要分类和具体的参数,损伤的类型,我们希望能够处理变化的硬件,和其他任何我们认为重要的。和使用所有这些,我们可以建立一个将生成的模拟现实的接收信号在整个解空间。只要你相信你的模拟来代表真正的信号的重要特征和特点,然后产生数以百万计的测试用例是相对快速和容易。
合成数据的一个好处是,几乎是免费的,因为你需要的标签标签生成数据放在第一位。
现在重要的是要理解模拟数据时是有意义的,当它不存在。喜欢,如果你想建立一个网络,可以在音频信号词进行分类,然后模拟人们说的话可能是更加困难比收集很多真正的音频。但是对于这个问题,物理很好理解,是有意义的构建模型,并生成数据。
这正是被证明在MATLAB的例子。我鼓励你去看看这个如果真的想理解发生了什么,但是现在我只想迅速强调几件事情。
第一个部分是使用pre-trained网络11不同调制类型识别。这是一个例子,“嘿,如果你能找到一个pre-trained网络,已经做你想要的,那么你完成”。但是如果你不能,你需要培养一个自己。所以,如果我们滚动过去,下一节就是波形数据生成可用于训练新模式。你可以在这里看到它产生了10000帧每个调制类型,所以我们要在几分钟内得到110000信号。
对于每一个信号,它是添加随机白噪声、多路径衰落,和硬件补偿。所以我们的想法是,我们预期覆盖整个解空间。往后的策划一些随机信号,这样你就能看到他们是什么样子的在时域和声谱图。
现在,我们可以用这个模拟数据训练网络,为这种特殊情况下却花了将近一个小时,最终正确标签大约95%的模拟验证数据。这很好,除了那些真正在乎这个网络可以标签模拟数据如何?我的意思是它在模拟训练数据当然学会了做一个好工作在识别它,但真正的考验是如何这个网络可以标签实际射频数据。
在上一节,这正是就完成了。软件定义的无线电传输各种波形和接收器使用培训记录信号和网络标签的波形。根据混淆矩阵是一个很好的工作,总体精度约99%。这似乎是惊人的,但我们必须考虑到在该测试中,这两个收音机是静止和放置2英尺从对方这将限制传播噪声和多路径衰落,或者其他的事情。所以,这些都是相对干净的信号。
真正的测试将验证这个网络硬件的一个更现实的场景。底线,虽然它是可能的,有时候喜欢,使用模拟数据来训练网络。并将工作在现实情况下只要模拟生成信号,真正的系统的匹配条件,或比现实更艰苦的系统边界。
好了,这就是我想离开现在这个视频。希望你有一个想法你会如何收集标签数据为特定工程你想解决的问题。这是否意味着从一个现有的数据库,收集真实的数据,或模拟数据。
相关产品2022世界杯八强谁会赢?
了解更多
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。