旨在识别人类的CAPTCHA测试被机器破解了
为了防止用户作弊或利用软件恶意攻击,很多网站和应用都使用CAPTCHA(Completely Automated Public Turing Test to Tell Computers and Humans Apart,全自动区分计算机和人类的图灵测试)来验证另一端的登录用户是否人类。
不过,现在这种方法已经不灵了,因为有一款软件能够通过这种测试。这说明人工智能朝着接近人类的方向又迈进了一步。让用户识别扭曲的文字往往是网站确定对方是否人类的手段。从理论上来说,旨在区分人与机器的 CAPTCHA 可拥有多种形式,但是扭曲文字图片形式被证明是阻止恶意软件机器人程序及 SPAM 的有效方式。
这是因为当文字以扭曲、重叠或被随机线、点及颜色遮盖的图片形式出现时软件很难破译。而人类这方面却能力超强,往往只需要看几眼就能识别出各种变化形式的文字。
不过一家名为 Vicarious 的初创企业本周宣布已开发出一种算法,可击败文字型的 CAPTCHA。其中,被认为难度最高的 Google的 reCAPTCHA 测试其识别率达 90%,而在 Yahoo、Paypal 及 CAPTCHA.com 的表现甚至更好。
虚拟神经元
该公司击败 CAPTCHA的利器是虚拟神经元。这些虚拟神经元被接入到了一个以人类大脑为蓝本的网络上。网络的各个节点(虚拟神经元)分工明确。首先会有第 1层的节点来检测真实世界的输入,比方说判断图像中的特定像素是白色还是黑色的。在此基础上第 2 层节点会检测像素是否存在特别排列。如果存在,则交给第3层节点来判断这些布局排列是否完全或部分匹配某个形状。这样的过程会在第 3 层和第 8 层之间反复进行,信号最多会在 800万个节点之间传递。最后网络会给出自己认为图像中最有可能包含的文字。
传统的图像识别方法一般是存储特定字符的图像到数据库中,然后将待识别图像与之进行对照检录。但这个神经网络的识别过程却不是机械式地检索对照,而是跟人类的判别过程相似。神经网络首先会有一个受训的过程,不断学习那些已被识别的的 CAPTCHA码和活动的字母视频,然后在学习中不断提高其认知度。
尽管基于神经网络的系统已经得到广泛部署,但由于该公司并未披露更多细节,所以其算法是否算技术突破上不得而知。但是如果的确能攻破文字型 CAPTCHA 的话,其意义将是十分重大的,因为识别文字需要非常高级的理解能力。
目前 Vicarious 尚未打算推出产品,而是计划先挑战更多的图灵测试。其目标是要让机器说出某个复杂场景下所发生的事情,或者去学习如何适应某项简单的工作以便在别处也能执行。此类智能可应用到机器人管家之类的东西上面,以便在杂乱的人类环境下处置各种情况。
Vicarious 的 CEO Scott Phoenix 说他们的关注重点是解决根本性问题,破解 CAPTCHA 属于无心之举。