जनरेटिव डेटा इंटेलिजेंस

दीप ग्राफ लाइब्रेरी के साथ बड़े पैमाने पर प्रशिक्षण ज्ञान ग्राफ एम्बेडिंग

दिनांक:

हम डीप ग्राफ नॉलेज एंबेडिंग लाइब्रेरी (डीजीएल-केई) को साझा करने के लिए बेहद उत्साहित हैं, जो एक नॉलेज ग्राफ (केजी) एंबेडिंग लाइब्रेरी है जो शीर्ष पर बनी है। डीप ग्राफ लाइब्रेरी (डीजीएल)। डीजीएल ग्राफ़ पर गहन शिक्षण के लिए उपयोग में आसान, उच्च प्रदर्शन वाली, स्केलेबल पायथन लाइब्रेरी है। अब आप अरबों नोड्स और किनारों वाले बड़े केजी के लिए एम्बेडिंग बना सकते हैं प्रतिस्पर्धी तकनीकों की तुलना में दो से पांच गुना तेज.

उदाहरण के लिए, डीजीएल-केई ने एम्बेडिंग बनाई है ड्रग रिपर्पजिंग नॉलेज ग्राफ (डीआरकेजी) के शीर्ष पर यह दिखाने के लिए कि कौन सी दवाओं को सीओवीआईडी ​​​​-19 से लड़ने के लिए पुन: उपयोग किया जा सकता है। इन एम्बेडिंग का उपयोग किसी बीमारी का इलाज करने या बीमारी से जुड़े प्रोटीन से जुड़ने की दवा की क्षमता की संभावना का अनुमान लगाने के लिए किया जा सकता है।

इस पोस्ट में, हम इसका उपयोग करके नॉलेज ग्राफ एम्बेडिंग (KGE) बनाने पर ध्यान केंद्रित करते हैं केन्शो व्युत्पन्न विकिमीडिया डेटासेट (KDWD). आप समान नोड्स ढूंढने और नए संबंधों की भविष्यवाणी करने के लिए उन एम्बेडिंग का उपयोग कर सकते हैं। उदाहरण के लिए, प्राकृतिक भाषा प्रसंस्करण (एनएलपी) और सूचना पुनर्प्राप्ति उपयोग के मामलों में, आप एक नई क्वेरी को पार्स कर सकते हैं और इसे वाक्यात्मक रूप से एक में बदल सकते हैं triplet (विषय, विधेय, वस्तु)। केजी में नए ट्रिपल जोड़ने पर, आप नोड्स को वर्गीकृत करके और मौजूदा केजी एम्बेडिंग के आधार पर संबंधों का अनुमान लगाकर नोड्स और संबंधों को बढ़ा सकते हैं। उदाहरण के लिए, यह चैटबॉट एप्लिकेशन के लिए मार्गदर्शन और उद्देश्य ढूंढने में मदद करता है, और ग्राहक को सही FAQ या जानकारी प्रदान करता है।

ज्ञान का ग्राफ

एक ज्ञान ग्राफ तथ्यों का एक संरचित प्रतिनिधित्व है, जिसमें किसी दिए गए डोमेन या एप्लिकेशन के लिए जानबूझकर बनाई गई संस्थाएं, रिश्ते और अर्थ संबंधी विवरण शामिल होते हैं। इन्हें के नाम से भी जाना जाता है विषम रेखांकन, जहां कई इकाई प्रकार और संबंध प्रकार हैं। केजी में संग्रहीत जानकारी अक्सर त्रिक में निर्दिष्ट होती है, जिसमें तीन तत्व होते हैं: सिर, संबंध, तथा पूंछ ([एच,आर,टी])। हेड और टेल के नाम से भी जाना जाता है संस्थाओं. त्रिक का मिलन भी कहा जाता है बयान.

केजी आपको अपनी जानकारी को बहुत सहज और स्पष्ट रूप से मॉडल करने की अनुमति देते हैं, जिससे आपको डेटा को आसानी से एकीकृत करने की क्षमता मिलती है। उदाहरण के लिए, आप उपयोग कर सकते हैं अमेज़न नेपच्यून सेवा मेरे एक पहचान ग्राफ बनाएं अपने ग्राहक को सशक्त बनाना 360 या अपने ग्राहक को जानें एप्लिकेशन आमतौर पर वित्तीय सेवाओं में पाया जाता है। स्वास्थ्य देखभाल और जीवन विज्ञान में, जहां डेटा आमतौर पर विरल होता है, केजी वर्गीकरण और शब्दावली का उपयोग करके विभिन्न साइलो से डेटा को एकीकृत और सुसंगत बना सकते हैं। ई-कॉमर्स और टेल्को में, केजी का उपयोग आमतौर पर प्रश्न उत्तर देने, चैटबॉट और अनुशंसा प्रणाली में किया जाता है। अपने उपयोग के मामले में अमेज़ॅन नेप्च्यून का उपयोग करने के बारे में अधिक जानकारी के लिए, यहां जाएं अमेज़ॅन नेप्च्यून होमपेज.

