当前位置: 首页 > 科技观察

一文看懂机器学习算法在自动驾驶中的应用

时间:2023-03-13 14:30:09 科技观察

机器学习算法已经广泛应用于自动驾驶的各种解决方案中。诸如使用来自不同外部和内部传感器(例如激光雷达、雷达、摄像头或物联网)的数据融合、评估驾驶员情况或对驾驶场景进行分类等应用。在最近发表在KDnuggets网站上的一篇文章中,作者SavaramRavindra将自动驾驶中的机器学习算法分为四大类,即决策矩阵算法、聚类算法、模式识别算法和回归算法。让我们和他一起看看,看看这些算法是如何应用的。算法概述让我们首先想象这样一个自动驾驶场景——汽车的信息娱乐系统从传感器数据融合系统接收信息。如果系统发现司机生病了,它会引导无人车前往附近的医院。基于机器学习,该应用程序可以识别驾驶员的声音、行为,并进行语言翻译。所有这些算法可以分为两类:监督学习和非监督学习,两者的区别在于它们学习的方式。监督学习算法使用训练数据集进行学习,并会坚持学习以达到所需的置信度(最小错误概率)。监督学习算法可以分为回归、分类和异常检测或降维问题。无监督学习算法从可用数据中获取价值。这意味着算法可以找到数据中的内部联系、找到模式,或者根据数据彼此之间的相似程度将数据集划分为子集。无监督算法大致可以分为关联规则学习和聚类。强化学习算法是另一类介于监督学习和无监督学习之间的机器学习算法。监督学习给每个训练示例一个目标标签,无监督学习从不设置标签——而强化学习是它们的平衡,它有时间延迟的稀疏标签——也就是未来的奖励。每个代理根据环境奖励学习其行为。了解算法的优势和局限性并开发高效的学习算法是强化学习的目标。在自动驾驶汽车中,机器学习算法的主要任务之一是持续感知周围环境并预测可能发生的变化。我们不妨将其分为四个子任务:检测物体物体识别和分类物体定位运动预测机器学习算法也可以粗略地分为四类:决策矩阵算法聚类算法模式识别算法回归算法机器学习算法和任务分类不是同样的一对一,例如,回归算法可以用于对象定位以及对象检测和运动预测。决策矩阵算法决策矩阵算法系统地分析、识别和评估一组信息集的性能和值之间的关系,主要是用户决策。车辆的制动或转向是基于算法对下一个移动物体的识别、分类和预测的置信度。决策矩阵算法是将各种独立训练的决策模型组合在一起的模型。在某种程度上,将这些预测组合起来形成一个整体的预测,同时降低了决策的错误率。AdaBoosting是最常用的算法。AdaBoostAdaptiveBoosting算法也可以简称为AdaBoost,它是多种学习算法的组合,可以应用于回归和分类问题。与其他机器学习算法相比,它克服了过拟合问题,并且对异常值和噪声数据非常敏感。AdaBoost需要多次迭代才能创建强大的自适应学习器。学习器将重点放在错误分类的样本上,最后通过加权将弱学习器组合成强学习器。AdaBoost有助于将弱阈值分类器提升为强分类器。上图描述了如何在单个可理解代码文件中实现AdaBoost算法。该函数包含一个弱分类器和增强组件。弱分类器试图在数据的维度中找到一个理想的阈值,并将数据分为两类。分类器迭代数据并在每个分类步骤后更改分类样本的权重。所以它实际上创建了一系列弱分类器,但性能与强分类器一样好。聚类算法有时,系统获取的图像不清晰,难以定位和检测目标,分类算法可能会丢失目标。在这种情况下,他们无法对问题进行分类并将其报告给系统。此行为的可能原因包括不连续的数据、极少的数据点或低分辨率图像。K-means是一种常见的聚类算法。K-meansK-means是一种著名的聚类算法,从数据对象中选取任意k个对象作为初始聚类中心,然后根据均值(中心对象)计算每个对象与中心对象的关系每个聚类对象。distance,然后根据最小距离重新划分对象,最后重新计算调整后的簇的均值。下图以图形方式描述了K-means算法。其中:(a)代表原始数据集。(b)表示随机初始聚类中心。(c-f)显示运行k-means演示的2次迭代。模式识别算法(分类)高级驾驶辅助系统(ADAS)中的传感器获取的图像由各种环境数据组成,图像过滤可用于确定对象分类样本并排除不相关的数据点。