我是深度学习的tensorflow的新手,并且对tensorflow中的反卷积(卷积转置)操作感兴趣.我需要看看操作反卷积的源代码.函数是我猜nn_ops.py中的conv2d_transpose().
但是,在函数中它调用另一个函数调用gen_nn_ops.conv2d_backprop_input().我需要看看这个函数里面有什么,但我无法在存储库中找到它.任何帮助,将不胜感激.
我是TensorFlow菜鸟.我已经从开源实现深度训练了TensorFlow模型,现在必须针对一组新图像运行模型.
该模型在大小的图像上进行了训练,100 * 100因此我将新的图像大小调整为相同的大小.我有149新的图像来运行模型.当我运行模型时,我收到以下错误.
InvalidArgumentError (see above for traceback): Assign requires shapes
of both tensors to match. lhs shape= [20] rhs shape= [48]
Run Code Online (Sandbox Code Playgroud)
在线
saver = tf.train.Saver(tf.all_variables())
Run Code Online (Sandbox Code Playgroud)
我怀疑训练有素的模型尺寸和测试图像尺寸不匹配.我不清楚如何解决这个问题.我从tf.all_variables()调用中打印出变量列表.这里是
Tensor("Placeholder:0", shape=(128, 100, 100, 3), dtype=float32)
(11, 11, 3, 20)
conv1/weights:0
(20,)
conv1/biases:0
(5, 5, 20, 35)
conv2/weights:0
(35,)
conv2/biases:0
(3, 3, 35, 50)
conv4/weights:0
(50,)
conv4/biases:0
(3, 3, 50, 75)
conv5/weights:0
(75,)
conv5/biases:0
(300, 1024)
local1/weights:0
(1024,)
local1/biases:0
(1024, 1024)
local2/weights:0
(1024,)
local2/biases:0
(1024, 0) …Run Code Online (Sandbox Code Playgroud) 我尝试git使用命令在 Ubuntu 12.10 上安装sudo apt-get install git。但我收到这样的错误消息:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package git is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'git' has no installation candidate
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
我有一个 s3 存储桶,设置为允许公开列出。当我做:
aws s3 ls s3://bucket_name/prefix/ --no-sign-request
Run Code Online (Sandbox Code Playgroud)
我成功列出了存储桶。我想在使用aws-sdk for Node.js 的应用程序中列出它。在那里,我这样做:
import AWS from 'aws-sdk';
const s3 = new AWS.S3();
s3.listObjectsV2({Bucket: bucket_name, Prefix: prefix, Delimiter: "/"}, ...
Run Code Online (Sandbox Code Playgroud)
但我收到错误:
message: 'Missing credentials in config, if using AWS_CONFIG_FILE, set AWS_SDK_LOAD_CONFIG=1',
2021-09-17T12:40:33.459881+00:00 app[web.1]: code: 'CredentialsError',
2021-09-17T12:40:33.459881+00:00 app[web.1]: errno: 'ECONNREFUSED',
2021-09-17T12:40:33.459882+00:00 app[web.1]: syscall: 'connect',...
2021-09-17T12:40:33.459883+00:00 app[web.1]: time: 2021-09-17T12:40:33.459Z,
2021-09-17T12:40:33.459884+00:00 app[web.1]: originalError:
2021-09-17T12:40:33.459884+00:00 app[web.1]: { message: 'Could not load credentials from any providers',
2021-09-17T12:40:33.459884+00:00 app[web.1]: code: 'CredentialsError',
2021-09-17T12:40:33.459884+00:00 app[web.1]: errno: 'ECONNREFUSED',
2021-09-17T12:40:33.459885+00:00 …Run Code Online (Sandbox Code Playgroud) 根据本文,输出形状是N + H - 1,N输入高度或宽度,H是内核高度或宽度.这是卷积的明显逆过程.本教程给出了计算卷积输出形状的公式(W?F+2P)/S+1,即W- 输入大小,F- 过滤器大小,P- 填充大小,S- 步幅.但是在Tensorflow中,有一些测试用例如:
strides = [1, 2, 2, 1]
# Input, output: [batch, height, width, depth]
x_shape = [2, 6, 4, 3]
y_shape = [2, 12, 8, 2]
# Filter: [kernel_height, kernel_width, output_depth, input_depth]
f_shape = [3, 3, 2, 3]
Run Code Online (Sandbox Code Playgroud)
所以我们使用y_shape,f_shape并x_shape根据公式(W?F+2P)/S+1计算填充大小P.从(12 …
我正在github上开发一个具有travis检查的库。我想打开一个WIP请求请求,以轻松地讨论想法。在travis上为该项目设置了很多测试,因此我不想在每次推送提交时都触发测试(以防止服务器超载),因为无论如何代码都不会通过。
有没有办法我可以在github上执行此操作而无需访问travis配置?
我有一个NumPy数组,并希望使用Queue在TensorFlow的代码中读取它.我想队列返回整个数据洗牌,一些指定的纪元数,然后抛出一个错误.如果我不需要硬编码示例的大小和示例的数量,那将是最好的.我认为洗牌批次是为了达到这个目的.我尝试过使用如下:
data = tf.constant(train_np) # train_np is my numpy array of shape (num_examples, example_size)
batch = tf.train.shuffle_batch([data], batch_size=5, capacity=52200, min_after_dequeue=10, num_threads=1, seed=None, enqueue_many=True)
sess.run(tf.initialize_all_variables())
tf.train.start_queue_runners(sess=sess)
batch.eval()
Run Code Online (Sandbox Code Playgroud)
这种方法的问题是它连续读取所有数据,我不能指定它在一些时期之后完成.我知道我可以使用RandomShuffleQueue并将数据插入其中几次,但是:a)我不想浪费epoch*内存数据和b)它将允许队列在时代之间进行混洗.
有没有一种很好的方法来读取Tensorflow中的时代中的混洗数据而无需编写自己的队列?
我有一个任意形状的numpy数组,例如:
a = array([[[ 1, 2],
[ 3, 4],
[ 8, 6]],
[[ 7, 8],
[ 9, 8],
[ 3, 12]]])
a.shape = (2, 3, 2)
Run Code Online (Sandbox Code Playgroud)
和argmax在最后一个轴上的结果:
np.argmax(a, axis=-1) = array([[1, 1, 0],
[1, 0, 1]])
Run Code Online (Sandbox Code Playgroud)
我想得到最大值:
np.max(a, axis=-1) = array([[ 2, 4, 8],
[ 8, 9, 12]])
Run Code Online (Sandbox Code Playgroud)
但没有重新计算一切.我试过了:
a[np.arange(len(a)), np.argmax(a, axis=-1)]
Run Code Online (Sandbox Code Playgroud)
但得到了:
IndexError: shape mismatch: indexing arrays could not be broadcast together with shapes (2,) (2,3)
Run Code Online (Sandbox Code Playgroud)
怎么做?类似的问题2-d:numpy 2d array max/argmax
当我运行我的python脚本时CUDA_VISIBLE_DEVICES=2,Tensorflow仍然显示以下内容:
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1041]创建TensorFlow设备(/ gpu:0) - >(设备:0,名称:Tesla K80,pci总线ID:0000:86:00.0)
因此,我的代码失败并显示以下消息:
无法满足显式设备规范'/ device:GPU:2',因为在此过程中没有注册与该规范匹配的设备; 可用设备:/ job:localhost/replica:0/task:0/cpu:0,/ job:localhost/replica:0/task:0/gpu:0
有人可以解释一下必须发生什么吗?
我正在使用 Angular 材料的拖放模块来移动一些元素。
更具体地说,我有多个cdkDropLists,cdkDrag每个都有一个:
<div *ngFor="let l of lists">
<div cdkDropList [cdkDropListConnectedTo]="all_lists">
<div cdkDrag>
content
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
每当我从列表中移动元素时,我希望有一个占位符,例如:
<div cdkDrag>
content
<div *cdkDragPlaceholder>
placeholder content
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
但是,当我执行此操作时,会显示占位符内容,以代替丢失(当前正在拖动)的元素(源列表)以及其新位置(接收器列表)。我希望能够保留content接收器列表的默认行为(显示根元素又名),并仅使用源列表的占位符。
不过,我无法区分这两个位置,因为即使在“接收器”位置,也显示了源元素的 HTML(这有点道理,因为占位符是 a 的属性,cdkDrag而不是cdkDropList)。
如何使用不同的占位符来代替元素的原始位置和新位置?
堆栈闪电战示例。
直觉:(多个)列表是一副牌,当将一张牌从 A 移动到 B 时,我在 A 牌组中看到一张倒数第二张(自定义占位符)牌,但是当我将顶部 A 卡悬停在 B 上时,我看到上面的 A 卡。
我是 C 初学者(在 C++ 方面经验很少),我对用户输入变量值有疑问。我用 C编写MPI_Scatter和MPI_Gather编程,它将计算每个节点上输入整数的总数。
问题是:如果我定义变量输入(见下面的代码),input=5;因为它将计算所有4节点的总和(210)。如果我为 设置输入scanf,结果将仅为15. 变量似乎改变了它的值。你能帮我吗?代码:
#include "mpi.h"
#include <stdio.h>
#include <stdlib.h>
#define MASTER 0
int main(int argc, char** argv){
int id, nproc;
MPI_Init(&argc, &argv);
MPI_Comm_size(MPI_COMM_WORLD, &nproc);
MPI_Comm_rank(MPI_COMM_WOLRD, &id);
MPI_Status status;
int input=0; // <- problematic variable
int nodeValue=0;
int size;
int *array;
if(id == MASTER){
printf("How many elements per node? ");
scanf("%d", &input);
nodeValue = input;
}
MPI_Barrier(MPI_COMM_WORLD);
if(id == MASTER){
size …Run Code Online (Sandbox Code Playgroud) 我想发送两个数组:double A并int B在MPI中使用广播(我正在使用C++).通常,communicator.Bcast读者的块,但不是作家.所以,如果我做了:
communicator.Bcast(A, a_len, ...)
communicator.Bcast(B, b_len, ...)
Run Code Online (Sandbox Code Playgroud)
可能会发生某些进程首先检索第二条消息并且事情会搞乱.
我想知道,对于那个问题,什么是好的,干净的解决方案?我应该使用派生数据类型/ MPI_Pack吗?看起来很难看.我可以以某种方式强制广播中使用TAG吗?
我是android的新手,正在尝试在G5(不是虚拟模拟器)上运行我的应用程序,但是无法以某种方式使我的android studio识别我的手机。
我已经安装了Google USB驱动程序,试图将手机上的设置切换为PTP,然后将手机重新安装在设备管理器中。
有人可以帮我解决这个问题吗?
这就是我一直看到的: