ホーム » 「Keras Release Note」タグがついた投稿

タグアーカイブ: Keras Release Note

Keras 2.2.4 リリースノート

Keras 2.2.4 リリースノート (翻訳)

翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 10/11/2018

  • Keras のマイナーアップデート 2.2.4 がリリースされましたので、リリースノートを翻訳しておきました。

* 本ページは、github Keras の releases の Keras 2.2.4 を翻訳したものです:

 

本文

これはバグ修正リリースで、2 つの問題に対処しています :

  • 同じ名前のファイルが既に存在しているときモデルをセーブする機能。
  • Sequential モデルに対する legacy config ファイルのロードに伴う issue。

2.2.2 からの変更ログについては こちら を見てください。

 
以上



Keras 2.2.3 リリースノート

Keras 2.2.3 リリースノート (翻訳)

翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 10/03/2018

  • Keras のマイナーアップデート 2.2.3 がリリースされましたので、リリースノートを翻訳しておきました。

* 本ページは、github Keras の releases の Keras 2.2.3 を翻訳したものです:

 

改良領域

  • API 完全性 & ユーザビリティの改良
  • バグ修正
  • ドキュメント改良

 

API 変更

  • Keras モデルは今では安全に pickle 化されます。
  • 活性化層 ThresholdedReLU と LeakyReLU の機能を ReLU 層に統合整理します。
  • 結果的に、ReLU 層は今では新しい引数 negative_slope と threshold を取り、そしてバックエンドの relu 関数は新しい threshold 引数を取ります。
  • TensorBoard callback で update_freq 引数を追加します、TensorBoard ログをどのくらいの頻度で書くかを制御します。
  • keras.activations に指数関数を追加します。
  • 総ての 4 Pooling1D 層に data_format 引数を追加します。
  • UpSampling2D 層と resize_images バックエンド関数の interpolation 引数を追加します、モード “nearest” (以前の挙動, そして新しいデフォルト) と “bilinear” (新規) をサポートします。
  • Conv2DTranspose 層と conv2d_transpose バックエンド関数に dilation_rate 引数を追加します。
  • LearningRateScheduler は今では on_epoch_end の logs 引数の一部として lr キーを受け取ります (学習率の現在値)。
  • GlobalAveragePooling1D 層をマスキングをサポートするようにします。
  • save_model と model.save() の filepath 引数は今では h5py.Group インスタンスでもかまいません。
  • EarlyStopping callback に引数 restore_best_weights を追加します (オプションで最高の監視されたスコア値を得た重みに逆戻りします)。
  • keras.utils.to_categorical に dtype 引数を追加します。
  • TensorFlow バックエンドのためにmodel.compile() でオプションの session 引数として run_options と run_metadata をサポートします。

 

互換性を壊す変更 (Breaking Changes)

  • Sequential.get_config() の戻り値を変更します。以前は、戻り値はモデルの層の config 辞書のリストでした。今では、戻り値はキー layers, name, そしてオプションのキー build_input_shape を持つ辞書です。古い config は new_config[‘layers’] と等価です。これは get_config の出力を総てのモデルクラスに渡り首尾一貫させます。

 
以上



Keras 2.2.1 & 2.2.2 リリースノート

Keras 2.2.1 & 2.2.2 リリースノート (翻訳)
翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 07/30/2018

  • Keras のマイナーアップデート 2.2.1 そして続けて 2.2.2 がリリースされましたので、リリースノートを翻訳しておきました。

* 本ページは、github Keras の releases の Keras 2.2.1 と Keras 2.2.2 を翻訳したものです:

 

Keras 2.2.1

改良領域

  • バグ修正
  • パフォーマンス改良
  • ドキュメント改良

 

API 変更

  • Conv2DTranspose で (デフォルト padding 挙動を override するために) output_padding 引数を追加します 。
  • CNTK バックエンドで Lambda 層を使用するとき自動 shape 推論を可能にします。

 

互換性を壊す変更 (Breaking Changes)

記録された互換性を壊す変更は記録ありません。

 

Keras 2.2.2

これはバグ修正リリースです、multi_gpu_model における重要なバグを修正しました。

バージョン 2.2.0 からの変更については、Keras 2.2.1 のリリースノートを見てください (訳注: 上述)。

 
以上



