प्रशिक्षण के लिए पाठ का पूर्व-प्रसंस्करण

PyTorch के साथ कुशल AI मॉडल प्रशिक्षण

Dennis Lee

Data Engineer, Amazon

टेक्स्ट रूपांतरण: मॉडल में महारत हेतु डेटा तैयार करना

  • दस्तावेज़ों का सारांश बनाएं
  • पैराफ़्रेज़ पहचान
  • MRPC डेटासेट: वाक्य युग्म और लेबल

समीक्षा के लिए तैयार दस्तावेज़ों का ऊँचा ढेर।

PyTorch के साथ कुशल AI मॉडल प्रशिक्षण

डेटासेट संरचना

from datasets import load_dataset
dataset = load_dataset("glue", "mrpc")
print(dataset)
DatasetDict({
    train: Dataset({
        features: ['sentence1', 'sentence2', 'label', 'idx'],
    })
    validation: Dataset({
        features: ['sentence1', 'sentence2', 'label', 'idx'],
    })
    test: Dataset({
        features: ['sentence1', 'sentence2', 'label', 'idx'],
    })
})
PyTorch के साथ कुशल AI मॉडल प्रशिक्षण

टेक्स्ट डेटासेट को संशोधित करना

  • ट्रेन/वैलिडेशन/टेस्ट स्प्लिट्स की नेस्टेड डिक्शनरी
  • ट्रेन स्प्लिट एक्सेस करने का उदाहरण:
dataset["train"]
  • स्प्लिट के भीतर डेटासेट-विशिष्ट फीचर्स तक पहुँचें
  • MRPC फीचर्स: sentence1, sentence2, label
dataset["train"]["sentence1"]
  • प्री-ट्रेंड टोकनाइज़र लोड करें
tokenizer = AutoTokenizer.from_pretrained("distilbert-base-cased")
PyTorch के साथ कुशल AI मॉडल प्रशिक्षण

एन्कोडिंग फ़ंक्शन परिभाषित करें

  • डेटासेट उदाहरणों को एन्कोड करने के लिए फ़ंक्शन परिभाषित करें
  • टोकनाइज़र कॉल करें; प्रशिक्षण उदाहरण से sentence1 और sentence2 निकालें
  • truncation: अधिकतम लंबाई (512 टोकन) से बड़े इनपुट ट्रंकेट करें
  • padding: छोटी सीक्वेंस को शून्य से पैड करें ताकि सभी इनपुट समान लंबाई के हों
def encode(example):

return tokenizer( example["sentence1"], example["sentence2"],
truncation=True,
padding="max_length", )
PyTorch के साथ कुशल AI मॉडल प्रशिक्षण

कॉलम नाम फ़ॉर्मैट करें

  • map से ट्रेन स्प्लिट के हर उदाहरण पर encode लागू करें
train_dataset = dataset["train"].map(encode, batched=True)
  • label का नाम बदलकर labels रखें
train_dataset = train_dataset.map(
    lambda examples: {"labels": examples["label"]}, batched=True
)
  • कॉलम आवश्यकताएँ Hugging Face दस्तावेज़ में देखें
PyTorch के साथ कुशल AI मॉडल प्रशिक्षण

चेकपॉइंट सहेजना और लोड करना

  • उपलब्ध GPUs पर डेटासेट रखें
dataloader = DataLoader(train_dataset, batch_size=32, shuffle=True)
dataloader = accelerator.prepare(dataloader)
  • किसी भी PyTorch डेटासेट (torch.utils.data.Dataset) के साथ DataLoader में काम करता है
  • पूर्व-प्रसंस्कृत पाठ की स्थिति सहेजें (चेकपॉइंट)
checkpoint_dir = Path("preprocess_checkpoint")
accelerator.save_state(checkpoint_dir)
  • प्रशिक्षण पुनः शुरू करने पर चेकपॉइंट लोड करें
accelerator.load_state(checkpoint_dir)
PyTorch के साथ कुशल AI मॉडल प्रशिक्षण

Vamos praticar!

PyTorch के साथ कुशल AI मॉडल प्रशिक्षण

Preparing Video For Download...