Dataset examples

最も基本的なdatasetの実装は、配列です。NumPy と CuPy 配列の両方ともデータセットとして利用可能です。

 

しかし、多くの場合、シンプルな配列は訓練処理を記述するのに十分ではありません。このような多くの場合をカバーするために、 Chainer は多くのデータセットのビルトイン実装を提供しています。

 

このビルトイン実装は、2つのグループに分けられます。1つは一般的なデータセットのグループ。このうちのほとんどは、何かの構造(例えばタプルやdict)をそれぞれのデータポイントに導入する他のデータセットのラッパーです。 もう1つは具体的な人気のあるデータセットのグループです。これらの具体的な例をキダウンロードされ変換されたデータセットをキャッシュするために chainer.dataset モジュールでダンロードユーティリティを使用します。

一般的なデータ・セット

一般的なデータセットは、更に4つのタイプにわけられます。

 

1つ目は、 DictDataset と TupleDatasetで、両方のデータセットが他のデータセットを結合して、何か構造を導入しています。 

 

2つ目は、 ConcatenatedDataset と SubDatasetです。 ConcatenatedDataset は、現在のデータセットの結合を表しています。また、データセットのマージや、更に大きなデータセットを作成するのに使用できます。SubDataset現在のデータセットのサブセットを表しています。.また、hold-out検証や交差検証のためのデータセットの分割に使用可能です。ランダムな分割を行うためのConvenient 関数も提供されています。

 

3つ目は TransformDatasetです。関数をもとになるデータセットからインデクスされたデータに適用することによってデータセットをラップします。 用意された挙動を変更する際に利用されます。

 

最後の1つはドメイン固有データセットのグループです。現在、ImageDataset とLabeledImageDataset が画像のデータセットとして提供されています。

DictDataset

chainer.datasets.DictDataset データセットのディクショナリのデータセット

TupleDataset

chainer.datasets.TupleDataset データセットのタプルのデータセット

ConcatenatedDataset

class class chainer.datasets.ConcatenatedDataset(*datasets)[source]

複数のデータセットを結合するデータセット。

 

このデータセットは、ベースとなるデータセットをラップし、結合されたデータセットとして機能する。たとえば、10サンプルのベースとなるデータセットと、他の20サンプルからなるデータセットが与えられた場合、このデータセットは30サンプル数のデータセットとして機能する。

Parameters: datasets – もとになるデータセット群。それぞれのデータセットは __len__() と__getitem__()をサポートしなければならない。

SubDataset

chainer.datasets.SubDataset 基底データセットのサブセット
chainer.datasets.split_dataset データセットを2つのサブセットに分割する
chainer.datasets.split_dataset_random データセットをランダムに2つのサブセットに分割する
chainer.datasets.get_cross_validation_datasets

交差検証のために訓練とテスト用に分割したデータセットを作成する

chainer.datasets.get_cross_validation_datasets_random 交差検証のために、訓練とテスト用にランダムに分割したデータセットを作成する

TransformDataset

chainer.datasets.TransformDataset

Dataset that indexes the base dataset and transforms the data.

基底データセットをインデックスして、データを変換するデータセット

ImageDataset

chainer.datasets.ImageDataset

画像ファイルのパスのリストから画像データせっとを構築する

LabeledImageDataset

chainer.datasets.LabeledImageDataset

パスとラベルのリストから画像とラベルがペアになったデータセットを構築する

Concrete datasets

chainer.datasets.get_mnist  MNIST のデータセットを取得する
chainer.datasets.get_cifar10 CIFAR-10 のデータセットを取得する
chainer.datasets.get_cifar100  CIFAR-100 のデータセットを取得する
chainer.datasets.get_ptb_words Penn Tree Bank のデータセットを 長い単語列として取得する
chainer.datasets.get_ptb_words_vocabulary  Penn Tree Bank word vocabularyを