aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/contrib/cudnn_rnn
Commit message (Collapse)AuthorAge
* Merge pull request #21114 from yongtang:07242018-CudnnRNNParamsSizeGravatar TensorFlower Gardener2018-09-19
|\ | | | | | | PiperOrigin-RevId: 213726710
* | Move from deprecated self.test_session() to self.cached_session().Gravatar A. Unique TensorFlower2018-09-17
| | | | | | | | | | | | | | | | self.test_session() has been deprecated in 9962eb5e84b15e309410071b06c2ed2d6148ed44 as its name confuses readers of the test. Moving to cached_session() instead which is more explicit about: * the fact that the session may be reused. * the session is not closed even when doing a "with self.test_session()" statement. PiperOrigin-RevId: 213326581
* | Move from deprecated self.test_session() to self.session() when a graph is set.Gravatar A. Unique TensorFlower2018-08-21
| | | | | | | | | | | | self.test_session() has been deprecated in cl/208545396 as its behavior confuses readers of the test. Moving to self.session() instead. PiperOrigin-RevId: 209696110
* | Remove usage of magic-api-link syntax from source files.Gravatar Mark Daoust2018-08-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Back-ticks are now converted to links in the api_docs generator. With the new docs repo we're moving to simplify the docs pipeline, and make everything more readable. By doing this we no longer get test failures for symbols that don't exist (`tf.does_not_exist` will not get a link). There is also no way, not to set custom link text. That's okay. This is the result of the following regex replacement (+ a couple of manual edits.): re: @\{([^$].*?)(\$.+?)?} sub: `\1` Which does the following replacements: "@{tf.symbol}" --> "`tf.symbol`" "@{tf.symbol$link_text}" --> "`tf.symbol`" PiperOrigin-RevId: 208042358
| * Pylint fixGravatar Yong Tang2018-07-27
| | | | | | | | Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
| * Add test cases for shape function of CudnnRNNParamsSizeGravatar Yong Tang2018-07-27
|/ | | | Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Split dependency tracking out from CheckpointableBaseGravatar Allen Lavoie2018-06-22
| | | | | | | | | | Some unit test fiddling, but otherwise just moving code around. My goal is to be able to use checkpointable data structures (or something like them) in Checkpointable's __setattr__ override. Checkpointable data structures depend on Layer, so Checkpointable and CheckpointableBase need to be in seprate files (so we can have the dependency chain CheckpointableBase->Layer->CheckpointableDataStructure->Checkpointable). This will also require changes to python/keras/engine/__init__.py (which currently requires Network and Layer be imported together), but I'll do that in a separate change. PiperOrigin-RevId: 201712549
* Replace unnecessary `()` in `run_in_graph_and_eager_modes()`.Gravatar Tom Hennigan2018-06-22
| | | | PiperOrigin-RevId: 201652888
* Remove unnecessary shape registration fn from cudnn rnn ops.Gravatar James Qin2018-05-29
| | | | | | The registered ones are the same as default. PiperOrigin-RevId: 198489529
* Move Keras code out of _impl folder and remove API files.Gravatar Pavithra Vijay2018-05-17
| | | | PiperOrigin-RevId: 197097430
* Checkpointable: move python/training/checkpointable_* to ↵Gravatar Allen Lavoie2018-05-16
| | | | | | | | | | python/training/checkpointable/ Need to add some new checkpointable files in core (specifically I had some checkpointable data structures in mind), and prefixing more files with "checkpointable_" in python/training/ seems dirty. No functional changes, just some branching and build/import fiddling. PiperOrigin-RevId: 196883136
* Remove "everything matched" assertions from CuDNN object-based checkpointing ↵Gravatar Allen Lavoie2018-04-26
| | | | | | | | tests After cl/194315742 the assertions correctly point out that there are some Python objects which aren't matched (they don't have variables). Another option would be to mark these as special/optional, which we can implement if there's a need. PiperOrigin-RevId: 194416864
* Cudnn RNN v2 kernels with autotune capabilityGravatar James Qin2018-04-25
| | | | | | | | | | | | | | | | CudnnRNN V2 kernels run all applicable cudnn rnn algorithms and pick the best one for following runs. * To enable autotune, TF_CUDNN_RNN_USE_AUTOTUNE and TF_CUDNN_RNN_USE_V2 need to be set to {"1" or unset}. * TF_CUDNN_RNN_USE_AUTOTUNE does not work with existing CudnnRNN kernels. * V2 kernels work with existing cudnn checkpoints, since it doesn't change persistence format. This change * Introduces v2 kernels as templates inheriting the v1 kernels. * Profiles fwd and bak runs in v2 kernel (forward pass) * Exposes the chosen algorithm as fwd op output and bak op input. * Changes rnn descriptor cache key to include AlgorithmDesc (since cudnn rnn descriptor can't be reused across different algorithms) * Updates unittests s.t. it tests both v1 and v2 kernels. When testing v2 kernels, autotune is turned on. PiperOrigin-RevId: 194333948
* Merge changes from github.Gravatar Yifei Feng2018-04-23
| | | | PiperOrigin-RevId: 194031845
* Create a skeleton tf.contrib.checkpoint.Gravatar Allen Lavoie2018-04-19
| | | | | | | | | | | | | | | My plan for this is to incubate tools for working with object-based checkpoints: - Tools for managing dependency graphs, e.g. checkpointable lists/dictionaries - Inspecting/visualizing checkpoints - Listing variables and gathering initializers from a Checkpointable object and its dependencies - Verifying all variables are accessible as dependencies, which should make converting existing graph building Saver uses easier/safer. This CL includes none of those things, it just moves the split_dependency tool here instead of contrib/eager. PiperOrigin-RevId: 193531292
* Moving gradient registration for CudnnRNN op from contrib to core.Gravatar Pavithra Vijay2018-04-17
| | | | PiperOrigin-RevId: 193234663
* Start moving Checkpointable utilities toward coreGravatar Allen Lavoie2018-04-12
| | | | | | | | | | | | Doesn't add to the public API yet, just shifts code around. Changes: - A tiny bit of renaming (to avoid having _Checkpoint and Checkpoint in the same file) - Removed the garbage collection decorator from a few tests due to the uuid4() garbage issue (apparently core tests get run on Python 2.7.9?) - Renamed "Object" to "CheckpointableObject" in the proto, since core protos have Java bindings and apparently Java had something else in mind for the keyword "Object" :) but otherwise this is a pure move. After this CL I'll propose adding tf.train.Checkpoint to the API (currently tf.contrib.eager.Checkpoint), move the utilities that are still in contrib/eager to their own contrib directory (there will be a few more misc. utilities for inspecting checkpoints and managing dependencies), get tf.train.Saver to read object-based checkpoints for compatibility, and work on Model.save_weights/load_weights. PiperOrigin-RevId: 192646890
* Merge changes from github.Gravatar Michael Case2018-04-10
| | | | PiperOrigin-RevId: 192388250
* Refactor layers:Gravatar Francois Chollet2018-04-10
| | | | | | | | | | | | - tf.layers layers now subclasses tf.keras.layers layers. - tf.keras.layers is now agnostic to variable scopes and global collections (future-proof). It also uses ResourceVariable everywhere by default. - As a result tf.keras.layers is in general lower-complexity, with fewer hacks and workarounds. However some of current code is temporary (variable creation should be moved to Checkpointable, arguably, and there are some dependency issues that will require later refactors). - The legacy tf.layers layers behavior is kept, with references to variable scopes and global collections injected in the subclassed tf.layers.base.Layer class (the content of tf.layers.base.Layer is the complexity differential between the old implementation and the new one). Note: this refactor does slightly change the behavior of tf.layers.base.Layer, by disabling extreme edge-case behavior that either has long been invalid, or is dangerous and should most definitely be disabled. This will not affect any users since such behaviors only existed in the base Layer unit tests. The behaviors disabled are: - Option to create reusable variables in `call` (already invalid for some time). - Option to use a variable scope to create layer variables outside of the layer while not having the layer track such variables locally. PiperOrigin-RevId: 192339798
* Object-based checkpointing support for unidirectional cuDNN LSTM cellsGravatar Allen Lavoie2018-04-06
| | | | | | | | | | | | | | | | Once checked in, this will be the only way I know of to save canonical weights when executing eagerly. Eager's name-based saving support will only do the opaque parameter buffer. I'm not going to try converting everything in one go, but it's a start at least. And everything else should raise a NotImplementedError rather than silently not saving correctly. Single-layer cuDNN cells can be swapped for un-wrapped cuDNN compatible cells or single cells wrapped in MultiRNNCells. Multi-layer cells need MultiRNNCell wrapping. PiperOrigin-RevId: 191905703
* Remove all_opensource_files. It's not needed any more.Gravatar Martin Wicke2018-03-28
| | | | PiperOrigin-RevId: 190878279
* Move cuDNN RNN ops to core, for use in the internal TF codebase only (not ↵Gravatar Martin Wicke2018-03-22
| | | | | | | publicly exposed). RELNOTES: Moved cuDNN RNN ops to core. PiperOrigin-RevId: 190130405
* Merge changes from github.Gravatar Michael Case2018-02-07
| | | | PiperOrigin-RevId: 184897758
* Address Adagrad/RMSProp incompatibility with CudnnRNNGravatar James Qin2018-02-06
| | | | | | | | CudnnRNN layers have variables of unknown shapes, which Adagrad/RMSProp didn't handle before. This fixes 6620(#6620). PiperOrigin-RevId: 184759579
* Cleanup: Ran clang-format on all *.{cc,h} files in ↵Gravatar A. Unique TensorFlower2018-01-30
| | | | | | tensorflow/contrib/.../*.{hh,c}. PiperOrigin-RevId: 183855242
* Merge changes from github.Gravatar Jianwei Xie2018-01-24
| | | | PiperOrigin-RevId: 183100142
* Merge changes from github.Gravatar Sourabh Bajaj2018-01-17
| | | | PiperOrigin-RevId: 182258809
* Fix dropout description of CudnnLSTM.Gravatar Katherine Wu2018-01-12
| | | | PiperOrigin-RevId: 181814918
* Appropriately handle building of CudnnRNN if variable scope has ↵Gravatar Adam Roberts2018-01-11
| | | | | | tf.AUTO_REUSE type. PiperOrigin-RevId: 181620379
* Make CUDNN RNN compatible with eager execution's kernel caching.Gravatar Allen Lavoie2018-01-05
| | | | | | | | | | Allows multiple CUDNN RNN calls with different shapes to share the same kernel. Adds an input_shape-keyed scratch space cache to the kernel. This also fixes shape errors when a CUDNN RNN kernel was presented with multiple shapes during graph execution (e.g. from a while_loop). Fixes #15752. PiperOrigin-RevId: 180998667
* Assign subgraph created by cudnn_rnn saveable to the 1st GPU.Gravatar James Qin2017-12-24
| | | | PiperOrigin-RevId: 180053468
* Add RNN performance information.Gravatar A. Unique TensorFlower2017-12-14
| | | | | | Update cudnn_rnn_ops_benchmark as it had API rotted. PiperOrigin-RevId: 179084042
* Delete infeasible TODO in CudnnRNNGravatar James Qin2017-11-13
| | | | | | Nvidia CuDNN7 still uses old GRU equations. PiperOrigin-RevId: 175621353
* Fix CuDNNCompatibleGRU after GRUCell refactorizationGravatar James Qin2017-11-13
| | | | PiperOrigin-RevId: 175574730
* Fix build breakageGravatar James Qin2017-11-12
| | | | | | | | | Now the layout of tensorflow/contrib/cudnn_rnn is similar to tensorflow/contrib/layers Delete repeated tests in cudnn_rnn_ops_test (new tests in cudnn_rnn_test). PiperOrigin-RevId: 175487631
* Switch tf.contrib.cudnn_rnn.CudnnXXX to point to layer APIs instead of op ↵Gravatar James Qin2017-11-03
| | | | | | wrappers PiperOrigin-RevId: 174523358
* Support Cudnn RNN Fp16Gravatar James Qin2017-11-03
| | | | | | Relax CudnnRNNTestCompatibleRNNCells test error tolerance a bit. PiperOrigin-RevId: 174495089
* Convert BasicRNNCell and GRUCell to proper layers.Gravatar Eugene Brevdo2017-11-01
| | | | PiperOrigin-RevId: 174272860
* eager: Documentation and example models.Gravatar Asim Shankar2017-10-30
| | | | | | | | - Updated README - A preliminary "User's Guide" - A few example models, some with benchmarks PiperOrigin-RevId: 173996303
* BUILD cleanup in contrib/...Gravatar A. Unique TensorFlower2017-10-30
| | | | PiperOrigin-RevId: 173889798
* Automated g4 rollback of changelist 173494053Gravatar Gunhan Gulsoy2017-10-26
| | | | PiperOrigin-RevId: 173560463
* Switch tf.contrib.cudnn_rnn.CudnnXXX to point to layer APIs instead of op ↵Gravatar James Qin2017-10-25
| | | | | | wrappers PiperOrigin-RevId: 173494053
* Merge changes from github.Gravatar Benoit Steiner2017-10-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | END_PUBLIC --- Commit 9f8523640 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Update ops-related pbtxt files. PiperOrigin-RevId: 173145770 --- Commit 01b6b0638 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Cut tracing memory cost PiperOrigin-RevId: 173144626 --- Commit 5e23e0e67 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: [XLA] Erase cloned instructions on the fly when merging fusion nodes. This avoids the awkward situation where an RNG which is clearly eligible for fusion becomes ineligible mid-fusion because it suddenly has an extra (dead) user. PiperOrigin-RevId: 173141716 --- Commit 1038927c0 authored by Saurabh Saxena<srbs@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Add SerializeIterator op that serializes an IteratorResource into a variant tensor. Add DeserializeIterator op that builds IteratorResource from a variant tensor. Move BundleReaderWrapper and BundleWriterWrapper from dataset.h to iterator_ops.cc. Add generic key-value store interfaces IteratorStateReader and IteratorStateWriter for reading/writing state of iterators. Get rid of IteratorBundleReader and IteratorBundleWriter. PiperOrigin-RevId: 173140858 --- Commit 57f3e529d authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Internal change PiperOrigin-RevId: 173136642 --- Commit 0e56ffb7b authored by Shanqing Cai<cais@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Fix breakages in OSS builds See example breakages logs at: http://ci.tensorflow.org/job/tensorflow-cl-cpu-python3-pip/10847/console http://ci.tensorflow.org/job/tensorflow-cl-gpu/11008/console 1. CL/172477381 added the no_oss tag to tests with oss_serial tags, which broke the logic of OSS_SERIAL tests in pip.sh and run_pip_test.sh. This CL fixes that. 2. The nccl_kernels BUILD target in contrib/nccl/BUILD was missing some dependencies. This CL adds the missing ones. Fixes: #13918 PiperOrigin-RevId: 173133914 --- Commit 3ed049b67 authored by Alexandre Passos<apassos@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Allows calling keras layers in eager mode. PiperOrigin-RevId: 173129805 --- Commit 4ec6f2b07 authored by Alexandre Passos<apassos@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Switching contrib.summaries API to be context-manager-centric PiperOrigin-RevId: 173129793 --- Commit 03b02ffc9 authored by Justine Tunney<jart@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Put Bazel mirror URLs first PiperOrigin-RevId: 173127955 --- Commit 46ab25e4d authored by David Majnemer<majnemer@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: [XLA] Add support for convolutions with no spatial dimensions PiperOrigin-RevId: 173126950 --- Commit fc56349b7 authored by Derek Murray<mrry@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: [tf.data] Convert dataset arguments to tensors as early as possible. This change raises a `TypeError` earlier if (for example) the `batch_size` argument to `Dataset.batch()` has the incorrect type. PiperOrigin-RevId: 173126678 --- Commit 4f7503a87 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: K-FAC: Support for registering multiple minibatches with register_fully_connected() PiperOrigin-RevId: 173121735 --- Commit 2845bfcd6 authored by Tim Harley<tharley@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Avoid listing all modified Enter/RefEnter nodes on INFO, use VLOG(1) instead. Leave a single, simple, message on INFO. PiperOrigin-RevId: 173121726 --- Commit 434695921 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: K-FAC: _check_registration() supports multiple towers. PiperOrigin-RevId: 173115870 --- Commit 670dddf4a authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Multi-minibatch support for tf.contrib.kfac.fisher_blocks.FullyConnectedKFACBasicFB. PiperOrigin-RevId: 173109677 --- Commit dc13a8e2f authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Fix import of meta graphs with partitioned variables into a scope. Saver inspects SliceInfo to decide the variable name when creating a checkpoint. Before this fix even if a partitioned variable ("weights") was imported into a scope "a" it would still be checkpointed as ("weights") instead of ("a/weights") since import_scoped_meta_graph was not adjusting the SliceInfo. WARNING: if you use import_meta_graph on graphs with partitioned_variables WITH an import_scope argument AND then create a Saver to write/read checkpoints this change may break your checkpoint loading. PiperOrigin-RevId: 173105796 --- Commit eea089bdb authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: K-FAC: Multi-tower support for ConvDiagonalFB. PiperOrigin-RevId: 173105412 --- Commit 9b9cbbe2a authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Add int64 Tperm type support for `Transpose` (#13909) * Add int64 Tperm type support for `Transpose` This fix adds int64 Tperm support for `Transpose`. In `array_ops.cc`, `Transpose` and `ConjugateTranspose` have been specified as accepting int32 and int64 perm types. However, only int32 kernels has been registered. This fix adds the int64 perm support by removing the constraint on Tperm, resolve the type at runtime, and copying the data type accordingly to correctly handle the int64/int32 types. Additional tests have been added as well. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add test cases for int64 of perm in Transpose. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add namespace to hide PermutationHelper Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Enable use_gpu=True for perm type test. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * extra // namespace annotation * Adding a comment about int32 casting that should be safe. Permutations only contain values that refer to dimensions, and the maximum number of dimensions we have is 254, so an int32 is always safe here. --- Commit ac0004e71 authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Add int64 shape support on GPU for stateless random ops. (#13908) * Add int64 shape support on GPU for stateless random ops. This fix adds int64 shape support on GPU for stateless random ops `StatelessRandomUniform`, `StatelessRandomNormal`, `StatelessTruncatedNormal`. The int64 shape for stateless random ops is already supported on CPU with int32/int64 processed properly through `MakeShape`. However, on GPU a type constraint `.TypeConstraint<int32>("T")` has been improperly added. Such a type constraint actually prevents an int64 shape type to run on GPU. (As a comparision, no type constraint on CPU). This fix removes the type constraint and allows int64 shape to be run on GPU. This fix also adds test cases for int64 shape support on stateless random ops. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add test cases for int64 shape support for stateless random ops. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add int32 to shape types tested. --- Commit 0d437c3be authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Add int64 padding support for MirrorPad (#13907) * Add int64 padding support for MirrorPad This fix adds int64 padding support for `MirrorPad`. In the `array_ops.cc` the `MirrorPad`/`MirrorPadGrad` has been specified as supporting int64 padding. The related kernels does not have the int64 padding registered though. This fix adds the int64 padding support. This fix also adds additional test cases for coverage. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Update template for CPU and GPU support of int64 paddings. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add int64 padding support for MirrorPad Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Put eigen header first like before, just in case. --- Commit 690003cc0 authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Add `int64` type `multiples` support for `tf.tile` (#13884) * Add `int64` type `multiples` support for `tf.tile` In the doc of `tf.tile` (tf.tile.__doc__) both `int32` and `int64` are supported for `multiples`. However, the kernel for `int64` is not registered yet. This fix adds the support of `int64` `multiples` so that the behavior matches the description of the docs. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Update functors for int64 multiples support in `tf.tile` Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Update test cases for int64 of multiples in `tf.tile` Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add GPU and non GPU tests Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * format with clang-format -i Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Move Tmultiples after T (as it is auxilliary) And use `use_gpu=True` Signed-off-by: Yong Tang <yong.tang.github@outlook.com> --- Commit fd8d517b9 authored by Yunxing Dai<yunxing@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Add tests for convolution 1D RELNOTES: n/a PiperOrigin-RevId: 173060283 --- Commit 40c475b48 authored by formath<jinpengliu@163.com> Committed by Vijay Vasudevan<vrv@google.com>: add segment_reduction_ops to tf_op_files (#13901) --- Commit bfa4ec194 authored by Tayo Oguntebi<10927929+tayo@users.noreply.github.com> Committed by Vijay Vasudevan<vrv@google.com>: Update node_def.proto comments (#13874) The device field had outdated comments. Note: We could consider adding tpu as an example here, e.g. "gpu" | "cpu" | "tpu". Thoughts? --- Commit c9cb5a58d authored by formath<jinpengliu@163.com> Committed by Vijay Vasudevan<vrv@google.com>: protobuf lib path bug fix for benckmark on osx (#13878) --- Commit 1c1dad105 authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Add int64 axis support for reduction ops. (#13891) * Add int64 axis support for reduction ops. This fix is a follow up to PR 13863. In PR 13863 the program crash is fixed if int64 axis is passed to reduction ops, e.g. reduce_sum, reduce_max, etc. However, 13863 does not process the case of int64 support, it merely fixes the crash. This fix adds the support for int64 axis of reduction ops. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add int64 axis support for mean, prod, sum Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add int64 axis support for min and max. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add int64 axis support for reduce_all and reduce_any Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add test cases for int64 axis support of reduce_any and reduce_all Signed-off-by: Yong Tang <yong.tang.github@outlook.com> --- Commit 17096081e authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Improve resize_bicubic performance by reorganizing loops (#13840) * Improve resize_bicubic performance by reorganizing loops This fix tries to address the issue raised in 13693 where performance of `resize_bicubic` is not on par with opencv. This fix rearranges the loops so that it is the same for num_channel=40 and num_channel=3: Pre-fix: ``` CHANNEL=40 opencv: 145.08ms tf: 314.26ms CHANNEL=3 opencv: 11.95ms tf: 8.95ms ``` Post-fix: ``` CHANNEL=40 opencv: 144.25ms tf: 214.55ms CHANNEL=3 opencv: 11.78ms tf: 14.07ms ``` This fix fixes 13693. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Keep special handling of `num_channels=3` for `resize_bicubic` This commit keeps special handling of `num_channels=3` for `resize_bicubic`: Without special handling: ``` opencv: 11.78ms tf: 14.07ms ``` With special handling: ``` opencv: 11.74ms tf: 9.46ms ``` Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Expand Benchmark test for resize_bicubic Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Update from review feedback. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> --- Commit b927df57f authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Update protobuf.cmake to b04e5cba356212e4e8c66c61bbe0c3a20537c5b9 (#13893) This fix tries to address the issue raised in 8187 where protobuf.cmake used different version as bazel. The reason for discrepancy was due to the fact that a customerized protobuf was needed with Windows patch. Since the patch has been merged in (https://github.com/google/protobuf/pull/2203), it makes sense to update protobuf.cmake so that the same version of cmake is used. This fix fixes 8187. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> --- Commit d1183ca6a authored by Vijay Vasudevan<vrv@google.com> Committed by GitHub<noreply@github.com>: Give each variable a unique name in accumulate_n_v2_eager_test. (#13886) --- Commit a69945810 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Update pin for bazel-toolchains to latest version PiperOrigin-RevId: 173002530 --- Commit 9d55c249c authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Fix doc in TF_CALL_ when invoked in mobile platform (#13881) * Fix doc in TF_CALL_ when defined(IS_MOBILE_PLATFORM) && !defined(__ANDROID_TYPES_FULL__) This is a small doc fix that includes bool as part of the types that is supported in mobile (IS_MOBILE_PLATFORM && !__ANDROID_TYPES_FULL__), as bool is clearly invoked in the following define. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Also add bool to android full version. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> --- Commit ba49d8583 authored by Bjarke Hammersholt Roune<broune@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Slight change to reduce_test to avoid generating inf, which was triggering an inf detector unnecessarily. PiperOrigin-RevId: 172965466 --- Commit 93e8f3c67 authored by Anna R<annarev@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Adding Python ApiDef overrides. PiperOrigin-RevId: 172960496 --- Commit 0d6a2e353 authored by Anna R<annarev@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Internal change. PiperOrigin-RevId: 172960439 --- Commit 62df65c72 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Add dtype argument to Mean and Accuracy object-oriented metrics. PiperOrigin-RevId: 172957714 --- Commit d7409d32b authored by Simone Cirillo<my.accounts@gmx.se> Committed by Vijay Vasudevan<vrv@google.com>: Fix import of spatial_softmax from tensorflow.contrib.layers (#13833) --- Commit df8bce63d authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Fix crash when `int64` axis is passed to `tf.reduce_sum` (#13863) * Fix crash when `int64` axis is passed to `tf.reduce_sum` This fix tries to fix the crash triggered by `int64` axis passed to `tf.reduce_sum`: ``` ubuntu@ubuntu:~/tensorflow2$ (cd && python) Python 2.7.12 (default, Nov 19 2016, 06:48:10) [GCC 5.4.0 20160609] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import tensorflow as tf >>> v = tf.reduce_sum([1,2,3], tf.constant(0, tf.int64)) 2017-10-20 15:55:06.993430: F tensorflow/core/framework/tensor.cc:601] Check failed: dtype() == expected_dtype (9 vs. 3) ubuntu@ubuntu:~/tensorflow2$ ``` The issue is caused by the fact that shape inference in `common_shape_fns.cc` only assumes int32 without proper handling of diffent types. In `math_ops.cc` both int32 and int64 are mentioned. NOTE that this fix does not address the issue that int64 is not supported. To allow int64 axis it is more than adding a template in `ReductionOp` as the type of the axis seems to be decided by some other ways in Eigen. This fix merely fixed the crash so that an error message will return without exit from the python program "No OpKernel was registered to support Op 'Sum' with these attrs". Still, I think its worth to at least allow the program to continue in case of unsupported kernel. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Update implementation with a template helper function. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> --- Commit 29c7b4658 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Adding the Stanford Tensorflow class to community resources. PiperOrigin-RevId: 172956049 --- Commit f758b24a8 authored by Alexandre Passos<apassos@google.com> Committed by Vijay Vasudevan<vrv@google.com>: Variable name for the eager test (#13873) --- Commit a5fe66b15 authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Removed some unnecessary broadcasts in binary ops where only one input needs broadcasting (which is a fairly common case, even in the fallback path). PiperOrigin-RevId: 172950493 --- Commit c77090a0a authored by Yong Tang<yong.tang.github@outlook.com> Committed by Vijay Vasudevan<vrv@google.com>: Fix issues where int64 crops could not be passed to batch_to_space. (#13862) * Fix issues where int64 crops could not be passed to batch_to_space. This fix tries to address the issue where int64 `crops` could not be passed to `batch_to_space` even though both int32 and int64 are specified as supported in the docs (tf.batch_to_space.__doc__) The reason is that BatchToSpace kernel puts a constraint of int32 to crops data types. This fix removed the constraint so that int64 `crops` could be supported. NOTE: Just removing the constraint should work and it is not necessary to add specification to the kernel class template, as `SubtleMustCopyFlat` called in the class already correctly handled both int32 and int64 cases. Besides, other data types (e.g., float or double) will not be passed to the kernel as they are guarded by the specification in `array_ops.cc`. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Also remove int64/int32 type constraints for SpaceToBatch kernels Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Add test cases for int64 crops of batch_to_space and space_to_batch Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Fix test failures. Signed-off-by: Yong Tang <yong.tang.github@outlook.com> --- Commit 494837936 authored by Joshua V. Dillon<jvdillon@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Make `tf.contrib.distributions` quadrature family accept a `Tensor` for `quadrature_grid_and_probs` argument. PiperOrigin-RevId: 172950094 --- Commit 9c825d32c authored by Jinze Bai<baijinze1994@163.com> Committed by Vijay Vasudevan<vrv@google.com>: Merge two GPU kernel launching to one in DiagOp. (#13859) --- Commit c0ca50a47 authored by Yan Facai (???)<facai.yan@gmail.com> Committed by Vijay Vasudevan<vrv@google.com>: ENH: add Relu6GradGrad (#13268) * ENH: add Relu6GradGrad * TST: add test case * CLN: import nn_grad * TST: add init value --- Commit 8ff33271e authored by Justin Lebar<jlebar@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Dump the computation's SessionModule as part of the tf_compile rule. PiperOrigin-RevId: 172946149 --- Commit ebcae4a5e authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Add streaming_precision_recall_at_equal_thresholds This helper method computes streaming tp, fp, tn, fp, precision, and recall for the user in a way that exhibits O(T + N) time and space complexity (instead of O(T * N)), where T is the number of thresholds and N is the size of the predictions tensor. Thanks to Frank Chu for the efficient algorithm! PiperOrigin-RevId: 172946073 --- Commit ccfd9c1e5 authored by Sanjoy Das<sanjoy@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Log Hlo IR during AOT compilation PiperOrigin-RevId: 172944165 --- Commit 985031a10 authored by Alexandre Passos<apassos@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Allows tfe.enable_eager_execution(device_policy=tfe.DEVICE_POLICY_WARN). PiperOrigin-RevId: 172943398 --- Commit 703182d85 authored by Mingxing Tan<tanmingxing@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Add performance guide for fused decode_and_crop_jpeg optimization. PiperOrigin-RevId: 172943116 --- Commit 66b1f4383 authored by Francois Chollet<fchollet@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Make Network compatible with eager mode. Currently it only allows to instantiate a Network in eager mode using the regular Keras API, and call it on eager tensors. PiperOrigin-RevId: 172942569 --- Commit 41df2cec2 authored by ashankar<ashankar@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Testing pending CL: 172939383 --- Commit 37fd95179 authored by Alexandre Passos<apassos@google.com> Committed by TensorFlower Gardener<gardener@tensorflow.org>: Simplifies capturing code in graph_callable to use recent function improvements. PiperOrigin-RevId: 172937003 --- Commit d1e7382af authored by A. Unique TensorFlower<gardener@tensorflow.org> Committed by TensorFlower Gardener<gardener@tensorflow.org>: BEGIN_PUBLIC Automated g4 rollback of changelist 172924803 PiperOrigin-RevId: 173347587
* Fix a dtypeGravatar A. Unique TensorFlower2017-10-13
| | | | PiperOrigin-RevId: 172114960
* Introduce CudnnRNN layersGravatar James Qin2017-10-04
| | | | | | | | | | | | | | | | | * Layerize CudnnRNN APIs * Support build(), call() APIs * Support building custom saveable() as a member method * Custom saveable built as part of build() * Support forward-compatible opaque param initialization w/ weight & bias initializer. * Add more documentation. Unittest revamp * Introduce CudnnTestModel class to build graph used by all unittests, avoid repeatedly building similar graphs. * Split tests by RNN types, for more explicit error localization. * Use custom gradient check routine which is cleaner. * Deleted golden-based inference tests since we use regular rnn as reference impl now. PiperOrigin-RevId: 171095161
* Bugfix to LSTMBlockCell and friends: clipping is off by default.Gravatar Eugene Brevdo2017-10-03
| | | | | | | * Rename broken API argu clip_cell boolean to cell_clip value. * Make default no clipping. PiperOrigin-RevId: 170960975
* Remove RTLD_GLOBAL when loading pywrap_tensorflowGravatar Allen Lavoie2017-09-21
| | | | | | | | | | | | | | Splits out a shared object (//tensorflow/libtensorflow_framework.so) with core TensorFlow functionality but neither ops nor kernels. This object does include registries for ops, kernels, filesystems, etc. The expectation is that shared objects containing custom ops will have a runtime dependency on this framework shared object: TensorFlow will load the custom op shared object, and the custom op shared object will use the symbols from the framework shared object to register its ops/kernels/etc. rather than (as before this change) relying on those symbols being in the global symbol table. In this mode, TensorFlow artifacts (_pywrap_tensorflow.so for Python, libtensorflow.so for the C API; currently excluding Android artifacts) will depend on the framework shared object, which will be packaged with the Python pip package and other language distributions. This means that custom ops targeting the framework shared object will work in any language (C++, Java, Go; previously custom ops in these languages required custom Bazel builds). Adds a config option which reproduces the old behavior (--config=monolithic), which for Python means building a monolithic pywrap_tensorflow shared object and loading its symbols into the global symbol table (with RTLD_GLOBAL). As before, there will be no extra-Bazel custom op support for other languages when compiling in this mode. Does not change behavior on Windows; the cmake build is still monolithic. Requires using tf_cc_binary, tf_cc_test, and (rarely) tf_cc_shared_object rules to link in the framework shared object when adding new TensorFlow build rules. PiperOrigin-RevId: 169572746
* Fix list formattingGravatar A. Unique TensorFlower2017-09-05
| | | | PiperOrigin-RevId: 167660250
* Add functional cudnn_rnn_opsGravatar James Qin2017-08-30
| | | | | | | Will deprecate class-style cudnn_rnn_ops soon. As a transition plan, have the former depend on the latter for now. PiperOrigin-RevId: 167075637
* Exposing CudnnCompatibleRNN classes.Gravatar James Qin2017-08-30
| | | | | | Also add reuse arg to LSTMBlockCell. PiperOrigin-RevId: 167030950