贝叶斯,深度学习问题复习

贝叶斯
朴素贝叶斯分类器原理以及公式,出现估计概率值为 0 怎么处理(拉普拉斯平滑),缺点;
解释贝叶斯公式和朴素贝叶斯分类。

https://editor.csdn.net/md/?articleId=106044348
在这里插入图片描述

0怎么处理:
在这里插入图片描述

贝叶斯分类,这是一类分类方法,主要代表是朴素贝叶斯,朴素贝叶斯的原理,重点在假设各个属性类条件独立。然后能根据贝叶斯公式具体推导。考察给你一个问题,如何利用朴素贝叶斯分类去分类,比如:给你一个人的特征,判断是男是女,比如身高,体重,头发长度等特征的的数据,那么你要能推到这个过程。给出最后的分类器公式。

那你说说贝叶斯怎么分类啊?比如说看看今天天气怎么样?我:blabla,,,利用天气的历史数据,可以知道天气类型的先验分布,以及每种类型下特征数据(比如天气数据的特征:温度啊,湿度啊)的条件分布,这样我们根据贝叶斯公式就能求得天气类型的后验分布了。。。。面试官:en(估计也比较满意吧)那你了解关于求解模型的优化方法吗?一般用什么优化方法来解?

深度学习
解释一下CNN、介绍CNN、卷积公式,以及特点,假设面试官什么都不懂,详细解释 CNN 的原理;

https://blog.csdn.net/None_Pan/article/details/105871835

问CNN的细节特点,哪些特点使得CNN这么好用,哪些场景用CNN可以,抽象一下这些场景的特征,可以降采样但仍能保持主要信息;局部连接可以保证获取局部信息;权值共享保证高效,

当图像太大时,“合并层”部分将减少参数的数量。 空间池化也称为子采样或下采样,可降低每个地图的维数,但保留重要信息。 空间池可以具有不同的类型:

首先考虑将图像作为输入输入到常规的完全连接的神经网络中。 每个输入(像素值)都连接到第一层中的每个神经元。 因此,第一层中的每个神经元都从图像的每个部分获取输入。

使用卷积网络,每个神经元仅从输入图像中的一小部分像素接收输入。 这就是“局部连接”的意思,进入给定神经元的所有输入实际上彼此接近。
局部连通性是每个神经只连接到输入图像子集的概念(与神经网络完全连接的神经网络不同)
这有助于减少整个系统中的参数数量,并使计算效率更高

“权重分配”是指当我们将此2x2滤镜应用于3x3输入时,我们会在整个输入中重用该滤镜给定的四个权重。 备选方案是每个过滤器应用程序都有其自己的输入集(对于图像的每个区域,它实际上是一个单独的过滤器),总共提供16个权重,或者是一个具有4个节点的密集层提供36个权重。

以这种方式共享权重将大大减少我们必须学习的权重数量,从而使学习深度架构变得更加容易,并且还使我们能够学习与正在考虑输入的哪个区域无关的功能。

使用CNN用于:

影像数据
分类预测问题
回归预测问题
更一般而言,CNN可以很好地处理具有空间关系的数据。

CNN输入传统上是二维的,一个字段或矩阵,但也可以更改为一维的,从而允许其开发一维序列的内部表示形式。

这使CNN可以更普遍地用于具有空间关系的其他类型的数据。例如,文本文档中单词之间存在顺序关系。时间序列的时间步长之间有序关系。

尽管不是专门为非图像数据开发的,但CNN在诸如情感分析中使用的文档分类以及相关问题等问题上取得了最新的成果。

尝试使用CNN:

文字数据
时间序列数据
序列输入数据

DNN和CNN相比有哪些区别,用过RNN么?画一下RNN的图,你在深度学习过程中遇到过哪些问题?如果出现过拟合你怎么办?
术语“深层神经网络”是指具有多个隐藏层的任何神经网络。 卷积神经网络是深度神经网络的一种特殊类型,对图像识别特别有用。 具体来说,卷积神经网络使用卷积和池化层,这反映了大多数图像的平移不变性。

