了解AI背后的引擎,技术爱好者应该知道的4种机器学习算法任何真正的技术爱好者都知道移动和控制机器人的基本机器学习算法,这些算法可以做出惊人的事情。有四种主要的机器学习算法——决策树、随机森林、支持向量机和神经网络——在最近的AI开发中常用。机器人技术背后的算法甚至比机器本身更重要,更不用说机器学习的非物理应用了。机器学习基础知识机器学习由几个领域组成,其中与人工智能应用最相关的领域是监督学习。在机器学习的这一部分,给定一个算法x并告诉它预测y。在自动驾驶汽车应用程序中,x可能是汽车前方的当前图像。我们假设图像像素为700像素宽和400像素长,它们将形成大小为700*400=280,000的x。在上面的示例中,前方道路的图像被转换为??长度为280,000的向量,然后被输入到经过训练的机器学习模型中。在这种情况下,模型可能会输出1表示“可以安全行驶”(如果认为道路行驶不安全,则输出0)。自动驾驶汽车中图像识别的其他领域包括深度感知(识别物体的距离)或阅读限速标志。除了图像分类之外,机器学习的其他应用还包括确定一个人过马路的速度或确定前方汽车右转的可能性。在文本实例中,文本被矢量化或转换为数字数组。文本可以分类,例如在真实/假新闻中,或用于生成(创建独特的文本)。机器学习算法输入和输出的一切都是纯数字的,因此每个算法本质上都是数学的。机器学习算法只是执行一组数学过程,将多维x数据转换为(通常)奇异的y值。监督学习的主要子类是分类和回归。前者努力将x划分为一组离散的类别(例如,图像是猫还是狗),而后者努力在连续尺度上分配xay(例如,基于属性的房价,例如卧室)。数据的每个维度也称为特征。在图像的情况下,每个像素都是一个特征,或者在预测房价的例子中,房屋的每个属性(例如,卧室、浴室的数量,是否有海滨等)都是一个特征。决策树决策树算法基于遵循一组是/否问题得出最终结论的简单思想。例如,一个例子是问朋友他们接下来要尝试哪种食物。您的朋友可能会根据他们的经验问您一系列关于您应该尝试哪些食物的“是/否”问题。示例树可能如下所示:根据您对朋友问题的是/否回答,您的朋友沿着树的路径向下走到尽头。对于真实的数据集,决策树可能有几十层深。决策树在分类方面非常强大。在数据集中,该算法试图通过将最具辨别力的特征放在顶部来构建树。最具特色的特征是提供最多信息的最佳特征。一个特征有多“好”可以通过它的信息增益来衡量,或者通过仅基于该特征将数据分成两类来衡量它的信息量有多大。决策树的层在顶部添加最多的信息获取功能,在底部添加最少的信息获取功能。在真实的数据集中,决策树仍然框定是/否问题,但可以用多种方式表达,例如:卫生间的数量是否大于等于3?房子靠近水吗?决策树算法也可以用更小的方式表示对于回归,也可以提供概率置信度(基于获得的信息量)。决策树可以通过复杂的数据结构来选择方法,同时也是可解释的。决策树可用于诊断癌症、老年痴呆症或相关疾病。他们能够捕捉到人类医生永远无法捕捉到的复杂性和深度。可以使用随机森林算法改进随机森林决策树。决策树的问题在于,由于它们试图最大化信息,因此很容易过拟合。在这一点上,该模型已经非常擅长对数据进行分类,以至于它无法在将要使用的新数据上表现良好。这类似于一个孩子记住问题的确切措辞的确切答案,但不能用不同的措辞回答问题。在机器学习中,决策树被认为是高度偏向的算法。就像你的朋友推荐食物的类比一样,单独有一个朋友会让你的选择产生偏差。随机森林通过在“森林”中包含多个决策树模型来扩展决策树算法。类似于朋友推荐食物的例子,想象一下请十个不同的朋友来指导你完成相同的是/否问题回答过程。由于每个朋友都有不同的口味和经历,他们会提出不同的问题,并就应该尝试哪些食物得出自己的结论。最后,您选择您的10个朋友中大多数人都同意您应该点的菜。这允许做出更全面的决策,而不仅仅是基于一个朋友,而是基于许多人的全球视角。随机森林算法包括许多决策树。每个都在随??机选择的不同数据子集上进行训练。每个模型都在不同的数据子集上进行训练,同样具有不同的经验和品味。在每个子集上构建决策树后,随机森林模型会聚合其投票以得出最终决策。随机森林模型可以执行与决策树算法相同的任务。优点是它提供了更平衡的视角,但训练的计算成本也更高。在某些情况下,随机森林甚至可能比决策树更糟糕。不管怎样,决策树和随机森林都是非常强大的分类算法,在AI中有很多应用。支持向量机(SVM)支持向量机(SVM)算法是机器学习中用于二元分类(将数据点分为两类之一)的一种常用且强大的算法。SVM算法构造一条线,将数据分为两类,如下所示。但是SVM的前提是数据是线性可分的,也就是说可以用一条直线(或超平面)将它们放在两个不同的类中。然而,情况并非总是如此:在这种情况下,纯线性SVM分离器无法适应真正的曲线边界。因此,为了解决蒙皮问题,支持向量机应用各种核函数来拉直线性可分边界之间的数据。虽然这是一种简化,但这是内核技巧的主要思想。例如,考虑指数边界,并在拉直上应用对数效应。它还将训练将哪些函数应用于数据,包括但不限于多项式、S形函数、高斯函数以及这些函数的任意组合,以提供最容易线性分离的数据。在高维数据中,无论数据的结构如何,SVM都能很好地工作。支持向量机有时被用作对低维图像进行分类的计算成本低的方法,其中模式易于识别,因此支持向量机可以正确地对其进行分类,但不是用于复杂数据关系的常用算法,即神经网络。神经网络神经网络是机器学习中最强大的算法家族。然而,数学上已经证明,不存在可以在所有数据集上都表现最佳的“通用”算法,因此,神经网络不应该被用作任何数据集的切刀解决方案。最重要的是,它们的训练成本可能很高,应谨慎使用。也就是说,神经网络是最先进的人工智能应用程序中使用最广泛的算法。它们模仿大脑中的神经元和它们之间的联系。在神经网络中,存在三种类型的层:输入层,接收信息。输入层中的神经元数量对应于输入(X)的维数。例如,如果图像数据集为28x28像素,则输入层将有28x28=784个神经元。输出层,输出神经网络的决策。输出层中神经元的数量对应于输出的维度(y)。例如,设计用于将新闻分类为真实(1)或虚假(0)的数据集将只有一个输出神经元。隐藏层,连接输入层和输出层。隐藏层为神经网络增加了更多的复杂性和信息。通常,隐藏层越多,神经网络可以执行的操作就越复杂和“智能”。每个神经元就像一个小型计算器——信息传递、转换、传递到下一层。一个神经元有一个输入经过的激活函数,它只是将输入转换成一种能更好地帮助神经网络理解和处理信息的格式。神经元之间的每个连接也有一个权重。当信息通过连接传递时,它会乘以权重。每个神经元执行少量计算,当你将它们与权重连接在一起时,现代神经网络以巨大的规模运行——数十个隐藏层,每层数百个神经元,以及数百万个参数(权重),它们可以生成文本,读取图像并执行其他“智能”操作。神经网络的反向传播算法调整权重。在神经网络中,调整神经网络之间的权重。如果网络足够大,训练数千万个权重中的每一个可能需要数小时甚至数天。神经网络和深度学习一直是最新技术发展背后的算法,包括AlphaGo击败世界围棋冠军、创造逼真的艺术作品和制作音乐。现在你了解了人工智能的引擎。谢谢阅读!如果您对人工智能或机器学习中的这四种算法有任何疑问或需要澄清,请随时回复。
