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