在这里插入图片描述

dropout是什么?它有什么用?你会怎么用它?当全连接跟dropout连着用需要注意什么?你之前过拟合怎么解决的?

它可以与大多数(也许是所有)神经网络模型一起使用,尤其是多层感知器,卷积神经网络和长短期记忆递归神经网络等最常见的网络类型。

对于LSTM,可能希望对输入和循环连接使用不同的drop rate。

dropout rate

丢弃超参数的默认解释是训练层中给定节点的概率,其中1.0表示没有丢失,而0.0表示没有来自该层的输出。

隐藏层中的有效缺失值在0.5到0.8之间。输入层使用较大的辍学率,例如0.8。

使用更大的网络

对于较大的网络(更多的层或更多的节点),更容易过度拟合训练数据是很常见的。

使用dropout正则化时,可以使用较大的网络,且过拟合的风险较小。实际上,可能会需要一个大型网络(每层更多的节点),因为辍学可能会降低网络的容量。

一条好的经验法则是,将丢弃前的层中的节点数除以建议的丢弃率,并将其用作使用丢弃的新网络中的节点数。例如,具有100个节点且建议的辍学率为0.5的网络在使用辍学时将需要200个节点(100 / 0.5)。

如果n是任一层中隐藏单元的数量,并且p是保留一个单元的概率[…]良好的辍学网应至少具有n / p个单元

与较小的数据集一起使用

像其他正则化方法一样,对于训练数据数量有限且模型可能过度拟合训练数据的那些问题,dropout更为有效。

有大量训练数据的问题可能会因使用dropout而受益较少。

对于非常大的数据集,正则化几乎没有减少泛化误差。在这些情况下,使用dropout和较大模型的计算成本可能会超过正则化的好处。

会明显增加训练时间,因为引入dropout之后相当于每次只是训练的原先网络的一个子网络,为了达到同样的精度需要的训练次数会增多。

Right before the last layer. This is generally a bad place to apply dropout, because the network has no ability to “correct” errors induced by dropout before the classification happens. If I read correctly, you might have put dropout right before the softmax in the iris MLP.
When the network is small relative to the dataset, regularization is usually unnecessary. If the model capacity is already low, lowering it further by adding regularization will hurt performance. I noticed most of your networks were relatively small and shallow.
When training time is limited. It’s unclear if this is the case here, but if you don’t train until convergence, dropout may give worse results. Usually dropout hurts performance at the start of training, but results in the final ‘‘converged’’ error being lower. Therefore, if you don’t plan to train until convergence, you may not want to use dropout.

如果本身training loss就很大你怎么办?如果数据不变,怎么调整网络结构解决这个问题?(batch normalization)
参见之后的一篇文章。

梯度消失知道么?为什么会出现梯度消失?

由于RNN是通过时间进行反向传播训练的,因此会展开为多层的前馈网络。 当梯度经过许多时间步长返回时,它倾向于增长或消失,与深前馈网络中的情况相同

梯度越低,网络更新权重就越困难,获得最终结果所需的时间也就越长。

例如,1000个迭代可能足以获取时间点t的最终权重,但由于此时的梯度非常低,不足以训练时间点t-3的权重。但是,问题不仅在于网络的一半没有得到适当的培训。

先前层的输出用作其他层的输入。因此,基于来自未训练层的输入,一直在进行时间点t的训练。因此,由于梯度消失,整个网络没有得到正确的训练。

综上所述,如果wrec小,则梯度梯度消失,如果wrec大,则梯度梯度爆炸。

对于消失的梯度问题,您越深入网络,您的梯度越低,权重训练就越困难,这对整个网络中所有其他权重都具有多米诺骨牌效应。

那是使用递归神经网络的主要障碍。现在,让我们检查一下该问题的可能解决方案。

dnn和rnn中的梯度消失原理一样么?
反向传播训练的,因此会展开为多层的前馈网络。 当梯度经过许多时间步长返回时,它倾向于增长或消失,与深前馈网络中的情况相同

https://zhuanlan.zhihu.com/p/76772734

