[source]

CustomObjectScope

keras.utils.generic_utils.CustomObjectScope()

_GLOBAL_CUSTOM_OBJECTSをエスケープできないスコープを提供します.

withでは,名前によってcustomオブジェクトにアクセス可能です. グローバルなcustomオブジェクトへの変更はwithで囲まれた中でのみ持続し, wuthから抜けると,グローバルなcustomオブジェクトはwithの最初の状態に戻ります.

MyObjectというcustomオブジェクトの例です.

with CustomObjectScope({'MyObject':MyObject}):
    layer = Dense(..., kernel_regularizer='MyObject')
    # save, load, etc. will recognize custom object by name

[source]

HDF5Matrix

keras.utils.io_utils.HDF5Matrix(datapath, dataset, start=0, end=None, normalizer=None)

Numpy 配列の代わりに使えるHDF5 datasetの表現です.

x_data = HDF5Matrix('input/file.hdf5', 'data')
model.predict(x_data)

startendを指定することでdatasetをスライスできます.

normalizer関数(やラムダ式)を渡せます. normalizer関数は取得されたすべてのスライスに適用されます.

引数

  • datapath: 文字列,HDF5ファイルへのパス
  • dataset: 文字列,datapathで指定されたファイル中におけるHDF5 datasetの名前
  • start: 整数,指定されたdatasetのスライスの開始インデックス
  • end: 整数,指定されたdatasetのスライスの終了インデックス
  • normalizer: 読み込まれた時にデータに対して適用する関数

戻り値

array-likeなHDF5 dataset.


[source]

Sequence

keras.utils.data_utils.Sequence()

datasetのようなデータの系列にfittingのためのベースオブジェクト.

Sequenceは__getitem____len__メソッドを実装します.

from skimage.io import imread
from skimage.transform import resize
import numpy as np

__Here, `x_set` is list of path to the images__

# and `y_set` are the associated classes.

class CIFAR10Sequence(Sequence):
    def __init__(self, x_set, y_set, batch_size):
        self.X,self.y = x_set,y_set
        self.batch_size = batch_size

    def __len__(self):
        return len(self.X) // self.batch_size

    def __getitem__(self,idx):
        batch_x = self.X[idx*self.batch_size:(idx+1)*self.batch_size]
        batch_y = self.y[idx*self.batch_size:(idx+1)*self.batch_size]

        return np.array([
            resize(imread(file_name), (200,200))
               for file_name in batch_x]), np.array(batch_y)

to_categorical

to_categorical(y, num_classes=None)

整数のクラスベクトルから2値クラスの行列への変換します.

例えば,categorical_crossentropyのために使います.

引数

  • y: 行列に変換されるクラスベクトル(0からnum_classesまでの整数)
  • num_classes: 総クラス数

戻り値

入力のバイナリ行列表現


normalize

normalize(x, axis=-1, order=2)

Numpy配列の正規化

引数

  • x: 正規化するNumpy 配列.
  • axis: 正規化する軸.
  • order: 正規化するorder(例: L2ノルムでは2).

戻り値

Numpy 配列の正規化されたコピー.


convert_all_kernels_in_model

convert_all_kernels_in_model(model)

モデル内の全convolution kernelsをTheanoからTensorFlowへ変換.

TensorFlowからTheanoへの変換も可能です.

引数

  • model: 変換対象となるモデル.

plot_model

plot_model(model, to_file='model.png', show_shapes=False, show_layer_names=True, rankdir='TB')

Kerasモデルをdotフォーマットに変換しファイルに保存します.

引数

  • model: Kerasのモデルインスタンス
  • to_file: 保存するファイル名
  • show_shapes: shapeの情報を表示するかどうか
  • show_layer_names: レイヤー名を表示するかどうか
  • rankdir: PyDotに渡すrankdir引数,プロットのフォーマットを指定する文字列:'TB' はvertical plot,'LR'はhorizontal plot.

custom_object_scope

custom_object_scope()

_GLOBAL_CUSTOM_OBJECTSをエスケープできないスコープを提供します.

withでは,名前によってcustomオブジェクトにアクセス可能です. グローバルなcustomオブジェクトへの変更はwithで囲まれた中でのみ持続し, wuthから抜けると,グローバルなcustomオブジェクトはwithの最初の状態に戻ります.

MyObjectというcustomオブジェクトの例です.

with custom_object_scope({'MyObject':MyObject}):
    layer = Dense(..., kernel_regularizer='MyObject')
    # save, load, etc. will recognize custom object by name

引数

  • *args: customオブジェクトに追加する名前とクラスのペアを格納した辞書の可変長リスト.

戻り値

CustomObjectScope型のオブジェクト.


get_custom_objects

get_custom_objects()

customオブジェクトのグローバル辞書への参照を返します.

custumオブジェクトの更新や削除はcustom_object_scopeの使用が好まれますが, _GLOBAL_CUSTOM_OBJECTSへの直接的なアクセスにget_custom_objectsも利用可能です.

get_custom_objects().clear()
get_custom_objects()['MyObject'] = MyObject

戻り値

クラス名へのグローバルな辞書 (_GLOBAL_CUSTOM_OBJECTS) .


serialize_keras_object

serialize_keras_object(instance)

deserialize_keras_object

deserialize_keras_object(identifier, module_objects=None, custom_objects=None, printable_module_name='object')

get_file

get_file(fname, origin, untar=False, md5_hash=None, cache_subdir='datasets', file_hash=None, hash_algorithm='auto', extract=False, archive_format='auto', cache_dir=None)

既にキャッシュされていないならURLからファイルをダウンロードします.

デフォルトでは,originalのURLからダウンロードされたファイルは, キャシュディレクトリ~/.keras下の,そのサブディレクトリdatasets下の,fnameで保存します. したがって最終的なexample.txtの保存位置は,~/.keras/datasets/example.txtです.

tar,tar.gz,tar.bz,zipファイルは展開可能です.ダウンロード後にファイルのハッシュ値を渡すことでハッシュ値を検証します. ハッシュ計算はshasumとsha256sumのコマンドラインプログラムです.

引数

  • fname: ファイル名.もし絶対パス/path/to/file.txtが指定されたファイルは,その位置に保存します.
  • origin: ファイルの置かれているURL.
  • untar: 'extract'により非推奨.真理値,ファイルを展開するかどうか.
  • md5_hash: 'file_hash'により非推奨.ファイル検証に使うmd5ハッシュ.
  • file_hash: ダウンロード後のハッシュ文字列.sha256とmd5をサポート.
  • cache_subdir: ファイルを保存するKerasのキャシュディレクトリ下のサブディレクトリ.絶対パス/path/to/folderが指定された場合は,そこに保存します.
  • hash_algorithm: ファイル検証のためのハッシュアルゴリズムの選択.'md5'か'sha256'か'auto'.デフォルトの'auto'は使用されているアルゴリズムを検出します.
  • extract: Trueならtarやzipのようなアーカイブファイルを展開します.
  • archive_format: 展開するアーカイブフォーマット.オプションは,'auto','tar','zip',None.'tar'はtar,tar.gz,tar.bzファイルを含みます.デフォルト値の'auto'は['tar', 'zip']です.Noneか空リストでは何も該当しません.
  • cache_dir: キャシュファイルの保存位置,NoneではKeras Directoryのデフォルト.

戻り値

ダウンロードされたファイルへのパス.