tensorflow-DeepFM
tensorflow-DeepFM copied to clipboard
关于特征的向量表示我有一个疑问
trafficstars
def _initialize_weights(self): weights = dict() # embeddings # FM 组件 weights["feature_embeddings"] = tf.Variable( tf.random_normal([self.feature_size, self.embedding_size], 0.0, 0.01), name="feature_embeddings") # feature_size * K 上面是初始化权重的方法 但是我们如何能直接初始化一个特征表示的矩阵weights["feature_embeddings"],每个特征表示的向量 不是应该通过相应的嵌入层网络获得吗? 还有伴随着训练完成 ,为什么weights["feature_embeddings"]会发生变化??
这涉及到tensorflow的原理了,记住,调用方法只是一种手段,你可以在graph里面初始化,效果是一样的。