dnn中是哪个部分导致梯度消失?(激活层如sigmoid)
随着更多使用某些激活函数的层被添加到神经网络中,损耗函数的梯度接近零,从而使网络难以训练。
某些激活函数(例如S型函数)会将较大的输入空间压缩为介于0和1之间的较小的输入空间。因此,S型函数的输入的较大变化将导致输出的较小变化。 因此,导数变小。多个小于1的数连乘之后,那将会越来越小,导致靠近输入层的层的权重的偏导几乎为0,也就是说几乎不更新,这就是梯度消失的根本原因。
rnn中怎么解决梯度消失问题?(lstm的结构相对普通RNN多了加和,为避免梯度消散提供了可能。线性自连接的memory是关键。)

https://blog.csdn.net/None_Pan/article/details/105828459

讲一下CNN吧,有哪些重要的特点?

https://blog.csdn.net/program_developer/article/details/84937018?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159224238719725211940175%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=159224238719725211940175&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2blogfirst_rank_v1~rank_blog_v1-1-84937018.pc_v1_rank_blog_v1&utm_term=CNN

RNN可以处理哪些场景?为什么CNN要用权值共享?(每个卷积核相当于一个特征提取器,它的任务是匹配局部图像中的特征,权值共享后,匹配的特征方式都是一样的,提取若干特征后就知道学习的是啥了)

递归神经网络(RNN)设计用于处理序列预测问题。

序列预测问题有多种形式,最好用支持的输入和输出的类型来描述。

序列预测问题的一些示例包括:

一对多:将观察值作为输入映射到具有多个步骤的序列作为输出。
多对一:将多个步骤的序列作为输入映射到类别或数量预测。
多对多:多步骤序列作为输入映射到多步骤序列作为输出。
多对多问题通常称为序列对序列,或简称seq2seq。

有关序列预测问题类型的更多详细信息,请参见以下文章:

递归神经网络序列预测模型的温和介绍
递归神经网络传统上难以训练。

长期短期记忆(LSTM)网络可能是最成功的RNN,因为它克服了训练循环网络的问题,从而被广泛用于各种应用中。

通常,RNN特别是LSTM在处理单词和段落序列(通常称为自然语言处理)时获得了最大的成功。

这包括以时间序列表示的文本序列和口语序列。它们还被用作需要序列输出的生成模型,不仅需要文本输出,而且还需要生成手写等应用程序。

将RNN用于:

文字数据
语音数据
分类预测问题
回归预测问题
生成模型
就像在CSV文件或电子表格中看到的那样,递归神经网络不适用于表格数据集。它们也不适用于图像数据输入。

不要将RNN用于:

表格数据
影像数据
RNN和LSTM已针对时间序列预测问题进行了测试,但至少可以说结果很差。自回归方法,甚至线性方法通常也要好得多。 LSTM通常优于应用于相同数据的简单MLP。

CNN里面哪些层?讲一下卷积。卷积的形式是啥样?给定一个输入,算输出的feature map大小。卷积有啥用?池化有啥用?有哪些池化方式?池化除了降采样还有啥用?(就不知道了)还有哪些层你用过?

池化层是CNN的另一个构建块。 它的功能是逐步减小表示的空间大小,以减少网络中的参数和计算量。 池化层在每个要素地图上独立运行。 池化中最常用的方法是最大池化

1:降低计算成本。

池化层可以减少前一层的大小,而无需任何其他参数,因此您只需收缩数据即可,而无需增加培训成本。

1x1缓冲层对于减小上一步的大小特别有用,特别是如果您计划在同一先前层上同时尝试不同的卷积,而没有缓冲的话,参数的数量将太大而无法处理。

2:使网络更加通用。

合并有助于该层的泛化,因为它有效地将多个值组合为一个值,这减少了过拟合的机会,因为在合并阶段会丢失一些非常特殊的东西。
讲讲dropout。dropout内部是怎么实现只让部分信号通过并不更新其余部分对于输入的权值的?讲讲BN(BatchNormalization)为什么好?全连接有什么用处?

