我对tensorflow相当陌生,我看过一些教程,但我不知道tf.gradients()是如何工作的。如果我给它两个二维矩阵的输入,它将如何计算偏导数?我真的很困惑,请帮助我,如果你可以,这将是一个很大的帮助。
import tensorflow as tf
import numpy as np
X = np.random.rand(3,3)
y = np.random.rand(2,2)
grad = tf.gradients(X,y)
with tf.Session() as sess:
sess.run(grad)
print(grad)
这就产生了一个错误:
回溯
我正在实施一个OCR系统。Tesseract API用于提取。在提取文本之前,使用OpenCV对图像进行预处理。在预处理灰度的情况下,进行了锐化和自适应阈值处理。在提取图像中的文本后,将获得以下输出。
预期输出
Let's talk ;-)
获得输出
" yr _ W??? V. ? _
W fag '7? |g§3:? V
é claw?!
有人知道原因吗?我编辑了这个问题,因为我采取了一种不同的方式来实现我的项目,我输入了一个图像,并使用opnCV来锐化图像。这是输入图像.
然后我得到了下面的输出.。当我使用锐化图像为Tesseract Api,它提供混合字符。但是
我需要一个Matlab函数,为数字和字母识别准备图像。 我现在需要的是将原始的RGB图像转换为二进制图像,其中的每个像素都是白色的,除了与字母和数字对应的像素,以及所有数字和字母必须显示为彩色/饱和,即显示为充满颜色。 ? 这是我测试过的代码。正如你所看到的,字母或数字的一些像素是白色的。 I = imread('img6.png'); % read the image into the matrix
Ig = rgb2gray(I);
Icon = imadjust(Ig);
subplot(2,2,1)
imshow(Ig)
subplot(2,2,2)
im
我刚刚在Python3.7.2 (macOS)上安装了torch-1.0.0,并尝试了,但代码如下:
import torch
x = torch.ones(2, 2, requires_grad=True)
y = x + 2
z = y * y * 3
out = z.mean()
out.backward()
print(out.grad)
打印None,这不是预期的。
有什么问题吗?
即使是非常简单的例子,如果backward()不能工作,请查看下面的错误。
这个错误是预期的,还是我以错误的方式使用gather?
In [1]: import torch as th
In [2]: x = th.rand((3,3), requires_grad=True)
# sparse_grad = False, the backward could work as expetecd
In [3]: th.gather(x @ x, 1, th.LongTensor([[0], [1]]), sparse_grad=False).sum().backward()
# spars
根据这个文档,说
Defined in tensorflow/python/ops/gen_nn_ops.py.
但是,当我转到tensorflow/python/ops/gen_nn_ops.py时,没有定义l2_loss。
我想看看使用tf.nn.l2_loss(W)和仅仅使用tf.reduce_sum(tf.square(W))之间有什么区别。
我正在尝试使用TensorFlow的@tf.custom_gradient功能为具有多个输入的函数指定自定义渐变。我可以只为一个输入设置工作,但不能为两个或更多输入设置。 我的代码基于TensorFlow's custom_gradient documentation,它对于一个输入来说工作得很好,如下例所示: import tensorflow as tf
import os
# Suppress Tensorflow startup info
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
# Custom gra
我刚开始学习tensorflow,在使用tf.gradients和tf.hessain函数时遇到了以下错误。下面给出了tf.gradients的代码和错误。
import tensorflow as tf
a = tf.placeholder(tf.float32,shape = (2,2))
b = [[1.0,2.0],[3.0,4.0]]
c = a[0,0]*a[0,1]*a[1,0] + a[0,1]*a[1,0]*a[1,1]
e = tf.reshape(b,[4])
d = tf.gradients(c,e)
sess = tf.Session()
print(sess.run