【AI合规】谷歌负责任的人工智能实践

视频号

微信公众号

知识星球

Chinese, Simplified

人工智能的发展为改善世界各地人们的生活创造了新的机会,从商业到医疗保健再到教育。它还提出了关于在这些系统中建立公平性、可解释性、隐私和安全性的最佳方式的新问题。

人工智能的一般推荐做法

虽然在设计人工智能系统时应始终遵循软件系统的一般最佳实践,但机器学习也有许多独特的考虑因素。

推荐做法

采用以人为本的设计方法

实际用户体验系统的方式对于评估其预测、建议和决策的真实影响至关重要。

  • 内置适当披露的设计功能:清晰和控制对于良好的用户体验至关重要。
  • 考虑扩充和辅助:如果答案很有可能满足用户和用例的多样性,那么生成一个单一的答案可能是合适的。在其他情况下,您的系统向用户建议一些选项可能是最佳的。从技术上讲,要在一个答案上达到良好的精度要困难得多(P@1)相对于在几个答案(例如。,P@3)。
  • 在设计过程的早期对潜在的不利反馈进行建模,然后在全面部署之前对一小部分流量进行具体的实时测试和迭代。
  • 与一组不同的用户和用例场景接触,并在项目开发之前和整个开发过程中纳入反馈。这将在项目中建立丰富多样的用户视角,并增加从该技术中受益的人数。

确定用于评估培训和监控的多个指标

使用几个指标而不是单个指标将帮助您了解不同类型的错误和经验之间的权衡。

  • 考虑指标,包括用户调查的反馈、跟踪整体系统性能和短期和长期产品健康状况的数量(例如,分别为点击率和客户寿命值),以及不同子组的假阳性和假阴性率。
  • 确保您的指标适合您的系统的背景和目标,例如,火灾报警系统应该具有较高的召回率,即使这意味着偶尔会出现误报。

在可能的情况下,直接检查您的原始数据

ML模型将反映他们所训练的数据,因此请仔细分析您的原始数据,以确保您理解它。在不可能做到这一点的情况下,例如,使用敏感的原始数据时,请在尊重隐私的同时尽可能多地理解您的输入数据;例如通过计算聚合的匿名摘要。

  • 您的数据是否包含任何错误(例如,缺失的值、错误的标签)?
  • 您的数据采样方式是否代表了您的用户(例如,将用于所有年龄段,但您只有来自老年人的培训数据)和真实世界环境(例如,全年使用,但您只拥有夏季的培训数据?)?数据准确吗?
  • 训练发球扭曲了训练中的表现和发球中的表现之间的差异,这是一个持续的挑战。在培训期间,尝试识别潜在的偏差并努力解决这些问题,包括调整培训数据或目标函数。在评估过程中,继续尝试获取尽可能具有所部署设置代表性的评估数据。
  • 您的模型中是否有多余或不必要的功能?使用最简单的模型来满足您的性能目标。
  • 对于受监督的系统,请考虑您所拥有的数据标签与您试图预测的项目之间的关系。如果您使用数据标签X作为代理来预测标签Y,在哪些情况下X和Y之间的差距有问题?
  • 数据偏差是另一个重要考虑因素;在人工智能和公平的实践中学习更多。

了解数据集和模型的局限性

  • 为检测相关性而训练的模型不应用于进行因果推断,也不应暗示它可以。例如,您的模型可能会了解到,购买篮球鞋的人平均会更高,但这并不意味着买篮球鞋的用户会因此变得更高。
  • 如今的机器学习模型在很大程度上反映了其训练数据的模式。因此,重要的是要传达培训的范围和覆盖范围,从而澄清模型的能力和局限性。例如,用库存照片训练的鞋子检测器可以最好地处理库存照片,但当用用户生成的手机照片测试时,其能力有限。
  • 尽可能向用户传达限制。例如,一个使用ML识别特定鸟类的应用程序可能会告知,该模型是在世界特定地区的一小组图像上训练的。通过更好地教育用户,您还可以改进用户对您的功能或应用程序的反馈。

测试,测试,测试

学习软件工程的最佳测试实践和质量工程,以确保人工智能系统按预期运行,并值得信赖。

  • 进行严格的单元测试,以隔离测试系统的每个组件。
  • 进行集成测试,以了解单个ML组件如何与整个系统的其他部分交互。
  • 通过测试人工智能系统的输入统计数据来主动检测输入漂移,以确保它们不会以意想不到的方式发生变化。
  • 使用黄金标准数据集来测试系统,并确保其继续按预期运行。根据不断变化的用户和用例定期更新此测试集,以减少在测试集上进行训练的可能性。
  • 进行迭代的用户测试,以在开发周期中纳入一组不同的用户需求。
  • 应用poka yoke的质量工程原理:将质量检查构建到系统中,这样意外故障就不会发生或触发立即响应(例如,如果一个重要功能意外丢失,人工智能系统就不会输出预测)。

部署后继续监视和更新系统

持续的监控将确保您的模型考虑到真实世界的性能和用户反馈(例如,幸福感跟踪调查、HEART框架)。

  • 问题会出现:任何一种世界模式几乎都是不完美的。在产品路线图中留出时间,以便您能够解决问题。
  • 考虑问题的短期和长期解决方案。简单的修复(例如,块列表)可能有助于快速解决问题,但从长远来看可能不是最佳解决方案。平衡短期的简单解决方案和长期的学习解决方案。
  • 在更新已部署的模型之前,分析候选模型和已部署模型的差异,以及更新将如何影响整体系统质量和用户体验。
本文地址
https://architect.pub
SEO Title
Google Responsible AI practices