Commit ba1c53a5 authored by Yong Tang's avatar Yong Tang Committed by Jonathan Hseu
Browse files

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: default avatarYong Tang <yong.tang.github@outlook.com>

* Register BroadcastTo op in array_ops.cc

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Sanitize with clang-format -i

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Add test cases for tf.broadcast_to

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Sanitize bazel BUILD and python.

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Split broadcast_to_ops_test from array_ops_test

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Support int64 shape

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Improve shape inference for broadcast_to

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Add scalar input support for broadcast_to

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Update API defs tensorflow/core/api_def/update_api_def.sh

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Update API golden

```
bazel-bin/tensorflow/tools/api/tests/api_compatibility_test
           --update_goldens True
```

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Update docstring for broadcast_to

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Enable GPU kernel for BroadcastTo

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Enable use_gpu=True for test cases

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>

* Hiden the ops and export to tf.contrib.framework for now.

Signed-off-by: default avatarYong 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: default avatarYong Tang <yong.tang.github@outlook.com>

* Fix pylint sanity issue.

Signed-off-by: default avatarYong Tang <yong.tang.github@outlook.com>
parent 0586c572
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment