算法正在创造一个没人能理解的代码世界

这几年,以今日头条为代表的“算法分发”模式席卷全球互联网行业。而各界对算法的非议也渐渐浮现,有的认为它“计算不准”,有的认为它“恶意推荐”,甚至还出现了“算法技术应退出时代舞台”的论调。

事实上,对科技公司来说,算法是一把双刃剑,一方面在驱动其业绩增长方面立下了汗马功劳,另一方面却“后患无穷”。以今日头条为例,该公司几乎完全凭借算法,快速超越了传统门户的人工编辑模式,优势极为明显;但在判断内容质量,发现传播风险方面,算法却还处于非常初级的阶段,不太能指望得上。

总的来说,随着算法的发展,这个代码叠加的技术正逐渐创造一个没人能理解的世界......

2018年3月18日,悲剧发生了,这也是科技人士所担心的。那天晚上,一辆Uber无人车在自动驾驶的状态下行驶,突然检测到前方有障碍物出现。一系列雷达和激光雷达传感器探测到的数据让机载算法开始计算,假设障碍物保持不动,车速稳定在43英里/小时,那现在二者的距离只需6秒。但是道路中的物体很少保持静止,于是更多的算法开始搜索可识别生物实体的数据库,以寻找一个模型来推出一个完美的解决方案。

起初,计算机空白了几秒,随后决定与障碍物“碰面”希望它能自行离开。然而,到最后一秒,该车才清楚的知道,这是一位推着自行车的女士。在这种情况下,汽车想要绕过去,但因为禁止自行采取规避行动,计算机只能将控制权交还人类。遗憾的是,安全员正在开小差,悲剧就这样发生了:49岁的Elaine Herzberg在车祸中去世。这件事也给科技界的留下了两个值得反思的问题:这种算法造成的悲剧是不可避免的吗?我们应该如何应对这些事件?

“在某些方面,我们失去了控制权。当程序进入代码,代码进入算法,然后算法开始创建新算法时,它会越来越不受人类控制,软件也就进入了一个没人能理解的代码世界。”是不是听起来很惊悚,事实也会如此。这句话出自Ellen Ullman之口,她是自20世纪70年代以来的一位杰出的专业程序员,也是为数不多的几位出版过关于编程的书的人。

“人们可能会说,‘那Facebook呢?他们创造并使用算法,还会进行改进。’但这不是Facebook的运作方式。研究员设置算法,它们学习,改变和运行自己。Facebook定期介入,但他们真的无法控制这些算法,对特殊的算法而言,它们不仅仅是自主运行,还会调用数据库,进入深层操作系统,等等。”

什么是算法?

如今,很少有哪种技术会比算法更受欢迎,但算法究竟是什么呢?从根本上说,算法是一个小而简单的事情,即用于自动处理数据的规则。如果a发生了,那么执行b;如果没发生,那就执行c。这是经典计算的“if / then / else”逻辑。核心上,计算机程序是这类算法的捆绑,为它们投递处理数据。

不过,近年来算法出现了一种很模棱两可的定义,指任何大型、复杂的决策软件系统,根据一组给定的标准(或“规则”),获取数据输入并快速评估。这彻底改变了医学、科学、交通、以及通信领域,让人们的生活在各个方面变得更好。

直到2016年,我们对算法有了新的思考。像Facebook和谷歌这样的公司开始以客观的承诺为算法辩护,认为它可以通过数学分离和缺乏模糊情感来权衡一系列条件。基于此,这种算法决策扩展到了发放贷款、保释、福利、工作面试以及其他任何需要选择的事情上。

现在的我们不再能接受这种对算法的“推销”。凯西·奥尼尔(Cathy O'Neil)在其著作《数学破坏武器》(Weapons of Math Destruction)中表示,对于人类的偏见,算法不仅会巩固还会放大,而不是消除。对此,她呼吁对任何能直接影响公众的系统进行“算法审计”(algorithmic audits),这是一个明智的想法,不过对科技行业不是一件好事,因为算法是他们的支撑,他们最不愿做的就是透明化。

好消息是这场战斗正在进行中,坏消息是人们的注意力都集中在人工智能的遥远承诺和威胁上,几乎没人注意到我们进入了算法革命的新阶段。由奥尼尔和其他人所创造的算法是不透明但可预测的,我们将这些算法称为“dumb”,它们能根据人类定义的参数来完成工作。

而结果的质量取决于编程的思想和技巧。其终极目的便是人工智能或AGI。一个智能机器将能够基于直觉(我们可能认为是经验和知识的积累)质疑自己的计算质量。谷歌DeepMind创建的AlphaGo就是一个很好的例子。事实上,在某些特定任务中,计算机已经远远优于人类,但要与人类的能力相比媲美,还需要时间。

现实生活中的危险

回到之前Uber无人车发生事故的原因。目前正在测试的自动驾驶汽车可能包括1亿行代码,并且鉴于没有程序员可以预测真实世界道路上的所有可能情况,他们必须学习并接收不断更新。我们如何避免在此代码环境中发生冲突,尤其是算法可能还需要保护自己免受黑客攻击的时候?

二十年前,George Dyson在他的经典着作《电脑生命天演论》(Darwin Among the Machines)中预测了今天发生的大部分事情。他表示问题在于我们正在构建超出控制范围的系统。人们总是相信,如果一个系统是确定的(根据固定规则行动,这是一个算法的定义),它就是可预测的,并且预测也是可控的。实际上,这两个假设都是错误的。

与以前的电子机械系统不同,新算法无法进行详尽的测试。除非我们拥有超级智能机器为我们做这件事,否则我们就是在铤而走险。因此,从目前的情况看,重点是机器学习。我们都知道,今年早些时候,Uber自动驾驶汽车出现了致死事故,因为算法在对行人分类时犹豫不决。这是由于编程不佳,算法培训不足还是拒绝接受技术的局限性造成的?真正的问题是我们可能永远不会知道答案。

新南威尔士大学的人工智能教授Toby Walsh表示,“我们最终会完全放弃编写算法,因为未来机器能比以我们做得更好。从这个意义上说,软件工程可能是一个垂死的职业。它将被机器接管。”此外,他还指出,这会让人们学习编程变得更加重要,因为随着我们越来越疏离编程,就会越觉得它的影响超出了我们的能力。另外,伦理在科技领域来说,是最重要的。毕竟,哪里有选择,哪里就是道德所在的地方。

相反的观点是,一旦程序出现问题,整个程序群体就可以被重写或更新,同一种情况就不会再发生了,而不像人类,重复错误的倾向可能更会误导机器。尽管如此,虽然从长远来看自动化应该更安全,但我们现有的侵权法体系需要重新定制,这需要有意或过失的证明。

其实,上文描述的大多数问题,也都在寻找解决方案。从长远来看,会有更多的人猜测,考虑到我们越来越依赖的算法系统的规模,复杂性和相互依赖性,当前的编程方法已不再适用。对此,部分航空航天工业采用了一种较新的被称为“基于模型的编程”的方法,其中机器完成大部分编码工作并且能够随时进行测试。

然而,基于模型的编程可能不是万能的灵丹妙药。它不仅使人类进一步远离这一过程,而且人类也无法从代码本身推断出极端行为,即使是在使用大型复杂系统构建的情况下也是如此。当我们等待技术上的答案来解决算法问题时,或许采用一些预防措施才是最重要的。

文/人工智能观察

免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。