我有一个形状为(100,400,3)的ndarray训练数据功能,因为它是100个20x20的图像,具有RGB通道和形状为(100,)的标签。我是否需要将它们组合到一个数据集中,或者如何将其传递给Pytorch dataLoader以便在以后遍历图像和标签?
到目前为止我已经尝试过的
#turn ndarray of features and labels into tensors
transform = transforms.Compose([transforms.ToPILImage(),
transforms.ToTensor()])
答案 0 :(得分:2)
您可以将数据/标签ndarrays convert移至torch.tensor
,并使用torch.utils.data.TensorDataset
创建一个遍历示例的数据集。
有了数据集后,您可以将DataLoader
包裹起来用于训练。
答案 1 :(得分:1)
正如@Shai所述,<html lang="en">
<body>
<input id="time1" value="08:30" size="5"> Time 1
<br>
<input id="time2" value="10:00" size="5"> Time 2
<br>
<button id="addTimes">Add times</button>
<br><br>Result <span id="timeSum">0</span>
<br>
</body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript">
const timeToNumber = (time) => {
const parts = time.split(':');
const part1 = parseInt(parts[0]);
let part2 = parseInt(parts[1]);
part2 = part2 / 60;
return part1 + part2;
};
$("#addTimes").on('click', function () {
const time1 = $('#time1').val();
const time2 = $('#time2').val();
const result = timeToNumber(time2) - timeToNumber(time1);
$('#timeSum').text(result);
});
</script>
</html>
要求输入为DataLoader
类或其子类。最简单的子类之一是Dataset
,您可以从ndarray对其进行转换。
TensorDataset