Heim Backend-Entwicklung Python-Tutorial Wie verwende ich neuronale Netze für die Regressionsanalyse in Python?

Wie verwende ich neuronale Netze für die Regressionsanalyse in Python?

Jun 05, 2023 pm 12:21 PM
python 神经网络 回归分析

Mit der Entwicklung der künstlichen Intelligenz haben neuronale Netze in vielen Bereichen, einschließlich der Regressionsanalyse, hervorragende Leistungen gezeigt. Die Python-Sprache wird häufig für maschinelles Lernen und Datenanalyseaufgaben verwendet und bietet viele Open-Source-Bibliotheken für maschinelles Lernen, wie z. B. Tensorflow und Keras. In diesem Artikel wird die Verwendung neuronaler Netze für die Regressionsanalyse in Python vorgestellt.

1. Was ist eine Regressionsanalyse?

In der Statistik ist die Regressionsanalyse eine Methode zur Analyse kausaler Zusammenhänge, bei der mathematische Modelle kontinuierlicher Variablen verwendet werden, um die Beziehung zwischen unabhängigen Variablen und abhängigen Variablen zu beschreiben. In der Regressionsanalyse wird normalerweise eine lineare Gleichung verwendet, um diese Beziehung zu beschreiben, zum Beispiel:

y = a + bx

wobei y die abhängige Variable ist, x die unabhängige Variable, a und b Konstanten in Klammern, die Linearität angeben Der Achsenabschnitt und die Steigung der Beziehung. Die Regressionsanalyse kann den Wert einer abhängigen Variablen durch Anpassen einer linearen Gleichung vorhersagen. Für Daten mit komplexen oder nichtlinearen Beziehungen können komplexere Modelle verwendet werden.

2. Anwendung eines neuronalen Netzwerks in der Regressionsanalyse

Neuronales Netzwerk ist ein komplexes mathematisches Modell, das aus mehreren Knoten besteht. Es trifft Vorhersagen über neue Daten, indem es die Muster und Muster der Eingabedaten lernt. Die Anwendung neuronaler Netze in der Regressionsanalyse erfolgt durch die Eingabe abhängiger Variablen und unabhängiger Variablen in das Netzwerk und das Training des neuronalen Netzwerks, um die Beziehung zwischen ihnen zu finden.

Anders als bei der herkömmlichen Regressionsanalyse müssen neuronale Netze bei der Datenanalyse nicht im Voraus eine lineare oder nichtlineare Gleichung definieren. Neuronale Netze können automatisch Muster und Muster finden und basierend auf den Details des Eingabedatensatzes lernen und analysieren. Dadurch können neuronale Netze eine hervorragende Leistung bei großen Datensätzen, Daten mit komplexen Mustern und Nichtlinearität zeigen.

3. Verwenden Sie Python für die Regressionsanalyse

Pythons Scikit-learn und Keras sind zwei sehr beliebte Python-Bibliotheken, die viele Tools für neuronale Netze und Regressionsanalysen bereitstellen. Hier verwenden wir das sequentielle Modell in Keras, um ein einfaches neuronales Netzwerk aufzubauen, und verwenden die train_test_split-Methode von Scikit-learn, um den bekannten Datensatz zu teilen, um unser Modell auszuwerten.

Schritt 1: Datenvorverarbeitung

Bevor Sie neuronale Netze für die Regressionsanalyse verwenden, müssen Sie die Daten vorbereiten. In diesem Artikel verwenden wir den Kraftstoffeffizienzdatensatz auf der Online-Lernplattform Kaggle. Dieser Datensatz enthält Daten zum Kraftstoffverbrauch von Fahrzeugen der US-amerikanischen National Highway Traffic Safety Administration. In den Daten enthaltene Faktoren wie Laufleistung, Zylinderanzahl, Hubraum, PS und Beschleunigung wirken sich alle auf die Kraftstoffeffizienz aus.

Wir werden die Pandas-Bibliothek verwenden, um den Datensatz zu lesen und zu verarbeiten:

import pandas as pd

#导入数据
df = pd.read_csv('auto-mpg.csv')
Nach dem Login kopieren

Schritt 2: Datenvorverarbeitung

Wir müssen den Datensatz in eine Form konvertieren, die das neuronale Netzwerk lesen kann. Wir werden die Methode get_dummies() der Pandas-Bibliothek verwenden, um die kategorialen Variablen in verwendbare Binärfelder zu zerlegen:

dataset = df.copy()
dataset = pd.get_dummies(dataset, columns=['origin'])
Nach dem Login kopieren

Als nächstes müssen wir den Datensatz in einen Trainingssatz und einen Testsatz unterteilen, um unser Modell zu bewerten. Hier entscheiden wir uns für die Verwendung der train_test_split-Methode von Scikit-learn:

from sklearn.model_selection import train_test_split

train_dataset, test_dataset = train_test_split(dataset, test_size=0.2, random_state=42)

#获取训练集的目标变量
train_labels = train_dataset.pop('mpg')

