(Python+Tensorflow)编程踩坑集锦
(Python+Tensorflow)編程踩坑集錦
1 開發環境安裝
推薦視頻:https://www.icourse163.org/learn/PKU-1002536002?tid=1452937471#/learn/content?type=detail&id=1229556595&cid=1246770451&replay=true
1.1 Tensorflow2安裝過程(Win10平臺)
1.1.1 Anaconda
-
在Anaconda官網下載python3.7版本的Anaconda
-
安裝Anaconda過程中,添加環境變量
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-2PjktO72-1588738957899)(D:\76324\Pictures\picpick截圖\Image 016.png)]
-
打開Anaconda Prompt, 輸入
conda create -n TF2.1 python=3.7
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-WA6KxuoL-1588738957901)(D:\76324\Pictures\picpick截圖\Image 017.png)]
-
激活環境
conda activate TF2.1
-
安裝cuda
conda install cudatoolkit=10.1
-
安裝cudnn
conda install cudnn=7.6
-
安裝Tensorflow
pip install tensorflow==2.1
-
測試tensorflow安裝是否成功
import tensorflow as tf tf.__version__
1.1.2 Pycharm
-
安裝Pycharm
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-RZzAMPXs-1588738957904)(D:\76324\Pictures\picpick截圖\Image 018.png)]
-
配置Pycharm
-
新建工程
-
配置環境變量
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-EJ3W1c3m-1588738957906)(D:\76324\Pictures\picpick截圖\Image 019.png)]
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-4QNVU9Ao-1588738957908)(D:\76324\Pictures\picpick截圖\Image 021.png)]
-
-
測試
-
創建Python文件
-
輸入如下代碼測試
import tensorflow as tftensorflow_version = tf.__version__ gpu_available = tf.test.is_gpu_available()print("tensorflow version:", tensorflow_version, "\tGPU available:", gpu_available)a = tf.constant([1.0, 2.0], name="a") b = tf.constant([1.0, 2.0], name="b") result = tf.add(a, b, name="add") print(result)
-
1.2 pip更換國內鏡像源,解決安裝速度太慢
linux下指定位置為`$HOME/.config/pip/pip.conf`或者`$HOME/.pip/pip.conf`mac下指定位置為`$HOME/Library/Application Support/pip/pip.conf`或者`$HOME/.pip/pip.conf`windows下指定位置為`%APPDATA%\pip\pip.ini`或者`%HOME%\pip\pip.ini`在 pip 目錄下創建 pip.ini 文件, 內容如下[global]timeout = 6000index-url = https://pypi.tuna.tsinghua.edu.cn/simpletrusted-host = pypi.tuna.tsinghua.edu.cn 或者通過命令行修改鏡像 pip config --global set global.index-url https://mirrors.aliyun.com/pypi/simple/pip config --global set install.trusted-host mirrors.aliyun.com參考博客:https://blog.csdn.net/u013771353/article/details/103150362?depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-5&utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-5
1.3 conda 更換國內鏡像源,解決安裝速度太慢
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --set show_channel_urls yes或
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/ conda config --set show_channel_urls yes1.4 下載指定版本的opencv
pip install opencv-python==4.1.2.* #最后的 * 代表不定版本 #下載帶擴展包的opencv pip install opencv-contrib-python不同opencv下載包的網址: https://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv
1.5 conda 查看安裝包的依賴關系
conda search package_name=7.* --info
1.6 conda 查看有哪些版本的安裝包
conda search tensorflow-gpu
1.7 tensorflow-gpu與 cuDNN、CUDA版本之間的關系
參考: https://blog.csdn.net/hesongzefairy/article/details/104457091
1.8 安裝顯卡驅動
第一次安裝顯卡驅動時,直接去官網下載,結果下載的是最新的版本,與cuda 版本不兼容。去官網直接下載無法下載到以前的版本
第二次安裝顯卡驅動時,通過安裝cudatoolkit=9.1 ,順帶著安裝對應的顯卡驅動(顯卡驅動需要考慮對cudatoolkit的兼容性,而不是有些博客說,驅動和cudatoolkit是相互獨立,他們兩之間有依賴關系 )
2 Pycharm
2.1 文件data_manager找不到
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-8sqtezbo-1588738957909)(C:\Users\76324\AppData\Roaming\Typora\typora-user-images\1587305475850.png)]
解決:
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-AguqMJeK-1588738957911)(C:\Users\76324\AppData\Roaming\Typora\typora-user-images\1587305552916.png)]
2.2 Python移動項目文件(在Pycharm)后,找不到指定路徑
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-P4KhFWX3-1588738957913)(C:\Users\76324\AppData\Roaming\Typora\typora-user-images\1587222740927.png)]
進入 : run—>Debug Configuration
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-AU2aOWVi-1588738957915)(C:\Users\76324\AppData\Roaming\Typora\typora-user-images\1587259405870.png)]
3 異常 & 報錯
3.1 Python3 AttributeError: module ‘urllib’ has no attribute 'request’
把import urllib 改為:import urllib.request3.2 pip無法正常安裝dlib:running setup.py install for dlib ···error
pip install dlib==19.8.1 解決方法: 先要pip install cmake,Boost參考博客:https://blog.csdn.net/qq_41185868/article/details/79678783#dlib%E5%BA%93%E7%9A%84%E5%AE%89%E8%A3%85
3.3 module ‘cv2’ has no attribute ‘VideoCapture’
只安裝了opencv-contrib-python,沒有安裝opencv-python
only install pip3 install opencv-contrib-python not install pip3 install opencv-python; willl tell you module cv2 has no attribute VideoCapture
3.4 報錯: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize
這類錯誤常見有兩種原因:
一種是:cudnn , cuda版本不一致
把對應的版本改為:cuda=9.0 cudnn=7.6.5
另外一種是:顯卡內存不夠用
config = tf.ConfigProto() config.gpu_options.per_process_gpu_memory_fraction = 0.3 sess = tf.Session(config = config)參考:https://blog.csdn.net/baidu_34172099/article/details/103787226?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-4&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-4
總結
以上是生活随笔為你收集整理的(Python+Tensorflow)编程踩坑集锦的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用opencv添加mask
- 下一篇: MFC制作简易音乐播放器