对机器学习信号处理
在许多研究和开发领域中信号是无处不在的。工程师和科学家需要处理、分析和提取信息从时域数据作为他们的日常职责的一部分。在一系列的预测分析应用中,信号的原始数据机器学习系统必须能够利用为通知创造理解和决策的目的。
在这个视频中,我们提出一个分类系统能够识别人类主体从事的体育活动,仅仅基于加速度计信号由他或她的智能手机。我们使用统一的信号处理方法提取相当少量的高度描述特性,最终我们训练一个小神经网络对特征向量映射到六个不同的活动类型的预录的数据集。我们展示如何联合使用MATLAB®和库函数帮助提供高性能的结果与一些设计迭代和简洁、清晰的代码。
讨论的主题包括:
- 信号处理和可视化
- 数字滤波器的设计和应用
- 频域分析
- 自动检测峰值
- 从信号特征提取
- 简单的神经网络的训练和测试
大家好,欢迎来到这个网络研讨会上使用MATLAB信号处理机器学习的技术。我的名字叫Gabriele Bunkheila,我是MathWorks高级应用工程师。我的很大一部分工作是帮助用户MATLAB在信号处理领域,这是我的背景。
所以当人们谈论信号时,他们通常是指一些特定的数据类型代表值不同。在这个网络研讨会中,我将讨论一些标准技术可在MATLAB的定量测量信号和使用它们在更广泛的数据分析工作流程,包括,例如,机器学习算法,如聚类或分类。
年底这个网络研讨会,我希望你能得到一些熟悉一些标准的技术从简单的基本的信号处理和可视化,包括策划和检查并选择部分的信号,进行简单的统计估计,然后在更高级的或更具体的信号处理的主题,使用数字滤波器,例如,分离单个组件或计算频域信号转换获得进一步了解信号的变化随着时间的推移,最后,自动化信号从时域信号测量和提取组敏感特性。
这里的想法是提取信息从用户实际波形,使进一步的算法产生的理解数据,通常在机器学习领域。这个列表的技巧很重要,因为它们是常见的许多数据分析和算法设计工作流。尽管被许多工程师相关工作,他们中的很多人常常感到他们是具有挑战性的。即使实际的事实,他们是很容易拿到如果使用正确的工具。
现在,当我有一些幻灯片给你大部分的网络研讨会,我将讨论一个实际的例子在MATLAB。我换个MATLAB一会儿,然后,迅速和描述这个例子是什么。在这个不断更新的阴谋,我们看着三个加速度计输出信号捕获使用phone-one像智能手机你现在可能发生在你的口袋里。
我们现在看到的信号,对应不同的物理活动由一个人或一个穿的是智能手机的话题。在这种情况下,我们知道地面真理。但我们也试图自动理解活动这是使用计算方法。这是纯粹的基于测量的信号。
正如你所看到的,大多数时候我们是成功猜测活动实际上是什么。现在,仅仅是一个简短的说明说,在这个例子中我使用的数据记录,所以我们不需要等待新数据做好准备。我们可以继续下一个缓冲区一旦我们完成了前一个。
因为我将执行所有必需的计算非常有效,在我的笔记本电脑这是使它运行实时将近100倍。这是非常快,当你想想。别的东西,我想说的是,你可以做我刚刚使用像数据显示也很好。
MATLAB一直能够连接多种专业外部硬件获取真实信号的目的。这些天它也变得越来越有能力连接到移动和低成本的设备。例如,文件交换在MATLAB中央™提供免费下载流传感器信号到MATLAB从iphone和Android™基于智能手机。所以请看看,如果这是你感兴趣的东西。
现在,在我的例子中,虽然这是加速度计数据,我将讨论的技术是广泛与大多数类型的样本信号或时间序列,即使我们不得不考虑应用程序共享一个相似的分类。
我收集的例子在这个名单已经横跨许多不同的行业,像,例如,电子、航天、汽车、金融、国防、或航空了。这些是我个人的应用程序在MathWorks遇到在我的职业生涯。但是,一个全面的列表将会更长。
现在再一次,我把这个概念放在一起的原因是,即使信号分析是常见的许多应用程序和行业,许多人仍然不做得很好。其中一个原因是,如果他们没有在大学学习信号处理,然后个人技术与信号分析通常听起来让人气馁。和学习经常意味着不得不学习很多领域特定的术语。
提前一些其他时间目前还不清楚究竟是什么类型的分析将会给你答案,你在找什么,做开放式的问题。最后,计算效率等问题,缺乏广泛的算法类库,或刚性框架使一些常见的工具,很多人用了不适合甚至中等复杂的完成任务。
我希望年底的会话你会得到一个味道为什么MATLAB可以应对这些挑战,是一个完美的适合这种类型的工作。在我回到MATLAB之前,再次让我回顾我们的例子。我们使用三个分量加速度信号来自智能加速度计。
和仅仅基于这三个标量信号的自动分析,目的是了解活动的人戴着手机做的六个不同的选项或classes-walking之间选择,走上楼,走下楼,坐着,站着,和铺设。
为此,我们使用一个分类算法。这类算法可以告诉一个新的数据样本属于哪个阶级基于先前知识的一组合理的类似的数据样本。它的工作方式是,起初算法暴露在大量的已知病例和训练或优化,以便它可以识别那些已知的情况下,尽可能准确地。
然后它可以运行在新的,未知的样本数据,例如,在这种情况下,一个新的单缓冲区。如果达成,新单缓冲可以制定正确的猜测类基于其经验。现在事实证明,如果数据因此我在这里谈论的训练和测试步骤的实际原始波形,分类算法的工作通常是很难或不可能的。
在实践中,一个非常重要的步骤发生前的实际分类与提取无限集的特征波形的测量。例如,在这种情况下,这些测量应该能够捕捉定量描述能够区分给定活动产生的信号与由一个不同的人。
在机器学习的语言,这种被称为特征提取。的特性是一组测量值的信号。这个研讨会的主要目的是确定好描述功能主要基于信号处理技术和自动化测量使用MATLAB语言。
现在最终在为了选择正确的的特性,这是共同使用一个已知的数据为例,在这种情况下,一个来自实验,控制活动以每个缓冲信号可用正如我们所看到的样品。的知识数据特征选择的初始探索阶段的关键。
对于本例,我使用一个好的数据集可以由两个研究小组分别从西班牙的加泰罗尼亚和在意大利热那亚。如果你感兴趣,你可以得到的数据集在下面这个地址。
所以我希望总的问题是足够清晰了。更详细地看看我们如何使用MATLAB开发的系统地址类似的挑战。探索这个例子,我将使用一个MATLAB脚本。我假设您熟悉MATLAB脚本和函数。不过,如果你不是,你不需要太过担心。这些都是容易理解的概念。
我希望你可以获得本课程的核心理念。所有你看到的绿色的颜色是评论解释这段代码在做什么。你可以看到一条线变成一个评论,你必须使用百分之一的迹象开始。连续两人的迹象,像我一样,例如,在这里,创建一个细胞可以隔离和执行的代码高亮显示在编辑器中光标放置在里面。
在这个脚本中,我有很多细胞,我将执行并讨论连续一次。脚本的第一个单元格是我的完成应用程序启动。所以我不会再执行它。下列细胞加载数据和阴谋的一部分。
这里有一个函数,我曾写道,读取一些数据从我们的数据集,并返回特定的变量。结果,我们现在有一个向量x包含主题的垂直加速度的样本数量一分之一的时间。值得注意的是,该地区集本身与录音来自30个不同的主题。
我们知道我们有每秒50样本的加速度信号,因为50赫兹的采样频率是用作表示这个变量fs。我们也有相对应的时间向量t加速度向量。两个t和x有完全相同的长度,它允许我们情节前者对后者。
如果我看这个情节和它是如何实现,这是一个非常简单的情节在MATLAB实现。其次,只有一个短代码产生it-plot变量x, y变量。顺便说一下,如果你不是自信的使用MATLAB语言,这可能也是通过指向和鼠标的例子,首先选择t,按住控制,插入x,然后右击,选择像阴谋或进入情节选项卡,点击阴谋。
主题的情节向我们表明,加速度记录近8分钟,这将是480秒。也是值得注意的,在某种程度上,这是一个简单的情况下,你知道,样品已经定期间隔。和他们所有的人都可用在许多实际的应用程序。一些样品可能会丢失。所以我至少应该提到在MATLAB有其他技术规范和再加工这些类型的信号。
现在回到你熟悉的plot-if策划在MATLAB中,你就会知道,情节可以定制广泛交互和编程。我在这里不会经历这样的过程。和下面的代码一节中,我将只使用一个函数,我前面写产生更深刻的情节。
现在除了声音轴标签,标题,和传说,这个情节实际上是使用额外的信息在我的工作区中可用的数据,特别是变量ID,它是一个缩写活动ID。告诉我们活动的主题是从事为每个单独的数据样本作为一个整数之间siz。我们可以解释这些整数的意义通过查看剩余的变量标签。
如果我们回顾我们生产的情节,这看起来非常类似于我们的最终目标,大概是猜的活动的每一个新部分信号。或者记住,在这种情况下,这是已知的数据。在这里我们没有猜但只有可视化已经可用的一些知识。
现在真正的问题是如果我们不知道每个活动是什么?我们怎么可能解决它基于数值分析的信号?我觉得这个情节已经很有用,因为这绝对是显示这个加速度信号时有些看起来不同来自不同的活动。
直观地通过检查这个情节,我认为我们已经可以确定一些模式。例如,所有活动在身体的上方垂直似乎呈现一个偏移量或平均的价值10米每秒的平方。这很接近g,其理论价值意识到约9.81米每秒的平方。
所以我认为我可以很自信地说,这是由于引力场的垂直分量。一个轻微的例外似乎发生在坐着。但那么大家总是坐起来对可能取决于你坐在舒适。你可以向前或向后弯曲,这解释了平均值较低。
另一个模式是信号来自activities-either平原走走路,走上楼,走楼下振荡绕着它的价值远远超过了静态活动在站立或坐在这样的垂直位置。基于这些考虑,如果我们想要为自己解决问题,在某些情况下,这可能是简单的。
例如,我们很容易区分铺设和步行通过计算样本的平均值相比,我们的缓冲阈值。如果是低于,说,五个饼,铺设。否则,它是其中的一个人。
我们也可以量化这句话更严格通过观察信号的统计数据。在这种情况下,一个直方图将证明的直方图显示的值出现在一个有限集间隔。通过,让我做一个点,这样的乐器情节从头将需要相当多的努力。例如,一个可以通过数据,为每个数据样本发现间隔值下降和增加这个遇到间隔。
我的下面这个函数,而不是内置函数直方图所做的所有的努力工作。其余的代码仅仅是安排两个情节上的和定制的外观。所以你知道MATLAB的函数介绍了直方图和R2014b发布,它提供了一个新的,更高效的绘制直方图的方法。
顺便说一下,还假设计算均值、均方值的偏差将会很容易。因为它是MATLAB。如果您正在使用一个不同的环境或者没有数学的一种通用编程语言的支持,你会发现你有这样的简单操作可能需要相当多的点击或者至少记忆犹新大约基本数学和从头开始这些回个电话。金宝app
现在回到类似的方法很容易区分不同的活动。我们可以很容易地分离基于其他测量站立和行走,喜欢,例如,标准差或均方根至于根均方值作为另一个柱状图所示。
但是如果我们有纯步行,步行上楼的区别在这种情况下吗?这是我们所看到的。两个,我想说,这显示了一个类似的平均值和类似的标准偏差。如果你知道统计数据,你可能会认为这样的高阶的时刻可能会给我们更多的信息。我猜你可能想继续你的热情,因为从统计的角度来看,在这里的各种科目,你很快就会意识到这两件事几乎是相同的。
所以对我来说,这里的主要是区分信号像这两个统计分析是不够的。,我们需要做的就是看看事情如何变化随着时间的推移,因为这将允许我们,例如,测量的速度振荡信号的加速度信号。
这可能是有用的假设人们移动得更快,例如,当他们走下楼时相比,走上楼,甚至振荡本身的形状。这将是如果我们认为运动的类型有关,从事平原走是捕获不同,例如,当走下楼。
准备自己来分析变化随着时间的推移,有一个重要的需要。我相信我们已经建立,我们有两种主要类型的原因导致数据集内的加速度信号。一个是对齐的主题关于引力场,另一个是身体运动所产生的能量。
一个很大的区别这两个是重力的贡献几乎是恒定的。如果我们想更自信,我们可能会说,它的轴承更慢。相反,肢体动作是快的。当我们关注信号如何随时间改变,自然我们想限制我们注意身体动作所产生的贡献,因为这是我们要分类。
那么他们相关的问题是,有什么方法可以分离出两个贡献现在混合在一起成一个单一的信号,这样我们可以看看,分析每一项分开?在很多情况下,这任务很困难,对于广泛的实际情况,一个标准的方法是设计和应用线性数字滤波器或简单的数字滤波器,短,所以数据。
数字滤波器工作特别好时,信号要隔离或删除组件定义良好的随时间变化的速度或使用一些更具体的术语,被他们所谓的光谱频域组件。例如,在这种情况下我们想只保留的贡献由于身体动作。假设这些变化速度远远高于每秒一振荡。每秒的步数的平均沃克。
我们想丢弃的贡献与缓慢的变化。在单一处理术语,这就意味着愿意设计和应用数据适当的高脉冲滤波器。我将重复这些想法,我们经历的过程。
现在如果我要使用通用语言没有特定的信号处理库,设计和应用数字滤波器的任务会很艰巨。设计阶段尤其需要相当多的数学和特定领域的知识。在MATLAB中,有许多不同的方式可以设计一个数字滤波器。
例如,你可以选择去做完全编程的方式,这意味着使用MATLAB的评论或使用内置的应用程序。让我们先看看后面的样子。使用一个应用程序通常是一个好主意,当你第一次方法的问题。要做到这一点,我去MATLAB工具的应用程序选项卡,我向下滚动到信号处理和通信领域。
在这里,我们将选择滤波器的设计和分析工具。为更先进的过滤设计,你也可以尝试过滤器Builder应用。过滤器设计分析工具是由几部分组成的。例如,这个过滤器规格窗格将帮助我们为我们的过滤器指定正确的需求。下面左边就是我们开始定义我们想实现什么目标。在这种情况下,我会选择高通滤波器,但你可以看到,很多我们的选择也是可行的。这是通过标准的低通、带通、带阻滤波器,再加上一系列的更高级的设计。
进一步,我们要求FIR和IIR之间做出选择。这些都是数字滤波器的两个主要的大家庭。如果你知道数字滤波器,你可能有一个好主意的两个选择,这里列出的设计方法会产生共鸣。
在这里我会跳过细节,我就使用这个选项。然后我搬到正确的,我一直在捕捉注释窗格上方的帮助下规范。我不得不说的事情包括,我们使用50赫兹的采样频率。我们想保持unaltered-that,减弱1或0倍DB-all信号组件振动速度远远高于每秒一种类型或1赫兹。
让我们变得更慷慨,这fs值设置为0.8赫兹。我们也想确保一切左边的这个文件小于通过称为f站是减毒至少给定数量的星展。我会把这个说0.4和相应停止60分贝。这确保了所有振荡低于每秒0.4赫兹或次将小1000倍的过滤器。
按设计,最后,我们实现一个过滤器,满足我们的需求,我们有一组内分析工具对这个程序来验证滤波器的表现。例如,现在我们看所谓的管理响应的频率。如果我需要确认这是纪念规范,我可以覆盖规范面具和放大检查过滤器所有者的需求。你可以看到0.4,0.8。
或者如果我想理解交通行为,按下一个按钮,我可以获得诸如脉冲响应和阶跃响应。一旦我的滤波器设计,我真正想做的是把它应用到我的信号。记住,在这种情况下,目标是消除慢变贡献由于校准加速度计的引力场。
使用这个过滤器MATLAB代码,我可以选择两种类型的方法。我可以去文件和出口过滤器进我的MATLAB工作区作为一个或多个变量。或者我可以生成一些MATLAB代码实现我刚刚做的一切交互通过编程的方法。
你看到刚刚的代码自动生成。然而,值得注意的是,我可以自己独立决定使用类似的评论。,这对我来说自动生成也可以帮助我获得一些启示,以便下次我可以更快地设计滤波器以编程方式。
但更重要的是,现在给我一个快速的方法实现滤波器从我的代码通过使用这个函数的代码。我不会放弃这个功能,因为我以前保存的版本已经在我的工作文件夹称为HB滤波器。
你可以看到,这看起来就像是我们刚生成的。回到我的脚本中,您可以看到,我创建一个过滤器通过presaved函数使用一行代码。下一行,我玩我的垂直加速度的字段。创建一个新的信号,我们只希望找到的贡献由于身体动作。如果我执行部分,
我还策划新的原始信号对其进行过滤。在块中,我们可以看到,新的信号现在所有围绕0没有抵消重力。你也可以看到一些瞬态行为每次新活动。这是完全正常的。和详细,可以量化而设计滤波器作为我们看到几分钟前。
现在我们在一个地方我们可以重新启动分析信号随时间变化的行为。让我们再次回顾我们试图做什么。我们要选择一个合适的测量可以捕获信号之间的差异所产生的不同的活动。
为了调查技术更有可能是有效的,一件有用的事是看个人单独活动。我想给你一个非常有效的方法来选择部分在MATLAB信号基于我们称之为逻辑索引。当我看这个情节,例如,我想把这部分的信号相对于步行。
这一信息,一旦这些样本存储在向量ID在我的工作区。因为我们有多个实例,每一个活动,我们只能说我们希望随着时间的推移,这些样本说,少于250毫秒。如果我们在纯形式化我刚刚所说的英语,翻译这行代码。
这里的结果是一个向量的长度一样我的信号在该地区的利益和0。当我们使用这个向量索引信号或实际时间向量,结果是一个信号,我们感兴趣的一部分。
现在我们可以更容易地看这部分更详细地行走。我们可以放大和定期确认信号振荡相当。大致说来,一个可以说是序数周期信号。
现在一个很好的问题,我怎么能测出这是振荡或甚至捕捉一些定量描述这振荡的形状呢?和一个好的答案将通过将信号转换为频域,而通过观察其光谱表征。
例如,很多人,我知道在这个时候将扔在计算NFFT的想法,这是快速傅里叶变换的速记。在实际的事实,结果由一个光秃秃的FFT算法在隔离仍然是几步离成为真正有用的。
更一般来说,你会找什么叫做谱密度和功率谱密度。现在你知道如何从头开始计算吗?你可以做什么,也许基于FFT的可用性函数,MATLAB安装附带的基本。但是更普遍的是,如果你知道一个操作的名称或您需要使用一个算法,然后你可以搜索这个函数MATLAB文档或浏览器。输入谱密度在这里带来了大量的函数的名称。
例如,在这里我认识一个方法的名称为特殊密度估计,我记得大学被称为威尔士法。对于一些快速指导如何使用这个函数,我可以在它的名字和浏览这个上下文指南在左边。
或者我可以遵循的链接全部文档。这里还有可用的语法列表。我还可以找到解释算法和链接到相关页面的讨论技术主题更多的在一般情况下,例如,在光谱分析一个页面,其中包括介绍主题,可用的方法列表,讨论当每个特定的方法更合适。
现在回到我的脚本,运行这个P威尔士函数信号,采样频率指定很快给我一些深刻的结果。生产的是这样的情节。在x轴上,我已经从0到一半我的采样频率,频率50赫兹。轴,我单位的dB /赫兹的功率密度。
和该地区该地块更高的值可能会把我的信息。在这种情况下,这种模式的山峰0和10赫兹之间持有大量的时域信息的速度和形状振荡。
对于那些至少有一点熟悉信号理论,它可能是有用的画一个与信号产生的乐器,即使在这种情况下,这甚至不是一个良好的信号。在这里你会谈论一个基本频率大概在1赫兹和大量的谐波频率在多个位置。
这些山峰之间的距离频率告诉我们的振动速度信号和的相对振幅峰值振荡的形状密切相关,有点像的木材被称为什么音乐信号。来验证这些语句,让我画出频谱上行走的一个用于步行上楼,限制范围在0和10赫兹之间。
我注意的是楼上走太近的山峰,推到左边,告诉我摆动的速度较低。同时,向右的振幅峰值的基本下降非常快,告诉我,走上楼的振荡的形状不太突然,几乎平滑,更类似于一个简单的正弦信号,这是理想的情况下形成的一个高峰。
所以这些峰的位置和幅度进行描述性的定量信息,如果测量,将构成好的描述性特性。为了进一步说服自己,我也可以比较所有工作信号的频谱的样子在数据集内的30名学生,我在这里做。尽管这里使用的不同规模的垂直轴和由此产生的阴谋,你会发现,事实上,前几个峰的位置和它们的相对比例相当类似30录音。这是30个不同科目的数据集。
现在回到我们的行走信号频谱,我们的目标不仅仅是检查这情节视觉,但实施程序化机制以便我们能自动化测量过程的每一个新的信号,系统提供的一部分。
提取这类信息可以看到,这些峰值位置和幅度从这个情节是很容易的,但是如果你试着至少一次在你的生活中,你可能意识到其实不是那么容易,因为它最初可能出现。例如,一个可能很快得到的位置和幅度最高峰为最大值使用MATLAB函数最大,然后从琐碎的较少。
幸运的是,对MATLAB信号处理工具箱函数称为细峰是建立这样做。现在如果我们使用这个函数的峰值不提供任何其他信息但是我们生特殊的密度,那么这就是它的回报。这是一组完整的当地山峰中发现我的阴谋。没有其余的代码只是照顾策划。
虽然这还不是我们寻找,如果我们花费更多的精力来定义清醒的例子,告诉有多少山峰函数应该返回什么是我们需要的峰值突出或附近的山峰之间的最小距离,我们所期望的,那么结果是更多的鼓励。
就用几行代码,我们现在有一个编程测量方法,可以自动和高度描述信号特征。速度测量方法,我这里使用谱密度还可以用于其他类型的分析。
我想到一个例子是自相关函数,这是特别有用的估计基本频率比单一采样频率非常低。我将展示一个快速的例子。
这就是我们走的自相关信号。自相关总是对称的峰高的在中间,表示信号的能量。对于周期信号,最大峰值的位置向右中央的一个定义了基频信号。
让我好一点,让我的自相关曲线叠加走上楼,走到楼下,放大在第一高峰。这两个信号还非常相似的频率和各自的第一个峰值可以分离相对较好,在一起至少采样时间除了对方。
再次计算自相关,我没有记住任何公式,我花了一行代码。现在我可以继续讨论相关的自动化测量和策略,但对于这个演示的目的,我将停止在这里。
一旦我选择了一定数量的测量,我认为描述不同阶层之间的差异的我的问题,我需要组织在一起,以便为每个新单buffer-we将设置样品能产生的集合所有的测量或特性的特定实例。
我做它的方式就是我收集的所有步骤,我们一起经历了从buffer.m单个函数的特性。在这里每一个新的缓冲所有加速样品的三个方向,我应用过滤器,计算平均值和有效值,然后计算协方差和光谱特性使用辅助函数。
如果我在这里,你可以认识到x和自相关发现山峰函数与P威尔士函数和以类似的方式,找到峰值。这非常类似于我们所做的几分钟前,加上我没有详细讨论的时间,这是一个简单的测量振动的能量是如何分布在信号的功率谱。
我真的很喜欢这个函数,如果我测量净的代码行数不包括注释和空行,总结只有65行代码。我用这年代对数函数免费从MATLAB中央文件交换。
现在回顾一下在这一点上,每一个新的信号缓冲我们有一种方法来提取特征向量包含66个测量信号的特点。在这一点上,如果我们的问题很简单,我们可以考虑建立一些自定义逻辑看着特征向量,根据值,实现了一个猜出正确的策略类的信号。这在理论上是可能的。
这种逻辑的样子如果均值大于x和RMS大于y和第一个峰值的位置,例如,不仅仅是Z和第一个峰值的振幅小于W,然后信号是由步行上楼,说。现实情况是,随着问题的复杂性,提出这样一个手动逻辑机制是非常不切实际的。
加上它并不保证我们利用特征向量的所有信息。这些特性是常用的方式是通过一个分类算法我们早些时候说。有许多类型的分类算法在MATLAB可用,更具体地说。在本例中,我使用一个神经网络。
在一行代码,我创建一个网络。如果您熟悉神经网络,你可能会想知道,在这种情况下,这个简单的语法创建一个前馈网络使用一个内部18层神经元技术选择这些神奇的数字。但是让我们忽视这个简单的例子。
在另一行中,我使用的部分培训网络数据集。培训流程调整内部参数模型在这种情况下,它可以优化识别正确的活动的网络提供的信号段。记住,我的数据集组成的录音和已知的活动ID值为每个部分录音。来训练网络,我们提供两种。
引发网络的训练,你注意到一个用户界面出现了。这是更新我们的进展培训过程,它可能是非常有用的用于监控的复杂网络优化培训可能需要更长的时间。在这种情况下,一切发生的很快。我现在的网络训练分类新的信号段,它从未见过的。
我现在可以运行网络新的数据和定性观察它是如何做的。我们现在终于来到我们最初开始的地方。为每个新缓冲区,我们正在策划三个组件的加速度,计算我们66年的生活特性,联机,最后使用我们的列车网络的预测我们在做什么。
因为这些新信号仍然来自数据集,即使他们是新的分类算法,我们仍然知道他们属于什么活动,所以我们可以比较自动猜地面真理。
最后,真正评估分类算法的性能,而不是观察在线行动我们刚刚完成,通常会让它分类新数据集的一部分以批处理模式,所以在一次,然后计算一些数据。举例来说,一个常见的方式总结视觉分类算法的性能是混淆矩阵,我创建在这个代码部分。如果我们想带走一个数字,我们可能会低下头来,说我们系统整体接近92%准确的测试集。
更一般来说,这个矩阵显示计数之间的耦合算法的一个给定的目标类和猜测正确的猜测躺在矩阵对角和对角线。例如,在这种情况下,这两个两个地地区显示出一个重要坐和站之间的数量错误的猜测。如果我们想提高我们的算法的性能,我们可以专注于识别更多的功能,帮助更好的区分这两个特殊的情况下。
好的。在这一点上,让我回到我的幻灯片。如果要我总结这个例子中,我们的主要目标是识别的方法提取高度描述性特性的时域数据或信号。我的三个主要收获是,我们能够做到完全通过重用现有可用的信号处理功能。总的来说,我们66年自动测量功能使用只有65行代码。
我们也花了好语言和内置的可视化特性的优势建立哪些有用,哪些不是。通过这样做,我们能够得到这个任务很快的底部。关于大使用的内置函数,我特别想提醒你的东西是东西的数量让我们没有重塑。
如果我看我们使用的样本函数,那么这些将一些潜在的公式,我们将需要挖出从网上或者教科书或在网站上的一篇论文的细节和MATLAB代码。有可用的信号处理工具箱允许我们简单地保存所有。
我们也花了很大的优势的神经网络工具箱,使我们能够构建和训练传统类型的神经网络在两行代码。如果你曾经学习神经网络,你可能还记得,即使训练基本简单的网络优化算法是相当复杂,如果从头做容易出错。
我已经还提到,神经网络表示一组特定的所有可能选择一个分类算法。对于所有其他通用贝叶斯分类器和支持向量机分类算法,一个好的地方是统计和机器学习的工具箱™。金宝app
统计和机器学习工具箱还包括其他机器学习技术集群或回归。
这让我这个网络研讨会的结论。我希望你喜欢它,如果不是什么至少我能给你一个想法的广泛可用的函数信号处理和数据分析和MATLAB工具箱。我也希望我转达了多么容易可视化功能和内置的MATLAB程序可以使复杂的周期很快发现。也多亏了简洁的MATLAB语言,它允许我们执行先进的加工和分析任务在短短几行代码。
如果你有问题,请到问答面板中,由一个问号表示在你的网讯面板在屏幕的顶部。我们将花几分钟来检查它们,然后回来在线回答你的问题。
了解更多
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。