#获取测试集的目标变量
test_labels = test_dataset.pop('mpg')
Nach dem Login kopieren

Schritt 3: Erstellen Sie ein neuronales Netzwerkmodell

Wir verwenden das sequentielle Modell von Keras, um ein neuronales Netzwerkmodell zu erstellen, das zwei vollständig verbundene verborgene Schichten enthält, und verwenden die ReLU-Schicht mit Aktivierungsfunktion. Schließlich verwenden wir eine Ausgabeschicht mit einem einzelnen Knoten, um die Kraftstoffeffizienz vorherzusagen.

from tensorflow import keras
from tensorflow.keras import layers

model = keras.Sequential([
    layers.Dense(64, activation='relu', input_shape=[len(train_dataset.keys())]),
    layers.Dense(64, activation='relu'),
    layers.Dense(1)
])
Nach dem Login kopieren

Schritt 4: Kompilieren und trainieren Sie das Modell

Bevor wir das Modell trainieren, müssen wir das Modell kompilieren. Hier werden wir die Verlustfunktion und den Optimierer sowie die Bewertungsmetriken spezifizieren.

optimizer = keras.optimizers.RMSprop(0.001)

model.compile(loss='mse',
            optimizer=optimizer,
            metrics=['mae', 'mse'])
Nach dem Login kopieren

Als nächstes werden wir die fit()-Methode verwenden, um das Modell zu trainieren und es zur späteren Analyse im Verlaufsobjekt zu speichern.

history = model.fit(
  train_dataset, train_labels,
  epochs=1000, validation_split=0.2, verbose=0,
  callbacks=[keras.callbacks.EarlyStopping(monitor='val_loss', patience=10)])
Nach dem Login kopieren

Schritt 5: Bewerten Sie das Modell

Abschließend verwenden wir den Testdatensatz, um unser Modell auszuwerten und die Ergebnisse in der Variablen y_pred zu speichern.

test_predictions = model.predict(test_dataset).flatten()

print('测试集的平均误差: ', round(abs(test_predictions - test_labels).mean(), 2))
Nach dem Login kopieren

In diesem Beispiel lieferte das von uns verwendete Modell ein Vorhersageergebnis mit einem durchschnittlichen Fehler von etwa 2,54, und wir können den Verlust im Testsatz und im Validierungssatz im Verlaufsobjekt sehen.

4. Zusammenfassung

In diesem Artikel haben wir vorgestellt, wie man neuronale Netze in Python für die Regressionsanalyse verwendet. Wir begannen mit der Datenvorverarbeitung, nutzten dann Keras- und Scikit-Learn-Bibliotheken, um unser Modell zu erstellen und zu trainieren, und bewerteten die Leistung des Modells. Neuronale Netze verfügen über eine starke Leistung und zeigen extrem hohe Ergebnisse bei der Verarbeitung großer Datensätze und komplexer nichtlinearer Probleme. Warum versuchen Sie nicht, Ihr nächstes Regressionsproblem mithilfe eines neuronalen Netzwerks zu lösen?

Das obige ist der detaillierte Inhalt vonWie verwende ich neuronale Netze für die Regressionsanalyse in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP und Python: Code Beispiele und Vergleich PHP und Python: Code Beispiele und Vergleich Apr 15, 2025 am 12:07 AM

PHP und Python haben ihre eigenen Vor- und Nachteile, und die Wahl hängt von den Projektbedürfnissen und persönlichen Vorlieben ab. 1.PHP eignet sich für eine schnelle Entwicklung und Wartung großer Webanwendungen. 2. Python dominiert das Gebiet der Datenwissenschaft und des maschinellen Lernens.

Python gegen JavaScript: Community, Bibliotheken und Ressourcen Python gegen JavaScript: Community, Bibliotheken und Ressourcen Apr 15, 2025 am 12:16 AM

Python und JavaScript haben ihre eigenen Vor- und Nachteile in Bezug auf Gemeinschaft, Bibliotheken und Ressourcen. 1) Die Python-Community ist freundlich und für Anfänger geeignet, aber die Front-End-Entwicklungsressourcen sind nicht so reich wie JavaScript. 2) Python ist leistungsstark in Bibliotheken für Datenwissenschaft und maschinelles Lernen, während JavaScript in Bibliotheken und Front-End-Entwicklungsbibliotheken und Frameworks besser ist. 3) Beide haben reichhaltige Lernressourcen, aber Python eignet sich zum Beginn der offiziellen Dokumente, während JavaScript mit Mdnwebdocs besser ist. Die Wahl sollte auf Projektbedürfnissen und persönlichen Interessen beruhen.

Detaillierte Erklärung des Docker -Prinzips Detaillierte Erklärung des Docker -Prinzips Apr 14, 2025 pm 11:57 PM

