什么是机器学习?
机器学习定义
机器学习 (ML) 是人工智能 (AI) 的一个分支,专注于使用数据和算法来模仿人类的学习方式,随着时间的推移逐步提高准确性。它最初在 20 世纪 50 年代被计算机科学家和人工智能创新者 Arthur Samuel 定义为“使计算机无需明确编程即可学习的研究领域”。
机器学习涉及将大量数据输入计算机算法,以便它们可以学习识别该数据集中的模式和关系。然后,算法开始根据它们的分析做出自己的预测或决策。随着算法接收新数据,它们会继续改进其选择并提高其性能,就像一个人通过练习在一项活动中变得更好一样。
机器学习的四种类型是什么?
机器学习的四种类型是监督机器学习、无监督机器学习、半监督学习和强化学习。
监督机器学习是最常见的机器学习类型。在监督学习模型中,算法从标记的训练数据集学习,并随着时间的推移提高其准确性。它旨在构建一个模型,该模型可以在接收到之前未见过的新数据时正确预测目标变量。一个例子是人类标记和输入玫瑰以及其他花卉的图像。然后,当算法收到一张新的、未标记的玫瑰图像时,它可以正确识别出玫瑰。
无监督机器学习是指算法在未标记且没有目标变量的数据中搜索模式。目标是找到人类可能尚未识别出的数据中的模式和关系,例如检测日志、跟踪和指标中的异常,以发现系统问题和安全威胁。
半监督学习是监督机器学习和无监督机器学习的混合体。在半监督学习中,算法同时使用标记数据和未标记数据进行训练。它首先从一小部分标记数据中学习,以根据可用信息做出预测或决策。然后,它通过查找数据中的模式和关系,使用较大的未标记数据集来改进其预测或决策。
强化学习是指算法通过试错,通过对其行为的奖励或惩罚的形式获得反馈来学习。一些示例包括:训练 AI 代理玩电子游戏,其中它因提升等级而获得正向奖励,因失败而受到惩罚;优化供应链,其中代理因最大限度地降低成本和最大限度地提高交货速度而获得奖励;或推荐系统,其中代理建议产品或内容并通过购买和点击获得奖励。
机器学习如何工作?
机器学习可以以不同的方式工作。您可以将经过训练的机器学习模型应用于新数据,也可以从头开始训练一个新模型。
将训练好的机器学习模型应用于新数据通常是一个更快且资源消耗更少的过程。您无需通过训练来开发参数,而是使用模型的参数对输入数据进行预测,这一过程称为推理。您也无需评估其性能,因为它已在训练阶段进行过评估。但是,它确实需要您仔细准备输入数据,以确保其格式与用于训练模型的数据格式相同。
训练新的机器学习模型包括以下步骤
数据收集
首先选择您的数据集。数据可以来自各种来源,例如系统日志、指标和跟踪。除了日志和指标之外,还有几种其他类型的时间序列数据在机器学习训练中很重要,包括
- 金融市场数据,例如股票价格、利率和外汇汇率。此数据通常用于构建用于交易和投资的预测模型。
- 交通时间序列数据,例如交通量、速度和行程时间。这可以用于优化路线并减少交通拥堵。
- 产品使用数据,例如网站流量和社交媒体参与度。这可以帮助公司了解客户行为并确定需要改进的领域。
无论您使用什么数据,它都应该与您试图解决的问题相关,并且应该能够代表您想要进行预测或决策的人群。
数据预处理
收集数据后,您需要对其进行预处理,使其可以被机器学习算法使用。有时这涉及到标记数据,或者为数据集中的每个数据点分配特定的类别或值,这使得机器学习模型能够学习模式并做出预测。
此外,它可能包括删除缺失值,通过应用聚合将时间序列数据转换为更紧凑的格式,以及缩放数据以确保所有特征都具有相似的范围。拥有大量标记的训练数据是深度神经网络(如大型语言模型(LLM))的要求。对于经典的监督模型,您不需要处理那么多数据。
特征选择
某些方法要求您选择模型将使用的特征。本质上,您必须确定与您试图解决的问题最相关的变量或属性。相关性是识别特征的基本方法。为了进一步优化,许多 ML 框架都支持自动特征选择方法。
模型选择
现在您已经选择了特征,您需要选择一个适合您试图解决的问题的机器学习模型。一些选项包括回归模型、决策树和神经网络。(请参阅下文的“机器学习技术和算法”。)
训练
选择模型后,您需要使用已收集和预处理的数据对其进行训练。训练是算法学习识别数据中的模式和关系并将其编码到模型参数中的过程。为了获得最佳性能,训练是一个迭代过程。这可以包括调整模型超参数以及改进数据处理和特征选择。
测试
现在模型已经过训练,您需要在它之前未见过的新数据上对其进行测试,并将其性能与其他模型进行比较。您选择性能最佳的模型并在单独的测试数据上评估其性能。只有以前未使用的数据才能为您提供模型在部署后可能表现的良好估计。
模型部署
一旦您对模型的性能感到满意,您就可以将其部署到生产环境中,在该环境中它可以实时进行预测或决策。这可能涉及将模型与其他系统或软件应用程序集成。与流行的云计算提供商集成的 ML 框架使得将模型部署到云端非常容易。
监控和更新
模型部署后,您需要监控其性能并随着新数据的出现或您试图解决的问题随着时间的推移而发展,定期更新它。这可能意味着使用新数据重新训练模型、调整其参数或选择完全不同的 ML 算法。
为什么机器学习很重要?
机器学习很重要,因为它使用示例学习执行复杂的任务,而无需编程专门的算法。与传统的算法方法相比,机器学习使您能够自动化更多、改善客户体验并创建以前不可行的创新应用程序。而且,机器学习模型可以在使用过程中迭代改进自身!例如包括
- 预测趋势以改进业务决策
- 个性化推荐,以提高收入和客户满意度
- 自动化复杂应用程序和 IT 基础设施的监控
- 识别垃圾邮件并发现安全漏洞
机器学习技术和算法
有许多可用的机器学习技术和算法。您选择哪一个将取决于您试图解决的问题和数据的特征。以下是一些更常见的算法的快速概述:当目标是预测连续变量时使用线性回归。
线性回归假设输入变量和目标变量之间存在线性关系。一个例子是将房价预测为平方英尺、位置、卧室数量和其他特征的线性组合。
逻辑回归用于二元分类问题,其中目标是预测是/否结果。逻辑回归基于输入变量的线性模型估计目标变量的概率。一个例子是根据申请人的信用评分和其他财务数据预测贷款申请是否会被批准。
决策树遵循类似树的模型,将决策映射到可能的结果。每个决策(规则)都代表一个输入变量的测试,并且可以按照类似树的模型连续应用多个规则。它使用树的每个节点上最重要的特征将数据分成子集。例如,决策树可用于根据人口统计数据和兴趣识别营销活动的潜在客户。
随机森林结合了多个决策树,以提高预测准确性。每个决策树都在训练数据的随机子集和输入变量的子集上进行训练。随机森林比单个决策树更准确,并且可以更好地处理复杂的数据集或缺失的数据,但它们可能会变得非常大,在推理中使用时需要更多的内存。
提升决策树训练一系列决策树,每个决策树都以前一个决策树为基础进行改进。提升过程获取先前迭代的决策树错误分类的数据点,并重新训练新的决策树以改进对这些先前错误分类的点的分类。流行的 XGBoost Python 包实现了此算法。
支持向量机致力于找到一个超平面,该超平面可以最好地将一个类的数据点与另一个类的数据点分开。它通过最小化类之间的“间隔”来实现这一点。支持向量是指识别分隔超平面位置的少数观测值,该超平面由三个点定义。标准 SVM 算法仅适用于二元分类。多类问题被简化为一系列二元问题。
神经网络的灵感来自人脑的结构和功能。它们由相互连接的节点层组成,这些节点层可以通过调整它们之间连接的强度来学习识别数据中的模式。
聚类算法用于根据数据点的相似性将数据点分组到聚类中。它们可用于诸如客户细分和异常检测之类的任务。它对于图像分割和处理特别有用。
机器学习的优势是什么?
机器学习的优势有很多。它可以帮助您的团队在以下类别中达到新的绩效水平
- 自动化:对于人类来说具有挑战性的认知任务(由于重复性或客观困难)可以通过机器学习实现自动化。示例包括监控复杂的网络系统、识别复杂系统中的可疑活动以及预测设备何时需要维护。
- 客户体验:机器学习模型提供的智能可以提升用户体验。对于搜索驱动的应用程序,捕获意图和偏好可以让您提供更相关和个性化的结果。用户可以搜索并找到他们的意思。
- 创新:机器学习解决了使用专门构建的算法无法解决的复杂问题。例如,搜索包括图像或声音在内的非结构化数据、优化交通模式并改进公共交通系统以及诊断健康状况。
机器学习用例
以下是机器学习的一些子类别及其用例
情感分析是使用自然语言处理来分析文本数据并确定其总体情感是积极、消极还是中性的过程。它对于寻求客户反馈的企业非常有用,因为它可以分析各种数据源(例如 Twitter 上的推文、Facebook 评论和产品评论)来衡量客户的意见和满意度。
异常检测是使用算法来识别数据中可能表明问题的异常模式或异常值的过程。异常检测用于监控 IT 基础设施、在线应用程序和网络,并识别表明潜在安全漏洞或可能导致稍后网络中断的活动。异常检测还用于检测欺诈性银行交易。了解有关 AIOps 的更多信息。
图像识别分析图像并识别图像中的对象、面孔或其他特征。除了常用工具(例如 Google 图像搜索)之外,它还具有多种应用。例如,它可用于农业以监测作物健康状况并识别害虫或疾病。自动驾驶汽车、医学成像、监控系统和增强现实游戏都使用图像识别。
预测分析分析历史数据并识别可用于预测未来事件或趋势的模式。这可以帮助企业优化运营、预测需求或识别潜在风险或机遇。一些示例包括产品需求预测、交通延误以及制造设备可以安全运行多久。
机器学习的缺点是什么?
机器学习的缺点包括
- 依赖高质量的训练数据:如果数据有偏差或不完整,则模型也可能存在偏差或不准确。
- 成本:训练模型和预处理数据可能存在较高的成本。尽管如此,它仍然低于为完成相同任务而编程专门算法的更大成本,并且很可能不会那么准确。
- 缺乏可解释性:大多数机器学习模型(例如深度神经网络)在如何运作方面缺乏透明度。通常被称为“黑盒”模型,这使得理解模型如何做出决策具有挑战性。
- 专业知识: 有多种模型可供选择。如果没有专门的数据科学团队,组织可能难以进行超参数调优以实现最佳性能。训练的复杂性,特别是对于转换器、嵌入和大型语言模型,也可能成为采用的障碍。
机器学习的最佳实践
机器学习的一些最佳实践包括:
- 确保您的数据是干净、有组织和完整的。
- 选择适合您当前问题和数据的正确方法。
- 使用技术来防止过拟合,即模型在训练数据上表现良好,但在新数据上表现不佳。
- 通过在完全未见过的数据上测试来评估模型的性能。在开发和优化模型时测量的性能并不能很好地预测它在生产环境中的表现。
- 调整模型的设置以找到最佳性能,这称为超参数调优。
- 除了标准模型准确性之外,还要选择能够评估模型在实际应用和业务问题中的性能的指标。
- 保持详细的记录,以确保其他人能够理解和复制您的工作。
- 保持模型更新,以确保它在新数据上继续表现良好。
开始使用 Elastic 机器学习
Elastic 机器学习继承了我们可扩展的 Elasticsearch 平台的优势。您可以开箱即用,集成到可观测性、安全和搜索解决方案中,这些解决方案使用需要较少训练即可启动和运行的模型。借助 Elastic,您可以收集新的见解,为您的内部用户和客户提供革命性的体验,所有这些都具有大规模的可靠性。
了解如何
使用内置集成从数百个来源提取数据,并在数据所在的位置应用机器学习和自然语言处理。
以最适合您的方式应用机器学习。根据您的用例,从预配置的模型中获得开箱即用的价值:用于自动化监控和威胁狩猎的预配置模型,用于实现情感分析或问答交互等 NLP 任务的预训练模型和转换器,以及Elastic Learned Sparse Encoder™,只需单击一下即可实现语义搜索。或者,如果您的用例需要优化和自定义模型,请使用您的数据训练监督模型。Elastic 使您可以灵活地应用适合您的用例并与您的专业知识水平相匹配的方法!
机器学习术语词汇表
- 人工智能是指机器执行通常需要人类智能的任务的能力,例如学习、推理、解决问题和决策。
- 神经网络是一种机器学习算法,它由相互连接的节点层组成,这些节点处理和传输信息。它的灵感来自人脑的结构和功能。
- 深度学习是神经网络的一个子领域,它有很多层,使其能够学习比其他机器学习算法复杂得多的关系。
- 自然语言处理 (NLP) 是人工智能的一个子领域,专注于使机器能够理解、解释和生成人类语言。
- 向量搜索是一种搜索算法,它使用向量嵌入和 k 最近邻搜索从大型数据集中检索相关信息。