Keras 2.2.0 リリースノート

Keras 2.2.0 リリースノート (翻訳)

翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 06/08/2018

  • Keras のマイナーアップデート 2.2.0 がリリースされましたので、リリースノートを翻訳しておきました。

* 本ページは、github Keras の releases の Keras 2.2.0 を翻訳したものです:

 

改良領域

  • 新しいモデル定義 API: Model サブクラス化 (= subclassing)。
  • 新しい入力モード: TensorFlow tensor 上のモデルを呼び出す能力 (TensorFlow バックエンドのみ)。
  • Theano と CNTK バックエンドにおける Keras の機能範囲の改良。
  • バグ修正とパフォーマンス改良。
  • コード構造、コードの健全性 (= health)、そしてテスト時間の縮小のための巨大なリファクタリング。特に :
    • 今では Keras エンジンはいっそう多くのモジュール構造を進めています。
    • Sequential モデルは今では Model の平易なサブクラスです。
    • モジュール applications と preprocessing は今ではそれら自身のレポジトリへと外部に置かれます (keras-applicationskeras-preprocessing)。

 

API 変更

  • Model サブクラス化 API の追加 (詳細は後述)。
  • TensorFlow バックエンドにおいて、シンボリック tensor がモデルに供給されることを可能にします (詳細は後述)。
  • CNTK と Theano に層 SeparableConv1D, SeparableConv2D そしてバックエンド・メソッド separable_conv1d と separable_conv2d のためのサポートを可能にします (以前は TenosrFlow のためにのみ利用可能)。
  • CNTK と Theano に applications Xception と MobileNet のためのサポートを可能にします (以前は TensorFlow のためにのみ利用可能)。
  • MobileNetV2 アプリケーションを追加します (総てのバックエンドで利用可能)。
  • ~/.keras.json configuration ファイル (e.g. PlaidML バックエンド) の変更により外部 (組み込みでない) バックエンドのロードを可能にします。
  • ImageDataGenerator で sample_weight を追加します。
  • 画像をディスクに書くための preprocessing.image.save_img ユティリティを追加します。
  • Flatten 層の data_format 引数のデフォルトを None にします (これはデフォルトを global Keras config にします)。
  • Sequential は今では Model の平易なサブクラスです。属性 sequential.model は deprecated です。
  • EarlyStopping に baseline 引数を追加します (与えられた baseline に達しない場合訓練を停止します)。
  • Conv1D に data_format 引数を追加します。
  • multi_gpu_model serializable により返されるモデルを作成します。
  • TimeDistributed 層の入力マスキングをサポートします。
  • advanced_activation 層 ReLU を追加します、容易なシリアリゼーション機能を保持しながら ReLU 活性に configure することを容易にします。
  • backend crossentropy 関数で axis=-1 引数を追加します、これは入力 tensor のクラス予測軸を指定します。

 

新しいモデル定義 API : Model サブクラス化

Sequential API と functional Model API に加えて、Model クラスのサブクラス化と貴方自身の call forward パスを書くことにより今ではモデルを定義可能です :

import keras

class SimpleMLP(keras.Model):

    def __init__(self, use_bn=False, use_dp=False, num_classes=10):
        super(SimpleMLP, self).__init__(name='mlp')
        self.use_bn = use_bn
        self.use_dp = use_dp
        self.num_classes = num_classes

        self.dense1 = keras.layers.Dense(32, activation='relu')
        self.dense2 = keras.layers.Dense(num_classes, activation='softmax')
        if self.use_dp:
            self.dp = keras.layers.Dropout(0.5)
        if self.use_bn:
            self.bn = keras.layers.BatchNormalization(axis=-1)

    def call(self, inputs):
        x = self.dense1(inputs)
        if self.use_dp:
            x = self.dp(x)
        if self.use_bn:
            x = self.bn(x)
        return self.dense2(x)

model = SimpleMLP()
model.compile(...)
model.fit(...)

層は __init__(self, …) で定義されて、forward パスは call(self, inputs) で指定されます。call では、self.add_loss(loss_tensor) を呼び出すことによりカスタム損失の指定も可能です (カスタム層でそうするようにです)。

 

