Dataloader エラー メッセージ TypeError: __init__() は 1 つの位置引数を取りますが、2 つが指定されました

dataloaderを書くとき、data_transformsを自作しました

data_transforms = {
    'train': transforms.Compose([
        transforms.RandomResizedCrop(800),
        transforms.RandomHorizontalFlip(),
        transforms.RandomVerticalFlip(),
        transforms.RandomRotation(90),
        transforms.ToTensor()
    ]),
    'val': transforms.Compose([
        transforms.Resize((800, 800)),
        transforms.ToTensor()
    ]),
    'test': transforms.Compose([
        transforms.Resize((800, 800)),
        transforms.ToTensor,
        transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
    ])

テスト中に、データローダーからデータを読み取るときにエラーが報告されました: TypeError: __init__() takes 1 positional argument but 2 were given

    for data in dataloders['test']:
        # get the inputs
        inputs, labels = data

しばらく調べたところ、data_transformsのテスト部分transforms.Totensor括弧が追加されておらず、transforms.Totensor()に変更できることがわかりました。

Guess you like

Origin blog.csdn.net/weixin_50594261/article/details/128155464