2012-10-08 16 views
5

मैं एक अनुशंसाकर्ता प्रणाली बनाने की कोशिश कर रहा हूं जो उपयोगकर्ता को अपने कार्यों के आधार पर वेबपृष्ठों की अनुशंसा करेगा (Google खोज, क्लिक, वह स्पष्ट रूप से वेबपृष्ठों को भी रेट कर सकता है)। Google समाचार के तरीके के बारे में एक विचार प्राप्त करने के लिए, यह किसी विशेष विषय पर वेब से समाचार लेख प्रदर्शित करता है। तकनीकी शर्तों में जो क्लस्टरिंग है, लेकिन मेरा लक्ष्य समान है। यह उपयोगकर्ता की कार्रवाई के आधार पर सामग्री आधारित सिफारिश होगी।वेब पेज अनुशंसा प्रणाली

तो मेरी प्रश्न हैं:

  1. कैसे मैं संभवतः इंटरनेट ट्राउल संबंधित वेब पृष्ठों को खोजने के कर सकते हैं?
  2. और वेब पेज से डेटा निकालने के लिए मुझे किस एल्गोरिदम का उपयोग करना चाहिए पाठपरक विश्लेषण और शब्द आवृत्ति इसे करने का एकमात्र तरीका है?
  3. आखिरकार इस समस्या के लिए कौन सा मंच सबसे उपयुक्त है। मैंने अपाचे महोत्सव के बारे में सुना है और यह कुछ पुनः उपयोग करने योग्य अल्गोस के साथ आता है, क्या यह एक अच्छा फिट जैसा लगता है?
+2

आपके पास अपने प्रश्न के बारे में कई किताबें लिख सकते हैं। –

+0

हाहा, क्या वे बड़ी समस्याओं की तरह लगते हैं? खैर मैं एक साधारण समाधान की तलाश में हूं। इस तरह के एक परियोजना से संपर्क करने के बारे में बस एक संक्षिप्त विवरण। –

+1

[प्रोग्रामिंग सामूहिक खुफिया] (http://shop.oreilly.com/product/9780596529321.do) मशीन लर्निंग के लिए एक आसान, गणित-कम परिचय है और आपके प्रश्न की तरह उपयोग-केस शामिल है। – Maurits

उत्तर

9

के रूप में थॉमस JUNGBLUT ने कहा, एक पर कई पुस्तकें लिख सकता है आपके प्रश्नों ;-) मैं तुम्हें संक्षिप्त संकेत की सूची देने की कोशिश करेंगे - लेकिन बारे में पता होना होगा नहीं रेडी-टू-उपयोग ऑफ-द-शेल्फ समाधान ...

  1. इंटरनेट क्रॉल करना: अजगर, crawler4j और Heritrix जावा के लिए, या WWW :: पर्ल के लिए रोबोट के लिए Scrapy की तरह यह कर, के लिए उपकरणकिटें के बहुत सारे हैं। वेब पृष्ठों से वास्तविक सामग्री निकालने के लिए, बॉयलरपाइप पर एक नज़र डालें।

    http://scrapy.org/

    http://crawler.archive.org/

    http://code.google.com/p/crawler4j/

    https://metacpan.org/module/WWW::Robot

    http://code.google.com/p/boilerpipe/

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

    http://mallet.cs.umass.edu/

    http://mahout.apache.org/

    http://hunch.net/~vw/

    http://lucene.apache.org/

  3. अपाचे महावत जो भी झील प्राधिकरण (ऊपर देखें), क्लस्टरिंग, और पाठ प्रसंस्करण तरह बातें शामिल हैं के अलावा, वहाँ भी अन्य उपकरणकिटें हैं यदि आप सहयोगी फ़िल्टरिंग पर ध्यान केंद्रित करना चाहते हैं तो उपलब्ध: लेंसकिट, जिसे जावा में भी कार्यान्वित किया गया है, और MyMediaLite (अस्वीकरण: मैं मुख्य लेखक हूं), जिसे सी # में लागू किया गया है, लेकिन इसमें जावा पोर्ट भी है।

    http://lenskit.grouplens.org/

    http://ismll.de/mymedialite

    https://github.com/jcnewell/MyMediaLiteJava

+0

आपके वर्णनात्मक उत्तर के लिए धन्यवाद zenog। यही वह जवाब है जिसे मैं ढूंढ रहा था, बहुत सराहना की :) –

4

यह एक अच्छा पढ़ा जाना चाहिए: Google news personalization: scalable online collaborative filtering

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

महाउट में बहुत अच्छी सहयोगी फ़िल्टरिंग तकनीकें हैं, जो कि आप उपयोगकर्ताओं के व्यवहार (क्लिक, पढ़, इत्यादि) का उपयोग करने के रूप में वर्णन करते हैं और आप रेजकोर कक्षाओं का उपयोग करके कुछ सामग्री पेश कर सकते हैं।

आप Myrrix पर भी एक नज़र डालना चाहते हैं, जो कुछ तरीकों से महाउट के स्वाद (उर्फ सिफारिशों) के विकास का विकास कर रहा है। इसके अलावा, यह rescorer कक्षाओं का उपयोग कर सहयोगी फ़िल्टरिंग के शीर्ष पर सामग्री आधारित तर्क लागू करने की अनुमति भी देता है।

यदि आप महौत में रुचि रखते हैं, तो Mahout in Action book शुरू करने के लिए सबसे अच्छी जगह होगी।

+0

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