Wie man den Assoziationsregel-Apriori-Algorithmus versteht
Verstehen Sie den Assoziationsregel-Apriori-Algorithmus: Der Apriori-Algorithmus ist der erste Assoziationsregel-Mining-Algorithmus und der klassischste Algorithmus. Er verwendet eine iterative Methode der schichtweisen Suche, um die Beziehung zwischen Elementmengen in der Datenbank zu finden und Regeln zu bilden . Der Prozess besteht aus Verbindungen. Er besteht aus [matrixähnlichen Operationen] und Bereinigung [Entfernen unnötiger Zwischenergebnisse].
Den Assoziationsregel-Apriori-Algorithmus verstehen:
1. Konzept
Tabelle 1 Transaktionsdatenbank eines Supermarkts
Transaktionsnummer TID | Von Kunden gekaufte Artikel | Transaktionsnummer TID |
Vom Kunden gekaufte Artikel |
T1 |
Brot, Sahne, Milch, Tee |
T6 |
Brot , Tee |
T2 |
Brot, Sahne, Milch |
T7 |
Bier, Milch, Tee |
T3 |
Kuchen, Milch |
T8 |
Brot, Tee |
T4 |
Milch, Tee |
T9 |
Brot, Sahne, Milch, Tee |
T5 |
Brot, Kuchen, Milch |
T10 |
Brot, Milch, Tee |
Definition 1: Sei I={i1,i2,…,im}, was eine Menge von m verschiedenen Projekten ist, und jedes ik wird als Projekt bezeichnet. Eine Sammlung I von Elementen wird als itemset bezeichnet. Die Anzahl seiner Elemente wird als Länge des Itemsets bezeichnet, und ein Itemset mit der Länge k wird als k-Itemset bezeichnet. Im Beispiel ist jedes Produkt ein Artikel, die Artikelmenge ist I={Brot, Bier, Kuchen, Sahne, Milch, Tee} und die Länge von I beträgt 6.
Definition 2: Jede TransaktionT ist eine Teilmenge der Artikelmenge I. Für jede Transaktion gibt es eine eindeutige Identifikationstransaktionsnummer, die als TID aufgezeichnet wird. Alle Transaktionen bilden die TransaktionsdatenbankD, und |D| entspricht der Anzahl der Transaktionen in D. Das Beispiel enthält 10 Transaktionen, also |D|=10.
Definition 3: Für Itemset X setze count(X⊆T) auf die Anzahl der Transaktionen, die support(X)=count(X⊆T)/|D|Im Beispiel erscheint X={Brot, Milch} in T1, T2, T5, T9 und T10, sodass die Unterstützung 0,5 beträgt.
Definition vier:
Minimale Unterstützung ist der minimale Unterstützungsschwellenwert des Itemsets, aufgezeichnet als SUPmin, der die minimale Bedeutung der Zuordnungsregeln darstellt, die den Benutzern wichtig sind. Elementmengen, deren Unterstützung nicht weniger als SUPmin beträgt, werden als häufige Mengen bezeichnet, und häufige Mengen mit der Länge k werden als k-häufige Mengen bezeichnet. Wenn SUPmin auf 0,3 gesetzt ist, beträgt die Unterstützung von {Brot, Milch} im Beispiel 0,5, es handelt sich also um einen 2-häufigen Satz. Definition fünf:
Assoziationsregel ist eine Implikation: R: . Gibt an, dass, wenn der Artikelsatz X in einer bestimmten Transaktion erscheint, auch Y mit einer bestimmten Wahrscheinlichkeit erscheint. Verbandsregeln, die den Benutzern am Herzen liegen, können an zwei Maßstäben gemessen werden: Unterstützung und Glaubwürdigkeit. Definition 6
: Die
Unterstützung
einer AssoziationsregelR ist das Verhältnis der Anzahl der Transaktionen, die der Transaktionssatz sowohl X als auch Y enthält, zu |D|. Das heißt: support(X⇒Y)=count(X⋃Y)/|D|Support spiegelt die Wahrscheinlichkeit wider, dass X und Y gleichzeitig auftreten. Die Unterstützung von Assoziationsregeln entspricht der Unterstützung häufiger Mengen. Definition 7
: Für die Assoziationsregel
R bezieht sichGlaubwürdigkeit
auf das Verhältnis der Anzahl der Transaktionen, die X und Y enthalten, zur Anzahl der Transaktionen, die X enthalten. Das heißt: Konfidenz(X⇒Y)=Unterstützung(X⇒Y)/Unterstützung(X)Konfidenz spiegelt die Wahrscheinlichkeit wider, dass die Transaktion Y enthält, wenn X in der Transaktion enthalten ist. Generell sind für Nutzer nur Vereinsregeln mit hoher Unterstützung und Glaubwürdigkeit von Interesse. Definition 8: Legen Sie die Mindestunterstützung und Mindestglaubwürdigkeit der Verbandsregeln als SUPmin und CONFmin fest. Wenn die Unterstützung und Glaubwürdigkeit der Regel R nicht geringer als SUPmin und CONFmin sind, spricht man von einer „starken Assoziationsregel“. Der Zweck des Association Rule Mining besteht darin, starke Assoziationsregeln zu finden, die den Händlern bei der Entscheidungsfindung helfen.
Diese acht Definitionen umfassen mehrere wichtige Grundkonzepte im Zusammenhang mit Assoziationsregeln. Es gibt zwei Hauptprobleme beim Assoziationsregel-Mining:- Suchen Sie alle häufigen Itemsets in der Transaktionsdatenbank, die größer oder gleich der vom Benutzer angegebenen Mindestunterstützung sind.
- Verwenden Sie häufige Elementsätze, um die erforderlichen Assoziationsregeln zu generieren, und filtern Sie starke Assoziationsregeln basierend auf der vom Benutzer festgelegten Mindestglaubwürdigkeit heraus.
Derzeit untersuchen Forscher hauptsächlich das erste Problem. Es ist schwierig, häufige Mengen zu finden, aber es ist relativ einfach, starke Assoziationsregeln mit häufigen Mengen neu zu generieren.
2. Theoretische Grundlagen
Betrachten wir zunächst die Eigenschaften einer häufigen Menge.
Theorem: Wenn die Elementmenge X eine häufige Menge ist, dann sind ihre nicht leeren Teilmengen alle häufige Mengen .
Nach dem Satz unterscheiden sich bei gegebener Itemmenge Dies beweist, dass die k-Kandidatenmenge, die durch die Verkettung von k-1 häufigen Mengen erzeugt wird, die k-häufige Menge abdeckt. Wenn gleichzeitig die Itemmenge Y in der k-Kandidatenmenge eine k-1-Ordnungsteilmenge enthält, die nicht zur k-1-häufigen Menge gehört, kann Y keine häufige Menge sein und sollte aus der Kandidatenmenge entfernt werden. Der Apriori-Algorithmus macht sich diese Eigenschaft häufiger Mengen zunutze.
3. Algorithmusschritte:
Zuerst sind die Testdaten:
Transaktions-ID | Produkt-ID Liste T100 I 3 |
T400 | I1, I2, I4 |
T500 | I1, I3 |
T600 | I2, I3 |
T700 | I1, I3 |
T800 |
I1,I2,I3,I5 |
T90 0 | I1,I2,I3 |
Das obige ist der detaillierte Inhalt vonWie man den Assoziationsregel-Apriori-Algorithmus versteht. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Stock Market GPT
KI-gestützte Anlageforschung für intelligentere Entscheidungen

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Dieser Artikel zielt darauf ab, das Problem des Installationsfehlers aufgrund von BColz -Kompilierungsfehlern bei der Installation von Zipline zu lösen. Durch die Senkung der Cython-Version und die Installation von PIP mit Get-pip.py können Sie Kompilierungsfehler effektiv vermeiden. Gleichzeitig wird für einen möglichen BLOSC -Fehler: widersprüchliche Typen für den Fehler „_xgetBV“ eine Lösung zum Ersetzen des Grundbildes zur Verfügung gestellt, um die reibungslose Installation der Zipline sicherzustellen.

