私は、次のコード、を行うが、今pytorch、 DTYPE = torch.cuda.FloatTensorを使用する方法を知っているように思います。割り当てtorch.cuda.FloatTensor
import torch
dtype = torch.cuda.FloatTensor
def fit (position):
return position**2
def main():
pop = 30
xmax, xmin = 5, -5
x= (xmax-xmin)*torch.rand(pop, 1).type(dtype)+xmin
y = fit(x)
[miny, indexmin] = torch.min(y,0)
best = x[indexmin]
print(best)
最後の部分、私は、インデックスとxの値として変数最善を定義します。
import numpy as np
import random as rand
xmax, xmin = 5, -5
pop = 30
x = (xmax-xmin)*rand.random(pop,1)
y = x**2
[minz, indexmin] = np.amin(y), np.argmin(y)
best = x[indexmin]
これはそれを行うには、私の試みがある:(numpyのを使用して)コードストレートのpythonがありますindexminと等しいですが動作しません。私はここで間違って何をしていますか?
次messengeが表示されます。
RuntimeError: expecting vector of indices at /opt/conda/conda-bld/pytorch_1501971235237/work/pytorch-0.1.12/torch/lib/THC/generic/THCTensorIndex.cu:405
Hey!エラーを再現できません。私は別のpytorchバージョン上にあり、それはうまく動作します。あなたは 'conda list | grep pytorch'ターミナルから? – cleros
@clerosありがとう! **申し訳ありませんが、私は間違ったコードを掲載しました** 輸入トーチ DTYPE = torch.cuda.FloatTensor デフ(x)がフィット: 復帰X ** 2 DEFメイン(): ポップ= 30 XMAXを、xmin = 5、-5 x =(xmax-xmin)* torch.rand(pop、1).type(dtype)+ xmin y = fit(x) [miny、indexmin] = torch.min(y 、0) 最高= x [indexmin] print(最高) main() これは私にエラーを与えるコードです。 ** 2)** grep pytorchを実行すると、 'grep'が内部コマンドまたは外部コマンドとして認識されません。 操作可能なプログラムまたはバッチファイルです。 – Johnny