Dieses Tutorial zeigt, dass ein Faltungsnetz (CNN) für die MNIST -Ziffernklassifizierung unter Verwendung von JAX, Flachs und Optax aufgebaut, trainiert und bewertet wird. Wir werden alles von Umgebungsaufbau- und Datenvorverarbeitung bis hin zu Modellarchitektur, Schulungsschleife, Metrikvisualisierung und schließlich Vorhersage für benutzerdefinierte Bilder abdecken. Dieser Ansatz unterstreicht die synergistischen Stärken dieser Bibliotheken für effizientes und skalierbares tiefes Lernen.
Lernziele:
- Beherrschen Sie die Integration von Jax, Flachs und Optax für die Entwicklung des neuronalen Netzwerks.
- Erfahren Sie, dass Datensätze mithilfe von TensorFlow -Datensätzen (TFDs) vorgefertigt und geladen werden.
- Implementieren Sie ein CNN für eine effektive Bildklassifizierung.
- Visualisieren Sie den Trainingsfortschritt mithilfe wichtiger Metriken (Verlust und Genauigkeit).
- Bewerten Sie die Leistung des Modells auf benutzerdefinierten Bildern.
Dieser Artikel ist Teil des Datenwissenschaftsblogathons.
Inhaltsverzeichnis:
- Lernziele
- Das JAX-, Flachs- und Optax -Kraftpaket
- JAX -Setup: Installation und Importe
- MNIST -Daten: Laden und Vorverarbeitung
- Konstruktion des CNN
- Modellbewertung: Metriken und Verfolgung
- Die Trainingsschleife
- Ausführung von Schulungen und Bewertung
- Visualisierung der Leistung
- Vorhersage mit benutzerdefinierten Bildern
- Abschluss
- Häufig gestellte Fragen
Das Powerhouse Jax, Flachs und Optax:
Effizienter, skalierbares Deep -Learning erfordert leistungsstarke Tools für Berechnung, Modelldesign und Optimierung. Jax, Flachs und Optax befassen sich gemeinsam mit diesen Anforderungen:
JAX: Numerical Computing Excellence:
JAX bietet eine leistungsstarke numerische Berechnung mit einer numpy-ähnlichen Schnittstelle. Zu den wichtigsten Funktionen gehören:
- Automatische Differenzierung (AUTOGRAD): Mühelose Gradientenberechnung für komplexe Funktionen.
- Just-in-Time (JIT) -Kompilation: Beschleunigte Ausführung von CPUs, GPUs und TPUs.
- Vektorisierung: Vereinfachte Stapelverarbeitung über
vmap
. - Hardwarebeschleunigung: Native Unterstützung für GPUs und TPUs.
Flachs: Flexible neuronale Netzwerke:
Flax, eine JAX-basierte Bibliothek, bietet einen benutzerfreundlichen und hoch anpassbaren Ansatz für die Konstruktion neuronaler Netzwerke:
- Stateful Module: Vereinfachter Parameter und Zustandsmanagement.
- Concise API: Intuitive Modelldefinition mit dem Dekorator
@nn.compact
. - Anpassungsfähigkeit: Geeignet für verschiedene Architekturen von einfach bis komplex.
- Seamless JAX -Integration: Mühelose Nutzung der Fähigkeiten von JAX.
Optax: umfassende Optimierung:
Optax stromabreiche Gradientenhandhabung und -optimierung, bereitgestellt:
- Optimierer -Sorte: Eine breite Palette von Optimierern, einschließlich SGD, Adam und RMSProp.
- Gradientenmanipulation: Werkzeuge zum Ausschneiden, Skalieren und Normalisierung.
- Modulares Design: Einfache Kombination von Gradiententransformationen und Optimierern.
Dieser kombinierte Rahmen bietet ein leistungsstarkes, modulares Ökosystem für die effiziente Entwicklung des Deep -Learning -Modells.
JAX -Setup: Installation und Importe:
Installieren Sie die erforderlichen Bibliotheken:
!
Wesentliche Bibliotheken importieren:
Jax importieren Importieren Sie Jax.numpy als JNP von Flachs importieren Leinen als nn von flax.training import Train_state Optax importieren Numph als NP importieren Tensorflow_Datasets als TFDS importieren matplotlib.pyplot als pLT importieren
MNIST -Daten: Laden und Vorverarbeitung:
Wir laden und werden den MNIST -Datensatz mit TFDS geladen:
Def get_datasets (): ds_builder = tfds.builder ('mnist') ds_builder.download_and_prepare () train_ds = tfds.as_numpy (ds_builder.as_dataset (split = 'train', batch_size = -1)) test_ds = tfds.as_numpy (ds_builder.as_dataset (split = 'test', batch_size = -1)) Train_ds ['Bild'] = jnp.float32 (train_ds ['Bild']) / 255.0 test_ds ['Bild'] = jnp.float32 (test_ds ['Bild']) / 255.0 return train_ds, test_ds train_ds, test_ds = get_datasets ()
Bilder werden auf den Bereich normalisiert [0, 1].
Konstruktion des CNN:
Unsere CNN -Architektur:
Klasse cnn (nn.module): @nn.comPact def __call __ (self, x): x = nn.conv (features = 32, kernel_size = (3, 3)) (x) x = nn.relu (x) x = nn.avg_pool (x, window_shape = (2, 2), strides = (2, 2)) x = nn.conv (features = 64, kernel_size = (3, 3)) (x) x = nn.relu (x) x = nn.avg_pool (x, window_shape = (2, 2), strides = (2, 2)) x = x.reshape ((x.Shape [0], -1)) x = nn.dense (features = 256) (x) x = nn.relu (x) x = nn.dense (features = 10) (x) Rückkehr x
Dies umfasst Faltungsschichten, Bündelungsschichten, eine Abflachungsschicht und dichte Schichten.
Modellbewertung: Metriken und Verfolgung:
Wir definieren Funktionen zur Berechnung des Verlusts und der Genauigkeit:
Def compute_metrics (Protokolls, Beschriftungen): LUST = JNP.MEAN (optax.softmax_cross_entropy (logits, jax.nn.one_hot (Labels, num_classeses = 10))) accuracy = jnp.mean (jnp.argmax (logits, -1) == Labels) Metriken = {'Verlust': Verlust, 'Genauigkeit': Genauigkeit} Metriken zurückgeben # ... (train_step und eval_step -Funktionen bleiben weitgehend gleich) ...
(Die Funktionen von Train_Step und Eval_Step würden hier enthalten, ähnlich wie der ursprüngliche Code.)
Die Trainingsschleife:
Die Trainingsschleife aktualisiert iterativ das Modell:
# ... (Train_epoch und Eval_Model -Funktionen bleiben weitgehend gleich) ...
(Die Funktionen von Train_epoch und Eval_Model würden hier enthalten, ähnlich wie der ursprüngliche Code.)
Ausführung von Schulungen und Bewertung:
Wir führen den Schulungs- und Bewertungsprozess aus:
# ... (Trainings- und Bewertungsausführungscode bleibt weitgehend gleich) ...
(Der Ausführungscode für Schulungen und Bewertung, einschließlich Parameterinitialisierung, Optimierer -Setup und die Trainingsschleife, werden hier enthalten, ähnlich dem ursprünglichen Code.)
Visualisierung der Leistung:
Wir visualisieren Trainings- und Testmetriken mit Matplotlib:
# ... (Matplotlib -Plotcode bleibt weitgehend gleich) ...
(Der Matplotlib -Plotcode zur Visualisierung von Verlust und Genauigkeit würde hier ähnlich wie der ursprüngliche Code enthalten.)
Vorhersagen mit benutzerdefinierten Bildern:
Dieser Abschnitt zeigt die Vorhersage auf benutzerdefinierten Bildern (Code bleibt weitgehend das gleiche wie das Original).
# ... (Code zum Hochladen, Vorverarbeitung und Vorhersagen auf benutzerdefinierten Bildern bleibt weitgehend gleich) ...
Abschluss:
Dieses Tutorial zeigte die Effizienz und Flexibilität von Jax, Flachs und Optax für den Bau und die Schulung eines CNN. Die Verwendung von TFDs vereinfachte die Datenbearbeitung und die metrische Visualisierung lieferte wertvolle Erkenntnisse. Die Fähigkeit, das Modell auf benutzerdefinierten Bildern zu testen, unterstreicht seine praktische Anwendbarkeit.
Häufig gestellte Fragen:
(FAQs bleiben weitgehend das Gleiche wie das Original.)
Der bereitgestellte Colab -Link würde hier enthalten. Denken Sie daran, /uploads/....webp
Webp -Bildpfade durch die tatsächlichen Pfade zu Ihren Bildern zu ersetzen.
Das obige ist der detaillierte Inhalt vonBildklassifizierung mit JAX, Flachs und Optax. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
![Kann Chatgpt nicht verwenden! Erklären Sie die Ursachen und Lösungen, die sofort getestet werden können [die neueste 2025]](https://img.php.cn/upload/article/001/242/473/174717025174979.jpg?x-oss-process=image/resize,p_40)
Chatgpt ist nicht zugänglich? Dieser Artikel bietet eine Vielzahl von praktischen Lösungen! Viele Benutzer können auf Probleme wie Unzugänglichkeit oder langsame Reaktion stoßen, wenn sie täglich ChatGPT verwenden. In diesem Artikel werden Sie geführt, diese Probleme Schritt für Schritt basierend auf verschiedenen Situationen zu lösen. Ursachen für Chatgpts Unzugänglichkeit und vorläufige Fehlerbehebung Zunächst müssen wir feststellen, ob sich das Problem auf der OpenAI -Serverseite oder auf dem eigenen Netzwerk- oder Geräteproblemen des Benutzers befindet. Bitte befolgen Sie die folgenden Schritte, um Fehler zu beheben: Schritt 1: Überprüfen Sie den offiziellen Status von OpenAI Besuchen Sie die OpenAI -Statusseite (status.openai.com), um festzustellen, ob der ChatGPT -Dienst normal ausgeführt wird. Wenn ein roter oder gelber Alarm angezeigt wird, bedeutet dies offen

Am 10. Mai 2025 teilte der MIT-Physiker Max Tegmark dem Guardian mit, dass AI Labs Oppenheimers Dreifaltigkeitstestkalkül emulieren sollten, bevor sie künstliche Super-Intelligence veröffentlichen. „Meine Einschätzung ist, dass die 'Compton Constant', die Wahrscheinlichkeit, dass ein Rennen ums Rasse

Die KI -Musikkreationstechnologie verändert sich mit jedem Tag. In diesem Artikel werden AI -Modelle wie ChatGPT als Beispiel verwendet, um ausführlich zu erklären, wie mit AI die Erstellung der Musik unterstützt und sie mit tatsächlichen Fällen erklärt. Wir werden vorstellen, wie man Musik durch Sunoai, Ai Jukebox auf Umarmung und Pythons Music21 -Bibliothek kreiert. Mit diesen Technologien kann jeder problemlos Originalmusik erstellen. Es ist jedoch zu beachten, dass das Urheberrechtsproblem von AI-generierten Inhalten nicht ignoriert werden kann, und Sie müssen bei der Verwendung vorsichtig sein. Lassen Sie uns die unendlichen Möglichkeiten der KI im Musikfeld zusammen erkunden! OpenAIs neuester AI -Agent "Openai Deep Research" führt vor: [CHATGPT] ope

Die Entstehung von Chatgpt-4 hat die Möglichkeit von AI-Anwendungen erheblich erweitert. Im Vergleich zu GPT-3,5 hat sich ChatGPT-4 erheblich verbessert. Es verfügt über leistungsstarke Kontextverständnisfunktionen und kann auch Bilder erkennen und generieren. Es ist ein universeller AI -Assistent. Es hat in vielen Bereichen ein großes Potenzial gezeigt, z. B. die Verbesserung der Geschäftseffizienz und die Unterstützung der Schaffung. Gleichzeitig müssen wir jedoch auch auf die Vorsichtsmaßnahmen ihrer Verwendung achten. In diesem Artikel werden die Eigenschaften von ChatGPT-4 im Detail erläutert und effektive Verwendungsmethoden für verschiedene Szenarien einführt. Der Artikel enthält Fähigkeiten, um die neuesten KI -Technologien voll auszunutzen. Weitere Informationen finden Sie darauf. OpenAIs neueste AI -Agentin, klicken Sie auf den Link unten, um Einzelheiten zu "OpenAI Deep Research" zu erhalten.

CHATGPT -App: Entfesselt Ihre Kreativität mit dem AI -Assistenten! Anfängerführer Die ChatGPT -App ist ein innovativer KI -Assistent, der eine breite Palette von Aufgaben erledigt, einschließlich Schreiben, Übersetzung und Beantwortung von Fragen. Es ist ein Werkzeug mit endlosen Möglichkeiten, die für kreative Aktivitäten und Informationssammeln nützlich sind. In diesem Artikel werden wir für Anfänger eine leicht verständliche Weise von der Installation der ChatGPT-Smartphone-App bis hin zu den Funktionen für Apps wie Spracheingangsfunktionen und Plugins sowie die Punkte erklären, die Sie bei der Verwendung der App berücksichtigen sollten. Wir werden auch die Pluginbeschränkungen und die Konfiguration der Geräte-zu-Device-Konfiguration genauer betrachten

Chatgpt Chinesische Version: Schalte neue Erfahrung des chinesischen KI -Dialogs frei Chatgpt ist weltweit beliebt. Wussten Sie, dass es auch eine chinesische Version bietet? Dieses leistungsstarke KI -Tool unterstützt nicht nur tägliche Gespräche, sondern behandelt auch professionelle Inhalte und ist mit vereinfachtem und traditionellem Chinesisch kompatibel. Egal, ob es sich um einen Benutzer in China oder ein Freund, der Chinesisch lernt, Sie können davon profitieren. In diesem Artikel wird detailliert eingeführt, wie die chinesische ChatGPT -Version verwendet wird, einschließlich der Kontoeinstellungen, der Eingabeaufgabe der chinesischen Eingabeaufforderung, der Filtergebrauch und der Auswahl verschiedener Pakete sowie potenziellen Risiken und Antwortstrategien. Darüber hinaus werden wir die chinesische Chatgpt -Version mit anderen chinesischen KI -Tools vergleichen, um die Vorteile und Anwendungsszenarien besser zu verstehen. Openais neueste KI -Intelligenz

Diese können als der nächste Sprung nach vorne im Bereich der generativen KI angesehen werden, was uns Chatgpt und andere Chatbots mit großer Sprache modellierte. Anstatt nur Fragen zu beantworten oder Informationen zu generieren, können sie in unserem Namen Maßnahmen ergreifen, Inter

Effiziente Mehrfachkontoverwaltungstechniken mit Chatgpt | Eine gründliche Erklärung, wie man Geschäft und Privatleben nutzt! Chatgpt wird in verschiedenen Situationen verwendet, aber einige Leute machen sich möglicherweise Sorgen über die Verwaltung mehrerer Konten. In diesem Artikel wird ausführlich erläutert, wie mehrere Konten für ChatGPT, was zu tun ist, wenn Sie es verwenden und wie Sie es sicher und effizient bedienen. Wir decken auch wichtige Punkte wie den Unterschied in der Geschäfts- und Privatnutzung sowie die Einhaltung der Nutzungsbedingungen von OpenAI ab und bieten einen Leitfaden zur Verfügung, mit dem Sie mehrere Konten sicher verwenden können. Openai


Heiße KI -Werkzeuge

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

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

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Dreamweaver CS6
Visuelle Webentwicklungstools

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)
