AI涂鸦小鱼入缸:探秘Draw A Fish引爆全球的赛博养鱼热潮

AI小游戏《Draw A Fish》爆火, Draw你的专属小鱼,AI让它在共享鱼缸中活灵活现,全球玩家一起赛博“养鱼”!

原文标题:全球百万网友迷上赛博「养鱼」,我也被这群AI小丑鱼拿捏了

原文作者:机器之心

冷月清谈:

最近,一款名为《Draw A Fish》的AI小游戏火爆全球,吸引了百万网友加入赛博“养鱼”大潮。这款游戏玩法极简,用户只需在画布上随手绘制一条小鱼,AI便能将其转换为一条活灵活现的虚拟小鱼,并投入一个共享的虚拟鱼缸中与其他玩家的创作一同游弋。玩家可以对其他小鱼进行点赞或拉踩,还有排行榜增加了互动性和竞技感。游戏之所以能让人上头,在于其极低的体验门槛、AI实时反馈带来的即时成就感,以及看到自己作品“活”起来的独特满足感。这种模式相比传统AI绘图工具,更强调参与感和社区互动。

技术层面,游戏背后是基于PyTorch、ResNet18架构和Google QuickDraw数据集训练的卷积神经网络。该模型主要进行“鱼”与“非鱼”的二分类判断,并将识别出的“像鱼”概率实时反馈给用户。为了提升游戏趣味性,开发者特意调整了模型,使其在识别时更加“宽松”,不会对用户创作过于严苛。此外,项目还包含了透明度处理、早停机制、QuickDraw数据集集成、一致的预处理以及处理类别不平衡等工程化细节,确保了游戏的稳定运行和良好体验。表面看似简单,实则蕴含了精巧的AI技术设计,让每位玩家都能轻松体验到创作和分享的乐趣,并以轻松有趣的方式展现了AI在用户体验设计上的潜力

怜星夜思:

1、文章提到《Draw A Fish》的火爆和当年《Flappy Bird》有共通之处,都是简单但让人上头。除了门槛低、即时反馈这些,《Draw A Fish》还有哪些深层次的心理机制,让玩家如此沉迷呢?是不是因为它提供了一种独特的“数字生命”体验?
2、文章提到,开发者特意调整了AI模型,让它在识别“像鱼”时更加“宽松”,不那么苛刻,以提升游戏趣味性。如果AI在实际应用中(比如自动驾驶、医疗诊断)也采取这种“宽松”的策略,会有什么利弊?这种在乐趣和精确度之间做取舍的设计,在未来AI产品中是不是会越来越常见?
3、文章提到《Draw A Fish》的AI技术核心是基于PyTorch、ResNet18和QuickDraw数据集。如果未来有团队想基于这个模式(用户简单输入,AI实时生成反馈并共享)开发新的创意游戏,比如用户画一个简单的房子,AI让它变成一个3D微缩城市;或者用户哼一段旋律,AI生成完整的背景音乐,你觉得哪个方向最有潜力?为什么?

原文内容

机器之心报道

编辑:杨文

为何画一条小丑鱼能给人《王者荣耀》上分的快感?


见过赛博遛狗,你见过赛博养鱼吗?


图片


最近一款名叫 Draw A Fish 的 AI 小游戏,让全球百万网友疯狂上头。


玩法很简单。只要在画布上随手画一条小鱼,就能在虚拟鱼缸中看到它活灵活现地「游动」。


体验地址:https://drawafish.com/


打开网站,你会看到一个简单的绘图工具,可以选择颜色和笔刷粗细,然后在画布上绘制一条面朝右侧的小鱼,AI 就会实时判断你的作品是否像鱼,并通过画布背景颜色的变化给予即时反馈。


图片


当相似度达到 60% 以上时,点击 「make it swim」 按钮,再给小鱼起个名字,就能把它丢到一个共享的虚拟鱼缸中,观看小鱼和其他玩家的作品一起游来游去。


图片


你还可以和这群奇形怪状的小鱼互动,点一下即可点赞或拉踩。



官方也挺会整花活,直接来了个排行榜,目前最高分是一条画的极其抽象的涂鸦小鱼,得分高达 53245,甚至还有一条长得像鸟的鱼拿到了 - 40182。


左右滑动查看更多


如果注册了账号,还可以把自己画的鱼放到专属鱼缸。


图片


为何百万网友会为一群小丑鱼上头?


百万网友沉迷赛博养鱼,其实一点也不奇怪。


首先,Draw a Fish 足够简单。无需登录,无需教程,点开就能玩,画条鱼谁还不会?这种低门槛设计让人想起当年的现象级小游戏 Flappy Bird,点一下屏幕小鸟飞一下,没有剧情、没有关卡,但凭借极低的门槛和极强的挑战感让人欲罢不能。


而且,AI 会在每一笔落下时给出「像鱼」的概率提示。哪怕你承认自己画技不佳,但当相似度从 30% 提升到 50% 的那一刻,那种小小的成就感足以让人继续尝试。


画完的鱼不会停留在画布上,而是能被放进鱼缸,与全球网友的创作一同游动。这种「作品活了」的体验,极大放大了创作的满足感。相比之下,传统的 AI 绘图工具虽然生成效果更精美,却缺乏这种即时参与和互动循环。


此外,共享虚拟鱼缸让陌生人作品混在一起,排行榜、点赞、随机浏览增加了社区氛围。


如果大家在虚拟鱼缸中看到一条叫「yoyo」的小鱼,欢迎给它喂点「鱼食」😂。


看似简单的小游戏,其实背后大有文章


别看它只是一款小游戏,背后其实有一套完整的 AI 技术设计。


Draw a Fish 之所以能在你绘制过程中不断提示「像不像鱼」,背后依赖的是一个基于 PyTorch 的卷积神经网络。开发者选用了经典的 ResNet18 架构,并结合 Google QuickDraw 数据集来训练模型。


QuickDraw 是谷歌推出的大规模手绘涂鸦数据集,涵盖了各种简笔画元素,其中的「fish」与「not fish」类别正好为模型提供了基础训练样本。


在训练过程中,模型的目标就是进行二分类:输入一张涂鸦,输出它是「鱼」的概率,还是「非鱼」的概率。这个「概率」正是用户在画布下方看到的实时反馈。由于训练数据相对有限,开发者特意调整了模型的判定方式,让它在识别时更加「宽松」,避免对用户的创作过于苛刻,从而提升游戏的趣味性。


技术上,项目还实现了多项工程化功能。


  • 透明度处理:所有图像在预处理前都会合成到白色背景上,因此如果你画的鱼是纯白色的,就无法被识别。

  • 早停机制(Early Stopping):如果验证集的损失在 5 个 epoch 内没有改善,训练就会停止,从而减少过拟合。

  • QuickDraw 集成:提供脚本可以自动下载并转换 QuickDraw 涂鸦数据,用于鱼和非鱼的分类。虽然作者最后没有用它,但仍保留在仓库里,方便其他人使用。

  • 一致的预处理:训练和推理(包括测试脚本)使用相同的预处理流程,保证一致性。

  • 类别不平衡:在鱼与非鱼的数据不平衡问题上,采用了加权采样和加权损失来进行处理。


了解更多技术细节,请参考以下链接:


  • https://github.com/aldenhallak/fish-trainer

  • https://github.com/aldenhallak/fishes?utm_source=chatgpt.com

  • https://www.reddit.com/r/InternetIsBeautiful/comments/1m6c80g/draw_a_fish_and_watch_it_swim/



© THE END 

转载请联系本公众号获得授权

投稿或寻求报道:liyazhou@jiqizhixin.com