In diesem Artikel wird das Problem erörtert, dass dynamisch erstellte Klassen bei der Verwendung von Python-Multi-Process in Windows-Umgebung nicht korrekt serialisiert und durch Kinderprozesse deserialisiert werden können. Durch die Analyse der Ursachen von Fehlern enthält dieser Artikel eine Lösung, um sicherzustellen, dass dynamisch erstellte Klassen im übergeordneten Prozess definiert und sicher im untergeordneten Prozess verwendet werden, während die durch wiederholten Erstellungen verursachten Leistungsverluste vermieden werden.

AbsoluteImportsSpecifythefulPathFromthetop-Levelpackage, whileReLativeImportSusedotSpercemodulesRelativetothekenpackung; 1.abSoluteimportSareclearerandPreferedfactability;

Verwenden Sie zunächst die Anforderungsbibliothek, um eine HTTP -Anfrage zu senden, um JSON -Daten zu erhalten, und anschließend die Antwort in ein Python -Wörterbuch oder eine Liste über die Antwort der Antwort () () analysieren. 1. Stellen Sie sicher, dass die Anforderungen Bibliothek vor dem Senden der Anforderung installiert ist, und verwenden Sie Try-Ocept, um Netzwerkausnahmen zu verarbeiten. 2. Überprüfen Sie die Antwort. 3. Wenn Sie Daten mit response.json () analysieren, müssen Sie JSondeCodeError erfassen, um ungültige JSON zu verhindern. 4. Verwenden Sie die Methode .get (), um Fehler zu vermeiden, die beim Zugriff auf Daten nicht vorhanden sind.

