Add support for explicit broadcasting in TensorFlow (#15243)
* Add support for explicit broadcasting in TensorFlow
This fix tries to adds support for explicit broadcasting in TensorFlow,
as was suggested in 14509. This fix adds the op of tf.broadcast_to,
which is equivalent to the numpy.broadcast_to in numpy.
This fix fixes 14509.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Register BroadcastTo op in array_ops.cc
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Sanitize with clang-format -i
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Add test cases for tf.broadcast_to
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Sanitize bazel BUILD and python.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Split broadcast_to_ops_test from array_ops_test
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Support int64 shape
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Improve shape inference for broadcast_to
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Add scalar input support for broadcast_to
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Update API defs tensorflow/core/api_def/update_api_def.sh
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Update API golden
```
bazel-bin/tensorflow/tools/api/tests/api_compatibility_test
--update_goldens True
```
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Update docstring for broadcast_to
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Enable GPU kernel for BroadcastTo
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Enable use_gpu=True for test cases
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Hiden the ops and export to tf.contrib.framework for now.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Add the op to the _allowed_symbol in tf.contrib.framework
Otherwise the symbole will be hidden
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Fix pylint sanity issue.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>