Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将嵌入和重量标准化,用于印记重量训练?_Python_Tensorflow - Fatal编程技术网

Python 将嵌入和重量标准化,用于印记重量训练?

Python 将嵌入和重量标准化,用于印记重量训练?,python,tensorflow,Python,Tensorflow,我试着用压印权值来表示一个低水平的分类卷积网络,从这里可以看出 “与标准的ConvNet分类器架构不同,我们在嵌入提取器的末尾添加了一个L2规范化层,以便 输出嵌入具有单位长度,即| |φ(x)| | 2=1“ 以及 “softmax分类器f(φ(x))将嵌入映射到非标准化的logit分数,然后进行softmax激活,生成所有类别的概率分布,其中wi是标准化为单位长度的权重矩阵的第i列。此层中不使用偏差项” 我目前对嵌入规范化的了解是: dense_nodes = 256 model_in =

我试着用压印权值来表示一个低水平的分类卷积网络,从这里可以看出

“与标准的ConvNet分类器架构不同,我们在嵌入提取器的末尾添加了一个L2规范化层,以便 输出嵌入具有单位长度,即| |φ(x)| | 2=1“

以及

“softmax分类器f(φ(x))将嵌入映射到非标准化的logit分数,然后进行softmax激活,生成所有类别的概率分布,其中wi是标准化为单位长度的权重矩阵的第i列。此层中不使用偏差项”

我目前对嵌入规范化的了解是:

dense_nodes = 256

model_in = tf.keras.Input(input_shape)

x = resnet(model_in)           # pretrained resnet model with include_top = False
embedding = Dense(dense_nodes, activation="relu")(x)
norm_embedding = tf.nn.l2_normalize(embedding)      # normalize the embedding before prediction layer

prediction_layer = Dense(2, activation="softmax", use_bias=False)   #use_bias=False for 0 bias as stated by paper
prediction = prediction_layer(norm_embedding)
imprinted_net = Model(inputs=[model_in], outputs =prediction )
嵌入规范化是有效的还是需要在lambda层中进行规范化? 我也不确定如何按列规范化预测层的权重。我检查了tensorflow文档的LayerNormalixation和WeightNormalization,但我不确定这是否是我想要的,也不确定如何检查

任何帮助都将不胜感激