लघु पाठ क्लस्टरिंग के लिए एक अच्छी विधि क्या है?


15

मैं एक पाठ क्लस्टरिंग समस्या पर काम कर रहा हूं। डेटा में कई वाक्य हैं। क्या एक अच्छा एल्गोरिथ्म है जो छोटे पाठ पर उच्च सटीकता तक पहुंचता है?

क्या आप अच्छे संदर्भ प्रदान कर सकते हैं?

केमियंस, वर्णक्रमीय क्लस्टरिंग जैसे एल्गोरिदम इस समस्या के लिए अच्छी तरह से काम नहीं करते हैं।

जवाबों:


10

यह ज्यादातर इस बात पर निर्भर करता है कि आप कितना "अत्याधुनिक" (एसओटीए) चाहते हैं कि आप कितनी गहराई तक जाना चाहते हैं (सजा का इरादा ...)।

यदि आप केवल उथले शब्द एम्बेडिंग के साथ रह सकते हैं जैसा कि word2vec, Glove, या fastText द्वारा प्रदान किया गया है, तो मुझे लगता है कि वर्ड मूवर डिस्टेंस (WMD [हाँ, वास्तव में ...]) मापने के लिए एक अच्छा कार्य है (छोटी) दस्तावेज़ दूरियां [1] । मैंने अतीत में कई पायथन नोटबुक भी देखे हैं जो इस दूरी को मापने के लिए "ट्यूटोरियल" प्रदान करते हैं, इसलिए वास्तव में यह आसान है।

हालाँकि, यदि आप SOTA में अधिक रुचि रखते हैं, तो आपको कुछ प्रकार के आवर्तक नेटवर्क का उपयोग करके, गहन (अनुक्रम प्रतिनिधित्व) सीखने पर ध्यान देना होगा, जो आपके वाक्यों से एक विषय मॉडल सीखता है। शब्दों के एम्बेडिंग (अर्थ) के अलावा, ये दृष्टिकोण निर्भरता का उपयोग करते हुए विषय प्रतिनिधित्व सीखने के द्वारा [अच्छे, पुराने] "बैग-ऑफ-वर्ड्स" दृष्टिकोण से आगे जाते हैं।वाक्य में शब्दों के [s]। उदाहरण के लिए, वाक्य स्तर आवर्तक सामयिक मॉडल (SLRTM) अधिक पारंपरिक LDA (Blei et al।) या LSA (Landauer et al।) के विचारों के आधार पर एक बहुत ही रोचक गहरी, आवर्तक मॉडल है, लेकिन यह केवल एक arXiv है। गैर-सहकर्मी-समीक्षा किए गए शोध के बारे में कागज़ (इसलिए सभी डिफ़ॉल्ट "इस-के-साथ-एक-दाने-नमक चेतावनी" लागू होना चाहिए ...) [2]। कोई भी कम नहीं है, कागज में कई उत्कृष्ट सूचक हैं और आपके शोध को प्राप्त करने के लिए संदर्भ आपको इस खरगोश छेद से नीचे जाना चाहिए।

अंत में, यह स्पष्ट किया जाना चाहिए कि मैं यह दावा नहीं करता कि ये क्रमशः बैग-ऑफ-वर्ड्स और अनुक्रम मॉडल के लिए सबसे अच्छा प्रदर्शन करने वाले तरीकों पर सहमत हैं। लेकिन जो भी "सर्वश्रेष्ठ" SOTA हो सकता है, वे आपको बहुत करीब से प्राप्त करना चाहिए, और कम से कम एक उत्कृष्ट शुरुआती बिंदु के रूप में काम करना चाहिए।

[१] मैट जे। कुशनर एट अल। वर्ड एंबेडिंग से लेकर डॉक्यूमेंट डिस्टर्बेंस तक। मशीन लर्निंग, जेएमएलआर, 2015 पर 32 वें अंतर्राष्ट्रीय सम्मेलन की कार्यवाही।

[२] फी तियान एट अल। SLRTM: लेट्सिंग टॉपिक्स फॉर थेम्स से बोलें। arXiv 1604.02038, 2016।


मैंने word2vec की कोशिश की और यह लघु पाठ के लिए अच्छा प्रदर्शन नहीं करता है।
उत्साही

बस यह सुनिश्चित करने के लिए: ऊपर दिए गए मेरे उत्तर में शॉर्ट टेक्स्ट क्लस्टरिंग के लिए word2vec (अकेले) का उपयोग करने की अनुशंसा नहीं की गई है। बल्कि, यह WMD (एम्बेडेड वैक्टर पर) और / या डीप लर्निंग के तरीकों का उपयोग करने की सिफारिश करता है। (फिर भी, यदि आप अपने स्वयं के वैक्टर को प्रशिक्षित कर सकते हैं, तो आपको सॉफ्ट कॉशन समानता का उपयोग करते हुए, अकेले उनके साथ बहुत अच्छे परिणाम मिलते हैं, कम से कम "काम करने योग्य प्रोटोटाइप" के लिए)
fnl

-1

https://github.com/RandyPen/TextCluster
यह एक लघु पाठ के लिए विशिष्ट क्लस्टर विधि है, जो KMeans आदि को अव्यक्त चर संख्या निर्धारित करने की आवश्यकता नहीं है।
मूल विचार शब्दों में वाक्य को टोकना है। फिर पाठ घटक के अनुसार अलग-अलग बाल्टी को निर्देशित करें। प्रत्येक बाल्टी में, वाक्य और बाल्टी के बीच समानता की गणना करें। यदि समानता स्कोर विशिष्ट मान से अधिक है, तो इस वाक्य को उस बाल्टी में जोड़ दें, अन्यथा अगली बाल्टी की खोज करें।

बुनियादी


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