新しい入力モード : シンボリック TensorFlow tensor

Keras 2.2.0 と TensorFlow 1.8 またはそれ以上において、シンボリック TensorFlow tensor を使用して (それらはデータを無期限に yeild することが想定されます)、fit, evaluate そして predict が可能です。API は fit_generator と他の generator メソッドで使用中のものに類似しています :

iterator = training_dataset.make_one_shot_iterator()
x, y = iterator.get_next()

model.fit(x, y, steps_per_epoch=100, epochs=10)

iterator = validation_dataset.make_one_shot_iterator()
x, y = iterator.get_next()
model.evaluate(x, y, steps=50)

 

互換性を壊す変更 (Breaking Changes)

  • legacy Merge 層と関連する機能 (Keras 0 の遺物) を削除します、これは May 2016 には deprecated で、完全削除は初期には August 2017 にスケジュールされていました。これらの層を使用する Keras 0 API からのモデルは Keras 2.2.0 及びそれ以上ではロードできません。
  • truncated_normal base 初期化子は今では ~0.9 でスケールされた値を返します(truncation 後に正しい分散値の結果になります)。幾つかのモデルでは初期収束挙動に影響する小さな可能性を持ちます。

 
以上



Keras 2.1.6 リリースノート

Keras 2.1.6 リリースノート (翻訳)

翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 04/24/2018

  • Keras のマイナーアップデート 2.1.6 がリリースされましたので、リリースノートを翻訳しておきました。
  • 本リリースはバグ修正が中心です。仕様変更としては関数引数の追加が目立ちますが、
    特に multi_gpu_model 関数において、テンプレート・モデルの重みを CPU 上にあることを強制するか否か、merge 演算を CPU 上か GPU 上で動作するかを制御するための引数が追加されました。

* 本ページは、github Keras の releases の Keras 2.1.6 を翻訳したものです:

 

改良領域

  • バグ修正
  • ドキュメント改良
  • 小さなユーザビリティ改良

 

API 変更

  • コールバック ReduceLROnPlateau において、epsilon 引数を min_delta に名前変更しました (後方互換性)。
  • コールバック RemoteMonitor において、引数 send_as_json を追加します。
  • バックエンド softmax 関数において、引数 axis を追加します。
  • Flatten 層において、引数 data_format を追加します。
  • save_model (Model.save) と load_model 関数において、h5py.File オブジェクトとなる filepath 引数を可能にします。
  • Model.evaluate_generator において、verbose 引数を追加します。
  • Bidirectional ラッパー層において、constants 引数を追加します。
  • multi_gpu_model 関数において、引数 cpu_merge と cpu_relocation を追加します (テンプレート・モデルの重みを CPU 上にあることを強制するか否か、そして merge 演算を CPU 上か GPU 上で動作するかを制御します)。
  • ImageDataGenerator において、int か 1D 配列-like となる引数 width_shift_range を可能にします。

 

互換性を壊す変更 (Breaking Changes)

このリリースは既知の互換性を壊す変更は含みません。

 
以上

Keras 2.1.5 リリースノート

Keras 2.1.5 リリースノート (翻訳)

翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 03/10/2018

  • Keras のマイナーアップデート 2.1.5 がリリースされましたので、リリースノートを翻訳しておきました。先の 2.1.4 リリースからまだ1ヶ月も経過していませんが、短いサイクルで更新する方針のようです。
  • 新しいシークエンス生成 API TimeseriesGenerator と新しい畳込み層 DepthwiseConv2D の追加が主目的のようです。
  • ImageDataGenerator に brightness_range と validation_split が追加拡張されました。特に後者は必要性を感じていたかたも多いでしょう。
  • また、 (CPU 上の推論のため) keras.layers.CuDNNLSTM からの重みが keras.layers.LSTM 層にロード可能になりました。

* 本ページは、github Keras の releases の Keras 2.1.5 を翻訳したものです:

 

改良領域

  • バグ修正。
  • 新しい API : シークエンス生成 API TimeseriesGenerator と新しい層 : DepthwiseConv2D。
  • ユニットテスト / CI 改良。
  • ドキュメント改良。

 

