AI 开年翻车事件:训练神经网络除 bug ,结果它把整个库删了……

简介: 这件听起来很荒谬的事情,真实在美国「大众点评」Yelp 上发生了。

雷锋网 AI 科技评论按:授权 AI 删除 app 中的 bug,结果 AI 将整个库都给删了,这件听起来很荒谬的事情,真实在美国「大众点评」Yelp 上发生了。     

TB19.tuCOrpK1RjSZFhXXXSdXXa.png

Yelp 是美国著名商户点评网站,创立于 2004 年,囊括各地餐馆、购物中心、酒店、旅游等领域的商户,用户可以在 Yelp 网站中给商户打分,提交评论,交流购物体验等,由前贝宝(Paypal)工程师杰里米·斯托普尔曼 (Jeremy Stoppelman) 和罗素·西蒙斯(Russel Simmons)共同创建。

近日, Yelp 在 app 上的一则更新说明把大家给乐坏了:

     

TB1oTxtCNTpK1RjSZR0XXbEwXXa.png

「我们要向那些在本周使用 app 时遇到问题的用户们道歉。我们训练了一个神经网络来消除 app 中的 bug,没想到它把所有的东西都消除了。我们现在只好进行数据恢复。目前暂时达成 100 % 没有 bug 的状态……」

对此,微博网友立马开启了「群嘲模式」:

     

TB1joJwCMHqK1RjSZFPXXcwapXa.png TB1vKhFCNYaK1RjSZFnXXa80pXa.png

给人类留点面子好吗……

从 APP 过去两个月的更新说明来看,Yelp 基本上可以说将「除 bug」当成自己的首要任务,从万圣节到圣诞节再到跨年,Yelp 的程序员们几乎每天都沉溺在「消虫乐」的欢乐氛围当中……

TB16eRsCFYqK1RjSZLeXXbXppXa.png TB1ncdvCQvoK1RjSZFNXXcxMVXa.png

估计是在除 bug 这条道路上除出了固定套路,才会让 Yelp 的程序员们萌生通过训练神经网络来达成自动除 bug 的想法,只是他们没想到竟然会如此出师不利。

由于 Yelp 至今尚未公布详细的网络训练和删库细节,因此我们仅仅只能通过猜测来判断导致删库的原因。然而令人感到绝望的是,即便 Yelp 程序员们想复盘「删库」事件的原由,神经网络的「黑箱」性质也将导致该行为没法很好地落实。

难道我们就一点办法也没有了吗?

虽然 Yelp 以血淋淋的例子告诉我们,自动 debug 有风险,然而我们不能因此否定许多机构在这方面研发工作的努力,毕竟 debug 工具一旦能够开发出来,程序员们将可以把更多精力放在写出更多代码上。

其中,最具代表性的是 Facebook 的 SapFix。

     

TB1.6VpCMTqK1RjSZPhXXXfOFXa.png

这是一款于去年 9 月份发布的代码调试工具,配合 Facebook 的自动化漏洞发现工具 Sapienz,可以针对 bug 生成修复补丁。     

TB1nd4uCQvoK1RjSZPfXXXPKFXa.png

在具体的执行流程上,SapFix 会先给每个 bug 生成多个潜在补丁,然后从 3 个方面对补丁质量进行评定(是否存在编译的错误、程序是否还会崩溃、补丁是否引入新的冲突),在评定结束后,SapFix 会在修复版本上进行测试,结果出来后第一时间发给人工评审员进行审批。

一旦获得人工反馈,SapFix 将会执行那些经批准的补丁,并清除其他未被批准的补丁。

值得一提的是,在面对较复杂的问题时,SapFix 会从过往的修复模板集去寻找生成补丁的借鉴参考。即使没能找着合适的修复模板,它也会尝试基于突变进行修复——简单来说,就是对导致崩溃的语句的抽象语法树(AST)执行小型代码修复,调整补丁,直到找着可行的解决方案。

该工具被 Facebook 视作 AI 技术的里程碑,下一步计划让 SapFix 实现自动制止代码崩溃机制,以及让软件的反应变得更敏捷。

Yelp「删库」事件是典型的 AI 过早落实民用的例子,在技术尚未成熟的条件下,AI 在输出结果上难免要犯傻,毕竟就像这位网友所说的……

     

TB1Uu8uCSzqK1RjSZFHXXb3CpXa.png

最后,祝广大程序员们都能写出没有 bug 的代码

雷锋网 AI 科技评论 雷锋网(公众号:雷锋网)

