Questions tagged «neural-networks»

人工神经网络(ANN)是一类广泛的基于生物神经网络的计算模型。它们包括前馈NN(包括“深度” NN),卷积NN,递归NN等。


5
具有指数衰减的Adam优化器
在大多数Tensorflow代码中,我已经看到Adam Optimizer的学习率恒定1e-4(即0.0001)。该代码通常如下所示: ...build the model... # Add the optimizer train_op = tf.train.AdamOptimizer(1e-4).minimize(cross_entropy) # Add the ops to initialize variables. These will include # the optimizer slots added by AdamOptimizer(). init_op = tf.initialize_all_variables() # launch the graph in a session sess = tf.Session() # Actually intialize the variables sess.run(init_op) # now …

5
神经网络与支持向量机:第二种绝对优越吗?
我阅读过许多论文的作者都断言,支持向量机是解决其回归/分类问题的上乘技术,他们意识到通过神经网络无法获得相似的结果。比较经常指出 SVM,而不是NN, 有很强的创立理论 由于二次编程,达到全局最优 选择适当数量的参数没有问题 不太容易过拟合 需要更少的内存来存储预测模型 产生更具可读性的结果和几何解释 是认真对待的一个被广泛接受的思想吗?不要引用免费午餐定理或类似的陈述,我的问题是关于这些技术的实际使用。 另一方面,NN肯定会面对哪种抽象问题?

2
人工神经网络ANN如何用于无监督聚类?
我了解如何artificial neural network (ANN)使用反向传播以监督方式训练,以通过减少预测误差来改善拟合。我听说ANN可以用于无监督学习,但是如何在没有某种成本函数来指导优化阶段的情况下做到这一点呢?使用k-means或EM算法时,有一个函数,每次迭代搜索都在增加该函数。 我们如何使用ANN进行聚类,以及它使用什么机制对同一地点的数据点进行分组? (以及增加更多层带来了哪些额外的功能?)



3
递归与递归神经网络:哪个对NLP更好?
有递归神经网络和递归神经网络。两者通常用相同的缩写词表示:RNN。根据Wikipedia的说法,递归NN实际上是递归NN,但我并不真正理解这种解释。 而且,我似乎没有发现哪个(对于示例而言)对自然语言处理更好。事实是,尽管Socher在其教程中将递归NN用于NLP ,但我找不到递归神经网络的良好实现,并且当我在Google中进行搜索时,大多数答案都与递归NN有关。 除此之外,还有其他DNN更适合NLP还是取决于NLP任务?信仰网还是堆叠式自动编码器?(我似乎没有在NLP中为ConvNets找到任何特定的util,并且大多数实现都考虑到了机器视觉)。 最后,我真的更喜欢C ++(如果支持GPU,则更好)或Scala(如果支持Spark,则更好)的DNN实现,而不是Python或Matlab / Octave。 我已经尝试过Deeplearning4j,但是它正在不断开发中,文档有些过时了,我似乎无法使其正常工作。太糟糕了,因为它具有类似于“黑匣子”的处理方式,非常类似于scikit-learn或Weka,这正是我真正想要的。

2
为什么卷积神经网络不使用支持向量机进行分类?
近年来,卷积神经网络(CNN)已成为计算机视觉中对象识别的最新技术。通常,CNN由几个卷积层组成,然后是两个完全连接的层。这背后的一种直觉是,卷积层学习输入数据的更好表示,然后全连接层学习根据一组标签对这种表示进行分类。 但是,在CNN开始占主导地位之前,支持向量机(SVM)是最新技术。所以说SVM仍然比两层全连接神经网络更强大的分类器似乎是明智的。因此,我想知道为什么最新的CNN倾向于使用完全连接的层进行分类,而不是使用SVM?这样,您将两全其美:强大的要素表示和强大的分类器,而不是强大的要素表示,但只有弱分类器... 有任何想法吗?