API 変更

  • 新しいシークエンス生成 API keras.preprocessing.sequence.TimeseriesGenerator の追加。
  • 新しい畳込み層 keras.layers.DepthwiseConv2D を追加。
  • keras.layers.CuDNNLSTM からの重みが keras.layers.LSTM 層にロードされることを可能にします (e.g. CPU 上の推論のため)。
  • keras.preprocessing.image.ImageDataGenerator において brightness_range データ拡張引数を追加。
  • keras.preprocessing.image.ImageDataGenerator に validation_split API を追加。コンストラクタ に validation_split を渡すことが可能で (float)、そして引数 subset=’validation’ または subset=’training’ をメソッド flow と flow_from_directory に渡すことにより training/validation サブセット間で選択します。

 

重要な変更

  • ConvLSTM2D のモジュール実装へのリファクタリングの副作用として、Theano における recurrent dropout サポートはこの層のために破棄されました。

 
以上

Keras 2.1.4 リリースノート

Keras 2.1.4 リリースノート (翻訳)

翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 02/16/2018

* 本ページは、github Keras の releases の Keras 2.1.4 を翻訳したものです:

 

改良領域

  • バグ修正。
  • パフォーマンス改良。
  • example スクリプトへの改良。

 

API 変更

  • model.compile(…, metrics=[…]) でステートフル metrics を許します。ステートフル metrics は Layer から継承し、__call__ と reset_states を実装します。
  • StackedRNNCells で constants 引数をサポートします。
  • non-TensorFlow バックエンドでの TensorBoard コールバックで幾つかの Tensorboard 特徴 (loss と metrics プロッティング) を可能にします。
  • model.load_weights() で reshape 引数を追加します、これは考えているモデルでターゲット weights のサイズにロードされるように weights をオプションで reshape します。
  • ImageDataGenerator でサポートされるフォーマットに tif を追加します。
  • multi_gpu_model() で auto-GPU 選択を可能にします (set gpus=None)。
  • LearningRateScheduler コールバックで、scheduling 関数は今では引数: lr を取ります、現在の学習率です。

 

重要な変更

  • ImageDataGenerator において、画像変換のデフォルト interpolation を nearest から bilinear に変更します。これはどのようなユーザにもおそらくは悪影響を与えないはずですが、これは挙動の変更です。

 
以上

Keras 2.1.3 リリースノート

Keras 2.1.3 リリースノート (翻訳)

翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 02/16/2018

* 本ページは、github Keras の releases の Keras 2.1.3 を翻訳したものです:

 

改良領域

  • パフォーマンス改良 (esp. TensorFlow バックエンドの畳み込みネットワーク)。
  • ユーザビリティの改良。
  • Docs & docstrings 改良。
  • applications モジュールの新しいモデル。
  • バグ修正。

 

API 変更

  • BatchNormalization の訓練可能な属性は今ではバッチ統計情報の更新を無効にします (i.e. if trainable == False である場合には層は 100 % 推論モードで実行するでしょう)。
  • Adam オプティマイザで amsgrad 引数を追加。
  • 新しい applications: NASNetMobile, NASNetLarge, DenseNet121, DenseNet169, DenseNet201 を追加。
  • Softmax 層の追加 (axis 引数を指定するために Lambda 層を使用する必要性を取り除きます)。
  • SeparableConv1D 層を追加。
  • preprocessing.image.ImageDataGenerator で、width_shift_range と height_shift_range に整数値 (ピクセルの絶対数) を取ることを可能にします。
  • RNN に適用される Bidirectional で return_state をサポートします。 (return_state は child 層で設定されるべきです)。
  • (model.compile() の) metrics 引数で今では 文字列値 “crossentropy” と “ce” が許されて、 必要に応じて categorical_crossentropy か binary_crossentropy にルーティングされます。
  • Sequential モデル上 predict_* メソッドで steps 引数を許します。
  • preprocessing.text.Tokenizer で oov_token 引数を追加。

 

重要な変更

  • preprocessing.image.ImageDataGenerator において、shear_range は radians よりも degrees (度) を使用するように切り替えられました (一貫性のために)。これは (訓練も推論も) 実際には何も壊すべきではありませんが、画像データ拡張処理に関連する問題を見る場合にはこの変更を念頭においてください。

 
以上

Keras 2.1.2 リリースノート

