如需了解问题,请执行以下任务:
- 说明您正在开发或重构的产品的目标。
- 确定是使用预测性机器学习、生成式 AI 还是非机器学习解决方案最能有效地实现目标。
- 如果您使用的是预测性机器学习方法,请验证您是否拥有训练模型所需的数据。
陈述目标
首先,用非机器学习术语陈述您的目标。目标是回答“我要达成什么目标?”这个问题。
下表清晰地说明了假设应用的目标:
应用 | 目标 |
---|---|
天气应用 | 计算某个地理区域每 6 小时的降水量。 |
时尚应用 | 生成各种衬衫设计。 |
视频应用 | 推荐实用视频。 |
邮件应用 | 检测垃圾内容。 |
财务应用 | 总结来自多个新闻来源的财经信息。 |
地图应用 | 计算行程时间。 |
银行应用 | 识别欺诈性交易。 |
餐饮应用 | 根据餐厅的菜单识别菜系。 |
电子商务应用 | 回复评价,提供有帮助的回答。 |
明确的机器学习用例
有些人认为机器学习是一种可应用于所有问题的通用工具。事实上,机器学习是一种专用工具,仅适用于特定问题。当更简单的非机器学习解决方案可行时,您不应实施复杂的机器学习解决方案。
机器学习系统可分为两大类:预测性机器学习和生成式 AI。下表列出了它们的定义特征:
输入 | 输出 | 训练方法 | |
---|---|---|---|
预测性机器学习 |
文本 图片 音频 视频 数字 |
进行预测,例如将电子邮件分类为垃圾邮件或非垃圾邮件、预测明天的降雨量或预测股票价格。 通常,可以通过实际情况来验证输出。 | 通常使用大量数据训练监督式、非监督式或强化学习模型,以执行特定任务。 |
生成式 AI |
文本 图片 音频 视频 数值 |
根据用户的意图生成输出,例如,总结文章或制作音频剪辑或短视频。 | 通常使用大量无标签数据训练大型语言模型或图片生成器,以填充缺失的数据。然后,该模型可用于可构建为填空任务的任务,也可以通过针对某些特定任务(例如分类)的标记数据对其进行训练来进行微调。 |
如需确认机器学习是正确的方法,请先验证当前的非机器学习解决方案是否已优化。如果您尚未实现非机器学习解决方案,请尝试使用启发词语手动解决问题。
非机器学习解决方案是您用来确定机器学习是否适合解决您的问题的基准。在将非机器学习方法与机器学习方法进行比较时,请考虑以下问题:
质量。您认为机器学习解决方案能带来多大的改进?如果您认为机器学习解决方案可能只会带来小幅改进,这可能表明当前解决方案是最佳方案。
费用和维护。机器学习解决方案在短期和长期内需要投入多少费用?在某些情况下,实现机器学习所需的计算资源和时间会显著增加。请考虑以下问题:
- 机器学习解决方案能否证明增加费用是值得的?请注意,大型系统中进行小幅改进,就可以轻松证明实现机器学习解决方案的费用和维护工作是值得的。
- 该解决方案需要多少维护工作?在许多情况下,机器学习实现需要专门的长期维护。
- 您的产品是否有资源来支持培训或聘用具有机器学习专业知识的人员?
检查您的理解情况
预测性机器学习和数据
数据是预测性机器学习的推动力。为了做出准确的预测,您需要的数据中包含具有预测能力的特征。您的数据应具有以下特征:
丰富。数据集中的相关实例越多,模型就越出色。
一致且可靠。收集一致且可靠的数据有助于构建更好的模型。例如,基于机器学习的气象模型将受益于多年来使用同一可靠仪器收集的数据。
受信任。了解您的数据将来自哪里。数据是来自您控制的可信来源(例如产品日志),还是来自您不太了解的来源(例如其他机器学习系统的输出)?
可用。确保所有输入在预测时均采用正确的格式。如果在预测时难以获取某些特征值,请从数据集中省略这些特征。
正确。在大型数据集中,部分标签值不正确是不可避免的,但如果有超过一小部分标签不正确,模型的预测结果就会不准确。
代表性。数据集应尽可能代表真实世界。换句话说,数据集应准确反映要建模的事件、用户行为和/或现实世界现象。如果使用不具代表性的数据集进行训练,当模型被要求进行实际预测时,可能会导致性能不佳。
如果您无法以所需格式获取所需数据,模型的预测结果将不准确。
预测能力
为了让模型做出准确的预测,数据集中的特征应具有预测能力。特征与标签的相关性越高,就越有可能预测出标签。
有些特征的预测能力会比其他特征更强。例如,在天气数据集中,cloud_coverage
、temperature
和 dew_point
等特征比 moon_phase
或 day_of_week
更能预测降雨。在视频应用示例中,您可以假设 video_description
、length
和 views
等特征可能是用户想要观看的视频的良好预测指标。
确定哪些特征具有预测能力可能需要花费很长时间。您可以在训练模型时移除和添加特征,以便手动探索特征的预测能力。您可以使用 Pearson 相关系数、调整互信息 (AMI) 和 Shapley 值等算法自动查找特征的预测能力,这些算法可提供用于分析特征预测能力的数值评估。
检查您的理解情况
如需有关分析和准备数据集的更多指导,请参阅机器学习的数据准备和特征工程。
预测与操作
如果您无法将预测结果转化为有助于用户的操作,那么预测就没有价值。也就是说,您的产品应根据模型的输出采取行动。
例如,用于预测用户是否会认为某个视频有用的实用模型应馈送给推荐实用视频的应用。用于预测是否会下雨的模型应馈送到天气应用。
检查您的理解情况
根据以下场景,确定使用机器学习是否是解决此问题的最佳方法。
某大型组织的工程团队负责管理来电。
目标:根据当前通话量,告知来电者他们需要等待多长时间。
他们目前还没有任何解决方案,但他们认为一个启发词语是将当前的等待客户数量除以接听电话的员工数量,然后乘以 10 分钟。不过,他们知道有些客户的问题可以在两分钟内得到解决,而有些客户的问题则可能需要长达 45 分钟或更长时间才能解决。
他们的启发词语可能无法获得足够精确的数字。它们可以创建包含以下列的数据集:number_of_callcenter_phones
、user_issue
、time_to_resolve
、call_time
、time_on_hold
。
time_on_hold
的预测特征。