私は、特定のサンプリング規則に従ってデータセットからサンプリングされた多くのトレーニング画像をネットワークに供給したいと考えています。MxNetデータイテレータでのシーケンシャル対ランダムアクセスのI/Oパフォーマンスの違いは?
.recファイルに.LSTファイルを変換し、それをアクセスするために、シーケンシャルDataIterを使用し、その後、オフラインイメージのリストを生成するためのサンプリング・ロジックを使用します。今私は2つの選択肢があります。
画像をオンラインでサンプリングできる独自の子クラスのDataIterを作成します。その結果、クラスはMXIndexedRecordIOから継承したランダムアクセスをサポートする必要があります。元のデータセットに対して.recファイルを作成する必要があります。
私の直感は、.recファイルのランダムアクセスよりもシーケンシャルアクセスが速いことを示しています。しかし、その違いが私自身のイテレータクラスを作成しテストするのに費やす時間が足りるほど大きいかどうかはわかりません。誰も私にこのことのヒントを教えてもらえますか?
あなたは、おそらくあなたは、ランダムアクセスイテレータを使用している場合は、同じデータの繰り返しを避けるために入力をシャッフルします。これを行うと、シーケンシャルアクセスが戻され、最適化のオプションが提供されます。 – Guy