Questions tagged «pytorch»

1
PyTorch vs.Tensorflow折叠
既PyTorch和Tensorflow折是指处理,其中输入数据具有非均匀的长度或尺寸的情况下(即,在动态图都是有用的或需要的情况下)深学习框架。 我想知道它们之间的比较,从它们所依赖的范式(例如动态批处理)及其含义的角度来看,它们之间不能/不能实现的事情,弱点/优点等。 我打算使用此信息选择其中一个以开始探索动态计算图,但是我没有特定的任务在想。 注1:像其他的动态计算图形框架DyNet或Chainer也欢迎比较,但我想专注于PyTorch和Tensorflow折,因为我认为他们是/将是最常用的。 注意2:我在PyTorch上发现了这个hackernews线程,其中包含一些稀疏信息,但数量不多。 注意3:另一个与Tensorflow Fold 有关的hackernews线程,包含一些有关它们如何比较的信息。 注意4:相关的Reddit线程。 注5:Tensorflow Fold的github中的相关bug指出了一个重要限制:评估期间无法进行条件分支。 注释6:在pytorch论坛上讨论有关所使用算法(例如动态批处理)的可变长度输入。

2
pytorch中torch.no_grad有什么用?
我是pytorch的新手,并从此 github代码开始。我不理解代码中60-61行中的注释"because weights have requires_grad=True, but we don't need to track this in autograd"。我了解我们提到requires_grad=True了使用autograd计算梯度所需的变量,但这意味着什么"tracked by autograd"呢?
21 pytorch 

1
PyTorch与Tensorflow渴望
谷歌最近在tensorflow的每晚构建中加入了其Eager模式,这是访问tensorflow计算功能的必要API。 张量流渴望与PyTorch相比如何? 可能影响比较的一些方面可能是: 渴望的优缺点来自其静态图的遗留(例如,节点中的名称)。 它们中任何一个都没有的内在限制。 其中之一需要改进的领域(例如,功能完整性,计算优化)。 生态系统差异(例如张量板?)。 注意1:Yaroslav Bulatov撰写了有关eager不错功能的评论。 注意2:在上一个问题中,我要求比较PyTorch和Tensorflow Fold。当时,在我看来Fold可以面对PyTorch,这要归功于Google的支持。我非常错:最终,Google本身放弃了Fold而转而使用Eager。我知道这是由于普通tensorflow API的固有限制导致Fold不太友好,从而限制了它的采用。

2
训练时间过长,Adam优化器的行为异常
我正在尝试在64个随机生成的数据点上训练单个感知器(1000个输入单元,1个输出,没有隐藏层)。我正在使用Adam优化器使用Pytorch: import torch from torch.autograd import Variable torch.manual_seed(545345) N, D_in, D_out = 64, 1000, 1 x = Variable(torch.randn(N, D_in)) y = Variable(torch.randn(N, D_out)) model = torch.nn.Linear(D_in, D_out) loss_fn = torch.nn.MSELoss(size_average=False) optimizer = torch.optim.Adam(model.parameters()) for t in xrange(5000): y_pred = model(x) loss = loss_fn(y_pred, y) print(t, loss.data[0]) optimizer.zero_grad() loss.backward() optimizer.step() 最初,损耗迅速降低,如预期的那样: …

3
具有任意数量的输入和输出的人工神经元网络(ANN)
我想使用ANN解决我的问题,但是问题是我的输入和输出节点号不固定。 我问了我的问题之前做了一些谷歌搜索,发现RNN可以帮助我解决我的问题。但是,我发现的所有示例都以某种方式定义了输入和输出节点的数量。 因此,我正在寻找一种策略,如何使其成为现实,或者至少是一些示例,在Keras或PyTorch中更可取。 有关我的问题的更多详细信息: 我有两个输入列表,其中第一个的长度是固定的,等于2,fe: in_1 = [2,2] 但是第二个列表的长度是灵活的,长度可以从3到inf,fe: in_2 = [1,1,2,2] 要么 in_2 = [1,1,1,2,2,2,3,3,3] 同样,输入列表彼此依赖。第一个列表显示输出列表的维度。因此,如果in_1 = [2,2],则意味着输出必须具有重塑为[2,2]形式的可能性。 目前,我正在考虑将两个输入列表合并为一个: in = in_1 + in_2 = [2, 2, 1, 1, 2, 2] 此外,输出与in_2列表fi的长度相同: 如果输入列表是: in_1 = [2, 2] in_2 = [1, 1, 2, 2] 输出应为: out = [1, 2, 1, …
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.