机器学习算法简介:从线性模型到神经网络上下文)。几十年来,机器学习实际上已经成为一个独立的领域。由于现代计算能力的进步,我们直到最近才能够真正大规模地利用机器学习。但是机器学习实际上是如何工作的呢?答案很简单:算法。机器学习是人工智能的一种,本质上是指计算机无需编程即可自行学习概念。这些计算机程序一旦接触到新数据就会改变它们的“思维”(或输出)。为了实现机器学习,需要算法。算法被写入计算机,并在解析数据时为其提供规则。机器学习算法通常用于预测分析。在商业中,预测分析可用于告诉企业未来最有可能发生什么。例如,使用预测分析算法,在线T恤零售商可以使用当前数据来预测他们将在下个月销售多少件T恤。回归或分类虽然机器学习也可用于其他目的,但我们将在本指南中重点介绍预测。预测是根据输入变量估计输出变量的过程。例如,如果我们输入特定房屋的特征,我们就可以预测售价。预测问题分为两大类:回归问题:我们要预测的变量是数字(例如,房子的价格)分类问题:我们要预测的变量是/否答案(例如,某个设备是否会经历设备故障)既然我们已经介绍了机器学习在预测中的应用,那么我们可以讨论机器学习算法,它们分为3组:线性模型(linearmodels)、树模型(tree-basedmodels)和神经网络网络(神经网络)。什么是线性模型算法线性模型使用一个简单的公式通过一组数据点找到“最佳拟合”线。从您已知的变量(例如成分)的方程式中,您可以找到您想要预测的变量(例如,烤蛋糕需要多长时间)。为了找到预测变量,我们输入已知变量以获得答案。换句话说,要知道烤蛋糕需要多长时间,我们只需要输入配料即可。比如烤一个蛋糕,经过分析我们得到这个等式:t=0.5x+0.25y,其中t是烤蛋糕的时间,x是蛋糕面糊的重量,y=1是巧克力蛋糕0表示非巧克力蛋糕。比方说,我们有1公斤的蛋糕面糊,我们想要一个核仁巧克力饼,我们输入数字来构建这个等式:t=0.5(1)+(0.25)(1)=0.75,即45分钟。有不同形式的线性模型算法,我们将讨论线性回归和逻辑回归。线性回归线性回归,也称为“最小二乘回归”,是线性模型的最标准形式。对于回归问题(我们试图预测的变量是数字),线性回归是最简单的线性模型。逻辑回归逻辑回归只是针对分类问题调整的线性回归(我们试图预测的变量是“是/否”的答案)。由于其结构,逻辑回归非常适合分类问题。线性回归和逻辑回归的缺点线性回归和逻辑回归都有相同的缺点。两者都有“过度拟合”的倾向,这意味着模型以牺牲泛化到先前未知数据的能力为代价太好地拟合数据。因此,这两个模型往往需要进行正则化,也就是说它们有一些惩罚(penalty)来防止过拟合。线性模型的另一个缺点是,因为它们非常简单,所以它们常常无法预测更复杂的行为。什么是树模型树模型有助于探索数据集和可视化预测的决策规则。当您听说树模型时,您可以将其视为决策树或一系列分支操作。树模型非常准确、稳定且更易于解释。与线性模型相比,它们可以映射非线性关系来解决问题。决策树决策树是使用分支方法显示决策的每个可能结果的图形。例如,如果您想订购生菜、浇头和沙拉酱,决策树可以绘制出所有可能的结果(或您最终可能得到的沙拉品种)。为了创建或训练决策树,我们从过去训练过模型的数据中获取数据,并找出哪些属性最能分割目标训练集。例如,我们在信用卡欺诈中使用决策树。我们可以发现,最能预测欺诈风险的属性是支出细节(例如,信用卡用户的支出非常大)。这可能是第一个拆分(或分支)——那些花费异常高的卡片和那些没有的卡片。然后我们使用第二个关键属性(例如经常使用的信用卡)来创建下一个拆分。然后我们可以继续,直到我们有足够的属性来满足我们的需要。随机森林随机森林是许多决策树的平均值,每个决策树都使用随机数据样本进行训练。森林中的每一棵树都比一棵完整的决策树弱,但通过将它们组合起来,我们可以通过多样性实现更高的整体性能。随机森林是当今机器学习中非常流行的算法。它很容易训练(或构建),而且往往表现良好。它的缺点是与其他算法相比,其输出预测可能较慢。因此,当您需要闪电般快速的预测时,您可能不会使用它。梯度提升(gradientboosting)梯度提升类似于随机森林,两者都是由“弱”决策树组成。最大的区别是在梯度提升中,树是一个接一个地训练的。随后的每棵树主要使用前一棵树错误识别的数据进行训练。这使得梯度提升更少地关注易于预测的情况,而更多地关注困难的情况。梯度提升也可以快速训练并且表现非常好。但是,训练数据的微小变化会导致模型发生剧烈变化,因此可能无法产生最具可解释性的结果。什么是神经网络生物学中的神经网络是互相交换信息的相互连接的神经元。这个想法现在已经适应了机器学习的世界,被称为人工神经网络(ANNs)。深度学习是一个经常出现的词,指的是连续放置多个层的人工神经网络。人工神经网络(ANN)包含许多可以学习类似于人脑的认知能力的模型。神经网络可以处理其他算法无法处理的极其复杂的任务,例如图像识别。然而,就像人脑一样,训练模型需要很长时间并且需要大量能量(想想我们吃多少才能让大脑工作)。
