深度学习(李宏毅)
文章平均质量分 93
李宏毅老师2020深度学习最新课程。
酷酷的群
软件工程在读
展开
-
生成对抗网络-条件生成|深度学习(李宏毅)(二十五)
一、Text-to-Image概述对于原来的GAN来说,只能够输入一个随机的向量,然后得到一个产生的对象,但是我们无法控制产生什么样的对象,而我们期待用GAN来做到这件事,也就是条件生成(Conditional Generation)。以Text-to-Image任务来说,我们希望给Generator输入一段文字,然后让它来产生对应的图片:对于这样的一个任务,我们可以考虑用监督学习的方法来做,也就是给神经网络输入一段文字,来让其输出一张图片,并且要让图片与目标图片越接近越好,以此来达到条件生成的原创 2021-03-21 10:02:19 · 831 阅读 · 0 评论 -
生成对抗网络-改进方法|深度学习(李宏毅)(二十四)
视频地址:①B站:https://www.bilibili.com/video/BV15W411i7uP?p=2②油管:https://www.youtube.com/watch?v=KSN4QYgAtao之前的博客地址:①生成对抗网络-基本概念|深度学习(李宏毅)(二十二)②生成对抗网络-理论部分|深度学习(李宏毅)(二十三)一、GAN的通用框架f-divergence之前说GAN的Discriminator的设计与JS散度有关,事实上可以设计Discriminator和任何f-div原创 2021-03-21 10:00:11 · 1482 阅读 · 0 评论 -
生成对抗网络-理论部分|深度学习(李宏毅)(二十三)
视频地址:①B站:https://www.bilibili.com/video/BV15W411i7uP②油管:https://www.youtube.com/watch?v=0CKeqXl5IY0之前的博客地址:生成对抗网络-基本概念|深度学习(李宏毅)(二十二)一、极大似然估计极大似然估计在GAN中,对于真实的训练样本的分布,记作Pdata(x)P_{data}(x)Pdata(x),这个分布也就是GAN试图去拟合、逼近的分布。另外有一个由参数θ\thetaθ控制的分布记作PG(x;θ原创 2021-03-03 11:27:59 · 321 阅读 · 0 评论 -
生成对抗网络-基本概念|深度学习(李宏毅)(二十二)
视频地址:①B站:https://www.bilibili.com/video/BV1JE411g7XF?p=72②油管:https://www.youtube.com/watch?v=DQNNMiAP5lw一、基本概念Generation生成(Generation)是指通过让机器学习的模型输入一个随机的向量,来让它产生图片或者文字等,而生成对抗网络(Generative Adversarial Network,GAN)就是用来完成生成任务的一种常用的技术:仅仅输入一个随机的向量来产生图片原创 2021-02-27 14:38:32 · 1025 阅读 · 1 评论 -
异常检测|深度学习(李宏毅)(二十一)
一、概述什么是异常检测异常检测(Anomaly Detection)的目的是要让机器“知道它不知道”。具体的,对于给定的训练数据{x1,x2,⋯ ,xN}\left \{x^{1},x^{2},\cdots ,x^{N}\right \}{x1,x2,⋯,xN},我们希望训练一个Anomaly Detector来检测输入xxx是不是与训练数据时相似的,对于不相似的数据就要判定其为anomaly:对于相似度的判定,不同的方法有不同的方式。异常(anomaly)还有很多别名,比如outlier、no原创 2021-02-23 14:34:14 · 3268 阅读 · 0 评论 -
无监督学习-自编码器-补充|深度学习(李宏毅)(二十)
一、最小重构代价之外的方法Using Discriminator一个自编码器学习到的隐层向量对于原来的输入来说应该是具有代表性的,就好比三玖的耳机对于三玖来说就是具有代表性的,看到三玖的耳机不会想到一花一样:评估隐层向量的代表性好不好就可以当做评估自编码器效果的指标。具体的方法就是训练一个Discriminator来评估隐层向量是不是具有代表性,在下面的例子中三玖的图片通过一个自编码器可以得到一个蓝色的向量,凉宫春日的图片通过一个自编码器可以得到一个黄色的向量:然后我们可以训练一个Discr原创 2021-02-20 09:50:42 · 342 阅读 · 0 评论 -
无监督学习-自编码器|深度学习(李宏毅)(十九)
一、深度自编码器自编码器自编码器(Auto-encoder)是一种无监督学习的方法,可以用来进行数据的降维。对于我们的输入数据,可以将其通过一个Encoder来获得一个低维的code,然后将这个code通过一个Decoder来重建原来的数据,而Encoder和Decoder是一起训练。下图以手写数字数据集为例展示了这个过程:类比PCA在PCA中,我们将数据xxx乘以一个矩阵WWW然后得到低维的表示zzz,而我们将WTzW^TzWTz记作x^\hat{x}x^,通过极小化xxx与x^\hat原创 2021-02-05 14:08:35 · 1390 阅读 · 0 评论 -
无监督学习-线性方法|深度学习(李宏毅)(十七)
一、概述无监督学习可以认为主要包括两种,一种是化繁为简(比如聚类和降维)和无中生有(比如生成)。化繁为简这种方式只有模型的输入,而无中生有这种方式只有模型的输出:在本文中主要介绍一些聚类和降维的方法。二、聚类K-meansK-means是一种无监督的聚类方法,通常我们有一些数据,需要分成多个类。这里有一个问题就是事先需要确定要聚成多少个类,类的个数不能太多也不能太少,极端地将数据聚成样本个数个类或者一个类都相当于没有进行聚类:假如我们有NNN个样本X={x1,⋯ ,xn,⋯ ,xN}X=原创 2021-01-20 12:09:42 · 433 阅读 · 0 评论 -
递归神经网络|深度学习(李宏毅)(十六)
李宏毅老师深度学习系列2020一、递归神经网络与循环神经网络该部分以情感分析任务为例来说明递归神经网络(recursive neural network)和循环神经网络(recurrent neural network)的关系。如下图所示,在使用RNN来搭建情感分析神经网络模型时,我们首先使用word embedding的方法来将获取句子的embedding序列,然后将序列中的每一个token的embedding输入到RNN中,最后将最后一个时间点的输出向量输入到一个分类器(可以是一个前馈网络)中来完原创 2020-12-30 20:33:29 · 551 阅读 · 0 评论 -
条件生成-2|深度学习(李宏毅)(十五)
李宏毅老师深度学习系列2020这一篇主要介绍Generation的一些技巧。一、正则化以视频的text generation举例,我们按下图形式表示Attention的权重值,上标表示component,也就是视频帧,下标表示时间步:好的Attention应该使得每个component都能被Attent到。在实际训练的过程中可能会出现以下情况,也就是某一帧被过分地Attent了多次,这可能会产生“A woman is frying a woman.”这种奇怪的text:为了解决这个问题,我们可原创 2020-11-07 16:37:18 · 316 阅读 · 0 评论 -
条件生成-1|深度学习(李宏毅)(十四)
李宏毅老师深度学习系列2020一、Generationgeneration的目的是生成有结构的某些东西,比如句子、图片等。比如我们可以使用RNN来生成句子,如下图,我们在训练RNN时可以输入当前字然后使得RNN输出下一个字,如此就可以使得模型输出一个句子:我们也可以尝试将生成句子的RNN模型用于生成图片上,在这里我们将图片的每个像素看做一个word,如下图:然后使用类似上面的模型进行训练就可以生成一张图片,但是使用这种方法有一个问题。我们可以看到图片的像素是按照以下顺序产生的:显然模型忽视了原创 2020-10-31 11:40:00 · 308 阅读 · 0 评论 -
机器学习攻防|深度学习(李宏毅)(十二)
一、研究机器学习模型攻防的动机我们训练的模型并非只部署在实验室,我们还需要部署到现实世界中。我们希望机器学习模型能够对专门设计来“欺骗”的输入具备一定的鲁棒性,模型光是对噪声具备一定的鲁棒性是不够的。尤其是在垃圾邮件检测、恶意软件入侵、网络入侵检测这些任务上,我们可能会遇到一些专门设计用来骗过机器学习模型的输入,因此研究机器学习模型的攻击和防御的方法是有必要的。二、攻击模型的方法概述对于一个图片分类器来说,我们希望通过为原来可以正确分类的图片(比如一只猫)添加一些噪声来使得模型预测出错误的结果,原创 2020-08-21 20:27:33 · 235 阅读 · 0 评论 -
可解释的机器学习|深度学习(李宏毅)(十一)
一、概述分类通常一个深度学习模型是黑盒子的,但我们也希望有一些方法来使得模型是可解释的(Explainable/Interpretable)。可解释的机器学习技术分为Local Explanation和Global Explanation两种。对于一个图像识别模型来说,Local Explanation指的是:Why do you think this image is a cat?Global Explanation指的是:What do you think a “cat” look原创 2020-08-12 16:26:58 · 786 阅读 · 0 评论 -
ELMO,BERT,GPT|深度学习(李宏毅)(十)
一、Embeddings from Language Model(ELMO)词嵌入的局限性之前讲过的词嵌入具有一定的局限性。举例来说,现有以下句子:Have you paid that money to the bank yet ?It is safest to deposit your money in the bank.The victim was found lying dead on the river bank.They stood on原创 2020-08-03 10:15:43 · 354 阅读 · 0 评论 -
半监督学习|深度学习(李宏毅)(九)
一、介绍什么是半监督学习假设有以下数据,一部分是有标签的数据,另一部分是无标签的数据:{(xr,y^r)}r=1R,{xu}u=RR+U\left \{(x^{r},\hat{y}^{r})\right \}_{r=1}^{R},\left \{x^{u}\right \}_{u=R}^{R+U}{(xr,y^r)}r=1R,{xu}u=RR+U在实际情况下,一般无标签数据的量远大于有标签数据的量,即U≫RU\gg RU≫R,因为为数据进行标注是需要成本的。半监督学习使用大量的未标记数原创 2020-07-26 14:37:27 · 352 阅读 · 0 评论 -
Transformer|深度学习(李宏毅)(八)
一、RNN与CNN处理Seq2seq问题的局限性RNN的局限性处理Seq2seq问题时一般会首先想到RNN,但是RNN的问题在于无论使用单向还是双向RNN都无法并行运算,输出一个值必须等待其依赖的其他部分计算完成。CNN的局限性为了解决并行计算的问题,可以尝试使用CNN来处理。如下图,使用CNN时其同一个卷积层的卷积核的运算是可以并行执行的,但是浅层的卷积核只能获取部分数据作为输入,只有深层的卷积层的卷积核才有可能会覆盖到比较广的范围的数据,因此CNN的局限性在于无法使用一层来输出考虑了所原创 2020-07-19 15:48:10 · 443 阅读 · 1 评论 -
词嵌入|深度学习(李宏毅)(七)
一、概述词嵌入(Word Embedding)是将自然语言表示的单词转换为计算机能够理解的向量或矩阵形式的技术。在Word Embedding之前,常用的方法有one-hot、n-gram、co-occurrence matrix,但是他们都有各自的缺点。Word Embedding是一种无监督的方法。Word Embedding的主要任务是输入收集到的词汇,然后获得它的向量表示,其大概过程如下:Word Embedding不能使用AutoEncoder来做是因为无法为AutoEncoder的输入原创 2020-07-17 08:18:14 · 707 阅读 · 0 评论 -
循环神经网络应用|深度学习(李宏毅)(六)
一、Many to one情感分析 存在许多有标签的句子,将这些句子使用RNN读一遍,然后取RNN得最后一个输出作为预测情感的结果进行分类。关键词提取 使用RNN将多篇带有关键词标签的文章读一遍,然后把最后一个最后一个输出拿出来做attention,然后将结果放到前馈网络中去,最后输出文章的关键词。二、Many to ManyMany to Many (输出较短) 在语音辨识中,可以将声音讯号(Acoustic Features)按照每一固定时间(如0.1s)划分为多个输入原创 2020-06-28 09:12:41 · 417 阅读 · 0 评论 -
循环神经网络|深度学习(李宏毅)(五)
1.RNN的引出(槽位填充问题)槽位填充问题 槽位填充问题:如下图所示,在售票系统中需要将客户的一句话中的信息提取出来填充到对应的槽位下:词的表示方法1-of-N Encoding(独热编码) 在知道总共有几个词的情况下使用。Beyond 1-of-N encoding2.1 为独热编码增加“other”维度2.2 Word hashing 词向量的每一个维度表示一个序列,如果词中出现该序列则标记为1。使用前馈神经网络解决槽位填充问题 按照解决多分类问题原创 2020-06-25 20:37:07 · 306 阅读 · 0 评论 -
卷积神经网络|深度学习(李宏毅)(四)
1. 为什么使用CNN处理图片在图片中有一些比整张图片要小的pattern(比如鸟的图片中鸟的喙就是一个小的pattern),识别这些pattern并不需要看整张图片。这些小的pattern会出现在图片的不同位置,例如鸟图片中鸟的喙可能出现在左上角也可能出现在中间。对图片进行降采样(池化)不会改变图片的特征,因此神经网络处理图片所需的参数就会更少。2. 卷积 v.s. 全连接 可以将卷积网络看作一种特殊的的全连接网络,每一个卷积核卷积后得到的feature map可以看做一个隐藏层的输出,f原创 2020-06-19 19:40:00 · 305 阅读 · 0 评论 -
深度网络训练技巧|深度学习(李宏毅)(三)
1. 过拟合和欠拟合过拟合:训练集效果好,测试集效果不好。提前停止正则化Dropout欠拟合:训练集与测试集效果都不好。切换激活函数自适应学习率2. 梯度消失问题 问题:随着越来越多的激活函数加到神经网络中,损失函数的梯度趋近于0,使得网络结构很难训练。 举个例子,如下图所示,神经网络使用sigmoid函数作为激活函数,由于sigmoid函数将函数的输入压缩到0和1之间,所以导致到浅层网络处的w变化很大时loss变化很小,即损失函数对w的梯度几乎为0。3. ReL原创 2020-06-14 08:05:41 · 230 阅读 · 0 评论 -
分类|深度学习(李宏毅)(二)
5.判别模型 vs 生成模型通常情况下两种模型得到的w和b并不相等生成模型的优点:因为生成模型有一个先验的假设,所以需要更少的训练数据,而且对噪声有更高的鲁棒性。先验分布和类别依赖的概率分布可以从不同的来源估计。...原创 2020-06-13 13:43:31 · 169 阅读 · 0 评论 -
回归|深度学习(李宏毅)(一)
1. 偏差和方差欠拟合的loss主要来自偏差过拟合的loss主要来自方差应对大的偏差的方法:增加更多特征作为输入使用更复杂的模型应对大的方差的方法:更多数据正则化k折交叉验证2. 梯度下降Adagrad二次微分大的点梯度虽然大但是可能会比梯度小的点离极值点更近,因此学习率需要考虑二次微分的影响,除以所有梯度的均方根是为了近似表示二次微分。RMSProp类比Adagrad的一种优化方法,与Adagrad不同的是学习率所除的分母。原创 2020-06-13 13:42:35 · 179 阅读 · 0 评论