ज्ञान ग्राफ एम्बेडिंग

ज्ञान ग्राफ एम्बेडिंग ज्ञान ग्राफ में संस्थाओं और संबंधों का निम्न-आयामी प्रतिनिधित्व है। वे किसी दिए गए नोड के लिए अर्थ संबंधी और स्थानीय संरचना की जानकारी को सामान्यीकृत करते हैं।

कई लोकप्रिय KGE मॉडल मौजूद हैं, जैसे किन्नर, ट्रांसआर, बचाव, DistMult, जटिल, तथा घुमाएँ.

प्रत्येक मॉडल में एक अलग स्कोर फ़ंक्शन होता है जो दो संबद्ध संस्थाओं की दूरी को उनके संबंध के आधार पर मापता है। सामान्य अंतर्ज्ञान यह है कि किसी संबंध से जुड़ी इकाइयां एक-दूसरे से बंद होती हैं, जबकि जो इकाइयां जुड़ी नहीं होती हैं वे वेक्टर स्पेस में बहुत दूर होती हैं।

वर्तमान में डीजीएल-केई द्वारा समर्थित मॉडलों के लिए स्कोरिंग कार्य इस प्रकार हैं:

विकिमीडिया डेटासेट

हमारे उपयोग के मामले में, हम इसका उपयोग करते हैं केन्शो व्युत्पन्न विकिमीडिया डेटासेट (KDWD). आप नोटबुक उदाहरण और कोड यहां पा सकते हैं डीजीएल-केई गिटहब रेपो.

विकिपीडिया और विकिडेटा का संयोजन तीन डेटा परतों से बना है:

  • आधार - अंग्रेजी विकिपीडिया संग्रह शामिल है
  • मध्यम - पहचानता है कि कौन से टेक्स्ट स्पैन लिंक हैं और कॉर्पस को एनोटेट करता है
  • चोटी - विकिपीडिया लिंक को विकिडेटा केजी में आइटम से जोड़ता है

निम्नलिखित चित्र इन डेटा परतों को दर्शाता है।

KDWD में निम्नलिखित शामिल हैं:

  • 2,315,761,359 टोकन
  • 121,835,453 पृष्ठ लिंक
  • 5,343,564 विकिपीडिया पृष्ठ
  • 51,450,317 विकिडेटा आइटम
  • 141,206,854 विकिडेटा कथन

निम्नलिखित कोड इकाई.txt फ़ाइल का एक उदाहरण है:

ID	Label Description
1	Universe	totality of space and all contents
2	Earth third planet from the Sun in the Solar System
3	life matter capable of extracting energy from the environment for replication

इससे पहले कि आप अपनी एम्बेडिंग बना सकें, आपको डेटा को प्री-प्रोसेस करना होगा। डीजीएल-केई आपको दो प्रारूपों का उपयोग करके एम्बेडिंग की गणना करने की क्षमता देता है।

In कच्चे उपयोगकर्ता-परिभाषित ज्ञान ग्राफ़, आप त्रिक प्रदान करते हैं; संस्थाएँ और संबंध मनमाने तार हो सकते हैं। डाटालोडर स्वचालित रूप से आईडी मैपिंग उत्पन्न करता है।

निम्न तालिका से उपयोगकर्ता-परिभाषित ज्ञान ग्राफ़ को प्रशिक्षित करें त्रिक का एक उदाहरण दिखाता है।

ट्रेन.टीएसवी
बीजिंग is_capital_of चीन
लंडन is_capital_of UK
UK पर स्थित यूरोप
...

In उपयोगकर्ता-परिभाषित ज्ञान ग्राफ़, आप संस्थाओं और संबंधों के लिए आईडी मैपिंग भी प्रदान करते हैं (तीनों में केवल ये आईडी होनी चाहिए)। आईडी 0 से शुरू होती हैं और निरंतर होती हैं। निम्न तालिका से उपयोगकर्ता-परिभाषित ज्ञान ग्राफ़ को प्रशिक्षित करें मैपिंग और ट्रिपल फ़ाइलों का एक उदाहरण दिखाता है।

इकाइयाँ.dict संबंध.आदेश ट्रेन.टीएसवी
बीजिंग 0 0 का_पूंजी_है 0 0 2
लंदन 1 1 पर स्थित है 1 0 3
चीन 2 3 1 4
यूके 3
यूरोप 4

अधिक जानकारी के लिए देखें डीजीएल-केई कमांड लाइन्स.

