Skye Wanderman-Milne [Mon, 5 Mar 2018 19:23:29 +0000 (11:23 -0800)]
Extract the EvaluateConstantTensorForEdge method from ShapeRefiner.
This change introduces a new stand-alone function, EvaluateConstantTensor,
pulled from ShapeRefiner. ShapeRefiner now calls this new function and the
old functions are removed.
I'm still depending on shape_refiner_test.cc for test coverage.
This is the first step towards making smart_cond better able to evaluate
constant tensors.
PiperOrigin-RevId:
187894976
A. Unique TensorFlower [Mon, 5 Mar 2018 19:20:28 +0000 (11:20 -0800)]
[XLA] Allocate and track memory in replicas separately.
PiperOrigin-RevId:
187894473
Justin Lebar [Mon, 5 Mar 2018 19:10:42 +0000 (11:10 -0800)]
[XLA:GPU] Allow merging into input fusion nodes in FusionMerger.
Seems to have been an oversight. "Input fusion" means that the *output*
of the fusion node is the "real hero". The inputs aren't special; we
can fuse more stuff in.
PiperOrigin-RevId:
187892975
A. Unique TensorFlower [Mon, 5 Mar 2018 18:47:24 +0000 (10:47 -0800)]
Fix documentation of image size for inception-v3 (299 * 299)
PiperOrigin-RevId:
187889122
David Soergel [Mon, 5 Mar 2018 18:11:20 +0000 (10:11 -0800)]
Make SavedModel builder validation accept signatures involving sparse tensors.
PiperOrigin-RevId:
187883080
A. Unique TensorFlower [Mon, 5 Mar 2018 18:07:27 +0000 (10:07 -0800)]
Exposes poisson_regression_head in tf.contrib.estimator.
PiperOrigin-RevId:
187882494
Justin Lebar [Mon, 5 Mar 2018 17:51:38 +0000 (09:51 -0800)]
[XLA:GPU] Add some VLOGs to FusionMerger.
Also use c_any_of and friends instead of std::any_of &c, and make some
minor whitespace fixes in comments.
No functional change.
PiperOrigin-RevId:
187880113
Jianwei Xie [Mon, 5 Mar 2018 17:18:24 +0000 (09:18 -0800)]
Change the default ps_ops to STANDARD_PS_OPS
PiperOrigin-RevId:
187875797
A. Unique TensorFlower [Mon, 5 Mar 2018 17:01:22 +0000 (09:01 -0800)]
Fix a case in SparseSegmentReduction ops with missing segment IDs, where all segment IDs are empty. Added a test for this case.
PiperOrigin-RevId:
187873356
A. Unique TensorFlower [Mon, 5 Mar 2018 15:43:58 +0000 (07:43 -0800)]
Internal change.
PiperOrigin-RevId:
187865303
A. Unique TensorFlower [Mon, 5 Mar 2018 14:51:33 +0000 (06:51 -0800)]
Improve LinearValidOnShape.
It actually only needs to check that the operation is a bitcast (ignoring
element_type). So far, the check was more restrictive, which made this function
always return false for a non-trivial reshape operation.
However we still fail to make use of this less strict checking, because for
reshapes inside a fusion node, we don't have a layout and can therefore not
check if it is a bitcast or not.
Also add a disabled test that will be enabled once the layout issue is fixed.
PiperOrigin-RevId:
187860440
A. Unique TensorFlower [Mon, 5 Mar 2018 13:18:24 +0000 (05:18 -0800)]
Automated g4 rollback of changelist
185073515
PiperOrigin-RevId:
187852929
Justin Lebar [Mon, 5 Mar 2018 13:10:40 +0000 (05:10 -0800)]
[XLA] Minor comment fixes in instruction_fusion.cc.
No functional change.
PiperOrigin-RevId:
187852483
A. Unique TensorFlower [Mon, 5 Mar 2018 10:45:58 +0000 (02:45 -0800)]
Adds checks to tf.nn.sparse_softmax_cross_entropy_with_logits to make sure that shapes for labels and logits (except last dimension) match. First, the static dimensions are checked, and only if the result is inconclusive a dynamic check is added.
In sparse_softmax_cross_entropy_with_logits the input dimensions are flattened, which can lead to unexpected bugs if the order of dimensions does not match (e.g. if one is time-major and the other is batch-major). This prevents such mistakes.
PiperOrigin-RevId:
187841750
Patrick Nguyen [Sun, 4 Mar 2018 21:47:57 +0000 (13:47 -0800)]
Prevent accidental re-use of removed field.
PiperOrigin-RevId:
187798953
Priya Gupta [Sun, 4 Mar 2018 06:12:24 +0000 (22:12 -0800)]
Fix nested bullets in docs. (Need 4 spaces indent)
PiperOrigin-RevId:
187763978
Priya Gupta [Sun, 4 Mar 2018 02:31:07 +0000 (18:31 -0800)]
Fix broken links in docs.
PiperOrigin-RevId:
187755567
A. Unique TensorFlower [Sat, 3 Mar 2018 23:49:05 +0000 (15:49 -0800)]
Internal change.
PiperOrigin-RevId:
187749767
A. Unique TensorFlower [Sat, 3 Mar 2018 22:26:21 +0000 (14:26 -0800)]
Will open source this part of code.
PiperOrigin-RevId:
187747019
Michael Case [Sat, 3 Mar 2018 18:04:35 +0000 (10:04 -0800)]
Internal Change.
PiperOrigin-RevId:
187738384
Shanqing Cai [Sat, 3 Mar 2018 03:18:49 +0000 (19:18 -0800)]
tfdbg: Add link to TensorBoard Debugger Plugin
from the CLI documentation
RELNOTES: tfdbg: TensorFlow Debugger's graphical user interface (GUI),
the [TensorBoard Debugger Plugin](https://github.com/tensorflow/tensorboard/blob/master/tensorboard/plugins/debugger/README.md), is now in alpha.
PiperOrigin-RevId:
187700265
A. Unique TensorFlower [Sat, 3 Mar 2018 02:33:21 +0000 (18:33 -0800)]
Merged commit includes the following changes:
187697531 by andrewharp:
Tweak whitespace for fft2d dep.
--
187696129 by A. Unique TensorFlower:
Generalize support for logical expressions, comparison operators and multiple comparisons.
--
187692494 by vinuraja:
* Adds a boolean attribute to ConfigureDistributedTPUOp for internal use.
* Adds GraphRunner ctor which takes in the device to run the graph on.
--
187692129 by andrewharp:
Audio utility classes for supporting MFCC and AudioSpectrogram operators
--
PiperOrigin-RevId:
187697531
Benoit Steiner [Sat, 3 Mar 2018 01:18:00 +0000 (17:18 -0800)]
Properly handle the case of functions with no inputs
PiperOrigin-RevId:
187691555
Allen Lavoie [Sat, 3 Mar 2018 00:58:11 +0000 (16:58 -0800)]
Don't throw errors if non-Checkpointable objects are passed to MultiRNNCell
PiperOrigin-RevId:
187689371
A. Unique TensorFlower [Sat, 3 Mar 2018 00:25:21 +0000 (16:25 -0800)]
Loop optimizer: Convert StackPush nodes to Identity instead of eliminating them completely.
Move loop optimizer to run before dependency optimizer so identity nodes will be pruned.
PiperOrigin-RevId:
187685669
Allen Lavoie [Sat, 3 Mar 2018 00:06:24 +0000 (16:06 -0800)]
Checkpointable: Fix CPU/GPU device placement issues
Restore ops go on the CPU, then the value gets copied to whichever device it needs to be on. This I need to do manually for restores passed as initial_values; for regular save/restore it's done by the SaveableObjects for variables.
Also explicitly places some counters on the CPU.
Adds a GPU-using test for Checkpointable usage.
PiperOrigin-RevId:
187683050
Asim Shankar [Sat, 3 Mar 2018 00:05:05 +0000 (16:05 -0800)]
eager/examples: Use tf.keras.Model in RNN examples.
Some notable differences between tf.keras.Model and tfe.Network:
- tf.keras.Model doesn't have a track_layer() method. It tracks Layer and Checkpointable valued attributes automatically. For list and other complex structures, __setattr__ performs the role of tfe.Network.track_layer()
- tf.keras.Model accepts a single positional argument. Thus either all arguments must be packaged into a single list/tuple (as in rnn_ptb.py) or be provided as keyword arguments (as in rnn_colorbot.py).
PiperOrigin-RevId:
187682716
Michael Case [Fri, 2 Mar 2018 23:52:32 +0000 (15:52 -0800)]
Exit with failure if a free gpu is not found by parallel_gpu_execute.
If TF_GPU_COUNT was a value greater than the actual number of GPUs, it was
possible for tests to just pass without running when running under
parallel_gpu_execute.sh.
PiperOrigin-RevId:
187681032
A. Unique TensorFlower [Fri, 2 Mar 2018 23:25:41 +0000 (15:25 -0800)]
Fix some compiler warnings in MKL build.
PiperOrigin-RevId:
187677893
A. Unique TensorFlower [Fri, 2 Mar 2018 23:24:33 +0000 (15:24 -0800)]
Adds setUseNNAPI to Interpreter.java, to enable develoeprs turn on & off NNAPI.
PiperOrigin-RevId:
187677765
Akshay Modi [Fri, 2 Mar 2018 23:11:13 +0000 (15:11 -0800)]
ReadVariableOp in C for eager (only for the fastpath)
PiperOrigin-RevId:
187676012
A. Unique TensorFlower [Fri, 2 Mar 2018 23:06:13 +0000 (15:06 -0800)]
Begin a library for statistical testing of samplers.
So far, it consists of one-sample and two-sample equality-of-means
assertions, and power analysis and experimental design for those,
because that's what was needed for testing the LKJ distribution.
If this API shape proves viable, more to come.
PiperOrigin-RevId:
187675337
A. Unique TensorFlower [Fri, 2 Mar 2018 22:55:26 +0000 (14:55 -0800)]
Add a small helper which is useful for quicker debugging.
PiperOrigin-RevId:
187673654
Allen Lavoie [Fri, 2 Mar 2018 22:33:39 +0000 (14:33 -0800)]
Checkpointable: Have MultiRNNCell add its dependent cells as dependencies
PiperOrigin-RevId:
187670464
Sanjoy Das [Fri, 2 Mar 2018 22:00:07 +0000 (14:00 -0800)]
[TF:XLA] Bump open source llvm revision to r326571
PiperOrigin-RevId:
187665541
Eli Bendersky [Fri, 2 Mar 2018 21:37:41 +0000 (13:37 -0800)]
Make shape inference error messages more consistent.
PiperOrigin-RevId:
187662562
A. Unique TensorFlower [Fri, 2 Mar 2018 21:32:35 +0000 (13:32 -0800)]
Add /learning/tfx/ to the visibility group of tensorflow/compiler/jit.
PiperOrigin-RevId:
187661883
Allen Lavoie [Fri, 2 Mar 2018 21:03:42 +0000 (13:03 -0800)]
Make tfe.Metrics Checkpointable
Same principle as Layers: use add_variable to add a dependency on any variables
created. I've ignored the global/local distinction, since it makes more sense
for users to control saving by either adding a dependency on the Metric or not.
PiperOrigin-RevId:
187658433
A. Unique TensorFlower [Fri, 2 Mar 2018 20:58:08 +0000 (12:58 -0800)]
Automated g4 rollback of changelist
187582263
PiperOrigin-RevId:
187657654
Allen Lavoie [Fri, 2 Mar 2018 20:43:22 +0000 (12:43 -0800)]
TFTS: Switch more variables to ResourceVariables to avoid race conditions
The LSTM example test was a bit flaky.
PiperOrigin-RevId:
187655714
Guangda Lai [Fri, 2 Mar 2018 20:33:40 +0000 (12:33 -0800)]
Exclude flaky tests for cuda_on_cpu.
PiperOrigin-RevId:
187654568
Suharsh Sivakumar [Fri, 2 Mar 2018 20:25:13 +0000 (12:25 -0800)]
FreezeSavedModel support for ResourceVariables.
PiperOrigin-RevId:
187653676
Brennan Saeta [Fri, 2 Mar 2018 20:19:23 +0000 (12:19 -0800)]
GCS: Extract block cache interface from implementation.
PiperOrigin-RevId:
187652953
Jianwei Xie [Fri, 2 Mar 2018 19:59:02 +0000 (11:59 -0800)]
Move the PS_OPS from Estimator to device_setter to benefit more users.
PiperOrigin-RevId:
187650283
Brennan Saeta [Fri, 2 Mar 2018 19:35:53 +0000 (11:35 -0800)]
GCS: Update throttle state even if disabled.
PiperOrigin-RevId:
187647263
A. Unique TensorFlower [Fri, 2 Mar 2018 19:18:41 +0000 (11:18 -0800)]
Add a configurable preference for scheduling fuller batches sooner to the adaptive shared batcher. A full batch will now be scheduled before an older, nearly empty batch as long as the age gap is less than full_batch_scheduling_boost_micros.
This parameter improves latency under heavy load, but too large a value will harm tail latency.
PiperOrigin-RevId:
187644796
Yuanzhong Xu [Fri, 2 Mar 2018 19:15:14 +0000 (11:15 -0800)]
[XLA] Support while loops and constant in HLO BF16 propagation.
PiperOrigin-RevId:
187644155
A. Unique TensorFlower [Fri, 2 Mar 2018 19:11:15 +0000 (11:11 -0800)]
Updating toolchain configs for GPU builds
PiperOrigin-RevId:
187643585
Asim Shankar [Fri, 2 Mar 2018 18:30:01 +0000 (10:30 -0800)]
tf.keras: Remove unnecessary "with self.test_sesion()" statements in tests.
The test decorator that runs the test twice (once with eager execution enabled,
once without) doesn't require the block, and this makes the code appear more
eager-friendly (as there is no concept of a session when eager execution is
enabled).
PiperOrigin-RevId:
187637008
A. Unique TensorFlower [Fri, 2 Mar 2018 18:05:14 +0000 (10:05 -0800)]
Add bfloat16 support for CPU ops.
PiperOrigin-RevId:
187633511
Alexandre Passos [Fri, 2 Mar 2018 17:53:54 +0000 (09:53 -0800)]
No need to override _handle_device for variables anymore
PiperOrigin-RevId:
187631915
Andrew Selle [Fri, 2 Mar 2018 17:32:36 +0000 (09:32 -0800)]
Only use softfp for android builds to make odroid builds work.
PiperOrigin-RevId:
187629282
Benoit Steiner [Fri, 2 Mar 2018 17:24:26 +0000 (09:24 -0800)]
Take into account the return value mapping of functions
PiperOrigin-RevId:
187628382
A. Unique TensorFlower [Fri, 2 Mar 2018 16:45:01 +0000 (08:45 -0800)]
Add a testing utility that can be called from compiled code, and which can mock a TF module for internal tests. Use it in api_test.py
PiperOrigin-RevId:
187624343
Brennan Saeta [Fri, 2 Mar 2018 16:31:21 +0000 (08:31 -0800)]
Internal-only change.
PiperOrigin-RevId:
187623121
A. Unique TensorFlower [Fri, 2 Mar 2018 16:20:27 +0000 (08:20 -0800)]
Eliminate the creation of unnecessary read ops when working with ResourceVariables.
In particular:
1. Don't create additional read ops when creating a ResourceVariable from a VariableDef proto.
2. Expose the ability to assign a ResourceVariable without reading & returning the new value.
3. Colocating with a ResourceVariable's ".op" property eliminates the creation of additional read ops.
4. Savers can read a variable's value using the _graph_element property, since these reads don't need control dependencies.
This makes the visualization of graphs on TensorBoard much nicer.
PiperOrigin-RevId:
187622122
A. Unique TensorFlower [Fri, 2 Mar 2018 13:50:55 +0000 (05:50 -0800)]
Add support to convert ResourceVariables of graphs into constants.
This involves a change to the implementation of convert_variables_to_constants.
PiperOrigin-RevId:
187610062
Asim Shankar [Fri, 2 Mar 2018 09:48:59 +0000 (01:48 -0800)]
Java: Update to 1.6.0
PiperOrigin-RevId:
187595636
A. Unique TensorFlower [Fri, 2 Mar 2018 09:17:19 +0000 (01:17 -0800)]
[XLA:GPU] Extract multiplication of complex numbers into a helper function.
Also add helper functions for getting the real and the imaginary part of a
complex number.
PiperOrigin-RevId:
187593341
Gunhan Gulsoy [Fri, 2 Mar 2018 06:25:41 +0000 (22:25 -0800)]
Automated g4 rollback of changelist
187563544
PiperOrigin-RevId:
187582263
Peter Hawkins [Fri, 2 Mar 2018 02:49:05 +0000 (18:49 -0800)]
[XLA] For graphviz graph dumps that are colored by sharding, choose the fill color for fusion nodes according to the sharding color rather than always choosing grey.
PiperOrigin-RevId:
187567679
A. Unique TensorFlower [Fri, 2 Mar 2018 02:03:19 +0000 (18:03 -0800)]
Grappler: Change memory optimizer recomputation name prefix into a regexp. This allows
us to match any node names, especially those under different scopes. This still performs
a prefix regexp match, so it is basically backwards compatible.
PiperOrigin-RevId:
187563544
A. Unique TensorFlower [Fri, 2 Mar 2018 01:58:07 +0000 (17:58 -0800)]
Allow replacing attributes in templates.
PiperOrigin-RevId:
187562864
Jonathan Hseu [Fri, 2 Mar 2018 01:53:49 +0000 (17:53 -0800)]
Improve CURL error reporting and handling in the GCS filesystem.
- The main semantics change is that we return immediately if curl_easy_perform doesn't return CURLE_OK. The CURL documentation indicates that it's not ok to fetch info if the curl call failed:
https://curl.haxx.se/libcurl/c/curl_easy_getinfo.html
- LOG errors where we can't return a status. Otherwise return with a status immediately.
PiperOrigin-RevId:
187562481
Joshua V. Dillon [Fri, 2 Mar 2018 01:41:41 +0000 (17:41 -0800)]
Add util which creates Python callable with tf.Variables explicitly as
arguments.
PiperOrigin-RevId:
187561302
Allen Lavoie [Fri, 2 Mar 2018 01:37:49 +0000 (17:37 -0800)]
Checkpointable: Make Templates Checkpointable
Uses a variable_creator_scope to hook all variable creation within the
Template. For variables without a more deeply nested Template parent, it adds a
dependency directly. For variables with a Template parent, it adds a dependency
on the sub-Template instead.
The variable scope prefix for the Template itself is stripped. However, any
variable_scopes inside the Template (such as those for Layers) will be included
in the dependency names. So within Templates we essentially have name-based
saving (with the exception of dependencies between Templates themselves, which
use the object-based dependency mechanism). This isn't ideal, but will hopefully
allow migration toward object oriented dependencies more smoothly.
Throws an error on object-based save() if the dependencies don't match
between Checkpointable and .variables.
Includes a semi-related usability fix for the Checkpoint utility; mostly in
unit tests, restore() is not called before save(), which when graph building
was leading to the save counter not being initialized. Fixes that.
PiperOrigin-RevId:
187560911
A. Unique TensorFlower [Fri, 2 Mar 2018 01:28:48 +0000 (17:28 -0800)]
Implement partial constant propagation through IdentityN.
PiperOrigin-RevId:
187560028
Jonathan Hseu [Fri, 2 Mar 2018 01:07:20 +0000 (17:07 -0800)]
Improve the error message when failing to write events.
The current error message looks like:
"Failed to sync 10 to <path>"
PiperOrigin-RevId:
187557623
Jonathan Hseu [Fri, 2 Mar 2018 01:00:46 +0000 (17:00 -0800)]
Include the response upon any error.
PiperOrigin-RevId:
187556563
Allen Lavoie [Fri, 2 Mar 2018 00:52:07 +0000 (16:52 -0800)]
Expose Checkpointable symbols in tf.contrib.eager/tfe
- tfe.Checkpoint
Utility for grouping Checkpointable objects into training checkpoints, has
save/restore methods which call CheckpointableSaver.
- tfe.Checkpointable
For user-defined Checkpointable objects.
- tfe.CheckpointableSaver
More control over saving/restoring than tfe.Checkpoint.
Only tfe.Checkpoint is required to switch examples over, so I can leave the
others out if there are objections.
PiperOrigin-RevId:
187555472
Karmel Allison [Fri, 2 Mar 2018 00:33:26 +0000 (16:33 -0800)]
Adds a TensorServingInputReceiver that allows export_savedmodel to pass raw
tensors to model functions. Addresses #11674.
PiperOrigin-RevId:
187552824
A. Unique TensorFlower [Fri, 2 Mar 2018 00:06:22 +0000 (16:06 -0800)]
Do not crash if we failed to get the field name.
PiperOrigin-RevId:
187549153
Derek Murray [Fri, 2 Mar 2018 00:00:17 +0000 (16:00 -0800)]
[ClusterFLR] Prolong the lifetime of the RunGraphRequest until the call has completed.
Some WorkerService implementations rely on the request object remaining live until the callback is called.
PiperOrigin-RevId:
187548140
Anna R [Thu, 1 Mar 2018 23:47:28 +0000 (15:47 -0800)]
Fix batch_norm_benchmark.
PiperOrigin-RevId:
187546384
Xiaoqiang Zheng [Thu, 1 Mar 2018 23:41:11 +0000 (15:41 -0800)]
A fp16 implemention for ReluGrad.
On V100 with Cuda 9, it reduces the average ReluGrad kernel time in Resnet50 from 249.44 us to
175.60 us, a 42% speedup.
On Titan-X Pascal with Cuda 9, it reduces the average ReluGrad kernel time in
Resnet50 from 747.98 us to 509.37 us, a 46.8% improvement.
PiperOrigin-RevId:
187545504
Allen Lavoie [Thu, 1 Mar 2018 23:36:19 +0000 (15:36 -0800)]
Checkpointable: Make Model Checkpointable-compatible
Has Models track Checkpointable dependencies with __setattr__.
Switches subclassed Models to creating ResourceVariables by default, which
removes one source of eager/graph differences. tfe.Network was doing this by
default.
This is necessary for eager/graph agnostic code since tapes currently only work
with ResourceVariables. It's not quite trivial to fix that, and
ResourceVariables by default in more places is a Good Thing anyway. (Not that we
shouldn't also fix the tape code.)
PiperOrigin-RevId:
187544850
Benoit Steiner [Thu, 1 Mar 2018 23:09:23 +0000 (15:09 -0800)]
Added support for optimization of functions with fixed input/output types
PiperOrigin-RevId:
187540982
Alexandre Passos [Thu, 1 Mar 2018 22:49:49 +0000 (14:49 -0800)]
EagerTensor.device reflects the op's device and not the tensor's memory space.
This matches graph mode's behavior.
PiperOrigin-RevId:
187537818
A. Unique TensorFlower [Thu, 1 Mar 2018 22:35:44 +0000 (14:35 -0800)]
Expose native inference latency via TFlite interpreter.
PiperOrigin-RevId:
187535695
Anna R [Thu, 1 Mar 2018 22:26:07 +0000 (14:26 -0800)]
Set more generated ops to 'hidden'. These ops have not been hidden before but
instead have corresponding definitions in Python files. We don't want tf_export
decorators for the generated ops since corresponding Python ops have tf_export
decorators instead.
PiperOrigin-RevId:
187534113
Rui Zhao [Thu, 1 Mar 2018 22:15:23 +0000 (14:15 -0800)]
Sampling group embeddings for each child.
PiperOrigin-RevId:
187532388
Mingsheng Hong [Thu, 1 Mar 2018 22:15:20 +0000 (14:15 -0800)]
Internal change.
PiperOrigin-RevId:
187532378
A. Unique TensorFlower [Thu, 1 Mar 2018 21:43:03 +0000 (13:43 -0800)]
Optimize training with feature selection by avoiding any computations on the
features that are not selected once we have reached our target number of
features.
PiperOrigin-RevId:
187526964
Guangda Lai [Thu, 1 Mar 2018 21:37:16 +0000 (13:37 -0800)]
Fix TensorRT build.
PiperOrigin-RevId:
187526192
A. Unique TensorFlower [Thu, 1 Mar 2018 21:09:46 +0000 (13:09 -0800)]
Add support for keyword args for dynamically converted functions.
PiperOrigin-RevId:
187522324
Eli Bendersky [Thu, 1 Mar 2018 21:04:44 +0000 (13:04 -0800)]
Fix parameter name mismatches in declarations/definitions.
Reported by clang-tidy
PiperOrigin-RevId:
187521627
A. Unique TensorFlower [Thu, 1 Mar 2018 21:00:40 +0000 (13:00 -0800)]
Cast sequence_length to an integer.
PiperOrigin-RevId:
187520920
Peter Hawkins [Thu, 1 Mar 2018 20:56:05 +0000 (12:56 -0800)]
[XLA] Fully qualify xla::MakeUnique uses in shape_tree.h. No functional changes.
PiperOrigin-RevId:
187520283
Anna R [Thu, 1 Mar 2018 20:23:37 +0000 (12:23 -0800)]
Remove underscore prefix from the following HIDDEN ops: add_sparse_to_tensors_map,
add_many_sparse_to_tensors_map and take_many_sparse_from_tensors_map.
PiperOrigin-RevId:
187515638
Akshay Agrawal [Thu, 1 Mar 2018 20:04:59 +0000 (12:04 -0800)]
TFE: Cache `TensorShape` object for `EagerTensor`'s, for performance.
PiperOrigin-RevId:
187512946
Francois Chollet [Thu, 1 Mar 2018 19:59:14 +0000 (11:59 -0800)]
Refactor training part of the Keras engine.
Also add support for sample/class weights with eager execution.
Structure before:
engine/training.py
engine/training_eager.py
After:
engine/training.py
engine/training_arrays.py
engine/training_eager.py
engine/training_generator.py
engine/training_utils.py
All new files are about 500 lines long. training.py is now 1700 lines long (about 1000 lines of logic). It was previously 3000 lines long.
PiperOrigin-RevId:
187511923
Nick Desaulniers [Thu, 1 Mar 2018 19:46:56 +0000 (11:46 -0800)]
[XLA] Optimize away DynamicUpdateSlice with update parameter with a dimension
of zero.
A zero sized update has no effect.
PiperOrigin-RevId:
187510099
A. Unique TensorFlower [Thu, 1 Mar 2018 19:16:18 +0000 (11:16 -0800)]
Internal cleanup.
PiperOrigin-RevId:
187504966
Jianwei Xie [Thu, 1 Mar 2018 18:38:27 +0000 (10:38 -0800)]
Fixed the typo in RunConfig pydoc.
PiperOrigin-RevId:
187498424
Vijay Vasudevan [Thu, 1 Mar 2018 18:37:45 +0000 (10:37 -0800)]
Remove old note that no longer applies.
PiperOrigin-RevId:
187498339
Yunxing Dai [Thu, 1 Mar 2018 18:23:57 +0000 (10:23 -0800)]
[XLA] Update operation semantics doc for BatchNorm operations
- Update formulas for BatchNormGrad. The rendered version of the new formulas can be found here:
https://latexbase.com/d/
1ad54ff9-f9d5-4479-beef-
156ea26a0632
- Update output table to include the symbol name for each output.
- Fix a typo in BatchNormGrad's input table to correct display the symbol `beta`.
PiperOrigin-RevId:
187496086
A. Unique TensorFlower [Thu, 1 Mar 2018 17:52:00 +0000 (09:52 -0800)]
Fixed tf.reduce_sum usage on 2-D tensors.
PiperOrigin-RevId:
187491311
Justin Lebar [Thu, 1 Mar 2018 17:31:20 +0000 (09:31 -0800)]
[XLA] Don't dump the "contents" of constants with a zero-sized dimension in the HLO graph dumper.
Previously we'd dump e.g. "{ {}, {}, ... }" for an f32[100, 0], which is
just noise.
PiperOrigin-RevId:
187488625
Alexandre Passos [Thu, 1 Mar 2018 17:27:57 +0000 (09:27 -0800)]
Keep track of eager op device for tensor handles. Force-colocates ops using resources with the resources.
PiperOrigin-RevId:
187488175
A. Unique TensorFlower [Thu, 1 Mar 2018 17:10:17 +0000 (09:10 -0800)]
Correct struct array initialization syntax.
PiperOrigin-RevId:
187486332