首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

【回复“1024”,送你一个特别推送】

机器学习原理

要聊到机器学习,我们应该知道,它主要有两种方法:监督式学习(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 就已经认出你画的是什么东西呢?它读取的是你的起笔,线条,和一些特征数据,就能够快速猜出你画的是什么?而且还能帮你补全和纠正。你打开小程序,找到「我的画作」点进去,在每一幅画作的下面写着这么一句话:

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

最后,关于机器学习和 AI 技术,关于这款微信小程序,欢迎大家留言交流一下自己的看法和观点,一起交流进步。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180720A08ZWU00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券