हालाँकि डेटासेट KDWD शब्दकोश प्रदान करता है, हम इसे अपने उपयोग के मामले में उपयोग नहीं कर सकते क्योंकि सूचकांक 0 से शुरू नहीं होता है और सूचकांक मान निरंतर नहीं होते हैं। हम अपने डेटा को प्रीप्रोसेस करते हैं और अपनी एम्बेडिंग उत्पन्न करने के लिए कच्चे प्रारूप का उपयोग करते हैं। डेटा को मर्ज करने और साफ़ करने के बाद, हमें निम्नलिखित गुणों वाला एक KG प्राप्त होता है:

  • 39,569,815 इकाइयाँ
  • 1,213 संबंध
  • लगभग 120 मिलियन कथन

निम्नलिखित कोड त्रिक का एक उदाहरण है।

Head Relation Tail
Eiksteinen located in the administrative…	Rogaland
Trivellona marlowi instance of taxon
Acta Numerica main subject mathematical analysis
Günther Neukirchner given name Günther
Ruth Pointer given name Ruth

डीजीएल-केई में कई अलग-अलग प्रशिक्षण मोड हैं। आपके डेटासेट और प्रशिक्षण आवश्यकताओं के आधार पर सीपीयू, जीपीयू, मिक्स-सीपीयू-जीपीयू मोड और वितरित प्रशिक्षण सभी समर्थित विकल्प हैं। हमारे उपयोग के मामले में, हम अपनी एम्बेडिंग उत्पन्न करने के लिए मिक्स मोड का उपयोग करते हैं। यदि आप सभी डेटा को GPU मेमोरी में समाहित कर सकते हैं, तो GPU पसंदीदा तरीका है। क्योंकि हम एक बड़े केजी पर प्रशिक्षण ले रहे हैं, हम सीपीयू और जीपीयू-आधारित मेमोरी का एक बड़ा पूल प्राप्त करने के लिए मिक्स मोड का उपयोग करते हैं और फिर भी त्वरित प्रशिक्षण के लिए जीपीयू से लाभ उठाते हैं।

हम dgl-ke कमांड लाइन के साथ अपनी एम्बेडिंग बनाते हैं। निम्नलिखित कोड देखें:

!DGLBACKEND=pytorch dglke_train --model_name TransE_l2 --batch_size 1000 --neg_sample_size 200 --hidden_dim 400 --gamma 19.9 --lr 0.25 --max_step 24000 --log_interval 100 --batch_size_eval 16 -adv --regularization_coef 1.00E-09 --test --gpu 0 1 2 3 --mix_cpu_gpu --save_path ./wikimedia --data_path ./data/wikimedia/ --format raw_udd_hrt --data_files train.txt valid.txt test.txt --neg_sample_size_eval 10000

डीजीएल-केई तर्कों के बारे में अधिक जानकारी के लिए देखें डीजीएल-केई वेबसाइट.

हमने लगभग 40 मिनट में p1,200xl पर लगभग 120 मिलियन संस्थाओं और 3.8 संबंधों और लगभग 7 मिलियन स्टेटमेंट्स के अपने KG को प्रशिक्षित किया।

हम निम्नलिखित कोड दर्ज करके अपने मॉडल का मूल्यांकन करते हैं:

!DGLBACKEND=pytorch dglke_eval --dataset wikimedia --model_name TransE_l2 --neg_sample_size 200 --hidden_dim 400 --gamma 19.9 --batch_size_eval 16 --gpu 0 1 2 3 --model_path ./wikimedia/TransE_l2_wikimedia_0/ --data_path ./data/wikimedia/ --format raw_udd_hrt --data_files train.txt valid.txt test.txt --neg_sample_size_eval 10000 --no_eval_filter

निम्नलिखित कोड आउटपुट है:

-------------- Test result --------------
Test average MRR: 0.4159753346227368
Test average MR: 1001.1689418833716
Test average HITS@1: 0.3540242971873324
Test average HITS@3: 0.45541123141672746
Test average HITS@10: 0.5213350742247359
-----------------------------------------

डीजीएल-केई आपको [एच, आर, टी] के किसी भी संयोजन का उपयोग करके केजी डाउनस्ट्रीम कार्य करने की अनुमति देता है।

निम्नलिखित उदाहरण में, हम दो लोगों के लिए समान नोड इकाइयाँ बनाकर पाते हैं head.list निम्नलिखित प्रविष्टियों के साथ फ़ाइल करें:

head.list
Jeff Bezos
Barack Obama

डीजीएल-केई संस्थाओं और संबंधों पर ऑफ़लाइन अनुमान लगाने के लिए कार्य प्रदान करता है।

हमारी हेड.लिस्ट से समान नोड इकाइयां ढूंढने के लिए, हम निम्नलिखित कोड दर्ज करते हैं:

!DGLBACKEND=pytorch dglke_emb_sim --format 'l_*' --data_files /home/ec2-user/SageMaker/DGL-Neptune/notebooks/data/wikimedia/head.list --mfile ./data/wikimedia/entities.tsv --emb_file ./wikimedia/TransE_l2_wikimedia_1/wikimedia_TransE_l2_entity.npy --raw_data --gpu 0 --exec_mode 'batch_left' --sim_func 'cosine' --topK 5

निम्नलिखित कोड आउटपुट है:

resulst.tsv
head tail score
Jeff Bezos Jeff Bezos 1.0
Jeff Bezos Aga Khan IV 0.8602205514907837
Jeff Bezos Alisher Usmanov 0.8584005236625671
Jeff Bezos Klaus Tschira 0.8512368202209473
Jeff Bezos Bill Gates 0.8441287875175476
Barack Obama Barack Obama 1.0
Barack Obama Donald Trump 0.9529082179069519
Barack Obama George W. Bush 0.9426612854003906
Barack Obama Harry S. Truman 0.9414601922035217
Barack Obama Ronald Reagan 0.9393566250801086

दिलचस्प बात यह है कि जेफ बेजोस के समान सभी नोड्स टेक टाइकून का वर्णन करते हैं। बराक ओबामा के समान नोड्स अमेरिका के पूर्व और वर्तमान राष्ट्रपतियों को दर्शाते हैं।

निष्कर्ष

ग्राफ़ रसायन विज्ञान, जीव विज्ञान, वित्तीय सेवाओं और सामाजिक नेटवर्क जैसे कई डोमेन में पाए जा सकते हैं, और हमें संस्थाओं और संबंधों का उपयोग करके जटिल अवधारणाओं को सहजता से प्रस्तुत करने की अनुमति देते हैं। ग्राफ़ सजातीय या विषमांगी हो सकते हैं, जहाँ आपके पास कई प्रकार की इकाइयाँ और संबंध होते हैं।

नॉलेज ग्राफ एम्बेडिंग आपको किसी दिए गए नोड के लिए सिमेंटिक और स्थानीय संरचना जानकारी को एनकोड करने के लिए शक्तिशाली तरीके प्रदान करते हैं, और आप उन्हें मशीन लर्निंग और डीप लर्निंग मॉडल के लिए इनपुट के रूप में भी उपयोग कर सकते हैं। डीजीएल-केई लोकप्रिय एम्बेडिंग मॉडल का समर्थन करता है और आपको अन्य तकनीकों की तुलना में सीपीयू या जीपीयू पर दो से पांच गुना तेजी से उन एम्बेडिंग की गणना करने की अनुमति देता है।

हम यह देखने के लिए उत्साहित हैं कि आप अपने मौजूदा केजी या नई मशीन सीखने की समस्याओं पर ग्राफ़ एम्बेडिंग का उपयोग कैसे करते हैं। पुस्तकालय के बारे में अधिक जानकारी के लिए देखें डीजीएल-केई गिटहब रेपो. अपने केजी में विकिमीडिया केजी एम्बेडिंग का उपयोग करने के निर्देशों के लिए, देखें डीजीएल-केई नोटबुक उदाहरण.


लेखक के बारे में

फी गुयेन AWS में एक समाधान वास्तुकार है जो ग्राहकों को डेटा लेक, एनालिटिक्स, सिमेंटिक्स प्रौद्योगिकियों और मशीन लर्निंग पर विशेष ध्यान देने के साथ उनकी क्लाउड यात्रा में मदद करता है। अपने खाली समय में, आप उन्हें काम पर बाइक चलाते हुए, अपने बेटे की फ़ुटबॉल टीम को कोचिंग देते हुए या अपने परिवार के साथ प्रकृति की सैर का आनंद लेते हुए पा सकते हैं।

जियांग सॉन्ग एडब्ल्यूएस शंघाई एआई लैब में एप्लाइड साइंटिस्ट हैं। उन्होंने फुडन यूनिवर्सिटी से सॉफ्टवेयर इंजीनियर में स्नातक की डिग्री और ऑपरेटिंग सिस्टम और आर्किटेक्चर में पीएचडी की उपाधि प्राप्त की। उनकी शोध रुचियों में वास्तविक दुनिया के अनुप्रयोगों के लिए मशीन लर्निंग सिस्टम और ग्राफ़ न्यूरल नेटवर्क का निर्माण शामिल है।

स्रोत: https://aws.amazon.com/blogs/machine-learning/training-knowledge-graph-embeddings-at-scale-with-the-dep-graph-library/

स्पॉट_आईएमजी

नवीनतम खुफिया

स्पॉट_आईएमजी