2017-01-26 52 views
4

我正在嘗試使用cifar10數據集來運行深度學習模型。當安裝在系統上keras和一個嘗試使用的數據集,在keras下載一次:當使用碼頭集裝箱時,keras在哪裏存儲其數據集?

~/.keras/datasets/ 

我說,因爲我可以LS該目錄,我看到:

$ ls 
cifar-10-batches-py  cifar-10-batches-py.tar.gz cifar-100-python   cifar-100-python.tar.gz mnist.pkl.gz 

然而,當我在碼頭集裝箱中安裝keras ~/.keras不存在。我確定它被保存在某個地方,因爲當我通過帶有bash的容器(使用docker run -it --rm tf_img bash)登錄到docker映像時,我可以稍後加載數據集。但是,我在這裏找不到可能保存的文件。他們在哪裏得救?

另外,一旦我找到這個位置,我打算用容器將我的本地~/.keras/(或任何我登錄的計算機)量化,這樣數據集不必每次都被下載30次嘗試訓練一些模型。


首先進步,我發現其中.keras在容器使用find -type d -name .keras命令(其在./root/.keras)。然而,即使我正確地啓動了文件夾,它仍然會下載它(儘管我已經去了容器中的位置/root/.keras,並且看到了它在我的本地計算機中的東西)。我做了:

docker run -it --rm -v /Users/folder1:/Users/folder1 -v /Users/Pinocchio/.keras:/root/keras tf_cpu cifar10_cnn.py 

它仍然下載數據集。爲什麼?

另一件令我感到非常奇怪的事情是,當我撞到容器時,它開始於根內部,它從來沒有這樣做過。

+0

好的,所以在做'find -type d -name .keras'之後,看起來位置是'./root/.keras'。現在讓我們看看當我調整這些時會發生什麼。 – Pinocchio

+0

-v中的錯字應該是'.keras'而不是'keras'。 – Pinocchio

回答

2

好像我解決了它。要查找.keras是容器做一次登錄到容器的bash(如docker run -it --rm -v /local:/container image_name bash爲例):

find -type d -name .keras 

發現該位置是

./root/.keras 

現在只是體積位置

docker run -it --rm -v /Users/folder1:/Users/folder1 -v /Users/Pinocchio/.keras:/root/.keras tf_cpu cifar10_cnn.py 

確保沒有任何錯別字,特別是因爲它的.keras,而不是:數據集的。