प्रारंभिक कीवर्ड के आधार पर संबंधित शब्दों की सूची कैसे विकसित करें?


19

मैंने हाल ही में एक शांत सुविधा देखी थी जो Google पत्रक में उपलब्ध थी: आप कुछ संबंधित खोजशब्दों को लगातार कोशिकाओं में लिखकर शुरू करते हैं, कहते हैं: "ब्लू", "ग्रीन", "येलो", और यह स्वचालित रूप से समान कीवर्ड उत्पन्न करता है (इस मामले में) , अन्य रंग)। इस YouTube वीडियो में और उदाहरण देखें ।

मैं इसे अपने कार्यक्रम में पुन: पेश करना चाहूंगा। मैं Freebase का उपयोग करने के बारे में सोच रहा हूं, और यह इस तरह से काम करेगा:

  1. फ्रीबेस में दिए गए शब्दों की सूची को पुनः प्राप्त करें;
  2. उनके "सामान्य भाजक (ओं)" का पता लगाएं और इसके आधार पर एक दूरी मीट्रिक का निर्माण करें;
  3. मूल कीवर्ड के लिए उनकी "दूरी" के आधार पर अन्य अवधारणाओं को रैंक करें;
  4. अगले निकटतम अवधारणाओं को प्रदर्शित करें।

जैसा कि मैं इस क्षेत्र से परिचित नहीं हूँ, मेरे प्रश्न हैं:

  • क्या ऐसा करने के लिए इससे अच्छा तरीका है?
  • प्रत्येक चरण के लिए कौन से उपकरण उपलब्ध हैं?

मेरा अनुमान है कि यह एक बड़े कोष में सीखने के विषयों पर आधारित है।
तचक्रवर्ती

यदि आप उनका स्पष्टीकरण खोजना चाहते हैं, तो मेरा मानना ​​है कि Google सेट्स नामक अंतर्निहित विधि पर एक पेपर था।
jamesmf

1
इस समस्या को "क्वेरी विस्तार" कहा जाता है।
एमरे

जवाबों:


15

Word2vec एल्गोरिथ्म समान शब्दों की एक सूची के लिए अधिक तत्वों को पुनः प्राप्त करने का एक अच्छा तरीका हो सकता है। यह एक अनसुलझी "गहरी सीख" एल्गोरिथ्म है जिसे पहले विकिपीडिया-आधारित प्रशिक्षण डेटा (Google कोड पृष्ठ पर सहायक स्क्रिप्ट प्रदान किया गया है) के साथ प्रदर्शित किया गया है।

वर्तमान में सी और पायथन कार्यान्वयन हैं। इस ट्यूटोरियल द्वारा Radim Řehůřek , के लेखक Gensim विषय मॉडलिंग पुस्तकालय , एक शानदार जगह शुरू करने के लिए है।

"एक विषय" ट्यूटोरियल पर प्रदर्शन एक भी शब्द के समान शब्द retreiving ( 'लाल' या 'पीला' पर खोज करके देखें) का एक अच्छा उदाहरण है। इस तकनीक को उन शब्दों को खोजने के लिए विस्तारित करना संभव होना चाहिए जिनके पास इनपुट शब्दों के एक सेट के लिए सबसे बड़ी समग्र समानता है।


5

क्या आपने निगम में सरल शब्द सह-घटना का फायदा उठाने के लिए आवृत्ति-आधारित दृष्टिकोण पर विचार किया है? कम से कम, यही तो मैंने देखा है कि अधिकांश लोग इसके लिए उपयोग करते हैं। मुझे लगता है कि यह मैनिंग और शुट्ज़ की पुस्तक में संक्षिप्त रूप से शामिल हो सकता है, और मुझे ऐसा कुछ याद आ रहा है, जैसे कि एक होमवर्क असाइनमेंट वापस धीरे-धीरे स्कूल में ...

यहाँ अधिक पृष्ठभूमि: http://nlp.stanford.edu/IR-book/html/htmledition/automatic-thHTML-generation-1.html

इस कदम के लिए:

मूल कीवर्ड के लिए उनकी "दूरी" के आधार पर अन्य अवधारणाओं को रैंक करें;

कई अर्थ समानता समानताएं हैं जिन पर आप गौर कर सकते हैं। यहां कुछ स्लाइड्स का लिंक दिया गया है जो मैंने वर्डनेट में इन समानता के कुछ मैट्रिक्स का उपयोग करके एक क्लास प्रोजेक्ट के लिए रखा है: http://www.eecis.udel.edu/~trnka/CISC889-11S/lectures/greenbacker-WordNet-Similarity। पीडीएफ


3

यह एक अच्छी समस्या है जहां गुंजाइश एक होमवर्क असाइनमेंट से लेकर Google आकार परियोजना तक भिन्न हो सकती है।

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

फिर आप उन संबंधों पर विचार कर सकते हैं जो आधार शब्द से कम दूरी पर दिखाई देते हैं। आप सामान्य कॉर्पस (जैसे, विकिपीडिया) और उपयोगकर्ता विशिष्ट (जैसे, उसके ईमेल) पर संबंधों के आधार पर विचार कर सकते हैं (और चाहिए)।

बहुत जल्द ही आपके पास संबंधित उपायों के बहुत सारे उपाय होंगे, जब सभी उपाय अच्छे होंगे और दूसरों पर कुछ लाभ होंगे।

इस तरह के उपायों को संयोजित करने के लिए, मुझे समस्या को एक वर्गीकरण समस्या में कम करना पसंद है।

आपको शब्दों के पेरिस के एक डेटा सेट का निर्माण करना चाहिए और उन्हें "संबंधित" होना चाहिए। आदेश में एक बड़े लेबल वाले डेटासेट बनाने के लिए:

  • सकारात्मक के लिए ज्ञात संबंधित शब्दों (जैसे, अच्छी पुरानी विकिपीडिया श्रेणियों) के स्रोतों का उपयोग करें
  • संबंधित के रूप में नहीं जाने वाले अधिकांश शब्द संबंधित नहीं हैं।

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.