Keras 2.1.2 リリースノート (翻訳)

翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 12/05/2017

* 本ページは、github Keras の releases の Keras 2.1.2 を翻訳したものです:

 

改良領域

  • バグ修正とパフォーマンス改良。
  • Keras applications の API 改良、特に generator メソッド。

 

API 変更

  • Keras applications の preprocess_input を Numpy 配列とシンボリック・テンソル (= symbolic tensors) の両者と互換にします (以前は Numpy 配列のみをサポートしていました)。
  • Keras applications の weights 引数に (ロードするための) カスタム重みファイルへのパスを受け取ることを可能にしました (以前は組み込み Imagenet 重みファイルだけをサポートしていました)。
  • generator training/evaluation メソッドの steps_per_epoch の挙動変更 :
    • 指定された場合には、指定された値が使用されます (以前は、Sequence 型の generator の場合には、指定された値は Sequence 長で上書きされていました)。
    • 指定されずにかつ渡された generator が Sequence である場合には、それを Sequence 長に設定します。
  • generator training/evaluation メソッドで workers=0 を許容します (generator をメイン・プロセスで実行します、ブロッキング方式で)。
  • ImageDataGenerator.flow_from_directory に interpolation 引数を追加し、画像リサイズのためのカスタム補間メソッドを可能にします。
  • multi_gpu_model の gpus 引数に特定の GPU ids のリストを許容します。

 

重要な変更

  • steps_per_epoch 挙動の (上述の) 変化はあるユーザには影響を与えるかもしれません。

 
以上

Keras 2.1.0 & 2.1.1 リリースノート

Keras 2.1.0 & 2.1.1 リリースノート (翻訳)

翻訳 : (株)クラスキャット セールスインフォメーション
日時 : 11/25/2017

* 本ページは、github Keras の releases の Keras 2.1.0 及び 2.1.1 を翻訳したものです:

 

Keras 2.1.0 リリースノート

これは、前のリリース以後にレポートされた未解決のバグを修正する、小さなリリースです。

 

改良領域

  • バグ修正 (特に、Keras は TensorFlow バックエンドでスタートアップする時にもはやデバイスを割り当てません。これは Horovod で問題を引き起こします。)
  • ドキュメンテーションと docstring の改良。
  • より良い CIFAR10 ResNet サンプル・スクリプトとサンプル・スクリプトのコードスタイルの改良。

 

API 変更

  • cuDNN RNN へ go_backwards を追加します (cuDNN RNN 上で Bidirectional ラッパーを有効にします)。
  • TensorFlow バックエンドで K.Function() へ fetches を渡す機能を追加します。
  • Sequential.fit() において steps_per_epoch と validation_steps 引数を追加します (Model.fit() と同期を取るため)。

 

重要な変更

None.

 

Keras 2.1.1 リリースノート

このリリースは #8419 で導入された誤りのある重要な変更のための修正を含めるために、リリース 2.1.0 を修正しています。

 
以上

AI導入支援 #2 ウェビナー

スモールスタートを可能としたAI導入支援   Vol.2
[無料 WEB セミナー] [詳細]
「画像認識 AI PoC スターターパック」の紹介
既に AI 技術を実ビジネスで活用し、成果を上げている日本企業も多く存在しており、競争優位なビジネスを展開しております。
しかしながら AI を導入したくとも PoC (概念実証) だけでも高額な費用がかかり取組めていない企業も少なくないようです。A I導入時には欠かせない PoC を手軽にしかも短期間で認知度を確認可能とするサービの紹介と共に、AI 技術の特性と具体的な導入プロセスに加え運用時のポイントについても解説いたします。
日時:2021年10月13日(水)
会場:WEBセミナー
共催:クラスキャット、日本FLOW(株)
後援:働き方改革推進コンソーシアム
参加費: 無料 (事前登録制)
人工知能開発支援
◆ クラスキャットは 人工知能研究開発支援 サービスを提供しています :
  • テクニカルコンサルティングサービス
  • 実証実験 (プロトタイプ構築)
  • アプリケーションへの実装
  • 人工知能研修サービス
◆ お問合せ先 ◆
(株)クラスキャット
セールス・インフォメーション
E-Mail:sales-info@classcat.com