Google 小程序「猜画小歌」背后的 AI 技术和原理浅析

简介: Google 小程序「猜画小歌」背后的 AI 技术和原理浅析

image

我相信大家的微信朋友圈估计都被 Google 刚刚上线的微信小程序「猜画小歌」刷屏了,之所以被刷屏,不仅仅是因为它有趣好玩,而是因为 Google 基于 AI 技术来识别大家的神作,很多人都不敢相信,我画成这样,竟然都认识,各种灵魂画手一个个的诞生了,基于 AI 的有趣,好玩,让你们兴趣盎然,各种调侃,这是它火爆的一个原因。

今天我想通过这款 Google 推出的微信小程序「猜画小歌」,来聊一聊它背后的机器学习的相关知识,我个人仅仅只是读过关于机器学习的资料和书,浅尝辄止,我不是专门搞机器学习和人工智能的,所以只算是浅析和谈自己的看法。

机器学习原理

要聊到机器学习,我们应该知道,它主要有两种方法:监督式学习(Supervised Learning)和无监督式学习(Unsupervised Learning)。

什么是监督式学习

所谓监督式学习,就是需要我们提供大量的学习样本,包括样本相关的特征数据以及相应的标签。AI 程序可以通过这些样本来学习相关的规律或是模式,然后通过得到的规律或模式来判断没有被打过标签的数据是什么样的数据。

就比如:「猜画小歌」,我们小程序的用户画了大量的带着标签的画作,通过你画的每个带着标签的画作,AI 程序就知道,原来人类是这么画这个房子,这个船,这个苹果等等这些东西的。原来人类眼中的他们是这样的。它就会分析我们画作的每一个特点和特征,从而进行自我学习。我们提供这些大量的带着标签的数据样本也叫:训练数据(training data) 。

通过机器学习的算法,找到每幅画作在不同手写体下的特征,进而找到规律和模式。然后通过得到的规律或模式来识别那些没有被打过标签的画,以此完成识别手写画作的目标。

当然,这个 AI 小程序在上线之前,肯定已经用上万甚至几十万的样本训练过了,所以你在画的时候,它会根据你画的特征进行一些分析和识别。而我们画的这些又被它当做样本,通过算法进行了自我学习。

其实说白了,Google 挺聪明的,让 AI 小程序识别和猜测人类的画作,通过大量我们提供的免费标注训练让这个系统得到更好的学习,提升和优化。其实最后的目的可能就是:AI 智能小程序就会自己独立创作绘画,画出各种跟人类一样的作品。

所以啊,大家都是在玩的同时,在给这个 AI 小程序当陪练呢!!!我每个用户都为它的进化提供了大量的帮助和数据。大家画的越多,提供的数据样本就越多,它通过自我学习和算法分析,就会识别越准确,自己也就越了解人类。

什么是无监督式学习?

无监督式学习 (Unsupervised Learning) 是人工智能网络的一种算法 (algorithm),其目的是去对原始资料进行分类,以便了解资料内部结构。有别于监督式学习网络,无监督式学习网络在学习时并不知道其分类结果是否正确,亦即没有受到监督式增强 (告诉它何种学习是正确的)。其特点是仅对此种网络提供输入范例,而它会自动从这些范例中找出其潜在类别规则。当学习完毕并经测试后,也可以将之应用到新的案例上。

无监督学习里典型的例子就是聚类了。聚类的目的在于把相似的东西聚在一起,而我们并不关心这一类是什么。因此,一个聚类算法通常只需要知道如何计算相似度就可以开始工作了。

可能还会有什么半监督式学习,这个就是上述两者的结合,基本思想是利用数据分布上的模型假设, 建立学习器对未标签样本进行标签。

「猜画小歌」背后的 AI 技术

「猜画小歌」对我们画作的辨识,其实利用的就是神经网络技术,是基于对大量涂鸦样本的学习。就像,我刚才在上面监督式学习那里所说的。

Google 表示,「猜画小歌」由来自 Google 人工智能的神经网络技术驱动。该网络源全世界范围,超过 5000 万个手绘素描的数据群。机器学习手绘素描后,可以通过粗糙的草图来识别物体。例如一团长着耳朵的墨迹可能是一只熊猫。

而这个小程序利用的技术就是:RNN,也就是递归神经网络。这个技术其实谷歌在之前早就使用了,并不新鲜,在去年 11 月,Google 专门研究人 “Quick, Draw!” 的看图猜物品功能。可以根据你勾勒的几笔猜测三个可能的物品。Google 表示,这个技术是通过模拟人脑在画一个物体时是如何运用线条、形状以及其它绘画要素来进行推断。

我们在这个小程序上开始画作,训练神经网络,让 AI 来理解人们在绘制画作时是在何时起笔、走笔方向、何时停笔的。当经过训练的 RNN 模型接收到人类绘制的画作后,会生成一张类似的新画作。

你以为仅仅如此吗?不是,如果你画的画作不对,有瑕疵,它其实还会纠正呢!在 RNN 模型当中,当用户创作出的灵魂画作,还没有画完时,比如只是画出了人的头,还没有画耳朵,AI仍然能够重构出“正常”的画作来。RNN 模型仍然会继续生成有耳朵,有眼睛的正常人头。

所以,在「猜画小歌」小程序中,你仅仅可能只是画出了一个大致的线条,还没画完的时候,AI 就已经认出你画的是什么东西呢?它读取的是你的起笔,线条,和一些特征数据,就能够快速猜出你画的是什么?而且还能帮你补全和纠正。

你打开小程序,找到「我的画作」点进去,在每一幅画作的下面写着这么一句话:

image

最后,大家来欣赏一下我的灵魂画作吧!如下:

image

原文发布时间为:2018-07-20
本文作者: loonggg
本文来自云栖社区合作伙伴“非著名程序员”,了解相关信息可以关注“非著名程序员

相关文章
|
4天前
|
人工智能 小程序
一步步开发AI运动小程序】二、引入插件
随着人工智能技术的发展,阿里体育等公司推出的“乐动力”、“天天跳绳”等AI运动APP广受欢迎。本文将引导您从零开始开发一个AI运动小程序,使用“云智AI运动识别小程序插件”。内容包括新建uni-app项目、配置插件、部署模型、安装依赖包、全局初始化和调用插件对象。
|
1天前
|
存储 人工智能 自然语言处理
高级 RAG 技术:提升生成式 AI 系统输出质量与性能鲁棒性【预检索、检索、检索后、生成优化等】
高级 RAG 技术:提升生成式 AI 系统输出质量与性能鲁棒性【预检索、检索、检索后、生成优化等】
高级 RAG 技术:提升生成式 AI 系统输出质量与性能鲁棒性【预检索、检索、检索后、生成优化等】
|
1天前
|
人工智能 编解码 小程序
【一步步开发AI运动小程序】四、小程序如何抽帧
随着AI技术的发展,阿里体育等公司推出的“乐动力”、“天天跳绳”等APP使云上运动会、线上健身等概念备受关注。本文将引导您从零开始开发一个AI运动小程序,利用“云智AI运动识别小程序插件”。文中详细介绍了微信小程序抽帧的相关API、设置及注意事项,帮助开发者更好地实现AI运动功能。下篇将介绍人体识别技术,敬请期待。
|
1天前
|
人工智能 自然语言处理 数据挖掘
Claude 3.5:一场AI技术的惊艳飞跃 | AIGC
在这个科技日新月异的时代,人工智能(AI)的进步令人惊叹。博主体验了Claude 3.5 Sonnet的最新功能,对其卓越的性能、强大的内容创作与理解能力、创新的Artifacts功能、视觉理解与文本转录能力、革命性的“computeruse”功能、广泛的应用场景与兼容性以及成本效益和易用性深感震撼。这篇介绍将带你一窥其技术前沿的魅力。【10月更文挑战第12天】
8 1
|
2天前
|
人工智能 关系型数据库 数据中心
2024 OCP全球峰会:阿里云为代表的中国企业,引领全球AI网络合作和技术创新
今年的OCP(Open Compute Project)峰会于2024年10月14日至17日在美国加州圣何塞举行,在这场全球瞩目的盛会上,以阿里云为代表的中国企业,展示了他们在AI网络架构、液冷技术、SRv6和广域网等前沿领域的强大创新能力,持续引领全球合作与技术创新。
|
4天前
|
机器学习/深度学习 人工智能 监控
探索AI技术在医疗健康领域的应用与挑战
【10月更文挑战第13天】 本文探讨了人工智能(AI)在医疗健康领域的多种创新应用,包括疾病诊断、个性化治疗、患者监护和药物研发等方面。同时,文章也分析了当前AI技术在实际应用中面临的挑战,如数据隐私、算法透明度、监管问题等,并提出了一些可能的解决思路。通过综合分析,本文旨在为读者提供一个关于AI在医疗领域应用现状及未来的全面视角。
24 3
|
4天前
|
机器学习/深度学习 人工智能 搜索推荐
AI与未来医疗:革命性的技术,重塑健康产业
在21世纪的科技浪潮中,人工智能(AI)正迅速成为医疗领域的关键力量。本文探讨了AI在未来医疗中的潜力和应用前景,从智能诊断、个性化治疗到药物研发和患者护理,详细阐述了AI如何通过提升效率、准确性和个性化医疗服务来重塑健康产业。通过案例分析和专家观点,本文展示了AI在医疗领域的多重影响,并讨论了其面临的伦理和隐私挑战。
|
2天前
|
机器学习/深度学习 人工智能 小程序
【一步步开发AI运动小程序】三、运动识别处理流程
随着人工智能技术的发展,阿里体育等公司推出的“乐动力”、“天天跳绳”等AI运动APP备受关注。本文将引导您从零开始开发一个AI运动小程序,使用“云智AI运动识别小程序插件”。文章介绍了视频帧、帧率FPS、抽帧和人体识别等基本概念,并详细说明了处理流程,包括抽帧、人体识别检测、骨骼图绘制和运动分析等步骤。下篇将介绍如何在小程序中实现抽帧。
|
4天前
|
Web App开发 人工智能 前端开发
Google 浏览器中的 AI 魔法 — window.ai
本文介绍了如何在 Chrome Canary 中启用并使用设备端 AI 功能。通过下载 Chrome Canary 并启用相关 API,你可以在本地运行 AI 模型,无需互联网连接。文章详细讲解了设置步骤、确认 AI 可用性的方法以及如何使用 `window.ai` 进行文本会话。虽然目前的性能和功能还有待提升,但这一技术为未来的前端开发和智能应用提供了无限可能。
18 0
|
5天前
|
人工智能 算法 JavaScript
无界 SaaS AI 生态大模型:技术在中国,链接全世界
无界 SaaS AI 生态大模型涵盖前端用户界面、后端服务器逻辑、数据库设计、API 接口开发及区块链技术应用。本文提供一个简化框架,介绍技术栈选择、核心功能模块(用户管理、商城、数据确权、链接力、算力算法、AI 生态大模型、全球化支持)及后端示例代码,帮助将商业模式转化为代码。

热门文章

最新文章