वास्तव में एनएलपी सबसे आम क्षेत्रों में से एक है जिसमें डेटा को फिर से जमा करना आवश्यक है क्योंकि असंतुलित समस्या (स्पैम फ़िल्टरिंग, अपमानजनक टिप्पणी का पता लगाना, लेख वर्गीकरण, आदि) से निपटने के लिए कई पाठ वर्गीकरण कार्य हैं। लेकिन SMOTE कुछ कारणों से यहाँ समस्याग्रस्त लगता है:
- SMOTE फीचर स्पेस में काम करता है। इसका अर्थ है कि एसएमओटीई का उत्पादन एक सिंथेटिक डेटा नहीं है, जो इसके फीचर स्पेस के अंदर एक टेक्स्ट का वास्तविक प्रतिनिधि है।
- एक तरफ SMOTE KNN के साथ काम करता है और दूसरी तरफ, NLP समस्या के लिए फ़ीचर स्पेस नाटकीय रूप से बहुत बड़ा है। KNN उन विशाल आयामों में आसानी से विफल हो जाएगा।
इसलिए मैं आपको दो दृष्टिकोण प्रस्तावित कर सकता हूं:
- नए सिंथेटिक नमूनों के वास्तविक पाठ प्रतिनिधित्व के बारे में परवाह नहीं है जो मुझे लगता है कि ठीक होना चाहिए। आपको अपने क्लासिफायर के लिए वितरण को संतुलित करना होगा न कि पाठ डेटा के पाठक के लिए। इसलिए पारंपरिक के रूप में SMOTE लागू करें (हालांकि मैं आमतौर पर समाधान 2 bellow का उपयोग करता हूं, इसलिए मैं कुछ आयामी कमी कदम के साथ परिणाम नहीं देता!)।
1) मान लें कि आप 3-एनएन का उपयोग करके अपने डेटा को मामूली वर्ग डबल से बनाना चाहते हैं। प्रमुख वर्ग पर ध्यान न दें और केवल छोटे वर्ग के नमूने रखें।
2) सुविधा स्थान में प्रत्येक नमूना बिंदु के लिए 5 निकटतम पड़ोसियों का चयन करें। फिर उनमें से 3 को यादृच्छिक रूप से चुनें (क्या यह अनावश्यक जटिल नहीं है? यदि मैं मूल एल्गोरिथ्म को स्पष्ट नहीं करना चाहता था तो मैं कहूंगा कि सिर्फ 3 पड़ोसी चुनें!)
3) प्रत्येक आयाम के लिए नमूना और पड़ोसियों के बीच की दूरी की गणना करें और इसे 0-1 के बीच एक यादृच्छिक संख्या में गुणा करें और इसे उस आयाम में नमूना के मूल मूल्य में जोड़ें। (यह जटिल पैराग्राफ बस प्रत्येक आयाम के लिए मूल नमूने और उस पड़ोसी के बीच एक यादृच्छिक मान का चयन करता है!)
- लेकिन मैं आमतौर पर एक और ओवरसैंपलिंग करता हूं जो पाठ पर है (इसलिए अधिक सहज) और एसएमओटीई की तरह है।
1) प्रमुख वर्ग की उपेक्षा करें। मामूली वर्ग में सभी दस्तावेजों का एक लंबा वितरण प्राप्त करें ताकि हम सही दस्तावेज़ की लंबाई (शब्दों / वाक्यांशों की संख्या) के अनुसार नए नमूने उत्पन्न करें। हम मानते हैं कि हम वर्ग के आकार (इसलिए उत्पादन) करना चाहते हैंके = २ मूल दस्तावेज प्रति सिंथेटिक दस्तावेज)
2) का एक क्रम उत्पन्न करें nउस वितरण के अनुसार यादृच्छिक पूर्णांक। इसका उपयोग नए सिंथेटिक दस्तावेज़ की लंबाई निर्धारित करने के लिए किया जाता है।
3) प्रत्येक दस्तावेज़ के लिए: यादृच्छिक लंबाई अनुक्रम से एक पूर्णांक चुनें और मयादृच्छिक दस्तावेज़ जिसकी लंबाई पूर्णांक के करीब है। सभी के टोकन लगाएंम एक सेट में दस्तावेजों और बेतरतीब ढंग से चुनते हैं n टोकन कबार। ये आपके हैंक नए दस्तावेज़।