Condivisione della tecnologia

Esplorare la somiglianza dei dati: analisi completa dei metodi di calcolo della somiglianza in sklearn

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Esplorare la somiglianza dei dati: analisi completa dei metodi di calcolo della somiglianza in sklearn

Nel mondo della scienza dei dati e dell’apprendimento automatico, il calcolo delle somiglianze tra i punti dati è un compito fondamentale e critico. Il calcolo della somiglianza può aiutarci a identificare modelli nei dati, eseguire analisi di cluster, progettare sistemi di raccomandazione, ecc. scikit-learn (sklearn in breve), come popolare libreria di apprendimento automatico in Python, fornisce una varietà di metodi per calcolare la somiglianza dei dati. Questo articolo introdurrà in dettaglio il metodo utilizzato per il calcolo della somiglianza in sklearn e fornirà esempi pratici di codice.

1. L'importanza del calcolo della similarità

Il calcolo della similarità ha importanti applicazioni nei seguenti campi:

  • Analisi di gruppo: raggruppa insieme punti dati simili.
  • Sistema consigliato: consiglia articoli simili in base alle preferenze storiche dell'utente.
  • rilevamento anomalo: identifica i valori anomali che non sono simili alla maggior parte dei punti dati.
  • Identificazione dell'immagine: identifica il contenuto dell'immagine confrontando i vettori delle caratteristiche.
2. Metodo di calcolo della somiglianza in sklearn

sklearn fornisce una varietà di strumenti e algoritmi per il calcolo della somiglianza. Di seguito sono riportati alcuni metodi comunemente utilizzati:

2.1 Somiglianza del coseno

La somiglianza del coseno valuta la somiglianza tra due vettori misurando l'angolo tra di loro.

from sklearn.metrics.pairwise import cosine_similarity

# 假设X是数据集
cosine_sim = cosine_similarity(X)
  • 1
  • 2
  • 3
  • 4
2.2 Distanza euclidea

La distanza euclidea è il metodo di misurazione della distanza più intuitivo, poiché calcola la distanza in linea retta tra due punti.

from sklearn.metrics.pairwise import euclidean_distances

# 假设X是数据集
distances = euclidean_distances(X)
# 计算相似度,通常使用1减去距离
similarity = 1 / (1 + distances)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
2.3 Distanza da Manhattan

La distanza di Manhattan (chiamata anche distanza dell'isolato) misura la somma delle distanze assolute dell'asse di due punti su un sistema di coordinate standard.

from sklearn_extra.metrics import manhattan_distances

# 假设X是数据集
manhattan_dist = manhattan_distances(X)
# 转换为相似度
similarity = 1 / (1 + manhattan_dist)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
2.4 Coefficiente di similarità di Jaccard

Il coefficiente di somiglianza di Jaccard viene utilizzato principalmente per misurare la somiglianza di due insiemi, con un valore compreso tra 0 e 1.

from sklearn.metrics import jaccard_score

# 假设X和Y是两个数据集
jaccard_sim = jaccard_score(X, Y, average='micro')
  • 1
  • 2
  • 3
  • 4
2.5 Coefficiente di correlazione di Pearson

Il coefficiente di correlazione di Pearson viene utilizzato per misurare la correlazione lineare tra due set di dati.

from sklearn.metrics.pairwise import pearsonr

# 假设X和Y是两个数据集
correlation, _ = pearsonr(X[:, 0], Y[:, 0])
  • 1
  • 2
  • 3
  • 4
3. Esempi applicativi di calcolo della similarità

Supponiamo di dover consigliare prodotti che piacciono a utenti simili in base al comportamento storico dell'utente:

from sklearn.metrics.pairwise import cosine_similarity

# 假设user_behavior是一个DataFrame,记录了用户对商品的评分
user_behavior = ...

# 计算用户之间的相似度
user_similarity = cosine_similarity(user_behavior)

# 推荐系统可以根据相似度来推荐商品
# 例如,找出与目标用户相似度最高的用户喜欢的其他商品
similar_users = user_similarity[目标用户索引].argsort()[::-1]
recommended_products = 商品列表[similar_users[1]]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
4. Conclusione

Il calcolo della somiglianza è una tecnologia di base nell'analisi dei dati e nell'apprendimento automatico e sklearn fornisce una varietà di metodi per svolgere questo lavoro. Attraverso questo articolo, abbiamo appreso i diversi metodi di calcolo della somiglianza in sklearn e fornito esempi pratici di codice.

Lo scopo di questo articolo è aiutare i lettori a comprendere meglio i calcoli di somiglianza e a padroneggiare i metodi di implementazione di queste tecniche in Sklearn. Si spera che i lettori possano migliorare la loro comprensione del calcolo della somiglianza attraverso questo articolo e applicare efficacemente queste tecniche in progetti reali. Poiché la quantità di dati continua a crescere, i calcoli di somiglianza continueranno a svolgere un ruolo importante nel campo della scienza dei dati.