我使用Tensorflow(CPU版本)作爲我的深度學習模型。具體使用DNNRegressor Estimator進行訓練,給定參數集(網絡結構,隱藏層,alpha等)雖然我能夠減少損失,但是模型需要花費很長時間學習(大約3天),而且時間很長每100步採取9秒。如何充分利用GPU進行TensorFlow Estimators?
我來到這個文章翻過: - https://medium.com/towards-data-science/how-to-traine-tensorflow-models-79426dabd304 ,發現GPU的可以更快速地學習。所以我從AWS(單核GPU)帶有4個(vCPU),12個(ECU)和61個(MiB)的p2.xlarge GPU。
但是學習速度在每100步第9秒時相同。我使用相同的代碼在CPU上使用Estimators,因爲我讀了Estimators自己使用GPU。這裏是我的「nvidia-smi」命令輸出。
- 據顯示,GPU存儲器被使用,但我的揮發性GPU-的Util是在1%以下。無法弄清楚,我錯過了什麼。它是設計成相同的還是我錯過了一些東西,因爲每秒的全局步數對於Estimators的CPU和GPU實現都是相同的。
- 我是否必須明確地改變DNNRegressor Estimator Code中的內容?
張量流開始需要一些時間,您檢查過程有多長時間? – Kev1n91
@ kev1n91這個時間對於所有的步驟都是不變的。所以這段時間正在使用。 – user3457384
看起來像GPU正在等待CPU運行緩慢。你如何提供數據? – Maxim