小编blu*_*nox的帖子

TensorFlow - 无效参数:重塑:0都是馈送和提取

有没有办法在Tensorflow中提供和获取相同的变量?如果没有,为什么不允许这样做?

我收到这个错误:

StatusNotOK: Invalid argument: Reshape:0 is both fed and fetched.
Run Code Online (Sandbox Code Playgroud)

machine-learning tensorflow

4
推荐指数
2
解决办法
1768
查看次数

VS-Code 错误的单元测试类型(Mocha&Chai 而不是 Jasmine)

我有一个离子项目,我想用 Cypress 进行 e2e 测试并用 Jasmine 进行单元测试。在我将 cypress 包添加到 package.json 并开始编写第一个 e2e-tests 后,VS-Code 在我的单元测试的 spec.ts 文件中显示了一些错误。问题是,VS-Code 假设我使用 Mocha 和 Chai 进行测试。

在此处输入图片说明

我可以毫无错误地运行测试。

这是我的 tsconfig.json 文件:

{
  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./",
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "dec

    laration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2017",
      "dom"
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

我的 tsconfig.spec.json 文件:

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/spec",
    "module": "commonjs",
    "types": [
      "jasmine",
      "node"
    ]
  },
  "files": [
    "test.ts",
    "polyfills.ts", …
Run Code Online (Sandbox Code Playgroud)

unit-testing mocha.js jasmine visual-studio-code cypress

4
推荐指数
1
解决办法
911
查看次数

PyTorch - 从可变长度的序列创建填充张量

我正在寻找一种好的(有效的,最好是简单的)方法来从可变长度/形状的序列创建填充张量.到目前为止,我能想象的最好的方法是这样一个天真的方法:

import torch
seq = [1,2,3]      # seq of variable length
max_len = 5        # maximum length of seq
t = torch.zeros(5) # padding value
for i, e in enumerate(seq):
    t[i] = e
print(t)
Run Code Online (Sandbox Code Playgroud)

输出:

tensor([ 1.,  2.,  3.,  0.,  0.])
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法呢?

我还没有找到一些东西,但我想一定有更好的东西.

我正在考虑一些函数,用所需的填充将序列张量扩展到所需的形状.或者直接从序列中创建填充张量的东西.但当然也欢迎其他方法.

python pytorch

4
推荐指数
2
解决办法
3258
查看次数

Flask-Login 是否支持角色?

如果没有,是否有项目在 Flask-Login 中添加了此功能?否则,从 Flask-Login 迁移到 Flask-User 似乎有点令人生畏。否则,是否有从 Flask-Login 迁移到 Flask-User 的任何方向?

roles flask flask-login

4
推荐指数
1
解决办法
2338
查看次数

Pytorch - TypeError:'torch.Size' 对象不能解释为整数

嗨,我正在训练 PyTorch 模型并出现此错误:

----> 5 for i, data in enumerate(trainloader, 0):

TypeError: 'torch.Size' object cannot be interpreted as an integer

不确定这个错误是什么意思。

你可以在这里找到我的代码:

model.train()
for epoch in range(10):
    running_loss = 0

    for i, data in enumerate(trainloader, 0):

        inputs, labels = data

        optimizer.zero_grad()

        outputs = model(inputs)
        loss = criterion(outputs, labels)
        loss.backward()
        optimizer.step()

        if i % 2000 == 0:
          print (loss.item())
        running_loss += loss.item()
        if i % 1000 == 0:
            print ('[%d, %5d] loss: %.3f' % (epoch, i, running_loss/ 1000))
            running_loss = 0 …
Run Code Online (Sandbox Code Playgroud)

python pytorch

4
推荐指数
1
解决办法
8548
查看次数

如何在pytorch中动态索引张量?

例如,我有一个张量:

tensor = torch.rand(12, 512, 768)
Run Code Online (Sandbox Code Playgroud)

我得到了一个索引列表,说它是:

[0,2,3,400,5,32,7,8,321,107,100,511]
Run Code Online (Sandbox Code Playgroud)

我希望从给定索引列表的维度 2 上的 512 个元素中选择 1 个元素。然后张量的大小将变为(12, 1, 768)

有办法做到吗?

python deep-learning torch pytorch tensor

4
推荐指数
1
解决办法
5498
查看次数

TensorFlow shuffle_batch无效

import tensorflow as tf
sess = tf.Session()

def add_to_batch(image):

    print('Adding to batch')
    image_batch = tf.train.shuffle_batch([image],batch_size=5,capacity=11,min_after_dequeue=1,num_threads=1)

    # Add to summary
    tf.image_summary('images',image_batch)

    return image_batch

def get_batch():

    # Create filename queue of images to read
    filenames = [('/media/jessica/Jessica/TensorFlow/Practice/unlabeled_data_%d.png' % i) for i in range(11)]
    filename_queue = tf.train.string_input_producer(filenames)
    reader = tf.WholeFileReader()
    key, value = reader.read(filename_queue)

    # Read and process image
    my_image = tf.image.decode_png(value)
    my_image_float = tf.cast(my_image,tf.float32)
    image_mean = tf.reduce_mean(my_image_float)
    my_noise = tf.random_normal([96,96,3],mean=image_mean)
    my_image_noisy = my_image_float + my_noise
    print('Reading images')

    return add_to_batch(my_image_noisy)

def main (): …
Run Code Online (Sandbox Code Playgroud)

tensorflow

3
推荐指数
1
解决办法
1852
查看次数

使用tf.image.random:'numpy.ndarray'对象的Tensorflow错误没有属性'get_shape'

介绍

我正在使用Tensorflow教程"Deep MNIST for experts"的修改版本,使用Python API进行使用卷积网络的医学图像分类项目.

我想通过对训练集的图像进行随机修改来人为地增加训练集的大小.

问题

当我运行这条线时:

flipped_images = tf.image.random_flip_left_right(images)
Run Code Online (Sandbox Code Playgroud)

我得到了以下错误:

AttributeError:'numpy.ndarray'对象没有属性'get_shape'

我的Tensor"图像"是(shape=[batch, im_size, im_size, channels])"批量"ndarray的ndarray (shape=[im_size, im_size, channels]).

只是为了检查我的输入数据是否以正确的形状和类型打包,我试图在(未修改的)教程"Tensorflow Mechanics 101"中应用这个简单的函数,我得到了同样的错误.

最后,我仍然在尝试使用以下函数时遇到同样的错误:

  • tf.image.random_flip_up_down()
  • tf.image.random_brightness()
  • tf.image.random_contrast()

问题

由于输入数据通常在Tensorflow中作为ndarrays传输,我想知道:

  1. 它是Tensorflow Python API的错误还是因为输入数据的类型/形状而导致的"错误"?
  2. 我怎么能让它工作并能够申请 tf.image.random_flip_left_right我的训练集?

python-2.7 tensorflow

3
推荐指数
1
解决办法
1万
查看次数

Python - 错误:无法创建“treetagger.egg-info”:权限被拒绝

我尝试使用以下命令安装 python 模块 (treetager-python):

python3 setup.py install
Run Code Online (Sandbox Code Playgroud)

尝试此操作时,我收到错误消息:

running install
running bdist_egg
running egg_info
creating treetagger.egg-info
error: could not create 'treetagger.egg-info': Permission denied
Run Code Online (Sandbox Code Playgroud)

我阅读了有关使用 flag 的信息--user,但这根本不起作用:

python3 setup.py install --user
running install
error: can't combine user with prefix, exec_prefix/home, or install_(plat)base
Run Code Online (Sandbox Code Playgroud)

我知道使用sudo可能会解决这个问题,但我不喜欢使用 root 权限执行 3rd 方文件/代码。

那么有没有办法在不使用' sudo'的情况下解决这个问题?

我试过了Mac OS,如果需要任何其他信息,请告诉我。

提前致谢!

解决方案: 因此,正如答案所暗示的那样,问题是源文件夹中的权限问题。当我下载此文件时,文件所有者被设置为“root”,使用更改所有者chown解决了问题。感谢您的快速帮助!

python file-permissions python-3.x treetagger

3
推荐指数
1
解决办法
6761
查看次数

如何在 Tensorflow String Tensor 上执行字符串查找和替换?

我目前正在使用 Tensorflow 数据集 api 对指定路径上的图像执行一些增强。文件名本身包含说明是否扩充文件的信息。所以我想要做的是从数据集中读取文件,对于每个文件,在文件名中执行查找,如果找到特定的子字符串,则设置一个 bool 标志并将子字符串替换为“”。

我得到的错误是:

AttributeError: 'Tensor' 对象没有属性 'find'

我无法使用 dtype 字符串条目对张量执行“查找”,因为 find 不是张量的一部分,所以我试图弄清楚如何执行上述操作。我在下面分享了一些代码,我认为这些代码展示了我正在尝试做的事情。性能很重要,因此如果有人发现我将通过 Dataset API 错误地执行此操作,我更愿意以正确的方式执行此操作。

def preproc_img(filenames):
  def parse_fn(filename):
    augment_inst = False
    if cfg.SPLIT_INTO_INST:
      #*****************************************************
      #*** THIS IS WHERE THE LOGIC IS CURRENTLY BREAKING ***
      #*****************************************************
      if filename.find('_data_augmentation') != -1:
        augment_inst = True
        filename = filename.replace('_data_augmentation', '')

    image_string = tf.read_file(filename)
    img = tf.image.decode_image(image_string, channels=3)
    return dict(zip([filename], [img]))   

  dataset = tf.data.Dataset.from_tensor_slices(filenames)
  dataset = dataset.map(parse_fn)
  iterator = dataset.make_one_shot_iterator()
  return iterator.get_next()


def perform_train():
  if __name__ == '__main__':
    filenames …
Run Code Online (Sandbox Code Playgroud)

tensorflow tensorflow-datasets

3
推荐指数
1
解决办法
4253
查看次数