本文整理汇总了Python中PyTorch.asDoubleTensor方法的典型用法代码示例。如果您正苦于以下问题:Python PyTorch.asDoubleTensor方法的具体用法?Python PyTorch.asDoubleTensor怎么用?Python PyTorch.asDoubleTensor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PyTorch
的用法示例。
在下文中一共展示了PyTorch.asDoubleTensor方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_pynn
# 需要导入模块: import PyTorch [as 别名]
# 或者: from PyTorch import asDoubleTensor [as 别名]
def test_pynn():
PyTorch.manualSeed(123)
linear = Linear(3, 5)
linear
print('linear', linear)
print('linear.weight', linear.weight)
print('linear.output', linear.output)
print('linear.gradInput', linear.gradInput)
input = PyTorch.DoubleTensor(4, 3).uniform()
print('input', input)
output = linear.updateOutput(input)
print('output', output)
gradInput = linear.updateGradInput(input, output)
print('gradInput', gradInput)
criterion = ClassNLLCriterion()
print('criterion', criterion)
print('dir(linear)', dir(linear))
mlp = Sequential()
mlp.add(linear)
output = mlp.forward(input)
print('output', output)
import sys
sys.path.append('thirdparty/python-mnist')
from mnist import MNIST
import numpy
import array
numpy.random.seed(123)
mlp = Sequential()
linear = Linear(784, 10)
mlp.add(linear)
logSoftMax = LogSoftMax()
mlp.add(logSoftMax)
mlp
criterion = ClassNLLCriterion()
print('got criterion')
learningRate = 0.0001
mndata = MNIST('/norep/data/mnist')
imagesList, labelsB = mndata.load_training()
images = numpy.array(imagesList).astype(numpy.float64)
#print('imagesArray', images.shape)
#print(images[0].shape)
labelsf = array.array('d', labelsB.tolist())
imagesTensor = PyTorch.asDoubleTensor(images)
#imagesTensor = PyTorch.FloatTensor(100,784)
#labels = numpy.array(20,).astype(numpy.int32)
#labelsTensor = PyTorch.FloatTensor(100).fill(1)
#print('labels', labels)
#print(imagesTensor.size())
def printStorageAddr(name, tensor):
print('printStorageAddr START')
storage = tensor.storage()
if storage is None:
print(name, 'storage is None')
else:
print(name, 'storage is ', hex(storage.dataAddr()))
print('printStorageAddr END')
labelsTensor = PyTorch.asDoubleTensor(labelsf)
labelsTensor += 1
#print('calling size on imagestensor...')
#print(' (called size)')
desiredN = 128
maxN = int(imagesTensor.size()[0])
desiredN = min(maxN, desiredN)
imagesTensor = imagesTensor.narrow(0, 0, desiredN)
labelsTensor = labelsTensor.narrow(0, 0, desiredN)
print('imagesTensor.size()', imagesTensor.size())
print('labelsTensor.size()', labelsTensor.size())
N = int(imagesTensor.size()[0])
print('type(imagesTensor)', type(imagesTensor))
print('start training...')
for epoch in range(4):
numRight = 0
for n in range(N):
# print('n', n)
input = imagesTensor[n]
label = labelsTensor[n]
labelTensor = PyTorch.DoubleTensor(1)
labelTensor[0] = label
# print('label', label)
output = mlp.forward(input)
prediction = PyTorch.getDoublePrediction(output)
#.........这里部分代码省略.........
示例2: test_pycudann
# 需要导入模块: import PyTorch [as 别名]
# 或者: from PyTorch import asDoubleTensor [as 别名]
def test_pycudann():
# PyTorch.manualSeed(123)
linear = Linear(3, 5).cuda()
print('linear', linear)
print('linear.weight', linear.weight)
print('linear.output', linear.output)
print('linear.gradInput', linear.gradInput)
input = PyTorch.DoubleTensor(4, 3).uniform().cuda()
print('input', input)
output = linear.updateOutput(input)
print('output', output)
gradInput = linear.updateGradInput(input, output)
print('gradInput', gradInput)
criterion = ClassNLLCriterion().cuda()
print('criterion', criterion)
print('dir(linear)', dir(linear))
mlp = Sequential()
mlp.add(linear)
mlp.cuda()
output = mlp.forward(input)
print('output', output)
import sys
sys.path.append('../pytorch/thirdparty/python-mnist')
from mnist import MNIST
import numpy
import array
# numpy.random.seed(123)
mlp = Sequential()
mlp.add(SpatialConvolutionMM(1, 16, 5, 5, 1, 1, 2, 2))
mlp.add(ReLU())
mlp.add(SpatialMaxPooling(3, 3, 3, 3))
mlp.add(SpatialConvolutionMM(16, 32, 3, 3, 1, 1, 1, 1))
mlp.add(ReLU())
mlp.add(SpatialMaxPooling(2, 2, 2, 2))
mlp.add(Reshape(32 * 4 * 4))
mlp.add(Linear(32 * 4 * 4, 150))
mlp.add(Tanh())
mlp.add(Linear(150, 10))
mlp.add(LogSoftMax())
mlp.cuda()
criterion = ClassNLLCriterion().cuda()
print('got criterion')
learningRate = 0.02
mndata = MNIST('/norep/data/mnist')
imagesList, labelsB = mndata.load_training()
images = numpy.array(imagesList).astype(numpy.float64)
#print('imagesArray', images.shape)
#print(images[0].shape)
labelsf = array.array('d', labelsB.tolist())
imagesTensor = PyTorch.asDoubleTensor(images).cuda()
#imagesTensor = PyTorch.FloatTensor(100,784)
#labels = numpy.array(20,).astype(numpy.int32)
#labelsTensor = PyTorch.FloatTensor(100).fill(1)
#print('labels', labels)
#print(imagesTensor.size())
def printStorageAddr(name, tensor):
print('printStorageAddr START')
storage = tensor.storage()
if storage is None:
print(name, 'storage is None')
else:
print(name, 'storage is ', hex(storage.dataAddr()))
print('printStorageAddr END')
labelsTensor = PyTorch.asDoubleTensor(labelsf).cuda()
labelsTensor += 1
#print('calling size on imagestensor...')
#print(' (called size)')
desiredN = 1280
maxN = int(imagesTensor.size()[0])
desiredN = min(maxN, desiredN)
imagesTensor = imagesTensor.narrow(0, 0, desiredN)
labelsTensor = labelsTensor.narrow(0, 0, desiredN)
print('imagesTensor.size()', imagesTensor.size())
print('labelsTensor.size()', labelsTensor.size())
N = int(imagesTensor.size()[0])
print('type(imagesTensor)', type(imagesTensor))
size = PyTorch.LongStorage(4)
size[0] = N
size[1] = 1
#.........这里部分代码省略.........