dropout是在神经网络中逐层实现的。

它可以与大多数类型的层一起使用,例如密集的完全连接层,卷积层和循环层,例如长短期存储网络层。

可以在网络中的任何或所有隐藏层以及可见或输入层上实现dropout。在输出层上不使用它。

引入了一个新的超参数,该参数指定了该图层的输出被丢弃的概率,或者相反,该参数指定了该图层的输出被保留的概率。解释是一个实现细节,可能因纸张和代码库而异。

公共值是用于将每个节点的输出保留在隐藏层中的概率为0.5,而用于保留来自可见层的输入的接近1.0的值(如0.8)。

在最简单的情况下,每个单元都以固定的概率p保持独立于其他单元的概率,其中p可以使用验证集进行选择,也可以简单地设置为0.5,对于大多数网络和网络来说,这似乎都接近于最佳值。任务。但是,对于输入单元,保留的最佳概率通常接近于1,而不是接近0.5。

由于丢失,网络的权重将比正常情况大。因此,在最终确定网络之前,首先通过选择的dropout率来缩放权重。然后可以正常使用网络进行预测。

如果在训练期间以概率p保留一个单元,则在测试时该单元的输出权重将乘以p

完全连接的层可以从上一层的所有特征组合中学习特征,其中卷积层依赖于具有较小接收场的局部空间相干性。
全连接网络的主要优点是它们“与结构无关”。 也就是说,无需对输入做出特殊假设(例如,输入包含图像或视频)。
知道RNN么?讲讲RNN大致的实现思路。

https://blog.csdn.net/None_Pan/article/details/105828459

细讲下lstm的结构,这样设计为什么好?(门关闭,当前信息不需要,只有历史依赖;门打开,历史和当前加权平均)你觉得梯度消失靠引入一些新的激活层可以完全解决么?为什么?
LSTM代表长期短期记忆。它们是一种特殊的神经网络,称为递归神经网络。神经网络是一种机器学习技术,您可以在其中堆叠包含节点的图层。输入数据(特征)进入输入层的节点,并且信息以加权方式组合并传递到下一层,依此类推,直到它从输出层出来。现在,将预期的输出(目标)与模型的输出进行比较,并相应地更新权重。

神经网络是一项非常强大的技术,可用于图像识别和许多其他应用。限制之一是,没有与模型关联的内存。这对于连续数据(例如文本或时间序列)来说是个问题。

RNN通过包含充当一种内存的反馈外观来解决该问题。因此,模型的过去输入留下了足迹。 LSTM通过创建短期和长期存储组件来扩展该思想。

因此,LSTM是任何具有序列的工具。由于单词的含义取决于其前面的单词。这为NLP和叙事分析利用神经网络铺平了道路。

LSTM可用于文本生成。例如,您可以在作者的文本上训练模型,然后该模型将能够生成模仿作者风格和兴趣的新句子。

https://machinelearningmastery.com/how-to-fix-vanishing-gradients-using-the-rectified-linear-activation-function/

有一个弱分类器和大量未被标记过的图像数据,如何人工标记图像来对分类器进行提升
The training procedure is carried out as follows:

A larger-capacity and highly accurate “teacher” model with all available labelled data sets are trained first.
Teacher model predicts the labels and corresponding soft-max scores for all the unlabelled data
For pretraining the lightweight, computationally highly efficient “student” classification model, the top-scoring examples are considered
Student model with all the available labelled data is fine-tuned.
However, using semi-supervised data alone won’t be sufficient to achieve a state-of-the-art result at billion scales. To improve on this model, researchers at Facebook introduced semi-weak supervision approach.

Researchers used the weakly supervised teacher model to select pretraining examples from the same data set of one billion hashtagged images.

To create highly accurate models, the teacher model is made to predict labels for the same weakly supervised data set of 65 million publicly available Instagram videos with which it was pre-trained.

For example, consider a tail class like “African Dwarf Kingfisher” bird. One might have a hard time finding a dataset containing labelled images of this bird. There may not be a sufficient number of weakly-supervised/tagged examples. However, chances are that a lot of untagged images of this bird is likely to exist in the unlabelled dataset.