Die Verwendung von Instanzen auf Modulebene ist die einfachste und am meisten im Einklang mit Python-Gewohnheiten. Durch das Definieren von Klasseninstanzen in Modulen, unter Verwendung der Funktion des Python -Moduls nur einmal, um globale Einzigartigkeit zu gewährleisten, z. B. das Erstellen einer Konfigurationsdatei und das Definieren einer Konfigurationsinstanz. Andere Module teilen beim Import dasselbe Objekt. Diese Methode ist einfach, lesbar und fadensicher und für die meisten praktischen Szenarien geeignet. Darüber hinaus kann es auch implementiert werden, indem die __NEW__ -Methode unter Verwendung von Dekoratoren, Metaklasse usw. neu geschrieben wird, wobei die __New__ -Methode die Einzigartigkeit der Instanz durch Klassenvariablen kontrolliert, jedoch auf Probleme mit der Sicherheit von Threads aufmerksam wird. Die Dekorationsmethode kann über Klassen hinweg wiederverwendet werden, kann jedoch die Müllsammlung beeinflussen. Die Metaclass -Methode unterstützt Vererbung und zentralisierte Kontrolle, aber Replikation.

Der effizienteste Weg, um gemeinsame Elemente von zwei oder mehr Listen zu finden, besteht darin, den Kreuzungsbetrieb des Satzes zu verwenden. 1. Konvertieren Sie die Liste in einen Satz und verwenden Sie die Methode & Operator oder .intersection (), um die Kreuzung zu finden, z. B. Common = List (Set (List1) & Set (List2)); 2. Für mehrere Listen können Sie SET (List1) .Intersection (SET (LIST2), SET (LIST3) oder SET.intersection (*MAP (SET, LISTS)) verwenden, um eine dynamische Verarbeitung zu erreichen. 3. Achten Sie auf die ungeordnete und automatische Deduplizierung. Wenn Sie die Bestellung beibehalten müssen, können Sie die ursprüngliche Liste durchqueren und das festgelegte Urteilsvermögen kombinieren.

Dieser Artikel zielt darauf ab, ein einfaches und unkompliziertes Tutorial zur Umwandlung von Byte -Stream -Daten aus einem intelligenten Messgerät in eine hexadezimale Schnur in Python zu konvertieren. Mithilfe der Bytes.hex () -Methode ist es leicht, Byte -Daten in eine lesbare Hexadezimalformat -Format -Migration zu konvertieren. Der Artikel enthält Beispielcode und Überlegungen, die den Lesern helfen, diese Technologie besser zu verstehen und anzuwenden.

Führen Sie Pipinstall-Rrequirements.txt aus, um das Abhängigkeitspaket zu installieren. Es wird empfohlen, zunächst die virtuelle Umgebung zu erstellen und zu aktivieren, um Konflikte zu vermeiden, sicherzustellen, dass der Dateipfad korrekt ist und dass die PIP aktualisiert wurde, und Optionen wie-No-Deps oder -User, um das Installationsverhalten bei Bedarf anzupassen.
