tf.nn.embedding_lookup_sparseのAPIドキュメントを読むのに多くの時間を費やしています。 embedding_lookup_sparse
の意味は混乱しており、embedding_lookup
とはかなり異なるようです。TensorFlowのtf.nn.embedding_lookup_sparseの意味は何ですか?
私が間違っている場合、ここに私の考えと私を修正してください。ワイドおよびディープモデルの例では、contrib.layers
APIを使用し、疎機能のcolumeにはembedding_lookup_sparse
を呼び出します。 SparseTensor(例えば、国が疎である)を取得した場合、実際には1ホストエンコーディング用の埋め込みが作成されます。次にto_weights_sum
と呼び出してembedding_lookup_sparse
の結果をprediction
、埋め込みをvariable
と返します。
embedding_lookup_sparse
の結果は、bias
を追加し、損失機能とトレーニング操作のためにlogits
になります。つまり、embedding_lookup_sparse
は、高密度テンソルの場合はw * x
(部分はy = w * x + b
の部分)のようになります。ルックアップデータは常に1
およびその他の0
Sを追加する必要はありませんですので
はたぶんワンホットエンコーディングやSparseTensorため、embedding_lookup_sparse
からweight
は、実際にw * x
の値です。
私が言ったことも混乱しています。誰もこれを詳細に説明するのを助けることができますか?