टेक्स्ट क्लासिफिकेशन के लिए ट्रांसफर लर्निंग

PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

Shubham Jain

Instructor

ट्रांसफर लर्निंग क्या है?

 

ट्रांसफर लर्निंग

  • एक टास्क का सीखा ज्ञान संबंधित टास्क पर लागू करें

 

  • समय बचता है
  • विशेषज्ञता साझा करें
  • बड़े डेटा की जरूरत घटती है

 

  • एक English टीचर History पढ़ाना शुरू करता है
PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

ट्रांसफर लर्निंग की कार्यप्रणाली

ट्रांसफर लर्निंग I

PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

ट्रांसफर लर्निंग की कार्यप्रणाली

ट्रांसफर लर्निंग II

PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

ट्रांसफर लर्निंग की कार्यप्रणाली

트्रांसफर लर्निंग II

PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

ट्रांसफर लर्निंग की कार्यप्रणाली

ट्रांसफर लर्निंग III

PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

प्री-ट्रेंड मॉडल: BERT

  • Bidirectional Encoder Representations from Transformers

BERT Sentiment Analysis

  • language modeling के लिए प्रशिक्षित
  • कई transformer लेयर्स
  • बड़े टेक्स्ट पर प्री-ट्रेंड
PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

हैंड्स-ऑन: BERT लागू करना

texts = ["I love this!", 
         "This is terrible.", 
         "Amazing experience!", 
         "Not my cup of tea."]
labels = [1, 0, 1, 0]

import torch from transformers import BertTokenizer, BertForSequenceClassification
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased') model = BertForSequenceClassification.from_pretrained('bert-base-uncased', num_labels=2)
inputs = tokenizer(texts, padding=True, truncation=True, return_tensors="pt", max_length=32) inputs["labels"] = torch.tensor(labels)
PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

BERT का फाइन-ट्यूनिंग

optimizer = torch.optim.AdamW(model.parameters(), lr=0.00001)
model.train()

for epoch in range(1): outputs = model(**inputs)
loss = outputs.loss loss.backward()
optimizer.step() optimizer.zero_grad()
print(f"Epoch: {epoch+1}, Loss: {loss.item()}")
Epoch: 1, Loss: 0.7061821222305298
PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

नए टेक्स्ट पर मूल्यांकन

text = "I had an awesome day!"
input_eval = tokenizer(text, return_tensors="pt", truncation=True, 
                       padding=True, max_length=128)

outputs_eval = model(**input_eval)
predictions = torch.nn.functional.softmax(outputs_eval.logits, dim=-1)
predicted_label = 'positive' if torch.argmax(predictions) > 0 else 'negative' print(f"Text: {text}\nSentiment: {predicted_label}")
Text: I had an awesome day!
Sentiment: positive
PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

अभ्यास करते हैं!

PyTorch के साथ टेक्स्ट के लिए डीप लर्निंग

Preparing Video For Download...