mnist Problem
Verfasst: Donnerstag 1. November 2018, 17:34
Hallo!
Ich kriege für das folgende Programm die untenstehenden Fehlermeldungen:
Fehlermeldungen:
Was ich probiert habe, ist unter anderem dieses Kommando:
pip install python-mnist
Ich habe mich noch durch verschiedene Hinweise durchgelesen, bin aber noch nicht erfolgreich.
Habt ihr Tipps für mich?
Freundliche Grüße
Michael
Ich kriege für das folgende Programm die untenstehenden Fehlermeldungen:
Code: Alles auswählen
# Resourcen importieren
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import keras
from keras.models import Sequential
from keras.layers import Dense
from sklearn.preprocessing import LabelEncoder, OneHotEncoder, StandardScaler
from sklearn.model_selection import train_test_split
from sklearn.metrics import confusion_matrix
# Daten importieren
dataset = pd.read_csv('Churn_Modelling.csv')
X = dataset.iloc[:, 3:13].values
y = dataset.iloc[:, 13].values
# Der LabelEncoder kodiert automatisch verschiedene Bezeichnungen mit Werten zwischen 0 und n_classes-1
labelencoder_X_1 = LabelEncoder()
X[:, 1] = labelencoder_X_1.fit_transform(X[:, 1])
labelencoder_X_2 = LabelEncoder()
X[:, 2] = labelencoder_X_2.fit_transform(X[:, 2])
# Nun folgt die One-hot-Codierung, bei dem für jeden Wert der Merkmalsspalte ein Dummy-Merkmal erstellt wird
onehotencoder = OneHotEncoder(categorical_features = [1])
X = onehotencoder.fit_transform(X).toarray()
X = X[:, 1:]
# Der Datensatz wird in ein training set und ein test set aufgeteilt
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2)
# Der StandardScaler geht davon aus, dass die Daten innerhalb jedes Merkmals normal verteilt sind und
# skaliert sie so, dass die Verteilung nun um 0 zentriert ist, mit einer Standardabweichung von 1.
# Der Mittelwert und die Standardabweichung werden für das Merkmal berechnet und schliesslich wird dieses skaliert.
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform(X_test)
# Initialisierung des neuronalen Netzwerks
classifier = Sequential()
# Hinzufügen der Eingabeschicht und der ersten versteckten Schicht
classifier.add(Dense(output_dim = 6, init = 'uniform', activation = 'relu', input_dim = 11))
# Hinzufügen der zweiten versteckten Schicht
classifier.add(Dense(output_dim = 6, init = 'uniform', activation = 'relu'))
# Hinzufügen der Ausgabeschicht
classifier.add(Dense(output_dim = 1, init = 'uniform', activation = 'sigmoid'))
# Neuronales Netzwerk kompilieren
classifier.compile(optimizer = 'adam', loss = 'binary_crossentropy', metrics = ['accuracy'])
# Das Modell wird nun trainiert, aber man beachte: Wir verwenden die Fit-Methode für die Anpassung des Modells.
# Die Gewichte müssen optimiert werden, um die Modelleffizienz zu verbessern.
# Also wann aktualisiert man die Gewichte?
#
# -> batch size <- wird verwendet, um die Anzahl der Beobachtungen anzugeben, nach denen man das Gewicht aktualisieren möchte.
#
# -> epoch <- ist die Gesamtzahl der Iterationen. Die Wahl des Wertes von batch size und epoch funktioniert nur durch Ausprobieren.
classifier.fit(X_train, y_train, batch_size = 10, nb_epoch = 100)
# Vorhersage der Ergebnisse des test sets
y_pred = classifier.predict(X_test)
y_pred = (y_pred > 0.5)
# Erstellen der confusion matrix
cm = confusion_matrix(y_test, y_pred)
Fehlermeldungen:
Code: Alles auswählen
runfile('C:/Users/Admin/Downloads/ML_Models/01_11_18/NN_Model_1.py', wdir='C:/Users/Admin/Downloads/ML_Models/01_11_18')
Using TensorFlow backend.
Traceback (most recent call last):
File "<ipython-input-14-b7d815580b52>", line 1, in <module>
runfile('C:/Users/Admin/Downloads/ML_Models/01_11_18/NN_Model_1.py', wdir='C:/Users/Admin/Downloads/ML_Models/01_11_18')
File "C:\Users\Admin\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 880, in runfile
execfile(filename, namespace)
File "C:\Users\Admin\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 102, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "C:/Users/Admin/Downloads/ML_Models/01_11_18/NN_Model_1.py", line 7, in <module>
from keras.models import Sequential
File "C:\Users\Admin\Anaconda3\lib\site-packages\keras\__init__.py", line 3, in <module>
from . import utils
File "C:\Users\Admin\Anaconda3\lib\site-packages\keras\utils\__init__.py", line 6, in <module>
from . import conv_utils
File "C:\Users\Admin\Anaconda3\lib\site-packages\keras\utils\conv_utils.py", line 9, in <module>
from .. import backend as K
File "C:\Users\Admin\Anaconda3\lib\site-packages\keras\backend\__init__.py", line 89, in <module>
from .tensorflow_backend import *
File "C:\Users\Admin\Anaconda3\lib\site-packages\keras\backend\tensorflow_backend.py", line 5, in <module>
import tensorflow as tf
File "C:\Users\Admin\Anaconda3\lib\site-packages\tensorflow\__init__.py", line 26, in <module>
from tensorflow.tools.api.generator.api import * # pylint: disable=redefined-builtin
File "C:\Users\Admin\Anaconda3\lib\site-packages\tensorflow\tools\api\generator\api\__init__.py", line 531, in <module>
from tensorflow.tools.api.generator.api import keras
File "C:\Users\Admin\Anaconda3\lib\site-packages\tensorflow\tools\api\generator\api\keras\__init__.py", line 14, in <module>
from tensorflow.tools.api.generator.api.keras import datasets
File "C:\Users\Admin\Anaconda3\lib\site-packages\tensorflow\tools\api\generator\api\keras\datasets\__init__.py", line 11, in <module>
from tensorflow.tools.api.generator.api.keras.datasets import mnist
ImportError: cannot import name 'mnist'
Was ich probiert habe, ist unter anderem dieses Kommando:
pip install python-mnist
Ich habe mich noch durch verschiedene Hinweise durchgelesen, bin aber noch nicht erfolgreich.
Habt ihr Tipps für mich?
Freundliche Grüße
Michael