150 पंक्तियों के Python कोड में Full-Text सर्च इंजन बनाना
(bart.degoe.de)English Wikipedia के title+summary पूरे डेटा का उपयोग करके, किसी खास तकनीक के बजाय सर्च इंजन की बुनियाद को चरण-दर-चरण समझाने वाला लेख
-
Abstractऑब्जेक्ट बनाकर डेटा तैयार करना -
Index बनाना: Tokenization और filtering
→ lowercase
→ stemming
→ English में सबसे ज़्यादा इस्तेमाल होने वाले 25 शब्द हटाना (the, be, to, of, a..)
-
बेसिक सर्च बनाना
-
relevance फीचर जोड़ना: Term Frequency (summary में वह शब्द कितनी बार इस्तेमाल हुआ है)
-
Inverse Document Frequency जोड़ना: इस दस्तावेज़ से जुड़े अन्य दस्तावेज़ों की संख्या
1 टिप्पणियां
फ़ज़ी स्ट्रिंग सर्च जो Korean initial-consonant search को भी support करता है https://hi.news.hada.io/topic?id=3631
यह लेख तकनीकी आधार या implementation के लिहाज़ से इससे बिल्कुल अलग है, लेकिन बुनियादी हिस्सों को चरण-दर-चरण विस्तार से समझाने वाला लेख होने के कारण इसे पढ़ना काफ़ी रोचक लगा।
इस तरह के full-text search/topic modeling/document indexing/similarity से जुड़े features को थोड़ा और गंभीरता से implement करने वाली कई Python libraries भी मौजूद हैं।
Whoosh : https://pypi.org/project/Whoosh/
GenSim : https://github.com/RaRe-Technologies/gensim
SQLite के लिए अलग से Full-Text-Search extension भी है।