My bad, I have fixed my response below.

Sure, here is an example of a dataloader for the BRUSH dataset provided:
```python
import os
import pickle
from torch.utils.data import Dataset, DataLoader

class BRUSHDataset(Dataset):
     def __init__(self, root_dir):
        self.root_dir = root_dir
        self.data = []
    
        for writer_id in os.listdir(self.root_dir):
            if os.path.isdir(os.path.join(self.root_dir, writer_id)):
                for drawing_id in os.listdir(os.path.join(self.root_dir, writer_id)):
                    with open(os.path.join(self.root_dir, writer_id, drawing_id), 'rb') as f:
                        sentence, drawing, label = pickle.load(f)
                        self.data.append((sentence, drawing, label))
                    
    def __len__(self):
        return len(self.data)

    def __getitem__(self, idx):
        sentence, drawing, label = self.data[idx]
        return sentence, drawing, label

# Usage example
dataset = BRUSHDataset("data/BRUSH")
dataloader = DataLoader(dataset, batch_size=32, shuffle=True)

for sentences, drawings, labels in dataloader:
    # do something with the batch of data
```
This code defines a BRUSHDataset class that inherits from PyTorch's Dataset class. The init method loads all the data from the specified root_dir directory and stores it in a list. The len method returns the length of the data list, and the getitem method returns a single example from the dataset.

To use this dataset with PyTorch's DataLoader class, you simply need to create an instance of the BRUSHDataset class and pass it to the DataLoader constructor, along with the desired batch size and other parameters. You can then iterate over the DataLoader to get batches of data.
แย่เลย ฉันได้แก้ไขคำตอบของฉันด้านล่างแล้ว แน่นอนว่า นี่คือตัวอย่างของตัวโหลดข้อมูลสำหรับชุดข้อมูล BRUSH ที่ให้มา: ```python import os import Pickle from torch.utils.data import Dataset, DataLoader class BRUSHDataset(Dataset): def __init__(self, root_dir): self.root_dir = root_dir self.data = [] สำหรับwriter_idใน os.listdir(self.root_dir): ถ้า os.path.isdir(os.path.join(self.root_dir,writer_id)): สำหรับ drawing_id ใน os.listdir(os. path.join(self.root_dir,writer_id)): ด้วย open(os.path.join(self.root_dir,writer_id, drawing_id), 'rb') as f: ประโยค, การวาดภาพ, label = pickle.load(f) self .data.append((ประโยค, ภาพวาด, ป้ายกำกับ)) def __len__(self): return len(self.data) def __getitem__(self, idx): ประโยค, การวาดภาพ, label = self.data[idx] คืนประโยค, การวาดภาพ , label # ตัวอย่างการใช้งาน dataset = BRUSHDataset("data/BRUSH") dataloader = DataLoader(dataset, batch_size=32, shuffle=True) สำหรับประโยค ภาพวาด ป้ายกำกับใน dataloader: # ทำอะไรบางอย่างกับชุดข้อมูล ``` นี่ รหัสกำหนดคลาส BRUSHDataset ที่สืบทอดมาจากคลาส Dataset ของ PyTorch เมธอด init จะโหลดข้อมูลทั้งหมดจากไดเร็กทอรี root_dir ที่ระบุและจัดเก็บไว้ในรายการ วิธี len ส่งกลับความยาวของรายการข้อมูล และวิธี getitem ส่งกลับตัวอย่างเดียวจากชุดข้อมูล หากต้องการใช้ชุดข้อมูลนี้กับคลาส DataLoader ของ PyTorch คุณเพียงแค่ต้องสร้างอินสแตนซ์ของคลาส BRUSHDataset แล้วส่งต่อไปยังตัวสร้าง DataLoader พร้อมด้วยขนาดแบตช์ที่ต้องการและพารามิเตอร์อื่นๆ จากนั้นคุณสามารถวนซ้ำ DataLoader เพื่อรับชุดข้อมูลได้
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence