(翻訳/解説)TensorFlow 0.7.0 リリースノート
翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 02/22/2016
* 本ページは、github TensorFlow の releases の TensorFlow 0.7.0 を翻訳したものです:
https://github.com/tensorflow/tensorflow/releases
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。
主要な特徴と改良
- 任意のインストールされた Cuda >= 7.0 と cuDNN >= R2 の利用が可能になります、そして cuDNN R4 へのサポートを追加しました。
- より高いレベルの層のモジュールを含む、未サポートあるいは実験的な特徴のためにcontrib/ ディレクトリを追加しました。
- ユーザ定義 ops を追加して動的にロードするための簡単な方法を追加しました。
- 良いテストスーツをビルド・アウトしました、 things should break less !
- メタデータとともにグラフを保存することをより容易にする MetaGraphDef を追加しました。
- “Deep Learning with TensorFlow” udacity コースのための課題を追加しました。
バグ修正と他の変更
- 互換性を保証するために GraphDefs のためのバージョンニング・フレームワークを追加しました。
- Python 3 互換を強要しました。
- 今、内部変更は分別良く分離した (sensibly separated) コミットとして可視化されました。
- 文書ジェネレータのオープンソース化
- Un-fork Eigen
- Simplified the BUILD files and cleaned up C++ headers
- TensorFlow can now be used as a submodule in another bazel build
- 新しい ops (e.g., *fft, *_matrix_solve)
- Support for more data types in many ops
- パフォーマンス改良
- 各種バグ修正
- 文書の修正と改良
API への Breaking Changes
- AdjustContrast kernel deprecated, new kernel AdjustContrastv2 takes and outputs float only. adjust_contrast now takes all data types.
- adjust_brightness’s delta argument is now always assumed to be in [0,1] (as is the norm for images in floating point formats), independent of the data type of the input image.
- The image processing ops do not take min and max inputs any more, casting safety is handled by saturate_cast, which makes sure over- and underflows are handled before casting to data types with smaller ranges.
- For C++ API users: IsLegacyScalar and IsLegacyVector are now gone from TensorShapeUtils since TensorFlow is scalar strict within Google (for example, the shape argument to tf.reshape can’t be a scalar anymore). The open source release was already scalar strict, so outside Google IsScalar and IsVector are exact replacements.
- The following files are being removed from tensorflow/core/public/:
- env.h -> ../platform/env.h
- status.h -> ../lib/core/status.h
- tensor.h -> ../framework/tensor.h
- tensor_shape.h -> ../framework/tensor_shape.h
- partial_tensor_shape.h -> ../framework/partial_tensor_shape.h
- tensorflow_server.h deleted
- For C++ API users: TensorShape::ShortDebugString has been renamed to DebugString, and the previous DebugString behavior is gone (it was needlessly verbose and produced a confusing empty string for scalars).
- GraphOptions.skip_common_subexpression_elimination has been removed. All graph optimizer options are now specified via GraphOptions.OptimizerOptions.
- ASSERT_OK / EXPECT_OK macros conflicted with external projects, so they were renamed TF_ASSERT_OK, TF_EXPECT_OK. The existing macros are currently maintained for short-term compatibility but will be removed.
- The non-public nn.rnn and the various nn.seq2seq methods now return just the final state instead of the list of all states.
- tf.scatter_update now no longer guarantees that lexicographically largest index be used for update when duplicate entries exist.
- tf.image.random_crop(image, [height, width]) is now tf.random_crop(image, [height, width, depth]), and tf.random_crop works for any rank (not just 3-D images). The C++ RandomCrop op has been replaced with pure Python.
- Renamed tf.test.GetTempDir and tf.test.IsBuiltWithCuda to tf.test.get_temp_dir and tf.test.is_built_with_cuda for PEP-8 compatibility.
- parse_example’s interface has changed, the old interface is accessible in legacy_parse_example (same for related functions).
- New Variables are not added to the same collection several times even if a list with duplicates is passed to the constructor.
- The Python API will now properly set the list member of AttrValue in constructed GraphDef messages for empty lists. The serialization of some graphs will change, but the change is both forwards and backwards compatible. It will break tests that compare a generated GraphDef to a golden serialized GraphDef (which is discouraged).
以上