Torch 7 โหลดชุดข้อมูลขนาดใหญ่มากที่ไม่พอดีกับหน่วยความจำได้อย่างไร

ฉันมีชุดข้อมูลขนาดใหญ่มากซึ่งฉันต้องการโหลดลงใน Torch แต่ฉันไม่สามารถโหลดพวกมันลงในหน่วยความจำได้เต็มที่ก่อนที่จะรันอัลกอริธึมการเรียนรู้

ฉันควรทำอย่างไรเพื่อเพิ่มประสิทธิภาพสูงสุด?


person user2173168    schedule 05.10.2015    source แหล่งที่มา
comment
เป็นไปได้ไหมที่คุณจะทำงานกับชุดย่อยของชุดข้อมูลดั้งเดิมของคุณ   -  person Tim Biegeleisen    schedule 05.10.2015
comment
ใช่ แต่จะช้าเกินไปหรือเปล่า? ทุกครั้งสำหรับมินิแบทช์ จะต้องรอ I/O ที่ช้า บัฟเฟอร์จะช่วยได้หรือไม่?   -  person user2173168    schedule 05.10.2015
comment
ฉันไม่คุ้นเคยกับคบเพลิงมากนัก เครื่องมือเช่น R และ MATLAB ทำงานในหน่วยความจำ จึงมีบทลงโทษในการอ่านชุดข้อมูล แต่หลังจากนี้ ก็จะเป็นไปอย่างราบรื่น   -  person Tim Biegeleisen    schedule 05.10.2015
comment
จบมาทำอะไร?   -  person Morteza Shahriari Nia    schedule 13.05.2017


คำตอบ (1)


ดูโค้ดตัวอย่างแบบเต็มสแต็กของ imagenet-multiGPU.torch ประกอบด้วยตัวโหลดข้อมูล (dataset.lua) ที่สามารถสุ่มตัวอย่างภาพเป็นชุดในแต่ละครั้ง ซึ่งป้องกันไม่ให้โหลดทุกอย่างในหน่วยความจำล่วงหน้า:

local inputs, labels = trainLoader:sample(opt.batchSize)

(ดูรายละเอียดเพิ่มเติมที่ train.lua)

person deltheil    schedule 05.10.2015