शुरू करेंमुफ़्त में शुरू करें

User similarity metric

आपने दो नोड्स के बीच साझा नोड्स का सेट निकालने वाला फंक्शन लिख लिया है. अब आप दो यूज़र्स के बीच समानता का एक मेट्रिक निकालने वाला फंक्शन लिखेंगे: दो यूज़र्स के बीच साझा किए गए प्रोजेक्ट्स की संख्या को दूसरी पार्टीशन में मौजूद कुल नोड्स की संख्या से भाग देकर. इसके आधार पर आप आपस में मिलते-जुलते यूज़र्स ढूँढ सकते हैं.

यह अभ्यास पाठ्यक्रम का हिस्सा है

इंटरमीडिएट Network Analysis in Python

पाठ्यक्रम देखें

अभ्यास निर्देश

  • user_similarity() फंक्शन को पूरा करें ताकि user1 और user2 के बीच similarity निकाली जा सके.
    • assert स्टेटमेंट्स से जाँचें कि user1 और user2 'users' पार्टीशन में आते हैं.
    • पिछले अभ्यास के shared_partition_nodes() फंक्शन का उपयोग करके user1 और user2 के बीच साझा नोड्स का सेट प्राप्त करें.
    • projects पार्टीशन में नोड्स के अनुपात को लौटाएँ. यानी, shared_nodes की संख्या को 'projects' पार्टीशन में कुल नोड्स की संख्या से विभाजित करें.
  • यूज़र्स 'u4560' और 'u1880' के बीच similarity स्कोर निकालें. ऐसा करने के लिए:
    • पहले अपने get_nodes_from_partition() फंक्शन से 'projects' पार्टीशन के नोड्स प्राप्त करें.
    • फिर user_similarity() फंक्शन का उपयोग करके स्कोर निकालें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

def user_similarity(G, user1, user2, proj_nodes):
    # Check that the nodes belong to the 'users' partition
    ____ G.nodes[____]['bipartite'] == '____'
    ____ G.nodes[____]['bipartite'] == '____'

    # Get the set of nodes shared between the two users
    shared_nodes = ____

    # Return the fraction of nodes in the projects partition
    return len(____) / len(____)

# Compute the similarity score between users 'u4560' and 'u1880'
project_nodes = ____
similarity_score = ____

print(similarity_score)
कोड संपादित करें और चलाएँ