目录
相关文章
|
7天前
|
机器学习/深度学习 存储 人工智能
【科普向】我们所说的AI模型训练到底在训练什么?
人工智能(AI)模型训练类似于厨师通过反复实践来掌握烹饪技巧。它通过大量数据输入,自动优化内部参数(如神经网络中的权重和偏置),以最小化预测误差或损失函数,使模型在面对新数据时更加准确。训练过程包括前向传播、计算损失、反向传播和更新权重等步骤,最终生成权重文件保存模型参数,用于后续的应用和部署。理解生物神经网络的工作原理为人工神经网络的设计提供了灵感,后者广泛应用于图像识别、自然语言处理等领域。
|
9天前
|
人工智能 开发框架 安全
Smolagents:三行代码就能开发 AI 智能体,Hugging Face 开源轻量级 Agent 构建库
Smolagents 是 Hugging Face 推出的轻量级开源库,旨在简化智能代理的构建过程,支持多种大语言模型集成和代码执行代理功能。
206 69
Smolagents:三行代码就能开发 AI 智能体,Hugging Face 开源轻量级 Agent 构建库
|
7天前
|
人工智能 物联网
如何将Together AI上基于Qwen2-7B训练的模型部署到ModelScope平台
如何将Together AI上基于Qwen2-7B训练的模型部署到ModelScope平台
44 10
|
11天前
|
人工智能 数据处理 C#
AI Dev Gallery:微软开源 Windows AI 模型本地运行工具包和示例库,助理开发者快速集成 AI 功能
微软推出的AI Dev Gallery,为Windows开发者提供开源AI工具包和示例库,支持本地运行AI模型,提升开发效率。
53 13
|
11天前
|
SQL 人工智能 关系型数据库
PolarDB-PG AI最佳实践 2 :PolarDB AI X EAS实现自定义库内模型推理最佳实践
PolarDB通过POLAR_AI插件支持使用SQL调用AI/ML模型,无需专业AI知识或额外部署环境。结合阿里云EAS在线模型服务,可轻松部署自定义模型,在SQL中实现如文本翻译等功能。
|
1月前
|
机器学习/深度学习 存储 人工智能
【AI系统】感知量化训练 QAT
本文介绍感知量化训练(QAT)流程,旨在减少神经网络从FP32量化至INT8时的精度损失。通过在模型中插入伪量化节点(FakeQuant)模拟量化误差,并在训练中最小化这些误差,使模型适应量化环境。文章还探讨了伪量化节点的作用、正向与反向传播处理、TensorRT中的QAT模型高效推理,以及QAT与PTQ的对比,提供了实践技巧,如从良好校准的PTQ模型开始、采用余弦退火学习率计划等。
83 2
【AI系统】感知量化训练 QAT
|
1月前
|
机器学习/深度学习 存储 人工智能
【AI系统】训练后量化与部署
本文详细介绍了训练后量化技术,涵盖动态和静态量化方法,旨在将模型权重和激活从浮点数转换为整数,以优化模型大小和推理速度。通过KL散度等校准方法和量化粒度控制,文章探讨了如何平衡模型精度与性能,同时提供了端侧量化推理部署的具体实现步骤和技术技巧。
50 1
【AI系统】训练后量化与部署
|
15天前
|
人工智能 智能硬件
SPAR:智谱 AI 推出自我博弈训练框架,基于生成者和完善者两个角色的互动,提升了执行准确度和自我完善能力
SPAR 是智谱团队推出的自我博弈训练框架,旨在提升大型语言模型在指令遵循方面的能力,通过生成者和完善者的互动以及树搜索技术优化模型响应。
38 0
SPAR:智谱 AI 推出自我博弈训练框架,基于生成者和完善者两个角色的互动,提升了执行准确度和自我完善能力
|
1月前
|
人工智能 PyTorch 测试技术
【AI系统】并行训练基本介绍
分布式训练通过将任务分配至多个节点,显著提升模型训练效率与精度。本文聚焦PyTorch2.0中的分布式训练技术,涵盖数据并行、模型并行及混合并行等策略,以及DDP、RPC等核心组件的应用,旨在帮助开发者针对不同场景选择最合适的训练方式,实现高效的大模型训练。
65 8
|
2月前
|
机器学习/深度学习 自然语言处理 语音技术
Python在深度学习领域的应用,重点讲解了神经网络的基础概念、基本结构、训练过程及优化技巧
本文介绍了Python在深度学习领域的应用,重点讲解了神经网络的基础概念、基本结构、训练过程及优化技巧,并通过TensorFlow和PyTorch等库展示了实现神经网络的具体示例,涵盖图像识别、语音识别等多个应用场景。
85 8