设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 站长资讯 > 动态 > 正文

12306验证码已不再安全 机器准确率99.8%(2)

发布时间:2017-04-30 10:01 所属栏目:15 来源:雷锋网
导读:此外,就连谷歌图片验证码也可以通过类似的方法被破解。谷歌图片验证码识别的主要难度在其类型多样:有时是选择图片中招牌部分,有时是框出图上的汽车。但是对于每一类验证都是有相应的破解方法,特别是对于基于图

此外,就连谷歌图片验证码也可以通过类似的方法被破解。谷歌图片验证码识别的主要难度在其类型多样:有时是选择图片中招牌部分,有时是框出图上的汽车。但是对于每一类验证都是有相应的破解方法,特别是对于基于图片中物体识别的验证码,可以用类似ImageNet的相关算法破解。

如今,几乎所有的主流的传统验证码都已经被破解,传统的验证方式早已不安全。

未来属于基于语言认知的智能验证码

出路何在?我的观点很明确,那就是基于语言认知的人机区分,也就是考验机器语言认知能力的智能验证码,这将会是未来一段时间内的重要选择。

这类验证码的基本思路是,让机器去读一段文本,然后回答问题。有点类似语文里面的阅读理解。比如说让人或机器读这么一段文本:“某人从复旦大学哲学系毕业,现在是郑州大学公共学院的导师”,然后问“这个人的在职单位是什么?”人或机器需要点击包含答案的文本片段才能通过验证。这类验证本质上是在考验人或机器的文本理解能力。

对于人而言极为简单,但是对于机器而言,这是很有难度的。比如刚才的例子,机器有可能回答复旦大学,也有可能回答郑州大学,但是我们都知道只有郑州大学是他的在职单位。机器要回答这个问题必须理解这段话讲的是什么,必须能够区分郑州大学和复旦大学一个是学习单位,一个是在职单位。

换言之,机器必须具备像我们人一样的认知能力,才能破解这样的验证码。但是很遗憾,机器毕竟没有像人一样受过十几年的教育,也就无从具备这样的文本理解能力。当前机器在认知能力方面,尤其在语言认知方面,至少在未来一段时间窗口内还难以企及人类水平,可能再过二十年、三十年或许能达到这个水平,但是这是二、三十年之后的事情了。

我们来看看当前人工智能到底有什么问题。当前人工智能的问题集中表现在理解常识的能力和推理能力非常有限。什么叫常识?几乎所有人都知道,以至于大家都不说的知识,叫常识。比如说太阳是从东边升起的,人是会走但是不会飞的,鱼是会游但是不会走的,鸡是有两条腿,兔子是有四条腿的,类似于这样的知识,就叫常识。

机器普遍缺乏这种常识,因为机器现在所学到的知识都是从文本里面学习来的,但是常识是人人都知道的,所以文本里不会被提及,那就意味着数据里不会存在,因此机器就无从学习。所以机器现在是普遍缺乏常识的。

我们再想想人为什么具有这种常识?人的常识是通过自身与世界的交互而产生的,我们从胚胎开始就在积累常识,就在感受时间的流逝,感受空间的存在。当你是一个很小的小朋友时你就知道调皮会挨打,所以你就在体验有因必有果。

时间感、空间感、因果感,都是通过身体经年累月的体验而形成的。人类要想在短短几十年时间内,把这种通过体验而得到的知识以一种填鸭式地方式灌输给机器是很困难的。

另外一方面是推理能力有限。我曾经问过很多在线机器人:“奥巴马是白人吗?”,很多机器的回答都不准确。事实上,这些机器背后的知乎库中都存有“奥巴马是黑人”这样的事实,但是从“奥巴马是黑人”推理出“奥巴马不是白人”,对机器来说就非常困难。

另一方面人类的推理是能够容忍很多异常的。比如说“有翅膀的鸟会飞”,大部分情况下是这样的,但是你也会发现一些特例,比如企鹅有翅膀不会飞,鸵鸟有翅膀也不会飞。机器只能胜任非黑即白的推理,异常容忍的推理对于机器而言仍很困难,但对于人而言确极为简单。

这里提及的难题目前有一个不成熟的说法,被统称为AI-Complete问题,也就是说这些问题要等到机器智能达到人类水平的时候才能解决。这明显是个悖论,但从这一说法可以看出这类问题有多难。

基于这些认识,我们提出并实现了一种基于知识图谱的验证码。我们有一个目前世界上最大的中文百科知识库CN-DBpedia。利用自有的知识库,自动生成自然语言问题,自动判定答案。所有的问题全是自动生成的,理论上可以生成数以亿计的问题。

同时我们平台可以自动判定答案,但是机器是不知道答案的,机器必须通过理解才能知道答案。我们的验证码还具有交互友好的特性,只要轻轻一点就能通过验证。

那么我们的系统是如何知道答案的呢?其实在CN-DBpedia里存储的是2亿多的结构化事实,比如(复旦大学,所在地,上海),基于这些结构化事实,我们通过深度学习模型自动生成自然语言问题,也就是说我们的系统在提问时是已经知道答案的。

如果要破解我们的验证码需要以下几个技术储备:

识别图片里面的文字以获取问题

理解文本以及问题,进而生成答案

使用一个成熟的涵盖数亿关系知识库的QA系统

因此,破解这个验证码至少比破解目前流行的图片验证码要难(上述第1步)。文本理解以及知识库上的QA(雷锋网注:特别是能回答数以亿计知识的QA),是目前正在研究和探索的问题,还没有成熟的解决方案。因此,至少目前,在机器语言认知能力尚未达到人类水平之前,我们的验证码是难以破解的。

我们的核心技术是从知识库里面结构化知识自动生成自然语言问题。我们提出了基于生成对抗网络(GAN)的从结构化三元组生成自然语言问题的模型,从而实现问题的自动随机生成。理论上有数以亿计的候选问题空间,一个真实的用户是不会两次碰到相同的问题的,从而保证了验证的安全可靠。

同时,为了进一步提高验证的安全性,降低对于真实用户的验证门槛,提高对于机器验证的门槛,我们也考虑到了分级验证。如果是首次登录的普通用户,就采用简单的验证,如果是高频访问的账号就用复杂验证,比如说像淘宝的刷单,我们就可以通过组合验证的方式,将机器拒绝于门外。

组合验证实际上就是通过组合文本理解、图片识别、轨迹识别等不同验证码方式来增加机器破解的难度,从而实现更强的安全验证。

我们的验证码终极形式是常识验证。比如说:“上海GDP仅次于日本东京,问GDP第一的城市是谁?”答案应该是“东京”,回答这类问题本质上是在考验机器的常识理解能力。常识理解问题可以说是人工智能皇冠上的问题。

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读