小编Blu*_*lue的帖子

完全卷积网络 - 训练数据中不同大小的图像

我正在尝试使用Keras库Tensorflow后端建模一个完全卷积的神经网络.

我面临的问题是分批饲喂不同大小的图像以实现model.fit()功能.训练集包括不同大小的图像,从768x501到1024x760不等.

不超过5张图像具有相同的尺寸,因此将它们分组成批似乎没有任何帮助.

Numpy允许以列表形式将数据存储在单个变量中.但keras model.fit()函数在接收列表类型训练数组时会引发错误.

我不希望调整大小并丢失数据,因为我已经拥有一个非常小的数据集.

我该如何培训这个网络?

python computer-vision deep-learning conv-neural-network keras

11
推荐指数
1
解决办法
1681
查看次数

Tensor到numpy数组

我需要将传递给我的自定义损失函数的Tensorflow张量转换为numpy数组,进行一些更改并将其转换回张量.我读了一些建议在调用tensorflow会话后使用eval()函数的答案,但是我需要在loss函数中进行这种转换.我该怎么办呢?

def loss_fn(y_true, y_pred):
     #obtain y_true_np and y_pred_np - How to do this?
     #make changes to array
     #convert back using backend.variable()
Run Code Online (Sandbox Code Playgroud)

编辑:尝试下面的代码:

def loss_fn(y_true, y_pred):
 #obtain y_true_np and y_pred_np - How to do this?
 y_true_np = K.eval(y_true)
 y_pred_np = K.eval(y_pred)
 # make changes to numpy arrays
 # obtain modified numpy arrays as y_true_mod & y_pred_mod 
 # convert back to tensors using backend.variable()
 out_true = K.variable(y_true_mod)
 out_pred = K.variable(y_pred_mod)
 # continue to define your custom loss with out_true & out_pred...
Run Code Online (Sandbox Code Playgroud)

但是我在以下行中收到错误: …

python numpy keras tensor

5
推荐指数
0
解决办法
4885
查看次数

将tensorflow检查点保存到.pb protobuf文件

我已经在tensorflow上训练了一个pix2pix模型,并且该模型已经以检查点的形式保存了以下文件:

model-15000.metamodel-15000.indexmodel-15000.data-00000-of-00001graph.pbtxtcheckpoint

现在,我想将其转换为protobuf文件(.pb)以进行部署。我遇到了freeze_graph.py脚本来执行此操作,但是我遇到了其中一个参数的麻烦,它是output_node_names

我已经尝试了几个图层名称,但是出现以下错误:

断言错误:生成器/解码器_2 / batchnorm /比例/渐变不在图中

不确定如何找到output_node_names

python protocol-buffers conv-neural-network

5
推荐指数
1
解决办法
4557
查看次数

Keras Tensorflow 二元交叉熵损失大于 1

库:Keras,后端:Tensorflow

我正在训练一个单类/二元分类问题,其中我的最后一层有一个节点,激活 sigmoid 类型。我正在用二元交叉熵损失编译我的模型。当我运行代码来训练我的模型时,我注意到损失的值大于 1。这是对的,还是我在某处出错了?我检查了标签。它们都是 0 和 1。

是否有可能使二元交叉熵损失大于 1?

python keras tensorflow

5
推荐指数
2
解决办法
8030
查看次数

Tensorflow与Numpy数学函数

numpy和tensorflow执行的数学函数之间是否有任何真正的区别。例如,指数函数还是max函数?

我注意到的唯一区别是张量流需要张量的输入,而不是numpy数组的输入。这是按值的唯一区别,而函数结果没有区别吗?

python numpy tensorflow

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

SSE 内在函数 - _mm_and_ps 奇怪的行为

下面的一段代码:

__m128 a   = _mm_setr_ps( 1, 2, 3, 4 );
__m128 b   = _mm_set1_ps( 2 );
__m128 res = _mm_and_ps( a, b );
cout << a[0] << " " << a[1] << " " << a[2] << " " << a[3] << endl;
cout << b[0] << " " << b[1] << " " << b[2] << " " << b[3] << endl;
cout << res[0] << " " << res[1] << " " << res[2] << " " << …
Run Code Online (Sandbox Code Playgroud)

c++ sse

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

SSE 错误 - 使用 m128i_i32 定义 __m128i 变量的字段

__m128i以这种方式定义变量时:

__m128i a;
a.m128i_i32[0] = 65000;
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

错误:请求'a'中的成员'm128i_i32',它是非类类型'__m128i {aka __vector(2) long long int}' a.m128i_i32[0] = 65000;

我已经包含了以下头文件:

#include <x86intrin.h>
#include <emmintrin.h>
#include <smmintrin.h>
Run Code Online (Sandbox Code Playgroud)

c++ sse

2
推荐指数
1
解决办法
970
查看次数

SSE 2及更高版本 - 为什么浮点数据类型仅存储2个浮点数

我试图使用SSE内部函数优化我的代码.在浏览完文档后,我发现__m128SSE中有浮点变量的数据类型,能够存储4个浮点数.__m128dSSE2中只有一个能够存储2个浮点数吗?这些变量有什么区别?SSE2不应该比SSE快吗?

x86 sse simd sse2

0
推荐指数
1
解决办法
414
查看次数