我有两个numpy数组:A形状(b,i)和B形状(b,o).我想计算的阵列- [R形状(B,I,O),其中每一行的升的ř包含行的外积升的甲和行升的乙.到目前为止我所拥有的是:
import numpy as np
A = np.ones((10, 2))
B = np.ones((10, 6))
R = np.asarray([np.outer(a, b) for a, b in zip(A, B)])
assert R.shape == (10, 2, 6)
Run Code Online (Sandbox Code Playgroud)
我认为这个方法太慢了,因为zip和最终转换成numpy数组.
有更有效的方法吗?
我试图使用CuDNNLSTM Keras细胞,以提高训练速度的回归神经网络(DOC 这里)。
当我跑步时:
from keras.layers import Bidirectional, CuDNNLSTM
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
ImportError:无法导入名称“ CuDNNLSTM”
我的配置是Keras 2.0.8,python 3.5,tensorflow-gpu 1.4.0(均由Anaconda管理),并且我同时安装了CUDA 8.0和cudnn 6.0,应该可以与tensorflow的nvidia依赖关系(在此处)配合使用。我的代码设置使Keras有效地使用了tensorflow后端,除以CuDNN *开头的层以外的其他所有层都可以正常工作。
有人知道此导入错误的来源吗?