क्लासिफिकेशन टास्क के लिए एम्बेडिंग्स

OpenAI API के साथ Embeddings परिचय

Emmanuel Pire

Senior Software Engineer, DataCamp

क्लासिफिकेशन टास्क

 

आइटम्स को लेबल असाइन करना

  • कैटेगराइज़ेशन
    • उदाहरण: हेडलाइंस को टॉपिक्स में
  • सेंटिमेंट एनालिसिस

 

टॉपिक्स की एक टेबल जिसे हम आर्टिकल्स को कैटेगराइज़ करने में प्रयोग कर सकते हैं.

OpenAI API के साथ Embeddings परिचय

क्लासिफिकेशन टास्क

 

आइटम्स को लेबल असाइन करना

  • कैटेगराइज़ेशन
    • उदाहरण: हेडलाइंस को टॉपिक्स में
  • सेंटिमेंट एनालिसिस
    • उदाहरण: रिव्यूज़ को पॉज़िटिव या नेगेटिव क्लासिफ़ाई करना

 

एंबेडिंग्स सैमेंटिक मीनिंग कैप्चर करती हैं

 

एक टेबल जिसमें स्माइली और सैड फेस हैं, जिनका उपयोग सेंटिमेंट के आधार पर कैटेगराइज़ करने में हो सकता है.

OpenAI API के साथ Embeddings परिचय

एंबेडिंग्स के साथ क्लासिफिकेशन

  • ज़ीरो-शॉट क्लासिफिकेशन:
    • लेबल्ड डेटा का उपयोग नहीं

 

प्रोसेस:

  1. क्लास डिस्क्रिप्शंस को एंबेड करें

वेक्टर स्पेस में एंबेडेड क्लास डिस्क्रिप्शंस.

OpenAI API के साथ Embeddings परिचय

एंबेडिंग्स के साथ क्लासिफिकेशन

  • ज़ीरो-शॉट क्लासिफिकेशन:
    • लेबल्ड डेटा का उपयोग नहीं

 

प्रोसेस:

  1. क्लास डिस्क्रिप्शंस को एंबेड करें
  2. जिस आइटम को क्लासिफाई करना है, उसे एंबेड करें
  3. कॉसाइन डिस्टेंसेज़ कंप्यूट करें

वेक्टर स्पेस में एंबेडेड क्लास डिस्क्रिप्शंस, साथ में एक अननोन वेक्टर दिखाया गया है.

OpenAI API के साथ Embeddings परिचय

एंबेडिंग्स के साथ क्लासिफिकेशन

  • ज़ीरो-शॉट क्लासिफिकेशन:
    • लेबल्ड डेटा का उपयोग नहीं

 

प्रोसेस:

  1. क्लास डिस्क्रिप्शंस को एंबेड करें
  2. जिस आइटम को क्लासिफाई करना है, उसे एंबेड करें
  3. कॉसाइन डिस्टेंसेज़ कंप्यूट करें
  4. सबसे मिलते-जुलते लेबल असाइन करें

वेक्टर स्पेस में एंबेडेड क्लास डिस्क्रिप्शंस, जिसमें अननोन वेक्टर को Tech लेबल दिया गया है.

OpenAI API के साथ Embeddings परिचय

क्लास डिस्क्रिप्शंस को एंबेड करना

topics = [
  {'label': 'Tech'},
  {'label': 'Science'},
  {'label': 'Sport'},
  {'label': 'Business'},
]

class_descriptions = [topic['label'] for topic in topics]
class_embeddings = create_embeddings(class_descriptions)
OpenAI API के साथ Embeddings परिचय

क्लासिफाई करने वाले आइटम को एंबेड करना

article = {"headline": "How NVIDIA GPUs Could Decide Who Wins the AI Race",
           "keywords": ["ai", "business", "computers"]}

def create_article_text(article): return f"""Headline: {article['headline']} Keywords: {', '.join(article['keywords'])}""" article_text = create_article_text(article)
article_embeddings = create_embeddings(article_text)[0]
OpenAI API के साथ Embeddings परिचय

कॉसाइन डिस्टेंसेज़ कंप्यूट करें

def find_closest(query_vector, embeddings):
  distances = []
  for index, embedding in enumerate(embeddings):
    dist = distance.cosine(query_vector, embedding)
    distances.append({"distance": dist, "index": index})
  return min(distances, key=lambda x: x["distance"])

closest = find_closest(article_embeddings, class_embeddings)
OpenAI API के साथ Embeddings परिचय

सबसे मिलते-जुलते लेबल को एक्सट्रैक्ट करें

label = topics[closest['index']]['label']

print(label)
Business
article = {"headline": "How NVIDIA GPUs Could Decide Who Wins the AI Race",
           "keywords": ["ai", "business", "computers"]}

सीमितता:

  • क्लास डिस्क्रिप्शंस में पर्याप्त डिटेल नहीं थी
OpenAI API के साथ Embeddings परिचय

ज़्यादा विस्तृत डिस्क्रिप्शंस

topics = [
  {'label': 'Tech', 'description': 'A news article about technology'},
  {'label': 'Science', 'description': 'A news article about science'},
  {'label': 'Sport', 'description': 'A news article about sports'},
  {'label': 'Business', 'description': 'A news article about business'},
]

class_descriptions = [topic['description'] for topic in topics] class_embeddings = create_embeddings(class_descriptions)
[...] label = topics[closest['index']]['label'] print(label)
Tech
OpenAI API के साथ Embeddings परिचय

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

OpenAI API के साथ Embeddings परिचय

Preparing Video For Download...