2017-07-06 161 views
-1

我有一些關於Tensorflow的錯誤信息問題。很多地方的信息很多,而且還不夠完整。畢竟,在Linux上設置Tensorflow的正確方法是什麼?

我使用CUDA 8.0,cuDNN建立了我的系統,並且我有Keras + Theano在python 2.7中正常工作。我正在嘗試移動到Tensorflow。

正如我曾與numpy的和其他的東西兼容性問題,當我試圖在同一個環境中進行安裝,我安裝miniconda2,創造了一個虛擬的ENV它conda create -n tensorflow pip並激活它,按照指示在這裏:https://www.tensorflow.org/install/install_linux#InstallingAnaconda

環境似乎可操作。

後來,我從https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.2.1-cp27-none-linux_x86_64.whl安裝tensorflow也Keras,才發現我已經重複上conda list一些模塊,一些標有一個版本字符串,別人只標有<pip>。特別是,我得到了一個Tensorflow-gpu 1.2.1Tensorflow 1.1.0。兩個都。舊版本與Keras一起來。

此外,還有警告無數的約Tensorflow不被編譯使用某些CPU指令集,這裏面的這個答案How to compile Tensorflow with SSE4.2 and AVX instructions?關於使用basel編譯它,但我真的不覺得在哪裏把源的任何信息代碼以及運行該bazel命令行後要移到哪個文件。更糟糕的是,每當我運行一個簡單的20x20矩陣乘法代碼作爲設備時,代碼列表中可怕的警告正確檢測到GTX 1070的存在,但從未真正確認它是用於計算的。 "/cpu:0"上跑得更快。我多麼想念Theano ...

有人能指出我發現我在哪裏可以找到:

  1. 什麼版本下載Tensorflow是當前(不一定是最新的)嗎?
  2. 簡明的步驟來完成它,如何測試如果這些步驟是正確的?

我使用Linux Mint的18

+0

StackOverflow是關於幫助人們修復他們的編程代碼。安裝調試,教程,研究,工具,建議,庫和代碼的請求是無關緊要的。 ***請***閱讀http://stackoverflow.com/help/how-to-ask,http://stackoverflow.com/help/dont-ask,http://stackoverflow.com/help/mcve和參加[旅遊](http://stackoverflow.com/tour),然後在此發佈更多Q​​.祝你好運。 – shellter

+0

與代碼/輸入/期望輸出/當前輸出/錯誤消息一起發佈1問題。祝你好運。 – shellter

回答

1

我已經使用暢達,並且已經安裝Tensorflow = 1.1.0,但似乎永遠都蟒蛇內工作正常。我還遇到過github問題,蟒蛇目前正在研究Tensorflow GPU版本,所以無論我在蟒蛇中嘗試過什麼,它都沒有使用我的Tesla NVIDIA P100-SXM2-16GB卡,它僅使用CPU。

我建議你使用正常的環境,直到他們得到Tensorflow-gpu才能在Anaconda工作。

要檢查tensorflow-gpu是否有效,我使用TF0.12/TF1.0的Inception v3模型。

這是我通過安裝tensorflow1的過程。0:

步驟0

sudo -i 
apt-get install aptitude 
aptitude install software-properties-common 
apt-get install libcupti-dev pip 
apt-get update 
apt-get upgrade libc6 

步驟1.安裝NVIDIA組件。我想你已經有安裝

https://developer.nvidia.com/rdp/cudnn-download (註冊中需要NVIDIA的加速計算開發者計劃)

Cudnn 5.1工程以及下載NVIDIA cuDNN 5.1 CUDA 8.0與大多數架構和操作系統的出有

步驟2.安裝巴澤勒和tensorflow

apt-get install bazel 

你可以去這個鏈接https://pypi.python.org/pypi/tensorflow-gpu/1.1.0rc0,做一個

pip install <python-wheel-version> 

如果你有python2.7和python 3 *安裝,然後使用PIP2來安裝python2.7

第3步:安裝的openjdk

apt-get install openjdk-8-jdk 

步驟4. GIT中克隆啓模型代碼

git clone https://github.com/tensorflow/models.git 
cd models 
git checkout master 
cd inception 

這就是其中bazel進來的圖片。請參閱Bazel的Getting Started文檔以獲取有關目標的更詳細說明。所以,如果你做一個

ls -lstr 

你可能會看到5個巴澤勒相關的符號鏈接

bazel-bin bazel-genfiles bazel-inception bazel-out bazel-testlogs 

這些都是你建立你的具體型號

目標目錄假設你是型號/成立目錄

bazel build inception/imagenet_train 

這激活了符號鏈接

注意:要使此imagenet_train.py正常工作,您需要準備imagenet數據集。你要麼跳過這一部分還是經過這樣的:

STEP 5在運行的第一次訓練腳本準備Imagenet數據集 ,你需要將ImageNet數據下載和轉換爲本地TFRecord格式。 首先,您需要註冊一個ImageNet帳戶才能訪問數據。查找註冊頁面,創建一個帳戶並請求訪問密鑰以下載數據。

在您擁有USERNAME和PASSWORD後,即可開始運行我們的腳本。確保您的硬盤至少有500 GB的可用空間用於下載和存儲數據。在這裏,我們選擇DATA_DIR = $ HOME/imagenet-data作爲這樣一個位置,但可以相應地進行編輯。

當您運行下面的腳本時,請在出現提示時輸入USERNAME和PASSWORD。這將在一開始就發生。輸入這些值後,您將不需要再次與腳本進行交互。

#location of where to place the ImageNet data 
DATA_DIR=$HOME/imagenet-data 

這裏$ HOME是/根

# build the preprocessing script. 
bazel build inception/download_and_preprocess_imagenet 

# run it 
bazel-bin/inception/download_and_preprocess_imagenet "${DATA_DIR}" 
# Place the tensor records at /root/dataset 

步驟6.源巴澤勒和tensorflow 此步驟是非常重要的。這將激活python軟件包,我想你可能會得到錯誤,因爲tensorflow的python軟件包沒有激活。 如果跳過第5步,那麼你可能要到

/models/inception/sample 

和運行gpu.py腳本

python gpu.py 

這應該確認您的tensorflow版本與您的GPU

source /opt/DL/bazel/bin/bazel-activate 
source /opt/DL/tensorflow/bin/tensorflow-activate 

您還可以通過導入tensorflow到python 例如: 導入tensorflow作爲tf

找到一個Hello World例如在其網站上,如果這使錯誤,那麼它並沒有被正確安裝

第7步:運行imagenet培訓 - 您可以跳過這一步,如果你跳過第5步

bazel-bin/inception/imagenet_train --num_gpus=1 --batch_size=256 --train_dir=/tmp --data_dir=/root/dataset/ --max_steps=100 
相關問題