2011-06-06 12 views
24

आपके द्वारा पहले दी गई सभी सहायता के लिए धन्यवाद।कोसाइन समानता और टीएफ-आईडीएफ

मुझे अभी एक छोटा सा प्रश्न मिला है जो मुझे भ्रमित करता है।

टीएफ-आईडीएफ और कोसाइन समानता।

मैं दोनों को और फिर कोसीन समानता के तहत विकी पर पढ़ रहा था, मुझे यह वाक्य मिल गया है "सूचना पुनर्प्राप्ति के मामले में, दो दस्तावेजों की कोसाइन समानता 0 से 1 तक होगी, क्योंकि आवृत्ति अवधि (टीएफ-आईडीएफ वजन) नकारात्मक नहीं हो सकता है। दो टर्म आवृत्ति वैक्टर के बीच कोण 90 से अधिक नहीं हो सकता है। "

अब मैं सोच रहा हूं .... क्या वे 2 अलग-अलग चीजें नहीं हैं?

क्या पहले से ही कोसाइन समानता के अंदर टीएफ-आईडीएफ है? यदि हां, तो बिल्ली क्या है? मैं केवल आंतरिक डॉट उत्पादों और यूक्लिडियन लेंस देख सकता हूं ...

मैंने सोचा था कि टीएफ-आईडीएफ ग्रंथों पर कोसाइन समानता चलाने से पहले आप कुछ कर सकते थे। क्या मैं कुछ भुल गया? ओ.ओ

+2

मुझे एक अद्भुत [ब्लॉग] मिला (https://janav.wordpress.com/2013/10/27/tf-idf-and-cosine-similarity/)। यह वास्तव में मदद करता है। – divyum

उत्तर

28

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

तो और क्ष tf-आईडीएफ वैक्टर, तो

enter image description here

जहां θ वैक्टर बीच का कोण है कर रहे हैं। 0 से 90 डिग्री से θ पर्वतमाला, 1 से θ पर्वतमाला क्योंकि के रूप में 0. θकर सकते हैं केवल, 0 से 90 डिग्री तक होती है क्योंकि tf-आईडीएफ वैक्टर गैर नकारात्मक हैं।

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

(फॉर्मूला Wikipedia से लिया है, इसलिए ।)

+2

धन्यवाद तो मैं गलत नहीं था: डी स्कूल के इंतजार के बजाय आपके प्रश्नों का उत्तर देने में अच्छा लगा ^^ – N00programmer

-1

tf/आईडीएफ भार कुछ मामलों में जहां वे असफल हो और कोड में NaN त्रुटि उत्पन्न जबकि कंप्यूटिंग है। इसे पढ़ने के लिए बहुत महत्वपूर्ण है: http://www.p-value.info/2013/02/when-tfidf-and-cosine-similarity-fail.html

28

टीएफ-आईडीएफ टेक्स्ट में टोकन के महत्व को मापने का एक तरीका है; दस्तावेज़ों को संख्याओं की सूची में बदलने का यह एक बहुत ही आम तरीका है (शब्द वेक्टर जो कोण के एक किनारे को आप कोसाइन प्राप्त कर रहे हैं) प्रदान करता है।

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

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

TF-आईडीएफ ध्यान में रखते हुए कच्चे अवधि आवृत्ति समायोजित कर देता है कि कैसे लगातार प्रत्येक शब्द सामान्य (डी ocument एफ में होता है आवश्यकता)। मैं nverse डी ocument एफ requency आमतौर पर दस्तावेजों की संख्या अवधि (विकिपीडिया से छवि) में होता है से विभाजित दस्तावेजों की संख्या का लॉग है:

IDF, credit to wikipedia

का लगता है कि ' 'मामूली बारीकियों के रूप में लॉग इन करें जो चीजों को लंबे समय तक काम करने में मदद करता है - जब यह तर्क बढ़ता है तो बढ़ता है, इसलिए यदि शब्द दुर्लभ है, तो आईडीएफ उच्च होगा (बहुत सारे दस्तावेजों द्वारा विभाजित दस्तावेज बहुत सारे हैं), यदि शब्द आम है, आईडीएफ कम होगा (दस्तावेजों के बहुत सारे दस्तावेजों द्वारा विभाजित दस्तावेज ~ = 1)।

कहें कि आपके पास 100 व्यंजन हैं, और सभी को अंडे की आवश्यकता है, अब आपके पास तीन और दस्तावेज हैं जिनमें सभी को पहले दस्तावेज़ में "अंडा", दूसरे दस्तावेज़ में दो बार और तीसरे दस्तावेज़ में एक बार "अंडे" शब्द होता है। प्रत्येक दस्तावेज़ में 'अंडे' के लिए आवृत्ति शब्द 1 या 2 है, और दस्तावेज़ आवृत्ति 99 है (या, तर्कसंगत रूप से, 102, यदि आप नए दस्तावेज़ों को गिनते हैं। चलो 99 के साथ चिपके रहें)।

'अंडा' की TF-आईडीएफ है:

1 * log (100/99) = 0.01 # document 1 
2 * log (100/99) = 0.02 # document 2 
1 * log (100/99) = 0.01 # document 3 

ये सब बहुत कम संख्या कर रहे हैं; इसके विपरीत, आइए एक और शब्द देखें जो केवल आपके 100 नुस्खा कॉर्पस में से 9 में होता है: 'arugula'। यह पहले दस्तावेज़ में दो बार होता है, दूसरे में तीन बार होता है, और तीसरे दस्तावेज़ में नहीं होता है।

'arugula' के लिए TF-आईडीएफ है:

1 * log (100/9) = 2.40 # document 1 
2 * log (100/9) = 4.81 # document 2 
0 * log (100/9) = 0  # document 3 

'arugula' दस्तावेज़ 2 के लिए वास्तव में महत्वपूर्ण है, कम से कम 'अंडा' की तुलना में। कौन परवाह करता है अंडे कितनी बार होता है? सब कुछ अंडा होता है! ये शब्द वैक्टर सरल गणनाओं की तुलना में बहुत अधिक जानकारीपूर्ण होते हैं, और परिणामस्वरूप दस्तावेज़ 1 & 2 एक साथ निकटता (दस्तावेज़ 3 के संबंध में) होने के परिणामस्वरूप होंगे यदि वे सामान्य शब्द गणना का उपयोग करते हैं। इस मामले में, एक ही परिणाम शायद उठ जाएगा (हे! हमारे पास केवल दो शब्द हैं), लेकिन अंतर छोटा होगा।

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

6

कोज्या समानता के लिए पूर्ण गणितीय प्रक्रिया इन ट्यूटोरियल

अगर आप दो दस्तावेज़ों के बीच कोज्या समानता गणना करना चाहते हैं मान लीजिए, पहले से समझाया गया है कदम दो दस्तावेजों के टीएफ-आईडीएफ वैक्टरों की गणना करना होगा। और फिर इन दो वैक्टरों के डॉट उत्पाद को ढूंढें। वे ट्यूटोरियल आपकी मदद करेंगे :)

-1

टीएफ-आईडीएफ का उपयोग सिर्फ टीएफ-टर्म फ्रीक्वेंसी के आधार पर दस्तावेज़ों से वैक्टर खोजने के लिए किया जाता है - जिसका उपयोग यह पता लगाने के लिए किया जाता है कि दस्तावेज़ में कितनी बार शब्द और व्यस्त दस्तावेज़ आवृत्ति - जो पूरे संग्रह में शब्द कितनी बार प्रकट होता है इसका माप देता है।

फिर आप दस्तावेजों के बीच कोसाइन समानता पा सकते हैं।

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