torch.utils.data.DataLoader
DataLoader(dataset, batch_size=1, shuffle=False, sampler=None,
batch_sampler=None, num_workers=0, collate_fn=None,
pin_memory=False, drop_last=False, timeout=0,
worker_init_fn=None)
リンク公式文書
、インターフェースのデータPyTorch目的読み込むための重要なインタフェースです:データセットのサイズに合わせてカスタマイズされたバッチサイズは、シャッフルなどの場合はバッチサイズは、その後の訓練のために、テンソルの大きさにカプセル化されました。
データローダ全てのパラメータは、上記の順番に各パラメータの以下の説明を示し
データセットの種類
ロード・データへのデータセットオブジェクトを表す最も重要なパラメータのデータローダーのコンストラクタデータセット、そこから。PyTorchは、データセットの二つの異なるタイプをサポートしています。
- マップ形式のデータセット
のデータセットのこの種のは、実装され得る__getitem__() and __len__()
方法を、データサンプルのインデックス/キーからのマッピングとして表さ。例えば、データセット[IDX】アクセスそのようなデータセットはIDX番目の画像とディスククランプ上のファイルから対応するタグを読み取ることができます。 - 反復可能スタイルデータセット。
このようなデータセットはIterableDatasetサブクラスのインスタンスであり、実装することができる__iter__()
方法、データサンプルの反復を表します。そのような特別な場合のためのデータ収集のこのタイプは、すなわち、ランダムアクセスは、バッチサイズと取得したデータに応じて、非常に高価な、あるいは不可能でさえあります。たとえば、ときiter(dataset)
、データ・ストリームは、データベースが読み込まれるから戻すことができ、かつリアルタイムに生成しても、リモートサーバーのログ。
BATCH_SIZE(のpython:int型、オプション)
どのように多くのサンプル(:1つのデフォルト値)は、各バッチ・ロード用。
シャッフル(ブール値、オプション)
trueに設定されているので、各エポック改造データ(デフォルトはFalse)という。
サンプラー(サンプラー、オプション)
データセットから抽出されたポリシーのサンプルを定義します。指定された場合、シャッフルはfalseでなければなりません。
batch_sampler(サンプラー、オプション)
サンプラーに似ていますが、インデックスの数に戻ります。そしてBATCH_SIZE、シャッフル、サンプラー、およびdrop_last。相互に排他的
num_workers(のpython:int型、オプション)
データをロードするために子プロセスの数を使用します。0は、データをメインプロセスにロードされていることを示します。(デフォルト:0)。
collate_fn(呼び出し可能、オプション)
サンプルリストは、少量のテンソルにマージされます。マップのスタイルからのデータセットを使用するときにバルクロードを使用している場合。
pin_memory(ブール値、オプション)
もしそうなら、ローダは、CUDAテンソル固定メモリにデータをコピーし、それらを返します。
drop_last(ブール値、オプション)
データセットのサイズが割り切れるバッチサイズになることができない場合は、最後の未完のバッチを削除するにはTrueに設定されています。偽およびデータセットのサイズは、バッチのサイズで割り切れることができない場合は、データの最後のバッチが小さくなります。(デフォルト:false)
タイムアウト(数値、オプション)
タイムアウトは、デフォルトは0です。セッションデータが与えられます読み取ることがないこの時間をかけて、読み取りデータのタイムアウト時間を設定するために使用されます。したがって、値が0よりも大きくなければなりません。