小编Has*_*nat的帖子

如何在Tensorflow中实现PReLU激活?

所述参数整流线性单位(PReLU)是一个有趣的和广泛使用的激活函数.似乎Tensorflow(参考链接)不提供PReLU.我知道,上级库,如KerasTFLearn,有它的实施.

我想知道如何在Tensorflow中实现PReLU

tensorflow

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

使用Tensorflow batch_norm函数获得较低的测试精度

我在MNIST数据上使用Tensorflow 的官方批处理规范化(BN)函数(tf.contrib.layers.batch_norm())。我使用以下代码添加BN:

local4_bn = tf.contrib.layers.batch_norm(local4, is_training=True)
Run Code Online (Sandbox Code Playgroud)

在测试过程中,我在上面的代码行中更改了“ is_training = False”,并观察到仅20%的准确性。但是,如果我也将上述代码也用于批处理100张图像的测试(即,保持is_training = True),则它的精度约为99%。该观察表明,指数移动平均值和方差 batch_norm()可能不正确,或者我的代码中缺少某些内容。

任何人都可以回答有关上述问题的解决方案。

python tensorflow

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

为什么 cv2.NORM_HAMMING 给出的值与实际汉明距离不同?

我正在使用汉明距离来计算由来自 opencvBRISK 描述符获得的两个关键点描述符之间的差异。我遵循opencv 文档建议并在计算距离时使用cv2.NORM_HAMMING如下:

dist_opencv = cv2.norm(des_1,des_2,cv2.NORM_HAMMING)
Run Code Online (Sandbox Code Playgroud)

它在两个描述符中提供值 87.0。但是,根据汉明距离描述,这是不正确的。我遵循了两种替代方法(在 python 中实现)来验证这一点:

dist_alt_app_1 = len(np.where(np.abs(des_1 - des_2)>0)[0])
dist_alt_app_2 = sum(el1 != el2 for el1, el2 in zip(des_1, des_2))
Run Code Online (Sandbox Code Playgroud)

dist_alt_app_1 和 dist_alt_app_2 提供的值 43 与从 opencv 获得的 87.0 不相似。进行了一些搜索以了解这种差异的原因。但是没有找到解释和澄清。

任何人都可以为这种差异提供解释吗?提前致谢。

============== 在这里添加一个例子(使问题更笼统):

des_1 = [180  25 195  96  96  88   0   0]
des_2 = [244  27 195  96  96 192   0   0]
Run Code Online (Sandbox Code Playgroud)

对于上述两个描述符,dist_opencv = 5.0 和其他(dist_alt_app_1 和 dist_alt_app_2)给出 …

python opencv distance hamming-distance

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

标签 统计

python ×2

tensorflow ×2

distance ×1

hamming-distance ×1

opencv ×1