Google Colaboratoryでの.py実行
Google ColaboratoryでGPUを用いて.pyファイルの実行を行いたいです。
Colaboratory上のノートブックで下記の操作を行いました。
In[1]: from google.colab import drive drive.mount('/content/drive') In[2]: import os os.chdir('/content/drive/My Drive/Colaboratory/animal') In[3]: ls Out[3]: animal_aug.npy animal_cnn.py crow/ monkey/ animal_cnn_aug.ipynb animal.csv download.py __pycache__/ animal_cnn_aug.py animal.npy gen_data_augmented.py Untitled.ipynb animal_cnn.h5 boar/ gen_data.py
この中の「animal_cnn_aug.py」の実行を行いたいので下記の操作を行いました。
In[4]: %run -i animal_cnn_aug.py Out[4]: Using TensorFlow backend.
すると「Using TensorFlow backend.」というメッセージは出るのですが,このまま動かず実際にPythonファイルを実行できていません。
実行したいPythonファイルはこのようになっております。↓
from keras.models import Sequential from keras.layers import Conv2D, MaxPooling2D from keras.layers import Activation, Dropout, Flatten, Dense from keras.utils import np_utils import keras import tensorflow import numpy as np classes = ["monkey", "boar", "crow"] num_classes = len(classes) image_size = 50 def main(): X_train, X_test, y_train, y_test = np.load("./animal_aug.npy") X_train = X_train.astype("float") / 256 X_test = X_test.astype("float") / 256 y_train = np_utils.to_categorical(y_train, num_classes) y_test = np_utils.to_categorical(y_test, num_classes) model = model_train(X_train, y_train) model_eval(model, X_test, y_test) def model_train(X, y): model = Sequential() model.add(Conv2D(32,(3,3), padding="same", input_shape=X.shape[1:])) model.add(Activation("relu")) model.add(Conv2D(32,(3,3))) model.add(Activation("relu")) model.add(MaxPooling2D(pool_size=(2,2))) model.add(Dropout(0.25)) model.add(Conv2D(64,(3,3), padding="same")) model.add(Activation("relu")) model.add(Conv2D(64,(3,3))) model.add(Activation("relu")) model.add(MaxPooling2D(pool_size=(2,2))) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(512)) model.add(Activation("relu")) model.add(Dropout(0.5)) model.add(Dense(3)) model.add(Activation("softmax")) opt = keras.optimizers.rmsprop(lr=0.0001, decay=1e-6) model.compile(loss="categorical_crossentropy", optimizer=opt, metrics=["accuracy"]) model.fit(X, y, batch_size=32, epochs=100) model.save("./animal_cnn_aug.h5") return model def model_eval(model, X, y): scores = model.evaluate(X, y, verbose=1) print("Test Loss: ", scores[0]) print("Test Accuracy: ", scores[1]) if __name__ == "__main__": main()
解決策を知っている方,ご教示いただけると幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/02 10:54