2013-06-11 8 views
9

मेरे पास मेरे साथ लगभग 4000 ब्लॉग पोस्ट हैं। मैं निम्नलिखित मानों के अनुसार सभी पदों को रैंक करना चाहता हूंरैंकिंग एल्गोरिदम

Upvote Count => P 
Comments Recieved => C 
Share Count => S 
Created time in Epoch => E 
Follower Count of Category which post belongs to => F (one post has one category) 
User Weight => U (User with most number of post have biggest weight) 

मुझे छद्म कोड में उत्तर की उम्मीद है।

+0

बहुत व्यापक रूप से बंद करने के लिए वोटिंग। –

उत्तर

19

आपकी समस्या regression (link) की श्रेणी में आती है। मशीन लर्निंग शब्दों में, आपके पास features (link) (जिसे आप अपने प्रश्न में सूचीबद्ध करते हैं) का संग्रह है और आपके पास स्कोर वह मान है जिसे आप भविष्यवाणी करना चाहते हैं।

क्या टेड होप ने सुझाव दिया है मूल रूप से linear predictor function (link) है। यह आपके परिदृश्य के लिए एक मॉडल बहुत आसान हो सकता है।

अपनी समस्या के लिए logistic regression (link) का उपयोग करने पर विचार करें। यहां बताया गया है कि आप इसका उपयोग कैसे करेंगे।

1. बनाने के अपने मॉडल-लर्निंग डाटासेट

बेतरतीब ढंग से कुछ m ब्लॉग पोस्ट 4000 के सेट से यह एक छोटा सा पर्याप्त सेट है कि आप आराम से अपनी ओर से इन m ब्लॉग पोस्ट के माध्यम से देख सकते हैं होना चाहिए का चयन करें।

m ब्लॉग पोस्टों में से प्रत्येक के लिए, 0 से 1 पर एक संख्या के साथ "अच्छा" कैसे स्कोर करें। यदि यह मदद करता है, तो आप 0, 0.25, 0.5, 0.75, 1 मानों के लिए 0, 1, 2, 3, 4 "सितारों" का उपयोग करने के बारे में सोच सकते हैं।

अब आपके पास m ब्लॉग पोस्ट हैं जिनमें प्रत्येक के पास विशेषताओं और स्कोर का एक सेट है।

आप वैकल्पिक रूप से व्युत्पन्न सुविधाओं को शामिल करने के लिए अपने फीचर सेट का विस्तार कर सकते हैं - उदाहरण के लिए, आप "उपरोक्त गणना", "टिप्पणियां प्राप्त", "शेयर गणना" और "अनुयायी गणना" के लॉगरिदम को शामिल कर सकते हैं। और आप "अब" और "निर्मित समय" के बीच घंटों की संख्या के लॉगरिदम को शामिल कर सकते हैं।

2. अपने मॉडल

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

मैं इस खंड पर और विस्तार नहीं करूंगा क्योंकि इंटरनेट विवरण से भरा है और यह एक डिब्बाबंद प्रक्रिया है।

विकिपीडिया लिंक:

3. लागू अपने मॉडल

अपने रसद प्रतिगमन मॉडल सीखा करने के बाद, अब आप के लिए स्कोर भविष्यवाणी करने के लिए लागू कर सकते हैं एक नया ब्लॉग पोस्ट कितना "अच्छा" है! बस सुविधाओं (और व्युत्पन्न सुविधाओं) के सेट की गणना करें, फिर स्कोर के लिए उन सुविधाओं को मैप करने के लिए अपने मॉडल का उपयोग करें।

फिर से, इंटरनेट इस खंड के विवरण से भरा है, जो एक डिब्बाबंद प्रक्रिया है।


यदि आपके कोई प्रश्न हैं, तो पूछना सुनिश्चित करें!

यदि आप मशीन सीखने के बारे में अधिक जानने में रुचि रखते हैं, तो आपको the free online Stanford Machine Learning course on Coursera.org लेने पर विचार करना चाहिए। (मैं स्टैनफोर्ड या Coursera से संबद्ध नहीं हूँ।)

+0

मुझे वास्तव में लगता है कि यह मॉडल एक ओवरकिल है। जैसा कि टेड ने सुझाव दिया था कि आप यह जानना चाहते हैं कि प्रत्येक कारक/सुविधा कितनी महत्वपूर्ण है और स्कोर की गणना करें। यह वही है जो यह उत्तर चरण 1 में करने के लिए कह रहा है। प्रासंगिकता की विशेषताओं के लिए कुछ वजन निर्दिष्ट किए बिना आप प्रशिक्षण पदों में ब्लॉग पोस्टों को तर्कसंगत और लगातार सेट में कैसे रैंक करेंगे। अब यदि आपने स्पष्ट रूप से वजन निर्धारित किया है तो समस्या पहले ही हल हो चुकी है, रैंक की "भविष्यवाणी" करने के लिए एक रिग्रेशन एल्गोरिदम का उपयोग क्यों करें। – Gmu

+1

@Gmu एक रेस्तरां में खाने के बाद, एक फिल्म देखना, एक किताब पढ़ना आदि, क्या आप 0 से 5 सितारों के पैमाने पर समग्र अनुभव को रेट कर सकते हैं? जब आप रेस्तरां को रेट करते हैं, तो क्या आप जानबूझकर अपनी रेटिंग को "फैट कंटेंट," "कार्बोहाइड्रेट कंटेंट," "सर्वर फ्रेंडलीट," इत्यादि पर बहुत ही निम्न स्तर की सुविधाओं पर आधारित कर रहे हैं और फिर उन वजनों के साथ संयोजन करते हैं जिन्हें आपने जानबूझकर तय किया है? शायद ऩही। फिर भी आप रेस्तरां को "तर्कसंगत और लगातार" (कुछ डिग्री तक) रेट कर सकते हैं। स्पष्टीकरण के लिए –

+0

धन्यवाद। इसलिए यह अव्यवस्थित वजन ला रहा है कि आपका दिमाग अवचेतन रूप से असाइन कर रहा है। गुणात्मक प्रतिक्रिया/स्कोर में योग्यता धारणा स्थिरता को मात्राबद्ध करना। – Gmu

9

मैं प्रत्येक ब्लॉग पोस्ट के लिए व्यक्तिगत स्कोर का भारित औसत सुझाता हूं। एक वजन असाइन करें जो प्रत्येक मान के सापेक्ष महत्व और मूल्य पैमाने में अंतर दोनों को दर्शाता है (उदाहरण के लिए, E अन्य मानों की तुलना में बहुत बड़ी संख्या होने वाला है)। फिर गणना करें:

rank = wP * P + wC * C + wS * S + wE * E + wF * F + wU * U; 

आप प्रत्येक मूल्य के सापेक्ष महत्व या रैंक के संदर्भ में मूल्यों के बारे में कोई जानकारी नहीं देते हैं। तो इसके बारे में और अधिक विशिष्ट होना असंभव है। (क्या एक पुराना निर्माण समय रैंक में एक पोस्ट ऊपर या नीचे धक्का देता है? यदि नीचे है, तो wE नकारात्मक होना चाहिए।)

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