我正在恢复这个 github问题,因为我相信它是有效的并且需要解释。tf.keras 有一个掩码层,其文档如下:
对于输入张量中的每个时间步长(张量中的维度#1),如果该时间步长的输入张量中的所有值都等于 mask_value,则该时间步长将在所有下游层中被屏蔽(跳过)(只要它们支持掩蔽)。
如果任何下游层不支持掩码但收到这样的输入掩码,则会引发异常。
# create padded zeros and change two valid entries.
inputs = np.zeros([1,5])
inputs[0,1] = 0.5
inputs[0,2] = 0.1
inputs = tf.Variable(inputs)
masked_inputs = tf.keras.layers.Masking(mask_value=0.0)(inputs)
with_masking = tf.keras.layers.Softmax()(masked_inputs)
without_masking = tf.keras.layers.Softmax()(inputs)
Run Code Online (Sandbox Code Playgroud)
两个结果几乎相同
with_masking
<tf.Tensor: shape=(1, 5), dtype=float32, numpy=
array([[0.1737954 , 0.28654018, 0.19207363, 0.1737954 , 0.1737954 ]],
dtype=float32)>
without_masking
<tf.Tensor: shape=(1, 5), dtype=float64, numpy=array([[0.1737954 , 0.28654017, 0.19207362, 0.1737954 , 0.1737954 ]])>
Run Code Online (Sandbox Code Playgroud)
我希望只对有效条目进行 softmax 处理,类似于
#Assign one large value
inputs = np.zeros([1,2])
inputs[0,0] = …Run Code Online (Sandbox Code Playgroud) 我尝试从tensorflow.keras.layers导入 CuDnnLSTM以提高训练速度,但出现此错误。我知道 Keras 2.0.8 和 python 3.5 的用户也提出了类似的问题。
我的配置是tensorflow版本2.0.0-beta1和Python 3.6.10。
这就是我尝试过的: from tensorflow.keras.layers import CuDNNLSTM
我收到此错误, ImportError:无法导入名称“CuDNNLSTM”
请问有人知道如何修复此错误吗?提前致谢!
python-3.x deep-learning tensorflow recurrent-neural-network keras-layer
请对您的想法添加最少的评论,以便我可以改进我的查询。谢谢。-)
我正在处理MNIST数据集并编写一些CNN代码。但是,我对代码中的一些要点感到困惑CNN。如何知道神经网络的层数?根据我目前的理解,我认为它有 6 层和 4 个隐藏层。是对的吗?如果我需要扩展到 10 层怎么办?怎么做?
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv2D, Dropout, Flatten, MaxPooling2D
model = Sequential()
model.add(Conv2D(28, kernel_size=(3,3),
input_shape = ...))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Flatten())
model.add(Dense(128, activation=tf.nn.relu))
model.add(Dropout(0.2))
model.add(Dense(10, activation=tf.nn.softmax))
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用神经网络中的 sklearn 和 Tensorflow 包来实现 KFold 验证。
我的代码看起来像这样。
def training(self):
n_split = 3
instances = self.instance
labels = self.labels
for train_index, test_index in KFold(n_split).split(instances):
x_train, x_test = instances[train_index], instances[test_index]
y_train, y_test = labels[train_index], labels[test_index]
model = self.mlp_model()
model.fit(x_train, y_train, epochs=20)
print('Model Evaluation', model.evaluate(x_test, y_test))
Run Code Online (Sandbox Code Playgroud)
不幸的是,我收到一个错误
raise KeyError(f"None of [{key}] are in the [{axis_name}]")
KeyError: "None of [Int64Index([160, 161, 162, 163, 164, 165, 166, 167, 168, 169,\n ...\n 468, 469, 470, 471, 472, 473, 474, 475, 476, 477],\n dtype='int64', length=318)] are …Run Code Online (Sandbox Code Playgroud) 我正在尝试了解一些计算机视觉主题。我观察到这两者之间的一个主要区别是,在光流中,第二张图像通常在时间 (t+1) 处,而在视差估计中,它通常是相同的时间步长,除非有一个静态视图并使用单个非立体相机。还有其他区别及其各自的含义吗?
image-processing opticalflow computer-vision disparity-mapping deep-learning
作为深度学习的新手,我正在努力理解不同最先进算法及其用途之间的差异。就像 resnet 或 vgg 与 yolo 或 rcnn 系列有何不同。它们是这些检测模型的子组件吗?SSD 也是像 yolo 或 rcnn 这样的另一个家族吗?
artificial-intelligence machine-learning computer-vision deep-learning
我使用此 API 从目录加载了一个数据集
val_ds = tf.keras.preprocessing.image_dataset_from_directory(
data_dir,
validation_split=0.3,
subset="validation",
seed=123,
image_size=(img_height, img_width),
batch_size=batch_size)
Run Code Online (Sandbox Code Playgroud)
我想更改数据类型并使训练更快
我尝试过,但没有成功
for image_batch, labels_batch in train_ds:
image_batch = tf.cast(image_batch,tf.int16)
Run Code Online (Sandbox Code Playgroud) 我是 TensorFlow 和 Keras 的新手,我一直在制作扩展的 resnet,并想在层上添加实例标准化,但我不能,因为它不断抛出错误。
我使用的是tensorflow 1.15和keras 2.1。我注释掉了有效的 BatchNormalization 部分,我尝试添加实例标准化,但它找不到该模块。
非常感谢您的建议
from keras.layers import Conv2D
from keras.layers.normalization import BatchNormalization
from keras.optimizers import Nadam, Adam
from keras.layers import Input, Dense, Reshape, Activation, Flatten, Embedding, Dropout, Lambda, add, concatenate, Concatenate, ConvLSTM2D, LSTM, average, MaxPooling2D, multiply, MaxPooling3D
from keras.layers import GlobalAveragePooling2D, Permute
from keras.layers.advanced_activations import LeakyReLU, PReLU
from keras.layers.convolutional import UpSampling2D, Conv2D, Conv1D
from keras.models import Sequential, Model
from keras.utils import multi_gpu_model
from keras.utils.generic_utils import Progbar
from keras.constraints import maxnorm
from keras.activations …Run Code Online (Sandbox Code Playgroud) machine-learning normalization deep-learning keras tensorflow
我目前正在免费的 Google Colab 实例上使用 Keras Tuner 切换更大的搜索空间。由于使用限制,我的搜索运行将在完成之前中断。我想定期保存搜索进度,以应对这些中断,并在 Colab 资源再次可用时从上一个检查点恢复。我找到了有关如何保存运行中的特定模型的文档,但我想保存搜索的整个状态,包括已经尝试过的内容和这些实验的结果。
我可以直接调用Tuner.get_state(),保存结果,然后从上次中断的地方继续吗Tuner.set_state()?或者还有别的办法吗?
我正在尝试在 TensorFlow 中实现 Triplet Attention。我面临的问题之一是在NN.moduleTensorFlow 中使用什么来代替
class ChannelPool(nn.Module):
def forward(self, x):
return torch.cat( (torch.max(x,1)[0].unsqueeze(1), torch.mean(x,1).unsqueeze(1)), dim=1)
Run Code Online (Sandbox Code Playgroud)
我应该在此处放置什么nn.Module?
deep-learning ×10
tensorflow ×8
keras ×5
python ×4
python-3.x ×2
k-fold ×1
keras-layer ×1
keras-tuner ×1
opticalflow ×1
pytorch ×1