TensorFlow 1.5.0 リリースノート(翻訳)
翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 01/26/2018
* 本ページは、github TensorFlow の releases の TensorFlow 1.5.0 を翻訳したものです:
互換性に影響する変更
- 事前ビルドされたバイナリは CUDA 9 と cuDNN 7 に対してビルドされています。
- 1.6 リリースから、事前ビルドされたバイナリは AVX 命令を使用します。これはより古い CPU 上で TF を壊すかもしれません。
(訳注: 1.5 ではなく 1.6 の話しです、ご注意ください。)
主要な特徴と改良
- Eager execution
プレビュー版が利用可能です。 - TensorFlow Lite
dev プレビューが利用可能です。 - CUDA 9 と cuDNN 7 サポート。
- XLA (Accelerated Linear Algebra, 加速された線形代数):
- XLA コンパイラに complex64 サポートを追加します。
- XLA インフラに bfloat サポートが追加されます。
- ClusterSpec 伝播が XLA デバイスで動作するようにします。
- XLA グラフを生成するために決定論的 executor を使用します。
- tf.contrib:
- tf.contrib.distributions:
- Add tf.contrib.distributions.Autoregressive を追加します。
- tf.contrib.distributions QuadratureCompound クラスがバッチをサポートするようにします。
- tf.contrib.distributions.RelaxedOneHotCategorical dtype を引数から推論します。
- tf.contrib.distributions quadrature ファミリを quadrature_grid_and_prob vs quadrature_degree によりパラメータ化します。
- auto_correlation が tf.contrib.distributions に追加されました。
- tf.contrib.bayesflow.layers, 確率的 (ニューラル) 層のコレクションを追加します。
- tf.contrib.bayesflow.halton_sequence を追加します。
- tf.contrib.data.make_saveable_from_iterator を追加します。
- tf.contrib.data.shuffle_and_repeat を追加します。
- 新しいカスタム変換: tf.contrib.data.scan() を追加します。
- tf.contrib.distributions.bijectors:
- tf.contrib.distributions.bijectors.MaskedAutoregressiveFlow を追加します。
- tf.contrib.distributions.bijectors.Permute を追加します。
- tf.contrib.distributions.bijectors.Gumbel を追加します。
- tf.contrib.distributions.bijectors.Reshape を追加します。
- Reshape bijector で shape 推論 (i.e. -1 を含む shape) をサポートします。
- tf.contrib.distributions:
- streaming_precision_recall_at_equal_thresholds を追加します、これは streaming 精度と再現率を O(num_thresholds + 予測サイズ) 時間と空間の complexity で計算するためのメソッドです。
- RunConfig デフォルト挙動を乱数シードを設定しないように変更します、分散ワーカー上でランダム挙動を独立的にランダムにします。一般的に訓練性能を改善することをこれに期待します。決定論に頼るモデルは乱数シードを明示的に設定すべきです。
- tf.flags の実装を absl.flags で置き換えました。
- fp16 GEMM で CUBLAS_TENSOR_OP_MATH のためのサポートを追加。
- NVIDIA Tegra デバイス上の CUDA のためのサポートを追加。
バグ修正とその他の変更
- ドキュメント更新:
- TensorFlow は 64-bit マシン上にインストール可能であるだけと明記しました。
- Estimator がどのようにチェックポイントをセーブするかを説明する短い doc を追加しました。
- tf2xla ブリッジによりサポートされる ops のためのドキュメントを追加。
- SpaceToDepth と DepthToSpace の doc の些細なタイポを修正しました。
- mfcc_mel_filterbank.h と mfcc.h のドキュメントのコメントを更新しました、これは入力ドメインが二乗マグニチュードスペクトルで重み付けが線形マグニチュード・スペクトル (入力の sqrt) 上で成されることを明示するためにです。
- tf.contrib.distributions docstring サンプルを ds, bs よりも tfd エイリアスを使用するために変更しました。
- tf.distributions.bijectors.Bijector の docstring タイポを修正します。
- tf.assert_equal はもはや ValueError を上げません。ドキュメントされているように、それは InvalidArgumentError をあげます。
- Getting Started ドキュメントと API イントロを更新します。
- Google Cloud Storage (GCS):
- GCS クライアントのためのユーザ空間 DNS キャッシングを追加します。
- GCS ファイルシステムのためのリクエスト・タイムアウトをカスタマイズします。
- GCS ファイルシステム・キャッシングを改良します。
- バグ修正:
- 分割された整数変数が誤った shape を得るバグを修正します。
- Adadelta の CPU と GPU 実装の correctness バグを修正します。
- スコープにインポートするときの分割された変数の import_meta_graph の処理のバグを修正します。警告: これは、空でない import_scope 引数を持つ import_meta_graph の使用後にセーブされた分割された変数を持つグラフのチェックポイントのロードを壊すかもしれません。
- イベントのビューを妨げるオフライン・デバッガーのバグを修正します。
- gRPC インターフェイスに WorkerService.DeleteWorkerSession メソッドを追加しました、メモリ・リークを修正するためです。互換性問題を回避するためにマスターとワーカー・サーバが TensorFlow の同じバージョンを実行していることを確実にしてください。
- BlockLSTM cell の peephole 実装のバグを修正します。
- log_det_jacobian の dtype を TransformedDistribution の log_prob に適合するようにキャストすることによりバグを修正します。
- 分割された変数の import_meta_graph の処理のバグを修正します。
- tf.distributions.Multinomial が log_prob でアンダーフローしないことを確実にします。この変更前、整数変数の総てのパーティションは unpartitioned 変数の shape で初期化されました ; この変更後、それらは正しく初期化されます。
- その他:
- bfloat16 のための必要な shape util サポートを追加します。
- MonitoredSession へのステップ関数を使用して ops を実行する方法を追加します。
- DenseFlipout 確率層を追加します。
- 新しいフラグ ignore_live_threads が訓練上で利用可能です。True に設定されている場合、訓練を成功的に完了した後インフラを取り壊したときに、RuntimeError を投げる代わりに、動作したまま存続しているスレッドを無視するでしょう。
- DenseVariational を他の確率層のためのより単純なテンプレートとして再標準化します。
- tf.data はデータセット要素で tf.SparseTensor コンポーネントをサポートします。
- テンソルに渡りイテレートすることが可能です。
- SparseSegmentReduction ops に失ったセグメント ID を持つことを可能にします。
- 多次元スパース float スプリットのためのカスタム export ストラテジーを変更します。
- Conv2D, Conv2DBackpropInput, Conv2DBackpropFilter は GPU と cuDNNv6 サポートにより任意の dilation をサポートします。
- Estimator は Dataset をサポートします: input_fn はテンソルの代わりに Dataset を返すことができます。
- RevBlock を追加します、reversible residual 層のメモリ効率の良い実装です。
- BFCAllocator 内部フラグメンテーションを削減します。
- cross_entropy と kl_divergence を tf.distributions.Distribution に追加します。
- tf.nn.softmax_cross_entropy_with_logits_v2 を追加します、これはラベルに関して backprop を可能にします。
- GPU バックエンドは生成された PTX をコンパイルするために ptxas を使用します。
- BufferAssignment の protocol buffer dump は決定論的です。
- embedding op を DynamicStitch の並列バージョンを使用するように変更します。
- スパース多次元特徴カラムのためのサポートを追加します。
- 1 値のみを持つスパース float カラムのためのケースを高速化します。
- 多価 (= multivalent) 特徴カラムをサポートするためにスパース float スプリットを可能にします。
- tf.distributions.TransformedDistribution に分位数を追加します。
- GPU 上 tf.depth_to_space のための NCHW_VECT_C サポートを追加します。
- GPU 上 tf.space_to_depth のための NCHW_VECT_C サポートを追加します。
API 変更
- C++ API の Squeeze op のために SqueezeDims 属性を Axis に名前変更します。
- Stream::BlockHostUntilDone は bool よりも Status を返します。
- マイナー・リファクター: stats ファイルを stochastic から common へ移して stochastic を取り除きます。
以上