मैं एक छोटे से निजी प्रोजेक्ट पर काम कर रहा हूं, जो एक उपयोगकर्ता की नौकरी कौशल लेता है और उन कौशल के आधार पर उनके लिए सबसे आदर्श कैरियर का सुझाव देता है। मैं इसे प्राप्त करने के लिए नौकरी लिस्टिंग के एक डेटाबेस का उपयोग करता हूं। फिलहाल, कोड निम्नानुसार काम करता है:
1) सूची में वर्णित कौशल निकालने के लिए प्रत्येक नौकरी लिस्टिंग के पाठ को संसाधित करें
2) प्रत्येक कैरियर के लिए (उदाहरण के लिए "डेटा विश्लेषक"), उस कैरियर के लिए नौकरी लिस्टिंग के संसाधित पाठ को एक दस्तावेज़ में संयोजित करें
3) कैरियर दस्तावेजों के भीतर प्रत्येक कौशल की TF-IDF की गणना करें
इसके बाद, मुझे यकीन नहीं है कि मुझे उपयोगकर्ता की कौशल की सूची के आधार पर करियर रैंक करने के लिए किस विधि का उपयोग करना चाहिए। सबसे लोकप्रिय तरीका जो मैंने देखा है वह उपयोगकर्ता के कौशल को एक दस्तावेज के रूप में मानने के लिए होगा, फिर कौशल दस्तावेज़ के लिए TF-IDF की गणना करने के लिए, और कौशल दस्तावेज़ और प्रत्येक के बीच समानता की गणना करने के लिए cosine समानता जैसी किसी चीज़ का उपयोग करें कैरियर दस्तावेज़।
यह मेरे लिए आदर्श समाधान की तरह नहीं लगता है, क्योंकि एक ही प्रारूप के दो दस्तावेजों की तुलना करते समय कोसाइन समानता का सबसे अच्छा उपयोग किया जाता है। उस मामले के लिए, TF-IDF उपयोगकर्ता की कौशल सूची में लागू करने के लिए उपयुक्त मीट्रिक की तरह प्रतीत नहीं होता है। उदाहरण के लिए, यदि कोई उपयोगकर्ता अपनी सूची में अतिरिक्त कौशल जोड़ता है, तो प्रत्येक कौशल के लिए TF गिर जाएगा। वास्तव में, मुझे परवाह नहीं है कि उपयोगकर्ता की कौशल सूची में कौशल की आवृत्ति क्या है - मुझे बस ध्यान है कि उनके पास उन कौशल हैं (और शायद वे उन कौशल को कितनी अच्छी तरह जानते हैं)।
ऐसा लगता है कि निम्नलिखित करने के लिए एक बेहतर मीट्रिक होगा:
1) प्रत्येक कौशल के लिए जो उपयोगकर्ता के पास है, कैरियर दस्तावेजों में उस कौशल की TF-IDF की गणना करें
2) प्रत्येक कैरियर के लिए, उपयोगकर्ता के सभी कौशल के लिए TF-IDF परिणाम प्राप्त करें
3) उपरोक्त योग के आधार पर रैंक कैरियर
क्या मैं यहाँ सही लाइनों के साथ सोच रहा हूँ? यदि हां, तो क्या कोई एल्गोरिदम इन लाइनों के साथ काम करता है, लेकिन एक साधारण राशि की तुलना में अधिक परिष्कृत है? सहायता के लिए धन्यवाद!