2017-12-06 1 views
-2

Ich baue einen Bildklassifizierer, in dem ich 66 Klassen und Bilder um 50000 habe und der Ram meines PCs ist 12 GB. Mein RAM reicht nicht für das Training der Bilder aus. Meine Frage ist, ob die Auflösung der Bilder die Genauigkeit des Modells beeinflusst Ich benutze konvolutionelle neuronale Netze.Beeinflusst die eingegebene Dimension/Auflösung die Leistung von Convolutional Neural Networks?

+1

Es könnte so viel beeinflussen, wie es unsere Vision beeinträchtigen würde. Es gibt wahrscheinlich auch eine Grenze für das Modell. Aber was ist die Batchgröße, die Sie verwenden? Versuchen Sie es mit 'generator' und' model.fit_generator() '. Es ist sehr üblich, wenn man mit vielen Bildern arbeitet. Keras hat ein paar Optionen wie der ImageDataGenerator: https://keras.io/preprocessing/image/ –

+1

Ich bin Ändern der Größe nur die Daten in eine bestimmte Auflösung und alle Bilder während einer Größenänderung nicht geändert werden, weil ram gut voll thats'y immer kannst du sagen, was min ist? Auflösung eines Bildes, mit dem ich mein Modell trainieren kann? –

+1

Testen Sie online (inkrementelle) Lernalgorithmen. Anstatt alle Bilder gleichzeitig in den Speicher zu laden, tun Sie es einfach für einige Bilder als @ DanielMöller, indem Sie die Stapelgröße verwenden. Sie können nur die Größe der Bilder im laufenden Betrieb ändern. Es gibt nichts als Mindestlösung. –

Antwort

0

Wenn Sie faltungsneurale Netzwerke mit vollständig verbundener Ebene verwenden, um Vorhersagewahrscheinlichkeiten zu erhalten, hat die Eingabeschicht eine feste Größe. Daher müssen Sie alle Bilder auf diese Größe vorverarbeiten, um sie dem Netzwerk zuzuführen.

Wenn Sie Bilder mit einer Größe haben weniger als diese Größe, müssen Sie zu interpolieren und erhöhen Größe bis zu diesem so keine Wirkung auf das Gedächtnis durch weitere Bildgröße zu verringern. Daher ist die minimale Auflösung die Faltungsschichtgröße der Eingabe.

Für Ihre ram Ausgabe, je nach Rahmen Sie verwenden, sollten unabhängig davon, dass Problem lösen Warteschlangen richtig mit, wie groß Größe Bilder sind. Wenn der OOM-Fehler während der Vorverarbeitung auftritt, versuchen Sie, die Größe der Warteschlange so zu reduzieren, dass immer nur ein Bruchteil der Bilder in der Größe angepasst wird, um in den Speicher zu passen. Versuchen Sie, die Stapelgröße zu reduzieren, wenn OOM während des Trainings ist.

+0

was ist min. Auflösung eines Bildes, mit dem ich mein Modell trainieren kann? –

Verwandte Themen