|
@@ -19,7 +19,8 @@ class DSSMLayer(nn.Layer):
|
|
|
self.embedding_dim = embedding_dim
|
|
|
self.output_dim = output_dim
|
|
|
# 第一层的输入维度是所有特征的embedding拼接
|
|
|
- self.hidden_layers = [self.tag_feature_num * embedding_dim + self.stat_features_num*3*embedding_dim] + hidden_layers + [output_dim]
|
|
|
+ self.input_features_num = self.tag_feature_num + self.stat_features_num*3
|
|
|
+ self.hidden_layers = [self.input_features_num*embedding_dim] + hidden_layers + [output_dim]
|
|
|
self.hidden_acts = hidden_acts
|
|
|
|
|
|
|
|
@@ -201,7 +202,7 @@ class DSSMLayer(nn.Layer):
|
|
|
left_embedded = self._process_features(left_features, self.left_embeddings)
|
|
|
|
|
|
# left_vec = left_embedded
|
|
|
- left_vec = paddle.reshape(left_embedded, [-1, self.tag_feature_num * self.embedding_dim])
|
|
|
+ left_vec = paddle.reshape(left_embedded, [-1, self.input_features_num * self.embedding_dim])
|
|
|
|
|
|
for i, layer in enumerate(self._left_tower):
|
|
|
left_vec = layer(left_vec)
|
|
@@ -216,7 +217,7 @@ class DSSMLayer(nn.Layer):
|
|
|
# 处理右视频特征
|
|
|
right_embedded = self._process_features(right_features, self.right_embeddings)
|
|
|
# right_vec = right_embedded
|
|
|
- right_vec = paddle.reshape(right_embedded, [-1, self.tag_feature_num * self.embedding_dim])
|
|
|
+ right_vec = paddle.reshape(right_embedded, [-1, self.input_features_num * self.embedding_dim])
|
|
|
|
|
|
for layer in self._right_tower:
|
|
|
right_vec = layer(right_vec)
|
|
@@ -239,7 +240,7 @@ class DSSMLayer(nn.Layer):
|
|
|
left_embedded = self._process_features(left_features, self.left_embeddings)
|
|
|
|
|
|
# left_vec = left_embedded
|
|
|
- left_vec = paddle.reshape(left_embedded, [-1, self.tag_feature_num * self.embedding_dim])
|
|
|
+ left_vec = paddle.reshape(left_embedded, [-1, self.input_features_num * self.embedding_dim])
|
|
|
|
|
|
for i, layer in enumerate(self._left_tower):
|
|
|
left_vec = layer(left_vec)
|
|
@@ -248,7 +249,7 @@ class DSSMLayer(nn.Layer):
|
|
|
# 处理右视频特征
|
|
|
right_embedded = self._process_features(right_features, self.left_embeddings)
|
|
|
# right_vec = right_embedded
|
|
|
- right_vec = paddle.reshape(right_embedded, [-1, self.tag_feature_num * self.embedding_dim])
|
|
|
+ right_vec = paddle.reshape(right_embedded, [-1, self.input_features_num * self.embedding_dim])
|
|
|
|
|
|
for layer in self._left_tower:
|
|
|
right_vec = layer(right_vec)
|