Python implementiert den WOA-Algorithmus zur intelligenten Waloptimierung, um die Projektpraxis des LightGBM-Klassifizierungsmodells (LGBMClassifier-Algorithmus) zu optimieren

Hinweis: Dies ist einmaschinelles Lernprojekt (wird mit Daten + Code + Dokumentation + geliefert). Video-Erklärung), wenn SieDaten + Code + Dokumentation + Video-Erklärung benötigen, können Sie direkt zum Ende gehen des Artikels, um ihn zu bekommen.

1.Elementhintergrund

Der Waloptimierungsalgorithmus (WOA) ist ein neuer Schwarmintelligenzoptimierungsalgorithmus, der 2016 von Mirjalili et al. von der Griffith University in Australien vorgeschlagen wurde. Zu seinen Vorteilen gehören die einfache Bedienung, wenige anzupassende Parameter und die Möglichkeit, aus dem lokalen Optimum herauszuspringen. starke Fähigkeit.

Dieses Projekt optimiert das LightGBM-Klassifizierungsmodell durch den WOA-Waloptimierungsalgorithmus.

2.Nummernerfassung

Die Modellierungsdaten für diesen Zeitraum stammen aus dem Internet (zusammengestellt vom Autor dieses Projekts). Die Statistiken der Datenelemente lauten wie folgt:

Seriennummer 

Variablennamen

beschreiben

1

x1

2

x2

3

x3

4

x4

5

x5

6

x6

7

x7

8

x8

9

x9

10

x10

11

Und

abhängige Variable

Die Datendetails lauten wie folgt (teilweise angezeigt):

3.Datenvorverarbeitung

3.1 用PundasTools

Verwenden Sie die head()-Methode des Pandas-Tools, um die ersten fünf Datenzeilen anzuzeigen:

Schlüsselcode:

3.2 Ansicht mit fehlenden Daten

Verwenden Sie die info()-Methode des Pandas-Tools, um Dateninformationen anzuzeigen:

    

Wie Sie dem Bild oben entnehmen können, gibt es insgesamt 11 Variablen, keine fehlenden Werte in den Daten und insgesamt 1.000 Daten.

Schlüsselcode:  

3.3Berechnung der Zahlenvorschrift 

Verwenden Sie die Methode discover() des Pandas-Tools, um den Mittelwert, die Standardabweichung, den Minimalwert, das Quantil und den Maximalwert der Daten anzuzeigen.

Der Schlüsselcode lautet wie folgt:     

4.Explorative Datenanalyse

4.1y Spaltenmuster ändern 

Verwenden Sie die plot()-Methode des Matplotlib-Tools, um ein Histogramm zu zeichnen:

4.2 y=1 Stichprobe x1 Variablenverteilungshistogramm

Verwenden Sie die hist()-Methode des Matplotlib-Tools, um ein Histogramm zu zeichnen:

4.3 Kompatibilitätsanalyse

Wie aus der obigen Abbildung ersichtlich ist, ist die Korrelation umso stärker, je größer der Wert ist. Positive Werte sind positive Korrelationen und negative Werte sind negative Korrelationen.

5.Spezieller Expeditionsprozess

5.1 Feature-Daten und Beschriftungsdaten erstellen

Der Schlüsselcode lautet wie folgt:

5.2 Datensatzaufteilung

Die Methode train_test_split () wird verwendet, um 80 % des Trainingssatzes und 20 % des Testsatzes zu teilen. Der Schlüsselcode lautet wie folgt:

6. Konstruieren Sie den WOA-Waloptimierungsalgorithmus, um das LightGBM-Klassifizierungsmodell zu optimieren

Der WOA-Waloptimierungsalgorithmus wird hauptsächlich zur Optimierung des LightGBM-Klassifizierungsalgorithmus für die Zielklassifizierung verwendet.

6.1 Der WOA-Waloptimierungsalgorithmus findet optimale Parameterwerte   

Optimale Parameter:

6.2 Modell mit optimalen Parameterwerten erstellen

Seriennummer

Modellname

Parameter

1

LightGBM-Klassifizierungsmodell

n_estimators=best_n_estimators

2

learning_rate=best_learning_rate

7. Modellbewertung

7.1 Bewertungsindikatoren und Ergebnisse

Zu den Bewertungsindikatoren gehören hauptsächlich Genauigkeit, Präzision, Rückruf, F1-Score usw.

Modellname

Indikatorname

Indexwert

Testsatz

LightGBM-Klassifizierungsmodell

Genauigkeit

0,9700

Präzision

0,97

Rückrufrate

0,97

F1-Ergebnis

0,97

Wie aus der obigen Tabelle ersichtlich ist, beträgt der F1-Score 0,97, was darauf hinweist, dass das Modell effektiv ist.

Der Schlüsselcode lautet wie folgt:

7.2 Klassifizierungsbericht

   

Wie aus der obigen Abbildung ersichtlich ist, beträgt der F1-Score für die Klassifizierung 0 0,97; der F1-Score für die Klassifizierung 1 beträgt 0,97.

7.3 Verwirrungsmatrix

Wie aus der obigen Abbildung ersichtlich ist, gibt es 3 Stichproben, die tatsächlich 0 sind und nicht als 0 vorhergesagt werden. Es gibt 3 Stichproben, die tatsächlich 1 sind und nicht als 1 vorhergesagt werden. Die Vorhersagegenauigkeit ist insgesamt gut.​  

8.Ausblick zum Fazit

Zusammenfassend lässt sich sagen, dass in diesem Artikel der WOA-Waloptimierungsalgorithmus verwendet wird, um die optimalen Parameterwerte des LightGBM-Klassifizierungsalgorithmus zu finden und ein Klassifizierungsmodell zu erstellen, was letztendlich beweist, dass das von uns vorgeschlagene Modell gut funktioniert. Dieses Modell kann für Vorhersagen von Alltagsprodukten verwendet werden.


# 本次机器学习项目实战所需的资料,项目资源如下:
 
# 项目说明:


链接:https://pan.baidu.com/s/1i1DZ3EMy0RL9loJ0N7n5Ow 
提取码:rw5e

Weitere praktische Projekte finden Sie in der Liste praktischer Machine-Learning-Projekte:

Praktische Sammlungsliste für maschinelles Lernen-Projekt_Praktisches Projekt für maschinelles Lernen_Pang Ges wirklich guter Blog-CSDN-Blog


おすすめ

転載: blog.csdn.net/weixin_42163563/article/details/134647126