加强版 Captcha 让机器彻底蒙圈,正误验证码傻傻分不清

简介:
    Captcha(全自动区分计算机和人类的图灵测试,俗称验证码)是目前用于区分人和机器主要办法,其工作原理是通过提供模糊或是有歧义的图片,并要求用户进行回答,以此来区分人和机器。而 Captcha 能有效地区分出人和机器主要是依靠以下两个方面,一是人在面对问题难度增加时,可以随机应变;二是机器不能很好地文本识别。但是随着计算机的逐渐发展,机器回答 Captcha 问题的能力逐渐超过了人类,因此,加强版 Rip Captcha 也应运而生。

在字母识别任务 circa 2005 中,计算机的识别能力已经超过了人类,并且也征服了 Gmail 的验证码。尽管目前大部分的 Captchas 还是可以区分多数的机器,但是随机计算机不断地进化,能区分出的机器会逐渐减少。所以目前最紧急的问题是如何建立一个更好的 Captcha 系统,以应对逐渐进化的计算机视觉。

来自韩国大学的两位教授,Shinil Kwon 和 Sungdeok Cha 基于图像基础研发了新的 Captcha 系统。这一系统中的图片会具有时效性,问题的答案会随着时间的不同有所变化。所以,机器不能通过随机猜测得出答案。这个系统的能区分人和机器的关键在于:在没有试验或是相关经验的情况下,机器的智能性会大打折扣。

经典的文本识别 Captcha 系统不是讨论的重点。我们仅仅是在假设 Captcha 的答案是固定的基础上,进行进一步研究。Cha 和 Kwon 的研究重点就是关注 Captcha 系统的下一级迭代,即从图像中提取信息。

加强版 Captcha 让机器彻底蒙圈,正误验证码傻傻分不清

via Cha et al

Cha 和 Kwon 在 IEEE Software 上发表的论文表示:“尽管计算机视觉十分地强大,但在在语义识别方面好有所欠缺。”举个例子,在大量的图片中,选择比尔盖茨出现过的图片。尽管这一问题对于机器来说不是很难,但是我们要想一下机器每天会识别多少图片——大概是 100 万张。每一次试验就代表着机器对任务有新的认识,因此在下一次识别成功的几率就会更大。

“如果机器能侥幸通过任务测试,它们就可以记录下所有相关信息,在未来任何的挑战中都可以用得到。”Cha 和 Kwon在论文中写道,“或者进一步说,机器可以使用商业搜索引擎,搜索相关的图片标签或是相似的图片,加深对图片的理解。”

 Cha 和 Kwon 的解决方法是在 Captcha 系统中输入一系列的图片,其中包括正确答案,错误答案,并且有些正确的答案是在旧版的 Captcha 系统中就有涉及。一般来说,我们都会认为 Captcha 的图片都是标注为正确或是错误,但是这一新的 Captcha 系统还有第三种结果,中立可能性。人和机器选择或是不选中立的答案,对于结果都不会有影响。并且,这些中立的答案会随时改变,所以表面看尽管看起来是一样的,但是实际上却有所不同。

机器通过随机猜测获取正确答案,但是却并不是真正意义上的学习,因为它不知道为什么错或是为什么对。在引入新的系统之后,机器的随机猜测就会变得毫无意义,因为机器在试验时并未意识到有些答案是中立的,并且在通过测试之后,机器会直接将这一中立答案认定为正确答案加入自己的数据库中。

此外,通过引入“陷阱”数据,这一系统还能进行进一步优化。“陷阱”数据的实现是通过将中立答案与特定 IP 地址联系起来。因为机器一般都是基于特定的 IP 地址进行识别,在之前的测试中,机器人错将中立答案当做正确答案,并将其加入到自己的数据库之中。所以机器在面对同一问题时,会错将中立答案当做是正确答案进行回答。此外,有时错误的答案也会标记成中立答案。

在测试新的 Captcha 系统时, Cha 和 Kwon 发现机器在 2,250,000 次测试中,机器的成功的几率仅仅只有 2.3%,几乎是接近于零。“由于随机和实时的中立图片,机器的数据库就不能保证所有通过测试的答案都是正确的,另外机器也不会进行错误更正。” Cha 和 Kwon 在文中写到,“我们发现在机器的数据库中有2,465 张图片中(大约有19.9%)都进行了错误的标记。”人在在没有陷阱数据的情况下,成功率为 79.3%;在有陷阱数据的情况下成功率为 64.5%。人与机器的成功的几率相差很大,所以在引入新的 Captcha 系统可以更有效地区分机器和人。

   
  
  本文作者: 陈圳

本文转自雷锋网禁止二次转载, 原文链接
目录
相关文章
|
XML 开发框架 .NET
|
机器学习/深度学习 PyTorch 算法框架/工具
为什么大型语言模型都在使用 SwiGLU 作为激活函数?
SwiGLU可以说是在大语言模型中最常用到的激活函数,我们本篇文章就来对他进行详细的介绍。
1114 9
|
机器学习/深度学习 自然语言处理 算法
Transformer 模型:入门详解(1)
动动发财的小手,点个赞吧!
13844 1
Transformer 模型:入门详解(1)
|
12月前
|
分布式计算 DataWorks 监控
dataworks组件
DataWorks 可能会添加新的功能或改进现有的组件,因此建议查阅最新的官方文档以获取最准确的信息。
285 2
|
API 开发者
淘宝官方商品、交易、订单、物流、插旗接口接入说明
这些接口涉及淘宝店铺订单管理的关键方面,包括订单列表、订单详情及订单物流信息的获取。订单列表接口(如`taobao.trades.sold.get`和`taobao.topats.trades.sold.get`)帮助商家快速了解订单概览,进行基本管理和统计。订单详情接口(如`taobao.trade.fullinfo.get`和`taobao.topats.trades.fullinfo.get`)提供单个订单的全面信息,便于发货准备和服务支持。订单物流接口则允许跟踪订单的物流状态,确保配送顺畅。使用这些接口需遵循淘宝开放平台的规定,并关注API调用限制与更新。
|
11月前
|
人工智能 算法 安全
人工智能伦理与监管:构建负责任的AI未来
【10月更文挑战第3天】随着人工智能(AI)技术的快速发展,其在社会各领域的应用日益广泛。然而,AI的广泛应用也带来了一系列伦理和监管挑战。本文旨在探讨AI的伦理问题,分析现有的监管框架,并提出构建负责任AI未来的建议。同时,本文将提供代码示例,展示如何在实践中应用这些原则。
1688 1
|
Ubuntu JavaScript Linux
linux 命令行下载BT种子和磁力链接 ubuntu linux 命令行下载种子
linux 命令行下载BT种子和磁力链接 ubuntu linux 命令行下载种子
3112 3
|
存储 关系型数据库 MySQL
MySQL删除索引的方法与注意事项
MySQL删除索引的方法与注意事项
1680 0
|
机器学习/深度学习 人工智能 自然语言处理
AI编程发展历史回顾:从孕育到普及的演进轨迹
AI编程发展历史回顾:从孕育到普及的演进轨迹
921 4
|
Docker 容器
docker 离线镜像导入
前言:之前做了一个医院的项目,一般医院使用的服务器都是内网环境,所以自己整合了一下Docker离线部署的方法分享给大家。
746 0