从系列:机器学习概论
赛斯迪兰,MathWorks
一步一步地走过机器学习工作流,并深入了解一路上的几个关键决策点。
该视频展示了如何使用机器学习开发手机健康监测应用程序。它首先导入和探索数据。然后讨论了数据的预处理和特征工程,将原始数据转化为机器学习算法可以使用的信息。该视频演示了决策树等机器学习模型和混淆矩阵等模型评估工具。然后,它将展示如何改进和验证模型,以便您能够找到最佳模型,将其转移到手机上并开始跟踪。
在机器学习中,从开始到结束很少有一条直线——你会发现自己在尝试不同的想法和方法。
今天,我们将一步一步地讲解机器学习工作流,并将重点放在一路上的几个关键决策点上。
每个机器学习工作流都从三个问题开始:
本视频中的例子基于手机健康监测应用程序。输入包括来自手机加速度计和陀螺仪的传感器数据。
反应是所进行的活动——走路、站立、跑步、爬楼梯或躺下。我们希望使用传感器数据来训练一个分类模型来识别这些活动。
现在让我们一步一步地完成工作流程的每个部分,看看我们如何让健身应用程序工作。
我们从手机传感器的数据开始。
文本或CSV这样的平面文件格式很容易使用,并且可以直接导入数据。
现在我们将所有数据导入MATLAB并绘制每个标记集来感受数据中的内容。
为了对数据进行预处理,我们寻找丢失的数据或异常值。在这种情况下,我们也可以考虑使用信号处理技术来消除低频引力效应。这将有助于算法专注于物体的移动,而不是手机的方向。
最后,我们将数据分成两组。我们保存部分数据用于测试,其余数据用于构建模型。
特征工程是机器学习的重要组成部分之一。它将原始数据转化为机器学习算法可以使用的信息。
对于活动跟踪器,我们希望提取捕捉加速度计数据的频率内容的特征。
这些特征将帮助算法区分步行(低频)和跑步(高频)。
我们创建一个包含所选特性的新表。
你能推导出的特征的数量只受你的想象力的限制。然而,对于不同类型的数据,有很多常用的技术。
现在是构建和训练模型的时候了。
从一些简单的东西开始,比如基本决策树,是个好主意。这将运行得很快,很容易解释。
为了了解它的性能,我们看一下混淆矩阵,这是一个表,用来比较模型所做的分类与实际的类标签。
混淆矩阵表明我们的模型在区分跳舞和跑步方面有困难。
也许决策树并不适合这种类型的数据。我们试试别的办法。
让我们尝试一个多类支持向量机(SVM)。金宝app
用这种方法,我们现在可以得到99%的准确率,这是一个很大的进步。
我们通过迭代模型和尝试不同的算法来实现我们的目标,但是它很少这么简单。
如果我们的分类器仍然不能可靠地区分跳舞和跑步,我们将寻找其他方法来改进模型。
改进模型可以采取两个不同的方向:简化模型以避免过度拟合,或增加复杂性以提高精度。
一个好的模型只包含最有预测能力的特征,所以为了简化模型,我们首先要尝试减少特征的数量。
有时,我们会寻找减少模型本身的方法。我们可以通过从决策树中修剪分支或从集合中删除学习者来实现这一点
如果我们的模型仍然不能区分跑步和跳舞之间的区别,这可能是由于过度概括。因此,为了优化我们的模型,我们可以添加额外的功能。
在我们的例子中,陀螺仪记录手机活动时的方向。
该数据可能为不同的活动提供唯一的签名。
例如,跑步可能会有加速和旋转的结合。
现在我们已经调整了模型,我们可以根据预处理时预留的测试数据来验证它的性能。如果模型能够可靠地对活动进行分类,我们就可以将其转移到手机上并开始跟踪。
好了,这就是我们的机器学习例子和关于机器学习的概述系列视频。欲了解更多信息,请查看下面的链接。
在下一个系列中,我们将学习一些与机器学习相关的高级主题,如特征工程和超参数调优。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。