Maison >développement back-end >Tutoriel Python >Comment utiliser les règles d'association pour le data mining en Python ?

Comment utiliser les règles d'association pour le data mining en Python ?

WBOY
WBOYoriginal
2023-06-04 09:02:191395parcourir

Python est un langage de programmation puissant qui peut être appliqué à diverses tâches d'exploration de données. Les règles d'association sont l'une des techniques courantes d'exploration de données, qui visent à découvrir des associations entre différents points de données afin de mieux comprendre l'ensemble de données. Dans cet article, nous verrons comment utiliser les règles d'association en Python pour l'exploration de données.

Que sont les règles d'association ?

Les règles d'association sont une technologie d'exploration de données utilisée pour découvrir des associations entre différents points de données. Il est souvent utilisé dans l'analyse du panier, où nous pouvons découvrir quels articles sont fréquemment achetés ensemble afin de les organiser dans les rayons du magasin dans lesquels ils sont placés.

Dans les règles d'association, nous avons deux types d'éléments : les éléments et les règles.

Un ensemble de projets contient plusieurs projets et une règle est une relation logique. Par exemple, si l'ensemble d'éléments contient A, B et C, la règle A->B signifie que lorsque A apparaît, B est également susceptible d'apparaître. Une autre règle, B->C, signifie que lorsque B apparaît, C est également susceptible d'apparaître.

Étapes pour utiliser Python pour l'exploration de données de règles d'association

Pour utiliser Python pour l'exploration de données de règles d'association, nous devons suivre les étapes suivantes :

1. Préparer les données

Tout d'abord, nous devons préparer les données que nous voulons. utiliser. Les algorithmes de règles d'association utilisent généralement des données transactionnelles, telles que l'historique des achats ou les enregistrements d'interactions avec les clients.

En Python, nous pouvons utiliser la trame de données pandas pour charger des données puis les convertir dans un format adapté à l'algorithme. Un format couramment utilisé est la liste de listes, où chaque sous-liste représente une transaction et les éléments représentent les éléments de la transaction.

Par exemple, le code suivant charge un fichier CSV contenant des exemples d'informations de transaction et le convertit au format Liste de listes :

import pandas as pd

# Load data from CSV file
data = pd.read_csv('transactions.csv')

# Convert data to List of Lists format
transactions = []
for i, row in data.iterrows():
    transaction = []
    for col in data.columns:
        if row[col] == 1:
            transaction.append(col)
    transactions.append(transaction)

2. Recherchez les règles à l'aide de l'algorithme des règles d'association

Une fois que nous avons converti les données dans un format adapté à l'algorithme, nous pouvons utiliser n'importe quel algorithme de règle d'association pour trouver des règles. L'algorithme le plus courant est l'algorithme Apriori, qui suit les étapes suivantes :

  • Analysez toutes les transactions pour déterminer la fréquence des articles.
  • Utilisez les fréquences des éléments pour générer des ensembles d'éléments candidats.
  • Analysez toutes les transactions pour déterminer les fréquences des ensembles d'articles candidats.
  • Générez des règles basées sur les ensembles d'éléments candidats.

En Python, nous pouvons utiliser la bibliothèque pymining pour implémenter l'algorithme Apriori. Voici un exemple de code qui montre comment utiliser Pymining pour rechercher des ensembles d'éléments fréquents :

from pymining import itemmining

relim_input = itemmining.get_relim_input(transactions)
item_sets = itemmining.relim(relim_input, min_support=2)
print(item_sets)

Dans cet exemple, nous utilisons un paramètre min_support, qui spécifie le seuil de prise en charge utilisé pour déterminer quels ensembles d'éléments sont fréquents. Dans ce cas, nous avons utilisé un support de 2, ce qui signifie que seuls les éléments qui apparaissent dans au moins deux transactions sont considérés comme des éléments fréquents.

3. Évaluer les règles

Après avoir trouvé des ensembles d'éléments fréquents, nous pouvons les utiliser pour générer des règles. Après avoir généré les règles, nous devons les évaluer pour déterminer celles qui ont le plus de sens.

Il existe plusieurs mesures d'évaluation couramment utilisées qui peuvent être utilisées pour évaluer les règles. Deux des plus courants sont la confiance et le soutien.

La confiance indique l'exactitude de la règle. Il s’agit de la probabilité que si A se produit, B soit également susceptible de se produire. Il est calculé comme suit :

confidence(A->B) = support(A et B) / support(A)

où, support(A et B) est le nombre de transactions dans lesquelles A et B apparaissent à en même temps, support( A) est le nombre de transactions dans lesquelles A apparaît.

Le support indique l'universalité de la règle. Il fait référence à la probabilité calculée par la formule suivante :

support(A et B) / total_transactions

où total_transactions est le nombre de toutes les transactions.

En Python, nous pouvons utiliser la bibliothèque pymining pour calculer la confiance et le support. Voici un exemple de code qui montre comment calculer la confiance d'une règle :

from pymining import perftesting

rules = perftesting.association_rules(item_sets, 0.6)

for rule in rules:
    item1 = rule[0]
    item2 = rule[1]
    confidence = rule[2]
    support = rule[3]
    print(f'Rule: {item1} -> {item2}')
    print(f'Confidence: {confidence}')
    print(f'Support: {support}
')

Dans cet exemple, nous utilisons un seuil de confiance de 0,6, ce qui signifie qu'une règle n'est considérée comme significative que si sa confiance est supérieure à 0,6.

Résumé
Les règles d'association sont l'une des techniques importantes de l'exploration de données, qui peuvent nous aider à découvrir la corrélation entre les points de données. En Python, nous pouvons utiliser des algorithmes de règles d'association et des métriques d'évaluation pour trouver des règles, évaluer des règles, puis analyser et prédire en fonction des résultats. En pratique, nous devrons peut-être visualiser ou soumettre les résultats à un modèle d'apprentissage automatique pour une analyse plus approfondie afin d'obtenir plus d'informations à partir des données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn