Link Search Menu Expand Document

SparseCross


tensorflow C++ API

tensorflow::ops::SparseCross

Generates sparse cross from a list of sparse and dense tensors.


Summary

The op takes two lists, one of 2D SparseTensor and one of 2D Tensor, each representing features of one feature column. It outputs a 2D SparseTensor with the batchwise crosses of these features.

For example, if the inputs are

inputs[0]: SparseTensor with shape = [2, 2]
//[0, 0]: "a"
//[1, 0]: "b"
//[1, 1]: "c"

inputs[1]: SparseTensor with shape = [2, 1]
//[0, 0]: "d"
//[1, 0]: "e"

inputs[2]: Tensor [["f"], ["g"]]

then the output will be

shape = [2, 2]
//[0, 0]: "a_X_d_X_f"
//[1, 0]: "b_X_e_X_g"
//[1, 1]: "c_X_e_X_g"

if hashed_output=true then the output will be

shape = [2, 2]
            Fingerprint64("f"), FingerprintCat64(
                Fingerprint64("d"), Fingerprint64("a")))
            Fingerprint64("g"), FingerprintCat64(
                Fingerprint64("e"), Fingerprint64("b")))
            Fingerprint64("g"), FingerprintCat64(
                Fingerprint64("e"), Fingerprint64("c")))

Arguments:

  • scope: A Scope object
  • indices: 2-D. Indices of each input SparseTensor.
  • values: 1-D. values of each SparseTensor.
  • shapes: 1-D. Shapes of each SparseTensor.
  • dense_inputs: 2-D. Columns represented by dense Tensor.
  • hashed_output: If true, returns the hash of the cross instead of the string. This will allow us avoiding string manipulations.
  • num_buckets: It is used if hashed_output is true. output = hashed_valuenum_buckets if num_buckets > 0 else hashed_value.
  • hash_key: Specify the hash_key that will be used by the FingerprintCat64 function to combine the crosses fingerprints.

Returns:

  • Output output_indices: 2-D. Indices of the concatenated SparseTensor.
  • Output output_values: 1-D. Non-empty values of the concatenated or hashed SparseTensor.
  • Output output_shape: 1-D. Shape of the concatenated SparseTensor.

SparseCross block

Source link : https://github.com/EXPNUNI/enuSpaceTensorflow/blob/master/enuSpaceTensorflow/tf_sparse.cpp


Using Method