在机器视觉领域,有一类称为“目标检测”的任务,其目的是从一张图片中检测出行人、汽车、建筑物等目标,并把它们框出来,打上相应的类别标签。 在实际应用场景中,一张照片中可能出现多个目标,每个目标的类型、位置和大小都有所差异。那么,如何把这些目标全部有效地检测并标识出来呢? 一种方式是在图片上使用不同大小
在第117期中,我们了解到自编码器是一种两头宽中间窄,形状如哑铃的神经网络。这一网络的学习目标是在输出端还原输入数据,如图1所示。由于网络中间的瓶颈层比较窄,使得仅有那些最重要的信息才会在编码z中保留下来。因此,自编码器常用于提取数据中的关键信息。 图1. 自编码器 事实上,瓶颈层的编码z由于维度较
最近,一款称为ChatGPT的人工智能系统火出了天际!它不仅上知天文下知地理,还可以写小说、制标书、做算数、编代码、调bug... 难怪有人惊呼,人工智能修炼成精了! 那么,如此强大的ChatGPT是怎么炼成的呢? 其实,它背后的原理并不神秘。故事还得从语言模型说起。语言模型是一项古老的技术,比如我
如何让机器学会生成一幅逼真的图片呢?2014年,Goodfellow给出了一种称为对抗生成网络 (GAN) 的方法[1],瞬间燃爆网络。 图1. 机器学会画画 我们还是先举个例子来铺垫一下。假设有那么一对师生,老师和学生水平都一般,但是学生有一个很强烈的梦想:要成为达芬奇那样的大画家。于是,这个勤奋
机器学习里常见的方法是监督学习:对数据进行人为标注,再把这些数据喂给机器,机器就会像人一样对未知数据进行分类和预测。 监督学习的问题在于标注的成本高,而且极为耗时。因此,人们想到无监督学习方法,这种方法不需要标注,通过观察数据样本来获知某些规律,再利用这些信息来帮助监督学习。一个例子是当我们看到很多
深度学习发展起来以后,序列到序列建模成为很多任务的基本方案,如机器翻译、语音识别、语音合成、问答和对话等。序列到序列建模将输入序列用编码器压缩成一个固定维度的向量,再由一个解码器生成目标序列。如下图所示。 序列到序列模型虽然简洁,但有一个很大的问题,就是当输入序列很长时,往往很难生成合理的目标序列。
生活中很多事情可以抽象成序列到序列的转换。例如,语言翻译是两种语言单词序列的转换,语音合成是单词序列到发音序列的转换,玩游戏是游戏画面到游戏杆操作命令的转换。 序列到序列转换相当困难,因为不仅要考虑两个序列间的对应关系,还要考虑目标序列的上下文相关性。以翻译任务为例,要翻译“How are you”
如何表示一个单词的意义?对人来说,一般用解释法,用一段话来解释词的含义。如“太阳”在新华字典中的释义是“太阳系的中心天体。银河系的一颗普通恒星。” 然而,这样的解释计算机是听不懂的,必须用更简洁的方式来对词义进行表示。 传统上,计算机用一种称为“独热向量“的方式来表示单词。假设词表里一共有100个词
深度神经网络很难训练,一个重要的原因是网络包含很多参数,这些参数互相影响,很难协调一致地往最优化方向调整。为此,研究者提出了很多方法,如预训练,激发值正规化等。基于这些方法,训练个十几层的网络是没有问题的。然而,一个很重要的问题是,神经网络是不是越深越好呢? 人们发现并不是。如图所示,训练两个网络,
自编码器是一种特别的神经网络,两头宽,中间窄,像个哑铃的样子。 图1. 自编码器 (AutoEncoder) 模型 这个神经网络的学习目标是努力在输出层还原输入数据。如图1所示,输入一幅猫的图片,这个自编码器会努力在输出层还原这只猫。关键是,因为网络的中间层比较窄,必然会过滤掉一些信息,因此也称为信
我们先看一小段视频。 目前,这条视频的播放量已经超过8千万次。是不是挺吓人的?机器人受不了人的骚扰,奋起反抗了。幸运的是,这只是通过各种AI特效技术生成的假视频。虽然这些特效的逼真程度也很让人不安,但机器攻击人类的那一天总算还没有到来。 然而,联合国安理会利比亚专家组发布的一则报告却让人很难松一口气
机器需要一些指导信息才能越学越聪明。例如,拿一些袋鼠的照片给机器看,告诉它这是袋鼠,以后再见到袋鼠就认识了。这种学习方式通常称为监督学习。然而,很多时候这种手把手地指导很困难。比如,在教机器人走路时,告诉机器人如何抬腿迈步,如何保持平衡几乎是不可能的。怎么办呢? 可以想想我们小时候是怎么学会走路的。