前言
學會python很重要,懂了基礎,再學會pip更加重要!
就像手機安裝應用一樣簡單,學委帶著你在主機上安裝pip,再安裝虛擬環境(virualenv),最后簡單試水深度學習框架tensorflow!知識量很多,耐心看吧。
學委想說,python其實就跟白開水一樣,沒有那么難,把握住了,上面的東西隨便玩!
你本來就學會了python就是沒有找到好玩的庫,結果半路跑去玩游戲了,或者半路跑去學java/c++了多么浪費天賦啊!哈哈哈
什么是pip
先說python 庫, 它就像一個手機app
小白可以這樣理解,一個python庫,就像手機里面的一個app,一個普通應用一樣。
一個python 庫就是將python代碼組織在一個文件夾或者多個作為一個整體單位發行出去的代碼庫。
很多開發者做了一個優秀的庫之后會發布到pypi網站(如下),這也是python開源的基礎。
再說 pip, 它就像應用寶
對小白來說pip就像你的華為手機里面的應用市場app或者像騰訊應用寶app一樣的玩意。
它能夠給你搜索下載其他app。pip是一個用來安裝python庫的工具,類似nodejs的npm。
開發者可以貢獻自己開發好的代碼到pypi,再使用pip就從pypi查找下載一個python 模塊。
這樣我們就能在項目中引入其他人的python 庫的模塊了。
比如requests這個模塊,可以引入用來訪問http(s)鏈接。
下面是pip的使用幫助提示:
下面給我們的手機安裝應用寶
沒打錯,給我們的云主機安裝pip。
先查看版本號,很多服務器默認都會安裝python 2.7(沒辦法,圖方便,也有很多懶人不升級python的,而且依然還有不少項目仍在用python2的)
python -v #查看版本號
centos 安裝pip for python2
雷學委準備了下面的腳本,只要你有一個linux操作系統(云/虛擬機都行),執行下面的腳本可以安裝pip。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
#!/bin/sh #雷學委建議懂得朋友修改下面代碼,安裝pip for python3 #python3 #getpip=https: //bootstrap.pypa.io/get-pip.py #python2 getpip=https: //bootstrap.pypa.io/pip/2.7/get-pip.py pipfile=./get-pip.py if [ ! -e ${pipfile} ] ; then echo "download pip" wget ${getpip} -o ${pipfile} fi python ${pipfile} |
安裝效果圖:
好了,其實到這里,你一樣安裝了第一個python應用,可以三連了。
試用pip來安裝庫
查看版本:pip -v
其實pip本身也是python社區里面的一款爆品應用。
它本身也是一個python 庫。
1
2
3
4
|
#pip 搜索requests這個庫 pip search requests #pip 安裝requests這個庫 pip install requests |
配置國內的pypi鏡像倉庫
因為學委這臺主機是騰訊云的,所以配了騰訊的倉庫!(如果騰訊云看到了這篇文章,希望給博主多一些優惠,哈哈哈)
1
2
3
|
[global] index-url = http: //mirrors.tencentyun.com/pypi/simple trusted-host = mirrors.tencentyun.com |
國內的一些pypi鏡像
阿里云
…
清華大學
校驗是否配置生效:
查看你安裝的應用 - pip 查本地庫
比如下面的命令:
1
2
3
4
|
#查看本地安裝的python庫 pip list #比如你裝了tensorflow,可以查看這個庫的詳細信息,版本依賴等 pip show tensorflow |
查看tensorflow這個深度學習庫的信息
試用pip安裝其他'應用‘
安裝virtualenv
virtualenv 是一個提供了一個獨立的項目環境,它隔離了python項目跟系統python的依賴(比如site-packages)內的一些非官方發行的包。
當然,它也是一個python module。擁有它,你可以讓自己的每個項目獨立管理自己依賴的python庫。
簡單來說,virtualenv就相當于,送您一部備用手機。
你在上面安裝其他應用,隨便亂裝都不會影響到主手機的使用。
同理,你可以使用virtualenv來創建多個備用手機環境。
下面是比較繞的正式說法(小白可以不看)。
有了virtualenv,就能實現單個項目(自己)的庫自己管理,而不跟系統python公共庫路徑混起來! 多個python 項目也能互相獨立使用不同版本的python庫。
雷學委希望大家都有這個好習慣,多使用virtualenv來隔離不同python項目!(其實這個小技巧就應該給三連了!)
看到這里,繼續安裝吧
1
|
pip install virtualenv |
安裝效果如下,pip幫我們下載安裝virtualenv庫,并下載安裝到本機了。這就是應用市場下載安裝一個應用一樣一樣的!
玩轉深度學習框架tensorflow
使用virtualenv 創建一個項目并進入目錄,激活切換到虛擬環境
1
2
3
|
virtualenv tensorflow-demo cd tensorflow-demo source bin/activate |
下面先看運行效果
總共執行5個迭代,訓練模型,最后評估出來的模型準確度為0.9768(比第一代 0.9147提高了6個百分點)
具體操作和項目配置
安裝tensorflow
1
|
pip install tensorflow |
雷學委建議大伙先收藏,懶人直接復制代碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
import tensorflow as tf #http: //yann.lecun.com/exdb/mnist/ - mnist數據集,就是一些專業人員整理的方便機器學習初學者做學習訓練的一些數據 mnist = tf.keras.datasets.mnist #加載訓練數據(60k個樣本)和測試數據(10k個樣本) (x_train, y_train), (x_test, y_test) = mnist.load_data() x_train, x_test = x_train / 255.0 , x_test / 255.0 #定義一個模型 model = tf.keras.models.sequential([ tf.keras.layers.flatten(input_shape=( 28 , 28 )), tf.keras.layers.dense( 128 , activation= 'relu' ), tf.keras.layers.dropout( 0.2 ), tf.keras.layers.dense( 10 , activation= 'softmax' ) ]) #編譯配置模型的優化器,損耗函數,以及檢驗指標 model.compile(optimizer= 'adam' , loss= 'sparse_categorical_crossentropy' , metrics=[ 'accuracy' ]) #開始訓練,執行 5 個迭代 model.fit(x_train, y_train, epochs= 5 ) #評估模型,verbose= 2 表示每一代處理當作一行輸出 model.evaluate(x_test, y_test, verbose= 2 ) |
這個模型對60k圖片樣本進行識別,進行5輪迭代的模型訓練。(官方寫的60k,下一篇給大伙數數)
最后再使用測試數據集對訓練好的模型進行評估。
是不是上面的代碼看不懂?過來看看下面的人話吧。
這個過程就相當于整個字庫里面有100個字,你拿了90個字來臨摹,臨摹了5遍毛筆字,每次都看一下跟標準字體貼合率(準確率)。
最后在把另外10個字丟給你寫,寫完看看你寫字的準確率,寫的夠不夠標準。
你就像一個被不斷訓練的模型,字庫/測試字庫都是用來訓練的數據
只要給你訓練的足夠多,你就能夠寫出更好看更標準的字,懂了嗎?學習知識也是一樣的。
好了,本文的重點是安裝掌握pip,順便玩第一個dl應用。
再看看這個圖,你懂了嗎?請記住這個圖!
先寫到這里了。恭喜你,看到這里已經超值了,幾分鐘到功夫,學到這么多
參考鏈接
總結
到此這篇關于pip快速體驗深度學習應用的文章就介紹到這了,更多相關pip快速體驗學習應用內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://juejin.cn/post/6982591568502849572