游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4594|回复: 1

一夜刷屏的「猜画小歌」遭到反编译,内部还暗藏哪些玄机?

[复制链接]

5万

主题

5万

帖子

8万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
87295
发表于 2018-7-19 18:41:38 | 显示全部楼层 |阅读模式
Mobile First To AI First!Google 携第一款微信小程序开始在中国 AI 领域试水。

昨天,Google AI 在国内发布了一款微信游戏小程序「猜画小歌」,瞬间刷爆了朋友圈,各路隐藏的灵魂画手们纷纷上线,用自己抽象的画作,调戏了未成年的 AI。

这款采用机器学习技术制作而成的小游戏,玩法很简单,即“你画我猜”的翻版“我画 AI 猜”。当你在屏幕上画图后,神经网络会尝试猜出你画的是什么。虽然神经网络不一定能猜对,但会从这个过程中学习。因此,你玩的次数越多,就越能提升神经网络的辨识能力。于是,就出现了:

1.jpg

而当你的画灵魂不在线时,AI 还会嘲笑般地来一句:“你画的啥玩意?”

2.jpg

反编译「猜画小歌」

这边当一批批灵魂画手沉迷于画画无法自拔时,另一边程序员小哥哥已带着强烈的求知欲将这款小游戏翻了个底朝天。

知乎用户王天笑将「猜画小歌」反编译之后(来源:https://www.zhihu.com/question/285752903/answer/445770041,已获作者授权),无意发现了这款风靡的小游戏背后还有许多有趣的事情。

Java 工程师写小程序如何组织项目结构:

3.jpg

该项目中对于音频、图片的命名太过不规范:

中英文混合,“zhcn_ni_hua_de_sha_wan_yi_er_1.8.mp3”

4.jpg

下划线、横线、驼峰,命名规则很混乱

5.jpg

RPC 接口都加密了,但应该不用把整个 cryptojs 引入进来。明明只是用了 SHA1 加解密。

6.jpg

且对外部依赖库,他也提出了自己的一些疑问:

  • cryptojs rpc 接口加解密用
  • underscorejs 工具函数库(为什么不用 lodash,难道包太大了?)
  • fundebugjs 微信小程序监控插件
  • min-base64 base64 转换(很奇怪,cryptojs 应该有这个 API)


7.jpg

同时对小游戏页面反编译过程中发现,竟有 14 个页面,小程序的页面路径最多十层,不知怎么处理后面的跳转?

8.jpg

其中还包括好友对战、注册码以及打赏页面:

9.jpg

“猜画小歌”的背后

其实这款游戏我们并不是第一次见,去年 Google 上线的 QuickDraw(https://quickdraw.withgoogle.com) 可以说是国内版「猜画小歌」的原型,其对用户画作识别的背后主要运用了计算机视觉和神经网络技术,其中神经网络的数据囊括超过 5000 万个手绘素描的数据群,且这些数据集是开源的。

当你根据关键词在进行抽象画作时,神经网络可以利用它内部的记忆来处理任意时序的输入序列(指写字时的笔划顺序,以及绘画时的前后过程),让它对数据集中的数据进行比对,故而猜出正确答案。

10.jpg
11.jpg



说起来很容易,但是 AI 的处理过程还是较为复杂。从我们简单的画作,这款 AI 小程序将会不断地汲取指导性数据,从而变得更加智能。这也意味着“猜画小歌”的上线,中国大陆区域的信息也将填充到数据集中。

写在最后

去年 12 月,李飞飞带着“AI 没有国界,AI 的福祉亦无边界”的理念终将 Google AI 成功落地中国,如今这款具备简单且强大的小游戏无疑成为 Google 在中国 AI 应用领域的一次小小的试水。

而回归小程序游戏的本身,值得一提的是,当其他小程序想法设法留存用户的同时,“猜画小歌”上线了删除账号的功能,不得不表示赞同,这也是良好用户体验设计的一部分。

12.jpg

0

主题

25

帖子

265

积分

中级会员

Rank: 3Rank: 3

积分
265
发表于 2018-8-11 11:13:40 | 显示全部楼层
玩了一下,确实很魔性,很有感觉。本身小程序的限制,BUG略多。AI游戏的发展前景还是可以
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-2-24 12:04

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表