2010-08-16 17 views
12

मैं एक वर्गीकरण करने का प्रयास कर रहा हूं जो किसी आइटम i के लिए रेटिंग (1-5) चुनता है। प्रत्येक आइटम के लिए, मेरे पास एक वेक्टर x है जिसमें i से संबंधित लगभग 40 अलग-अलग मात्राएं हैं। मेरे पास प्रत्येक आइटम के लिए सोने की मानक रेटिंग भी है। x के कुछ फ़ंक्शन के आधार पर, मैं क्लासिफायर को एक रेटिंग 1-5 देने के लिए प्रशिक्षित करना चाहता हूं जो सोने के मानक से निकटता से मेल खाता हो।साधारण वर्गीकरण पैकेज और एल्गोरिदम

क्लासिफायर पर मैंने जो अधिकांश जानकारी देखी है, वह केवल बाइनरी फैसलों से निपटती है, जबकि मेरे पास रेटिंग निर्णय है। क्या इस तरह की समस्या से निपटने के लिए वहां सामान्य तकनीकें या कोड पुस्तकालय हैं?

उत्तर

10

मैं आपसे सहमत हूँ कि एमएल समस्याओं जिसमें प्रतिक्रिया चर एक क्रमसूचक पैमाने पर है विशेष हैंडलिंग की आवश्यकता होती है - 'मशीन-मोड' (यानी, एक कक्षा लेबल लौटने) लगता है अपर्याप्त क्योंकि वर्ग लेबल संबंध की अनदेखी लेबल के बीच ("पहला, दूसरा, तीसरा"); इसी तरह, 'रिग्रेशन-मोड' (यानी, सामान्य लेबल को फ़्लोट्स, {1, 2, 3} के रूप में देखते हुए) यह प्रतिक्रिया चर के बीच मीट्रिक दूरी को अनदेखा करता है (उदाहरण के लिए, 3 - 2! = 1)।

आर (कम से कम) कई संकुल क्रमिक प्रतिगमन के लिए निर्देशित हैं। इनमें से एक को वास्तव में Ordinal कहा जाता है, लेकिन मैंने इसका उपयोग नहीं किया है। मैंने डिज़ाइन ऑर्डिनल रिग्रेशन के लिए आर में पैकेज का उपयोग किया है और मैं निश्चित रूप से इसकी अनुशंसा कर सकता हूं। डिज़ाइन में सामान्य लॉजिस्टिक मॉडल के माध्यम से समाधान, निदान, परीक्षण, और क्रमिक प्रतिगमन समस्याओं के परिणाम प्रस्तुति के लिए कार्यों का एक पूरा सेट शामिल है। दोनों पैकेज CRAN से उपलब्ध हैं) डिजाइन पैकेज का उपयोग कर एक औपचारिक प्रतिगमन समस्या के step-by-step solution यूसीएलए आंकड़े साइट पर प्रस्तुत किया गया है।

इसके अलावा, मैंने हाल ही में समर्थन वेक्टर मशीनों का उपयोग करके क्रमिक वर्गीकरण पर काम कर रहे याहू में एक समूह द्वारा paper देखा। मैंने अपनी तकनीक को लागू करने का प्रयास नहीं किया है।

7

क्या आपने Weka का उपयोग करने का प्रयास किया है? यह बॉक्स के बाहर supports binary, numerical, and nominal attributes है, जिनमें से दो आपके उद्देश्यों के लिए पर्याप्त रूप से काम कर सकते हैं।

इसके अलावा, यह लग रहा है classifiers कि उपलब्ध है में से एक की तरह एक मेटा-वर्गीकारक OrdinalClassClassifier.java कहा जाता है, जो इस शोध के परिणाम है:

  • Eibe फ्रैंक और मार्क हॉल, की कार्यवाही में A simple approach to ordinal classification.मशीन लर्निंग, 2001, पीपी 145-156 पर 12 वां यूरोपीय सम्मेलन।

आप किसी पूर्व-निर्मित दृष्टिकोण की जरूरत नहीं है, तो इन संदर्भों (doug's note about the Yahoo SVM paper के अलावा) उपयोगी हो सकता है:

  • डब्ल्यू चू और जेड Ghahramani, Gaussian processes for ordinal regression.के जर्नल मशीन लर्निंग रिसर्च, 2006.
  • वी चू और एससाथीया केरथी, New approaches to support vector ordinal regression.मशीन लर्निंग, 2005, 145-152 पर 22 वें अंतरराष्ट्रीय सम्मेलन की कार्यवाही में।
2

dough has raised समस्याएं सभी मान्य हैं। मुझे एक और जोड़ने दो। आपने यह नहीं कहा कि आप वर्गीकरण और "स्वर्ण मानक" के बीच समझौते को कैसे मापना चाहते हैं। आपको जितनी जल्दी हो सके उस प्रश्न का उत्तर तैयार करना होगा, क्योंकि इससे आपके अगले चरण पर बहुत बड़ा असर पड़ेगा। मेरे अनुभव में, किसी भी का सबसे समस्याग्रस्त हिस्सा (ठीक है, कोई नहीं, अधिकतर) अनुकूलन कार्य स्कोर फ़ंक्शन है। खुद से पूछने का प्रयास करें कि क्या सभी त्रुटियां बराबर हैं? क्या "3" को "4" के रूप में वर्गीकृत करने से "4" को "3" के रूप में वर्गीकृत करने के समान प्रभाव पड़ता है? "1" बनाम "5" के बारे में क्या। गलती से एक मामले में लापता हो सकता है (एचआईवी निदान की याद आती है, विमान में पायलट निकास को सक्रिय करती है)

स्पष्ट क्लासिफायर के बीच समझौते को मापने का सबसे आसान तरीका Cohen's Kappa है। अधिक जटिल तरीकों निम्नलिखित लिंक में वर्णित हैं here, here, here, और here

कहा करने के बाद कि, कभी कभी, एक समाधान है कि "सिर्फ काम करता है" उठा के बजाय "सही" तेज और आसान है। अगर मैं आप थे तो मैं एक मशीन लर्निंग लाइब्रेरी (आर, वीका, मैं व्यक्तिगत रूप से Orange से प्यार करता हूं) चुनता हूं और देखता हूं कि मुझे क्या मिलता है। केवल तभी यदि आपके पास उचित समाधान नहीं हैं, तो अधिक जटिल समाधान देखें

+0

आप ऑरेंज ढांचे को क्यों पसंद करते हैं? –

1

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

संबंधित मुद्दे