Docker verwendet Linux -Kernel -Funktionen, um eine effiziente und isolierte Anwendungsumgebung zu bieten. Sein Arbeitsprinzip lautet wie folgt: 1. Der Spiegel wird als schreibgeschützte Vorlage verwendet, die alles enthält, was Sie für die Ausführung der Anwendung benötigen. 2. Das Union File System (UnionFS) stapelt mehrere Dateisysteme, speichert nur die Unterschiede, speichert Platz und beschleunigt. 3. Der Daemon verwaltet die Spiegel und Container, und der Kunde verwendet sie für die Interaktion. 4. Namespaces und CGroups implementieren Container -Isolation und Ressourcenbeschränkungen; 5. Mehrere Netzwerkmodi unterstützen die Containerverbindung. Nur wenn Sie diese Kernkonzepte verstehen, können Sie Docker besser nutzen.

So führen Sie Programme in der terminalen VSCODE aus So führen Sie Programme in der terminalen VSCODE aus Apr 15, 2025 pm 06:42 PM

Im VS -Code können Sie das Programm im Terminal in den folgenden Schritten ausführen: Erstellen Sie den Code und öffnen Sie das integrierte Terminal, um sicherzustellen, dass das Codeverzeichnis mit dem Terminal Working -Verzeichnis übereinstimmt. Wählen Sie den Befehl aus, den Befehl ausführen, gemäß der Programmiersprache (z. B. Pythons Python your_file_name.py), um zu überprüfen, ob er erfolgreich ausgeführt wird, und Fehler auflösen. Verwenden Sie den Debugger, um die Debugging -Effizienz zu verbessern.

Python: Automatisierung, Skript- und Aufgabenverwaltung Python: Automatisierung, Skript- und Aufgabenverwaltung Apr 16, 2025 am 12:14 AM

Python zeichnet sich in Automatisierung, Skript und Aufgabenverwaltung aus. 1) Automatisierung: Die Sicherungssicherung wird durch Standardbibliotheken wie OS und Shutil realisiert. 2) Skriptschreiben: Verwenden Sie die PSUTIL -Bibliothek, um die Systemressourcen zu überwachen. 3) Aufgabenverwaltung: Verwenden Sie die Zeitplanbibliothek, um Aufgaben zu planen. Die Benutzerfreundlichkeit von Python und die Unterstützung der reichhaltigen Bibliothek machen es zum bevorzugten Werkzeug in diesen Bereichen.

Ist die VSCODE -Erweiterung bösartig? Ist die VSCODE -Erweiterung bösartig? Apr 15, 2025 pm 07:57 PM

VS -Code -Erweiterungen stellen böswillige Risiken dar, wie das Verstecken von böswilligem Code, das Ausbeutetieren von Schwachstellen und das Masturbieren als legitime Erweiterungen. Zu den Methoden zur Identifizierung böswilliger Erweiterungen gehören: Überprüfung von Verlegern, Lesen von Kommentaren, Überprüfung von Code und Installation mit Vorsicht. Zu den Sicherheitsmaßnahmen gehören auch: Sicherheitsbewusstsein, gute Gewohnheiten, regelmäßige Updates und Antivirensoftware.

So installieren Sie Nginx in CentOS So installieren Sie Nginx in CentOS Apr 14, 2025 pm 08:06 PM

Die Installation von CentOS-Installationen erfordert die folgenden Schritte: Installieren von Abhängigkeiten wie Entwicklungstools, PCRE-Devel und OpenSSL-Devel. Laden Sie das Nginx -Quellcode -Paket herunter, entpacken Sie es, kompilieren Sie es und installieren Sie es und geben Sie den Installationspfad als/usr/local/nginx an. Erstellen Sie NGINX -Benutzer und Benutzergruppen und setzen Sie Berechtigungen. Ändern Sie die Konfigurationsdatei nginx.conf und konfigurieren Sie den Hörport und den Domänennamen/die IP -Adresse. Starten Sie den Nginx -Dienst. Häufige Fehler müssen beachtet werden, z. B. Abhängigkeitsprobleme, Portkonflikte und Konfigurationsdateifehler. Die Leistungsoptimierung muss entsprechend der spezifischen Situation angepasst werden, z. B. das Einschalten des Cache und die Anpassung der Anzahl der Arbeitsprozesse.

Wofür ist VSCODE Wofür ist VSCODE? Wofür ist VSCODE Wofür ist VSCODE? Apr 15, 2025 pm 06:45 PM

VS Code ist der vollständige Name Visual Studio Code, der eine kostenlose und open-Source-plattformübergreifende Code-Editor und Entwicklungsumgebung von Microsoft ist. Es unterstützt eine breite Palette von Programmiersprachen und bietet Syntax -Hervorhebung, automatische Codebettel, Code -Snippets und intelligente Eingabeaufforderungen zur Verbesserung der Entwicklungseffizienz. Durch ein reiches Erweiterungs -Ökosystem können Benutzer bestimmte Bedürfnisse und Sprachen wie Debugger, Code -Formatierungs -Tools und Git -Integrationen erweitern. VS -Code enthält auch einen intuitiven Debugger, mit dem Fehler in Ihrem Code schnell gefunden und behoben werden können.

See all articles