데이터 세트 '.t7'은 레이블이있는 Tensors의 테이블입니다. 예를 들어 다음 루아 코드 :
if (not paths.filep("cifar10torchsmall.zip")) then
os.execute('wget -c https://s3.amazonaws.com/torch7/data/cifar10torchsmall.zip')
os.execute('unzip cifar10torchsmall.zip')
end
Readed_t7 = torch.load('cifar10-train.t7')
print(Readed_t7)
가 itorch을 반환합니다 : 파일을 의미
는
{
data : ByteTensor - size: 10000x3x32x32
label : ByteTensor - size: 10000
}
"라벨"이라는 두 ByteTensor 하나의 표시 "데이터"와 다른 하나의 테이블을 포함 .
질문에 대답하려면 먼저 이미지 (예 : torchx : https://github.com/nicholas-leonard/torchx/blob/master/README.md)를 읽고 레이블의 텐서가있는 테이블에 넣어야합니다. 다음 코드는 당신을 돕기위한 초안입니다. 두 개의 클래스가 있고 모든 이미지가 같은 폴더에 있고 해당 클래스를 통해 정렬 된 경우를 고려합니다.
require 'torchx';
--Read all your dataset (the chosen extension is png)
files = paths.indexdir("/Path/to/your/images/", 'png', true)
data1 = {}
for i=1,files:size() do
local img1 = image.load(files:filename(i),3)
table.insert(data1, img1)
end
--Create the table of label according to
label1 = {}
for i=1, #data1 do
if i <= number_of_images_of_the_first_class then
label1[i] = 1
else
label1[i] = 2
end
end
--Reshape the tables to Tensors
label = torch.Tensor(label1)
data = torch.Tensor(#data1,3,16,16)
for i=1, #data1 do
data[i] = data1[i]
end
--Create the table to save
Data_to_Write = { data = data, label = label }
--Save the table in the /tmp
torch.save("/tmp/Saved_Data.t7", Data_to_Write)
덜 위험한 코드를 만들 수 있지만이 단계는 모든 단계를 자세히 설명하고 토치 7과 Jupyter 5.0.0에서 작동합니다.
희망이 있습니다.
안부
나는 데이터를 받아 어떤 형식 토치 확실하지 않다, 그러나'.7z' 확장 (http://www.7-zip.org/) 7-ZIP으로 압축 된 파일에 해당 . 사람들이이 형식의 데이터를 제공하면 사용하기 전에 압축을 풀어야합니다. 즉, 토치가 .7z 파일을 가져간다는 것은 의심의 여지가 없습니다. – RPM
@RPM 네 말이 맞아. 내 실수 야. 이것은 7z가 아니라 t7입니다. 감사! –