当我试图运行拥抱脸的情绪分析时,我遇到了BrokenPipeError。返回[Error No] 32 Broken Pipe。有没有办法重写下一个(iter(train_data_loader))代码?
总代码为“https://colab.research.google.com/drive/1wBXKa-gkbSPPk-o7XdwixcGk7gSHRMas?usp=sharing”的链接
密码是
def create_data_loader(df, tokenizer, max_len, batch_size):
ds = GPReviewDataset(
reviews=df.content.to_numpy(),
targets=df.sentiment.to_numpy(),
tokenizer=tokenizer,
max_len=max_len
)
return DataLoader(
ds,
batch_size=batch_size,
num_workers=4
)
下面的代码
BATCH_SIZE = 16
train_data_loader = create_data_loader(df_train, tokenizer, MAX_LEN, BATCH_SIZE)
val_data_loader = create_data_loader(df_val, tokenizer, MAX_LEN, BATCH_SIZE)
test_data_loader = create_data_loader(df_test, tokenizer, MAX_LEN, BATCH_SIZE)
其次是
data = next(iter(train_data_loader))
data.keys()
我遇到了这个' data = next(iter(train_data_loader))
'代码的错误
错误为BrokenPipeError: [Errno 32] Broken pipe
1条答案
按热度按时间oknwwptz1#
这个问题的原因之一可能是操作系统。当你使用Windows时,你不应该定义
num_worker
,因为PyTorch dataloader不支持Windows上的多处理。默认情况下,num_workers
是0
,适用于Windows。