BaşlayınÜcretsiz Başlayın

Kullanıcı benzerliği metriği

İki düğüm arasında paylaşılan düğümler kümesini hesaplayan bir fonksiyon yazdın; şimdi iki kullanıcı arasındaki benzerliği hesaplayan bir benzerlik metriği fonksiyonu yazacaksın: iki kullanıcı arasında paylaşılan proje sayısının, diğer bölmedeki toplam düğüm sayısına bölünmesi. Bu metrik daha sonra birbirine benzeyen kullanıcıları bulmak için kullanılabilir.

Bu egzersiz

Python ile Orta Düzey Ağ (Network) Analizi

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • user_similarity() fonksiyonunu tamamlayarak user1 ve user2 arasındaki benzerliği hesapla.
    • user1 ve user2'nin 'users' bölmesine ait olduğunu kontrol etmek için assert ifadeleri kullan.
    • Önceki egzersizde yazdığın shared_partition_nodes() fonksiyonunu kullanarak user1 ve user2 kullanıcıları arasında paylaşılan düğümler kümesini al.
    • projects bölmesindeki düğümlerin oranını döndür. Yani, shared_nodes sayısını 'projects' bölmesindeki toplam düğüm sayısına böl.
  • 'u4560' ve 'u1880' kullanıcıları arasındaki benzerlik skorunu hesapla. Bunu yapmak için:
    • Önce get_nodes_from_partition() fonksiyonunu kullanarak 'projects' bölmesindeki düğümleri elde et.
    • Ardından skoru hesaplamak için user_similarity() fonksiyonunu kullan.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

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)
Kodu Düzenle ve Çalıştır