As discussed above, the teacher model trained with labels is able will identify enough images from the unlabeled data and classify the right kind of bird.

The teacher model obtained by pre-training on weakly-supervised data followed by fine-tuning on task-specific data has shown promising results. The student model obtained by training on the data selected by the teacher model is significantly better than the one obtained by training directly on the weakly-supervised data. This particular approach is what has led to achieving state-of-the-art results.

The results show that the weakly supervised teacher model, with 24x greater capacity than the student model, provided 82.8% top-1 accuracy on the validation set.
介绍下RNN和它的优缺点
递归神经网络的优势
RNN优于ANN的主要优势在于RNN可以对数据序列(即时间序列)进行建模,因此可以假定每个样本都依赖于先前的样本

循环神经网络甚至与卷积层一起使用以扩展有效像素邻域。

递归神经网络的缺点

渐变消失和爆炸问题。
训练RNN是一项非常困难的任务。
如果使用tanh或relu作为激活函数,则不能处理很长的序列。

让我推导BP反向传播、随机梯度下降法权重更新公式

https://zhuanlan.zhihu.com/p/32819991

激活函数的选择(sigmoid->ReLu->LReLU->PReLU )
用于分类器时,Sigmoid函数及其组合通常效果更好。
由于梯度消失问题,有时要避免使用sigmoid和tanh函数。
ReLU函数是一个通用的激活函数,目前在大多数情况下使用。
如果神经网络中出现死神经元,那么PReLU函数就是最好的选择。
请记住,ReLU函数只能在隐藏层中使用。

https://editor.csdn.net/md/?articleId=105852869

你了解神经网络吗?我:了解一些,讲感知机,然后是BP网络。简单讲了一下原理。

参考之前的单独介绍的文章

*图像处理题:如何找相似图片。我说用感知哈希算法,计算汉明距离,他说这种方法精度不行;我说那就用SIFT算法吧,他说SIFT效果还可以,但计算有点繁重,有没有轻量级的方法?我想起来去年在美图秀秀实习时,曾经做过一种图像滤波算法,有一步是把像素点用K-means聚类。我就说先把图片灰度化,然后用K-means聚类,把聚类后的各个中心点作为一张图片的特征向量如果两张图片的特征向量相近则说明这两张图片相似。貌似我这个答案有点出乎他的意料,他意味深长地说了个“行吧~~~~”(个人觉得颜色直方图匹配是个他期待的常规回答)*

介绍卷积神经网络,和 DBN 有什么区别?
一般而言,DBN是生成神经网络,将限制的玻尔兹曼机器(RBM)堆叠在一起。 您可以将RBM视为生成式自动编码器; 如果您想要一个深层的信念网,则应该堆叠RBM,而不是简单的自动编码器,因为Hinton和他的学生Yeh证明了堆叠RBM会产生S型信念网。

在当前有关基准计算机视觉数据集(例如MNIST)的文献中,卷积神经网络的性能优于DBN。 如果数据集不是计算机视觉的,那么DBN绝对可以表现更好。 从理论上讲,DBN应该是最好的模型,但是目前很难准确估计联合概率。

DBN代表深度信仰网络。它们是将来自神经网络的思想与概率图形模型相结合的一种方式。

但是,在2012年,同一小组的研究表明,深层的CNN可以在图像识别任务上,甚至无需进行无监督的预训练就能学习甚至更好的表示。从那时起,CNN一直是最强大的深度学习模型,并且无疑是对象检测的最佳模型。

我对“为什么”的理解在于学习算法。 DBN的无监督预训练的学习算法涉及堆叠,一次贪婪地学习各个层。与在CNN和其他模型中使用的所有层的梯度下降相比,这实际上导致参数比所有层的梯度下降次优,在这些模型中,所有参数都被共同调整,因此可以得出全局上乘的参数。

Deep CNN, Deep RNN, RBM的典型应用与局限,看Hinton讲义和Paper去吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值