1
GradientDescentOptimizer和AdamOptimizer(TensorFlow)之间的区别?
我已经在TensorFlow中编写了一个简单的MLP,它正在对XOR-Gate进行建模。 因此对于: input_data = [[0., 0.], [0., 1.], [1., 0.], [1., 1.]] 它应该产生以下内容: output_data = [[0.], [1.], [1.], [0.]] 该网络具有一个输入层,一个隐藏层和一个输出层,每个层具有2、5和1个神经元。 目前,我有以下交叉熵: cross_entropy = -(n_output * tf.log(output) + (1 - n_output) * tf.log(1 - output)) 我也尝试过这种更简单的选择: cross_entropy = tf.square(n_output - output) 以及其他一些尝试。 但是,无论我的设置是什么,的错误GradientDescentOptimizer减少的速度都比的慢得多AdamOptimizer。 实际上tf.train.AdamOptimizer(0.01),经过400-800个学习步骤(取决于学习率,在哪里0.01获得最好的结果)后产生了非常好的结果,而tf.train.GradientDescentOptimizer无论使用哪种交叉熵计算或学习率,始终需要超过2000个学习步骤。 为什么会这样呢?看来AdamOptimizer永远是更好的选择?!

1
随机梯度下降的亚当方法如何工作?
我熟悉用于训练神经网络的基本梯度下降算法。我已经阅读了有关提出亚当:ADAM:一种随机优化方法的论文。 尽管我确实有一定的见识(至少),但这篇论文对我总体而言似乎太高了。例如,成本函数通常是许多不同函数的总和,因此必须进行大量计算以优化其价值;就我所了解的主题而言,随机梯度下降仅针对这些函数的子集计算优化。对我来说,目前尚不清楚亚当如何做到这一点,以及为什么这会导致整个J (θ )的训练误差减小。Ĵ(θ )Ĵ(θ)J(\theta)Ĵ(θ )Ĵ(θ)J(\theta) 我认为Adam通过考虑以前的渐变来更新其渐变。他们称其为利用动量吗?这种势头到底是什么?根据论文第二页的算法,它是某种移动平均值,例如对“规则”梯度的第一和第二矩的一些估计? 实际上,我会怀疑亚当可以使人使用更大的有效步长来减小梯度,从而减小训练误差并结合随机逼近。因此,所得的更新向量应在空间维度上更多地“跳跃”,而不是像正常的梯度下降算法那样描述某些曲线。 有人可以揭开亚当的神秘面纱吗?特别是它是如何收敛的,特别是亚当方法为何起作用以及其确切好处是什么?


4
内核如何应用于要素图以生成其他要素图?
我试图理解卷积神经网络的卷积部分。看下图: 在理解第一个卷积层时,我没有问题,在这里我们有4个不同的内核(大小为),我们将它们与输入图像进行卷积以获得4个特征图。k × kk×kk \times k 我不理解的是下一个卷积层,我们从4个特征图转到6个特征图。我假设在这一层中有6个内核(因此给出了6个输出特征图),但是这些内核如何在C1中显示的4个特征图上工作?内核是3维的,还是2维的,并在4个输入要素图中复制?

4
输出层有哪些激活功能?
虽然隐藏层的激活函数的选择非常明确(大多数为S型或tanh),但我想知道如何确定输出层的激活函数。常见的选择是线性函数,S形函数和softmax函数。但是,什么时候应该使用哪个呢?

7
面向初学者的神经网络参考(教科书,在线课程)
我想学习神经网络。我是计算语言学家。我知道统计机器学习方法,并且可以使用Python进行编码。 我希望从其概念入手,并从计算语言学的角度了解一种或两种可能有用的流行模型。 我浏览了网络以供参考,并找到了一些书籍和材料。 Ripley,Brian D.(1996)模式识别与神经网络,剑桥 Bishop,CM(1995年),《神经网络用于模式识别》,牛津:牛津大学出版社。 一些链接,例如本文,这些课程笔记(多伦多大学心理学系),这些课程笔记(威斯康星大学计算机科学大学)和此幻灯片(Facebook研究)。 如果有人知道课程,Coursera课程通常很好。我更喜欢具有清晰语言和大量示例的材料。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.