小编Nur*_*r L的帖子

Tensorflow:无法理解ctc_beam_search_decoder()输出序列

我使用Tensorflow tf.nn.ctc_beam_search_decoder()来解码RNN的输出,进行一些多对多映射(即每个网络单元的多个softmax输出).

网络输出的简化版本和Beam搜索解码器是:

import numpy as np
import tensorflow as tf

batch_size = 4
sequence_max_len = 5
num_classes = 3

y_pred = tf.placeholder(tf.float32, shape=(batch_size, sequence_max_len, num_classes))
y_pred_transposed = tf.transpose(y_pred,
                                 perm=[1, 0, 2])  # TF expects dimensions [max_time, batch_size, num_classes]
logits = tf.log(y_pred_transposed)
sequence_lengths = tf.to_int32(tf.fill([batch_size], sequence_max_len))
decoded, log_probabilities = tf.nn.ctc_beam_search_decoder(logits,
                                                           sequence_length=sequence_lengths,
                                                           beam_width=3,
                                                           merge_repeated=False, top_paths=1)

decoded = decoded[0]
decoded_paths = tf.sparse_tensor_to_dense(decoded)  # Shape: [batch_size, max_sequence_len]

with tf.Session() as session:
    tf.global_variables_initializer().run()

    softmax_outputs = np.array([[[0.1, 0.1, 0.8], [0.8, 0.1, 0.1], [0.8, 0.1, …
Run Code Online (Sandbox Code Playgroud)

python beam-search tensorflow

24
推荐指数
1
解决办法
3229
查看次数

Gunicorn 如何在同步工作人员之间分配请求?

我正在使用gunicorn 来运行一个简单的HTTP 服务器1,例如使用8 个同步工作人员(进程)。出于实际原因,我有兴趣了解gunicorn 如何在这些工作人员之间分配传入请求。

假设所有请求需要相同的时间才能完成。

分配是随机的吗?循环赛?基于资源?

我用来运行服务器的命令:

gunicorn --workers 8 bind 0.0.0.0:8000 main:app
Run Code Online (Sandbox Code Playgroud)

1我正在使用 FastAPI,但我相信这与这个问题无关。

python gunicorn

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

嵌入式 React + JSS 组件:如何保护像 <button>、<p> 这样的通用元素不被包含页面的样式?

我有一个嵌入在其他网页中的 React 组件(即通过扩展或作为第三方嵌入工具)。

它的大多数样式类都是使用 JSS 创建的,并且这些类会获得唯一的类名,这些类名不能被包含页面覆盖。

然而,我们的一些元素是通用元素(例如<p><button><h1><h2>等),出于可访问性的原因我们必须使用它们(例如屏幕阅读器需要<hX>分层标题,并且很难避免使用buttons)。如果此页面为这些元素使用元素选择器,则这些元素的样式通常会被包含页面的样式覆盖。

我尝试使用 Shadow DOM 封装 React 组件,但这似乎很重要,主要是因为它似乎阻止了 React 正常运行(未传递单击事件等)。react-shadowhttps://github.com/Wildhoney/ReactShadow)似乎也不起作用。

有没有办法保护这些元素的样式不被覆盖?

html javascript css reactjs

7
推荐指数
1
解决办法
143
查看次数

在 numpy 中将小矩阵与标量相乘的最有效方法

我有一个程序,其主要性能瓶颈涉及一个维度为 1 且另一个维度较大(例如 1000)的矩阵相乘:

\n
large_dimension = 1000\n\na = np.random.random((1,))\nb = np.random.random((1, large_dimension))\n\nc = np.matmul(a, b)\n
Run Code Online (Sandbox Code Playgroud)\n

换句话说,将矩阵b与标量相乘a[0]

\n

我正在寻找最有效的方法来计算这个,因为这个操作重复了数百万次。

\n

我测试了两种简单方法的性能,它们实际上是等效的:

\n
%timeit np.matmul(a, b)\n>> 1.55 \xc2\xb5s \xc2\xb1 45.8 ns per loop (mean \xc2\xb1 std. dev. of 7 runs, 1000000 loops each)\n\n%timeit a[0] * b\n>> 1.77 \xc2\xb5s \xc2\xb1 34.6 ns per loop (mean \xc2\xb1 std. dev. of 7 runs, 1000000 loops each)\n
Run Code Online (Sandbox Code Playgroud)\n

有没有更有效的方法来计算这个?

\n
    \n
  • 注意:我无法将这些计算移至 GPU,因为该程序正在使用多处理,并且许多此类计算是并行完成的。
  • \n
\n

python scalar performance numpy matrix-multiplication

6
推荐指数
1
解决办法
1550
查看次数