创建训练时显示的数据集时出错?

Posted

技术标签:

【中文标题】创建训练时显示的数据集时出错?【英文标题】:Error creating a dataset that shows while training? 【发布时间】:2022-01-21 23:47:36 【问题描述】:

我正在对 HAM10000 数据集进行二进制分类。 这是我使用的代码:

X = np.asarray(skin_df1['image'].tolist())
X = X/255. 
Y=skin_df1['label'] 
Y_cat = to_categorical(Y, num_classes=2) 

X_train, X_test, y_train, y_test = train_test_split(X, Y_cat, test_size=0.2, random_state=42)

X_train, X_val, y_train, y_val = train_test_split(X_train, y_train, test_size=0.25, random_state=42)

class HAM10000(Dataset):
def __init__(self, df, transform=None):
    self.df = df
    self.transform = transform

def __len__(self):
    return len(self.df)

def __getitem__(self, index):
     # Load data and get label
    X = Image.open(self.df['path'][index])
    y = torch.tensor(int(self.df['label'][index]))

    if self.transform:
        X = self.transform(X)


  return X, y

这本身没有错误,但随后我开始创建模型并开始训练循环:

for i in range(epochs):

trn_corr = 0
tst_corr = 0
val_corr = 0 

for b, (X_train, y_train) in enumerate(train_loader):
    
    #optional
    if b == max_trn_batch:
        break
    
    b+=1
    

它给出的错误是:

only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices

【问题讨论】:

请编辑问题以将其限制为具有足够详细信息的特定问题,以确定适当的答案。 【参考方案1】:

请分享完整的错误信息。它包括错误行。还分享一个示例输入及其大小和数据类型信息

【讨论】:

以上是关于创建训练时显示的数据集时出错?的主要内容,如果未能解决你的问题,请参考以下文章

当我开始训练数据集时弹出输入用完数据错误

Python 中的 SVM 拟合数据集时出错

UnicodeDecodeError 当我使用 cuda 训练数据集时

在 Colab 上导入 Kaggle 数据集时出错

使用 Caffe 训练数据集时多次加载 HDF5 文件

FxCop Nant 任务错误:创建文件集时出错