-
1 votesanswersviews
Pytorch:输出w.r.t参数的梯度
我对寻找关于参数(权重和偏差)的神经网络输出的梯度感兴趣 . 更具体地说,假设我有以下神经网络结构[6,4,3,1] . 输入样本大小为20.我感兴趣的是找到权重(和偏差)的神经网络输出的梯度,如果我没有弄错,在这种情况下将是47.在文献中,这个梯度有时被称为Weight_Jacobian . 我在Jupyter Notebook上使用Python 3.6上的Pytorch版本0.4.0 . 我制... -
6 votesanswersviews
输出的梯度w.r.t网络权重,保持另一个输出常量
我们假设我有一个简单的MLP 并且我有一个关于输出层的一些损失函数的梯度来得到G = [0,-1](也就是说,增加第二个输出变量会减小损失函数) . 如果我根据我的网络参数采用G的梯度并应用渐变体面的权重更新,则第二个输出变量应该增加,但是没有关于第一个输出变量的说法,并且渐变的缩放应用几乎肯定会改变输出变量(增加它或减少它) 如何修改我的损失函数或任何梯度计算,以确保第一个输出不会改变? -
0 votesanswersviews
具有自定义“丢失”功能的渐变更新
我正在神经网络上的tensorflow工作,试图最大化两个数据集之间的相关性:http://ttic.uchicago.edu/~klivescu/papers/andrew_icml2013.pdf 我有一个"loss"函数有点复杂,所以我用numpy数组(并称之为corr_func())编写它,以便它可以使用张量运行我使用tf.py_func函数,我尝试更新渐变以与此处所示... -
1 votesanswersviews
张量流中的小批量梯度下降实现
在阅读深度学习模型的tensorflow实现时,我试图理解培训过程中包含的以下代码段 . self.net.gradients_node = tf.gradients(loss, self.variables) for epoch in range(epochs): total_loss = 0 for step in range((epoch*tr... -
0 votesanswersviews
在小批量梯度下降中混淆使用丢失
我的问题到底是什么 . CN25使用小批量GD进行训练,并使用最后一个完全连接层(第60行)中的丢失 fc1 = tf.layers.dropout(fc1, rate=dropout, training=is_training) 起初我以为 tf.layers.dropout 或 tf.nn.dropout 在列中随机将神经元设置为零 . 但我最近发现事实并非如此 . 下面的代码打印 drop... -
2 votesanswersviews
张量流中矢量二值化的自定义渐变
我正在尝试按照本文所述实现"feed-forward convolutional/deconvolutional residual encoder":https://arxiv.org/abs/1511.06085 在网络架构中,他们使用二值化层,在这里他们首先使用具有tanh激活的标准全连接层来生成具有连续区间[-1,1]中的分量的向量 . 然后,他们概率地将每个组件映射到-... -
0 votesanswersviews
Step,Gradient Descent Tensorflow中的批量大小
我正在学习Udacity深度学习课程,其作业说:“展示过度拟合的极端情况 . 将训练数据限制在几个批次 . ” 我的问题是: 1)为什么 reducing num_steps, num_batches 与过度拟合有关?我们不是添加任何变量也不是增加W的大小 . 在下面的代码中,num_steps曾经是3001,num_batches是128,解决方案只是将它们分别减少到101和3 . num_... -
3 votesanswersviews
张量流中GradientDescentOptimizer和AdamOptimizer之间的区别?
使用GradientDescentOptimizer而不是Adam Optimizer时,模型似乎不会收敛 . 另一方面,AdamOptimizer似乎工作正常 . 来自tensorflow的GradientDescentOptimizer出了什么问题? import matplotlib.pyplot as plt import tensorflow as tf import numpy as ... -
1 votesanswersviews
当使用keras训练多级nn时,丢失的原因可能不会更进一步
我正在使用keras训练一个多类神经网络(后端是张量流) . 我将在最终位置给出我的设置和一些代码 . 描述是:当我进行10个文件夹交叉验证时,训练损失和验证损失在最初的10-15个时期下降,但是在15个时期之后不能再进一步下降并且保持在约(损失:1.0606 - acc:0.6301- val_loss:1.1577 - val_acc:0.5774) . 我为我的设置尝试了几处更改 .... -
31 votesanswersviews
Sklearn SGDClassifier部分适合
我喜欢使用partial_fit方法来训练分类器 . 我选择了适合内存的数据集样本(100,000行)来测试拟合与partial_fit: from sklearn.linear_model import SGDClassifier def batches(l, n): for i in xrange(0, len(l), n): yield l[i:i+n] clf1... -
2 votesanswersviews
线性回归中的梯度下降
我试图在java中实现线性回归 . 我的假设是theta0 theta1 * x [i] . 我试图找出theta0和theta1的值,以便成本函数最小 . 我使用渐变下降来找出 Value - 在里面 while(repeat until convergence) { calculate theta0 and theta1 simultaneously. } 什么是重复直到收敛?我知道... -
3 votesanswersviews
神经网络与线性回归的梯度下降反向传播
我正在尝试理解“Back Propagation”,因为它在使用Gradient Descent优化的神经网络中使用 . 阅读文献似乎做了一些事情 . 使用随机权重开始并获取错误值 使用这些权重对损失函数执行梯度下降以获得新的权重 . 使用这些新权重更新权重,直到损失函数最小化 . 上面的步骤似乎是解决线性模型的精确过程(例如回归)? Andrew Ng关于机器学习Coursera... -
0 votesanswersviews
线性回归的梯度下降不收敛
我已经在JavaScript中使用梯度下降算法实现了一个非常简单的线性回归,但在咨询了多个来源并尝试了几个方面后,我无法将其收敛 . 数据是绝对线性的,它只是数字0到30作为输入,x * 3作为正确的输出要学习 . 这是梯度下降背后的逻辑: train(input, output) { const predictedOutput = this.predict(input); const d... -
0 votesanswersviews
Keras / TensorFlow中的非符号丢失
对于大学项目,我想训练一个(模拟的)机器人在给定位置和速度的情况下击球 . 首先要尝试的是策略渐变:我有一个参数轨迹生成器 . 对于每个训练位置,我通过我的网络提供位置,将轨迹发送到模拟器并获得奖励 . 我现在可以使用它作为损失,对渐变进行采样,反馈并更新网络的权重,以便下次更好 . 因此,目标是学习从位置到轨迹权重的映射 . 当使用像Theano和Tensorflow(或Keras)这样的全明星... -
0 votesanswersviews
修改TensorFlow中的传入渐变
考虑一个神经网络,该网络具有2个完全连接的层 "l1_dense" 和 "l2_dense" ,并且具有一些损失函数 . 在反向传播期间,我想计算 "l2_dense" w.r.t的渐变 . 丢失函数,对渐变进行一些操作,并使用此操纵渐变作为 "l1_dense" 图层的传入渐变(在链规则中) . 我知道我可以使用 ... -
0 votesanswersviews
PySpark Softmax回归梯度体面
我有一个softmax文档分类器的实现,编写为spark应用程序 . 我有一套培训文件,一套培训文件的标签和一套测试文件 . 我的任务是使用在培训文档上训练的softmax分类器来预测测试文档的标签 . 我发现this是关于softmax回归和梯度体面过程的非常有用的教程 . 那是's what I'米的工作 . 训练数据是一个文件,每行文件一个文档 . 训练标签是一个文件,在文件的每一行上具有逗... -
1 votesanswersviews
PyTorch线性回归问题
我试图在PyTorch中实现一个简单的线性模型,可以给出x数据和y数据,然后训练识别方程y = mx b . 但是,每当我尝试在训练后测试我的模型时,它认为方程是y = mx 2b . 我将展示我的代码,希望有人能够发现问题 . 预先感谢您的任何帮助 . import torch D_in = 500 D_out = 500 batch=200 model=torch.nn.Sequential... -
1 votesanswersviews
如何用pytorch中的SGD成功训练一个简单的线性回归模型?
我试图用SGD在pytorch中训练一个简单的多项式线性回归模型 . 我写了一些自包含(我认为是非常简单的代码),然而,由于某种原因,我的模型没有按照我的想法进行训练 . 我从正弦曲线中采样了5个点,并尝试用4度多项式拟合它 . 这是一个凸问题,所以只要我们有足够的迭代和足够小的步长,GD或SGD应该找到零列车误差的解决方案 . 尺寸 . 出于某种原因,我的模型不能很好地训练(即使它似乎正在改变模... -
-1 votesanswersviews
在神经网络的实现中权重变为“NaN”
我正在尝试实现具有5个隐藏层的分类的神经网络,以及输出层中的softmax交叉熵 . 实现在JAVA中 . 为了优化,我使用了MiniBatch梯度下降(批量大小= 100,学习率= 0.01) 但是,经过几次迭代后,权重变为“NaN”,并且预测值对于每个测试用例都是相同的 . 无法调试此错误的来源 . 这是代码的github链接(带有测试/培训文件 . )https://github.com/a... -
4 votesanswersviews
tensorflow的AdamOptimizer和GradientDescentOptimizer无法拟合简单数据
类似的问题:Here 我正在尝试TensorFlow . 我生成了可以线性分离的简单数据,并试图将线性方程拟合到它 . 这是代码 . np.random.seed(2010) n = 300 x_data = np.random.random([n, 2]).tolist() y_data = [[1., 0.] if v[0]> 0.5 else [0., 1.] for v in x_d... -
2 votesanswersviews
神经网络训练误差随机梯度下降
我有一个前馈神经网络的实现,在python中具有随机梯度下降 . 当用xor门训练NN实例时,它训练得很好 . 但是当我使用库存变化数据训练实例时,会抛出此错误: Traceback (most recent call last): File "F:\predict\test.py", line 21, in <module> stock.train(s... -
4 votesanswersviews
如何在反向传播之前直接设置图层的渐变?
想象一下如下定义的微小网络,其中linear是一个典型的辅助函数,用于定义权重矩阵和激活函数的TensorFlow变量: final_layer = linear(linear(_input,10,tf.nn.tanh),20) 通常情况下,这将通过损失梯度下降进行优化: loss = tf.reduce_sum(tf.square(final_layer - _target)) train_st... -
1 votesanswersviews
使用tf.py_func()自动渐变更新
我知道可以在tensorflow中更新tf.py_func()中的渐变,但是在神经网络中传递输入后我计算的函数有点复杂...... 所以我想知道它们是否是优化器通过tf.py_func()计算的损失函数自动获得梯度的一种方法? -
2 votesanswersviews
三重态损失的 softmax 版本的梯度计算
我一直在尝试实现 Caffe 中描述的三元组损失的 softmax 版本,具体说明如下:Hoffer 和 Ailon,《使用三重态网络进行深度度量学习》,ICLR 2015。 我已经尝试过了,但是由于指数的 L2 不平方,因此我发现很难计算梯度。 有人可以在这里帮我吗? -
0 votesanswersviews
将 Logistic 回归损失函数转换为 Softmax
我目前有一个程序,该程序采用特征向量和分类,并将其应用于已知的权重向量,以使用 Logistic 回归生成损失梯度。这是该代码: double[] grad = new double[featureSize]; //dot product w*x double dot = 0; for (int j = 0; j < featureSize;... -
2 votesanswersviews
Octave / MatLab中矩阵的梯度函数
我'm trying to implement the gradient descent algorithm in Octave/Matlab. I' m在我有这个名为 errors 的201x201矩阵的位置,我假设它对应于一个2输入变量函数 f(x, y) . 当用 imagesc 显示时,矩阵给出了漂亮的渐变图像,但是当我计算 [dx, dy] = gradient(errors) 时,我... -
9 votesanswersviews
Scipy稀疏CSR矩阵到TensorFlow SparseTensor - Mini-Batch梯度下降
我有一个Scipy稀疏CSR矩阵,它是用SVM-Light格式的稀疏TF-IDF特征矩阵创建的 . 功能的数量是巨大的,它是稀疏的所以我必须使用SparseTensor,否则它太慢 . 例如,要素数量为5,示例文件可能如下所示: 0 4:1 1 1:3 3:4 0 5:1 0 2:1 解析后,训练集如下所示: trainX = <scipy CSR matrix> trainY = ...