Skip to content

Entity लिंकिंग

Entity linking को कैसे एनोटेट करें, यानी पाठ में आए उल्लेख को Wikidata जैसे नॉलेज बेस की प्रविष्टि से जोड़ना, और Potato में linking कार्य कैसे सेट करें।

Entity linking पाठ में आए किसी उल्लेख को नॉलेज बेस की एक ख़ास प्रविष्टि से जोड़ता है, जैसे “Paris” को उस व्यक्ति के बजाय फ़्रांस के शहर से, या टेक्सस वाले शहर से। Named entity recognition यह पता लगाता है कि कोई चीज़ entity है या नहीं, जबकि entity linking तय करता है कि वह असल दुनिया की कौन-सी entity है।

पृष्ठभूमि के लिए Entity linking और आम लक्ष्य WikidataWikipedia देखें। इसका word-sense disambiguation से नज़दीकी रिश्ता है।

एनोटेटर क्या करते हैं

  1. उल्लेख का span पहचाना जाता है (अक्सर किसी NER पास से पहले ही चिह्नित)।
  2. एनोटेटर नॉलेज बेस में खोजकर मेल खाती प्रविष्टि चुनता है।
  3. अगर कोई प्रविष्टि फ़िट नहीं बैठती, तो वह उसे NIL चिह्नित करता है (नॉलेज बेस में नहीं है)।

NIL वाला विकल्प ज़रूरी है, इसके बिना एनोटेटर उल्लेखों को ज़बरदस्ती ग़लत प्रविष्टियों से जोड़ते हैं और डेटा ख़राब कर देते हैं।

Potato में इसे सेट करना

Potato किसी नॉलेज बेस (Wikidata, UMLS, या अपनी बनाई सूची) पर typeahead खोज के साथ entity linking का समर्थन करता है, ताकि एनोटेटर ID टाइप करने के बजाय असल उम्मीदवारों में से चुनें। Entity linking showcase एक चलता-फिरता उदाहरण है।

yaml
annotation_schemes:
  - annotation_type: span
    name: mentions
    description: "Mark the mention to link."
    labels: [Entity]
  - annotation_type: text
    name: kb_id
    description: "Search the knowledge base and enter the matching ID, or write NIL if none fits."

गुणवत्ता से जुड़ी बातें

  • उम्मीदवारों की गुणवत्ता। विवरण सहित एक अच्छा typeahead ग़लत चुनाव को लंबे दिशानिर्देशों से कहीं ज़्यादा घटाता है।
  • अस्पष्टता के लिए डिफ़ॉल्ट। एनोटेटर को बताएँ कि जब दो प्रविष्टियाँ बराबर सही लगें तो क्या करना है।
  • कितनी बारीकी। कंपनी से जोड़ना है या सहायक कंपनी से? फ़िल्म से या पूरी शृंखला से? यह एक बार तय कर लें।

आगे पढ़ें