欧美vvv,亚洲第一成人在线,亚洲成人欧美日韩在线观看,日本猛少妇猛色XXXXX猛叫

新聞資訊

    什么是Keras?

    什么是Keras

    Keras是一個用Python編寫的開源神經(jīng)網(wǎng)絡(luò)庫,運行在Theano或Tensorflow之上。它采用模塊化設(shè)計,速度快,易于使用。由Google工程師Fran?oisChollet開發(fā)。

    Keras不處理低級計算。相反,它使用另一個庫來執(zhí)行它,稱為"后端。因此Keras是低級API的高級API包裝器,能夠在TensorFlow,CNTK或Theano之上運行。

    Keras高級API處理我們制作模型,定義圖層或設(shè)置多個輸入輸出模型的方式。在這個級別,Keras還使用損失和優(yōu)化函數(shù)編譯我們的模型,使用擬合函數(shù)訓(xùn)練過程。Keras不處理低級API,例如圖層,張量或其他變量的底層操作,因為它已由"Backend"引擎處理。

    什么是Backend?

    Backend是Keras中的一個術(shù)語,它可以在其他庫(如Tensorflow或Theano)的幫助下執(zhí)行所有低級計算,如張量積,卷積和許多其他事物。因此,"Backend引擎"將執(zhí)行模型的計算和開發(fā)。Tensorflow是默認的"Backend引擎",但可以在配置中更改它。

    Theano,Tensorflow和CNTK

    Theano是一個開源項目,由加拿大魁北克省蒙特利爾大學(xué)的MILA小組開發(fā)。這是第一個廣泛使用的框架。它是一個Python庫,可以幫助使用Numpy或Scipy進行數(shù)學(xué)運算的多維數(shù)組。Theano可以使用GPU進行更快的計算,它還可以自動構(gòu)建用于計算梯度的符號圖。在其網(wǎng)站上,Theano聲稱它可以識別數(shù)值不穩(wěn)定的表達式并使用更穩(wěn)定的算法計算它們,這對靈活的表達式非常有用。

    Tensorflow是深度學(xué)習(xí)框架中的后起之秀。由Google的Brain團隊開發(fā),它是最受歡迎的深度學(xué)習(xí)工具。具有許多功能,研究人員有助于為深度學(xué)習(xí)目的開發(fā)此框架。

    Keras的另一個引擎是Microsoft Cognitive Toolkit或CNTK。它是由Microsoft團隊開發(fā)的開源深度學(xué)習(xí)框架。它可以在多GPU或多機上運行,??用于大規(guī)模培訓(xùn)深度學(xué)習(xí)模型。在某些情況下,據(jù)報道CNTK比其他框架如Tensorflow或Theano更快。

    Keras的優(yōu)點

    快速部署,易于理解

    Keras可以非常快速地建立網(wǎng)絡(luò)模型。如果你想用幾行制作一個簡單的網(wǎng)絡(luò)模型,Keras可以幫助你。

    1. from keras.models import Sequential

    2. from keras.layers import Dense, Activation

    3.

    4. model = Sequential()

    5. model.add(Dense(64, activation='relu', input_dim=50)) #input shape of 50

    6. model.add(Dense(28, activation='relu')) #input shape of 50

    7. model.add(Dense(10, activation='softmax'))

    基于調(diào)用方便的API,這個調(diào)用過程可以容易理解。

    大型社區(qū)支持

    有很多AI社區(qū)使用Keras進行深度學(xué)習(xí)框架,并向公眾發(fā)布他們的代碼以及教程。

    有多個后端

    您可以選擇Tensorflow,CNTK和Theano作為Keras的后端。您可以根據(jù)需要為不同的項目選擇不同的后端。每個后端都有自己獨特的優(yōu)勢。

    跨平臺且易于模型部署

    通過各種支持的設(shè)備和平臺,您可以在任何設(shè)備上部署Keras

    · iOS與CoreML

    · Android版采用Tensorflow Android,

    · 支持.js的Web瀏覽器

    · 云引擎

    跨平臺且易于模型部署

    多GPU支持

    您可以在單個GPU上訓(xùn)練Keras或一次使用多個GPU。因為Keras內(nèi)置了對數(shù)據(jù)并行性的支持,因此它可以處理大量數(shù)據(jù)并加快培訓(xùn)所需的時間。

    在Linux中安裝Keras

    要使用Tensorflow作為后端引擎啟用Keras,需要先安裝Tensorflow。運行此命令以使用CPU安裝tensorflow(無GPU)

    pip install --upgrade tensorflow
    

    如果要為tensorflow啟用GPU支持,可以使用此命令

    pip install --upgrade tensorflow-gpu
    

    進入Python以查看tensorflow的安裝是否成功

    $ python Python 3.6.4 (default, Mar 20 2018, 11:10:20) [GCC 5.4.0 20160609] on linux Type "help", "copyright", "credits" or "license" for more information. 
    >>> import tensorflow 
    >>> 
    

    如果沒有錯誤消息,則安裝過程成功

    安裝Keras

    安裝Tensorflow之后,開始安裝keras。在終端中鍵入此命令

    pip install keras
    

    它將開始安裝Keras以及它的所有依賴項。你應(yīng)該看到這樣的東西:

    標志著已經(jīng)在系統(tǒng)中安裝了Keras!

    驗證

    在開始使用Keras之前,應(yīng)該檢查Keras是否配置使用Tensorflow作為后端:

    cat ~ / .keras / keras.json
    

    你應(yīng)該看到如下:

    {
     "floatx": "float32",
     "epsilon": 1e-07,
     "backend": "tensorflow",
     "image_data_format": "channels_last"
    }
    

    如你所見,"后端"使用tensorflow。

    這意味著keras使用Tensorflow作為后端

    現(xiàn)在通過鍵入在終端上運行它

    user@user:~$ python3
    Python 3.6.4 (default, Mar 20 2018, 11:10:20) 
    [GCC 5.4.0 20160609] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import keras
    Using TensorFlow backend.
    >>> 
    

    如何在Windows上安裝Keras

    在安裝Tensorflow和Keras之前,應(yīng)該安裝Python,pip和virtualenv。如果您已經(jīng)安裝了這些庫,則應(yīng)繼續(xù)執(zhí)行下一步,否則請執(zhí)行以下操作:

    百度搜索下載安裝Python 3。

    直接瀏覽器訪問下載。

    然后運行命令:

    python get-pip.py
    

    安裝pip

    使用此命令安裝virtualenv

    pip3 install -U pip virtualenv

    安裝Microsoft Visual C ++ 2015 Redistributable Update 3

    · 轉(zhuǎn)到Visual Studio下載站點https://www.microsoft.com/en-us/download/details.aspx?id=53587

    · 選擇Redistributables和Build Tools

    · 下載并安裝Microsoft Visual C ++ 2015 Redistributable Update 3

    然后運行此腳本

    pip3 install virtualenv

    設(shè)置虛擬環(huán)境

    這用于將工作系統(tǒng)與主系統(tǒng)隔離。

    virtualenv --system-site-packages -p python3 ./venv

    激活環(huán)境

    .\venv\Scripts\activate
    

    環(huán)境安裝好后,Tensorflow和Keras的使用與Linux一致。

    Tensorflow和Keras的使用與Linux一致

    讓我們輕松的踏上Python AI之旅吧。

    目錄

    • 技術(shù)背景
    • 安裝virtualenv
    • virtualenv的使用
      • 創(chuàng)建一個虛擬環(huán)境
      • 激活虛擬環(huán)境
      • 安裝與配置python庫
      • 退出虛擬環(huán)境
    • 總結(jié)概要
    • 版權(quán)聲明

    技術(shù)背景

    在前面幾篇博客中我們介紹了容器的使用(博客1、博客2、博客3、博客4、博客5),容器是一種系統(tǒng)級的隔離方案,更多的強調(diào)資源上的隔離。而這里我們要介紹的python的虛擬環(huán)境,更加強調(diào)的是依賴的管理。假如一個python項目需要依賴于numpy==1.20.1的版本,另一個python項目必須依賴于numpy==1.20.2的版本。雖然我們也可以直接使用docker或者其他的容器方案來隔離編程環(huán)境,但是這會消耗比較大的資源,因為我們并不需要重新構(gòu)造一整個系統(tǒng)。因此python也提供了一種更加優(yōu)雅的解決方案:使用virtualenv來構(gòu)造一個虛擬的python庫的環(huán)境,這里面我們可以定制化自己所需的python依賴的版本。比較詳細的virtualenv使用方法可以參考官方文檔,這里我們僅做一些簡單的使用方法的介紹和演示。

    安裝virtualenv

    virtualenv可以直接通過pip來安裝和管理,這也大大簡化了我們的操作:

    [dechin@dechin-manjaro virtualenv]$ python3 -m pip install virtualenv
    Collecting virtualenv
      Downloading virtualenv-20.4.3-py2.py3-none-any.whl (7.2 MB)
         |████████████████████████████████| 7.2 MB 7.5 MB/s 
    Requirement already satisfied: appdirs<2,>=1.4.3 in /home/dechin/anaconda3/lib/python3.8/site-packages (from virtualenv) (1.4.4)
    Collecting distlib<1,>=0.3.1
      Downloading distlib-0.3.1-py2.py3-none-any.whl (335 kB)
         |████████████████████████████████| 335 kB 8.5 MB/s 
    Requirement already satisfied: filelock<4,>=3.0.0 in /home/dechin/anaconda3/lib/python3.8/site-packages (from virtualenv) (3.0.12)
    Requirement already satisfied: six<2,>=1.9.0 in /home/dechin/anaconda3/lib/python3.8/site-packages (from virtualenv) (1.15.0)
    Installing collected packages: distlib, virtualenv
    Successfully installed distlib-0.3.1 virtualenv-20.4.3

    需要注意的是,這里雖然我們可以通過virtualenv來構(gòu)造一個純凈的python編程環(huán)境,但是python的版本是直接依賴于系統(tǒng)里面所包含的python版本的,我們不能通過virtualenv去構(gòu)造一個不同的python版本。

    virtualenv的使用

    virtualenv的使用步驟基本上可以簡單劃分為:創(chuàng)建環(huán)境-激活環(huán)境-配置和使用環(huán)境-關(guān)閉環(huán)境,以下分別進行演示。

    創(chuàng)建一個虛擬環(huán)境

    首先我們進入到一個空的目錄:

    [dechin@dechin-manjaro virtualenv]$ ll
    總用量 0

    然后直接執(zhí)行virtualenv envname的命令來構(gòu)建一個虛擬環(huán)境,這里因為我們系統(tǒng)中只有一個python版本,多個python版本的環(huán)境需要使用-p選項來進行配置。

    [dechin@dechin-manjaro virtualenv]$ virtualenv test_env
    created virtual environment CPython3.8.5.final.0-64 in 295ms
      creator CPython3Posix(dest=/home/dechin/projects/2021-python/virtualenv/test_env, clear=False, no_vcs_ignore=False, global=False)
      seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/dechin/.local/share/virtualenv)
        added seed packages: pip==21.0.1, setuptools==54.1.2, wheel==0.36.2
      activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator

    執(zhí)行完成上述指令之后,我們發(fā)現(xiàn)在剛才的目錄下生成了一個與虛擬環(huán)境名稱一致的目錄名:

    [dechin@dechin-manjaro virtualenv]$ ll
    總用量 4
    drwxr-xr-x 4 dechin dechin 4096  4月  1 21:06 test_env

    這就代表虛擬環(huán)境已經(jīng)創(chuàng)建成功了。

    激活虛擬環(huán)境

    在使用一個指定的虛擬環(huán)境時,我們需要先激活這個虛擬環(huán)境,在虛擬環(huán)境目錄下的bin目錄中,有一個名為activate的可執(zhí)行文件,就是用來激活虛擬環(huán)境的:

    [dechin@dechin-manjaro virtualenv]$ source test_env/bin/activate
    (test_env)[dechin@dechin-20n2s01200 virtualenv]$ python3 -m pip list
    Package    Version
    ---------- -------
    pip        21.0.1
    setuptools 54.1.2
    wheel      0.36.2

    我們可以發(fā)現(xiàn)一個特點,在激活虛擬環(huán)境后,在Linux的命令行之前都會帶有一個虛擬環(huán)境的名稱,用于區(qū)分當(dāng)前所在的虛擬環(huán)境。而這里虛擬環(huán)境中的python第三方庫是幾乎沒有的,是一個非常純凈的環(huán)境,需要我們自己去手動安裝與配置環(huán)境。

    安裝與配置python庫

    在虛擬環(huán)境中的操作跟在實際環(huán)境中的安裝操作是一致的,我們一樣也可以使用pip來進行安裝包的管理,只是這時候安裝所執(zhí)行的變更只會保存到當(dāng)前的虛擬環(huán)境下,不影響實際環(huán)境和其他的虛擬環(huán)境。

    (test_env)[dechin@dechin-manjaro virtualenv]$ python3 -m pip install numpy
    Collecting numpy
      Downloading numpy-1.20.2-cp38-cp38-manylinux2010_x86_64.whl (15.4 MB)
         |████████████████████████████████| 15.4 MB 295 kB/s 
    Installing collected packages: numpy
    Successfully installed numpy-1.20.2
    (test_env)[dechin@dechin-manjaro virtualenv]$ python3 -m pip list
    Package    Version
    ---------- -------
    numpy      1.20.2
    pip        21.0.1
    setuptools 54.1.2
    wheel      0.36.2

    安裝完成后,我們看到當(dāng)前安裝的numpy版本號是1.20.2。讓我們再打開一個新的終端窗口看下實際環(huán)境中的numpy的版本號:

    [dechin@dechin-manjaro virtualenv]$ python3 -m pip show numpy
    Name: numpy
    Version: 1.20.1
    Summary: NumPy is the fundamental package for array computing with Python.
    Home-page: https://www.numpy.org
    Author: Travis E. Oliphant et al.
    Author-email: None
    License: BSD
    Location: /home/dechin/anaconda3/lib/python3.8/site-packages
    Requires: 
    Required-by: xarray, vaex-core, tifffile, tables, statsmodels, seaborn, scipy, scikit-learn, scikit-image, PyWavelets, pytools, pythreejs, pyscf, pyarrow, projectq, plotdigitizer, patsy, pandas, opencv-python, numexpr, numba, mkl-random, mkl-fft, matplotlib, ipyvolume, ipydatawidgets, imageio, hiq-projectq, h5py, cupy, bqplot, Bottleneck, bokeh, bkcharts, astropy, ts, hiqfermion

    這里可以區(qū)分的是,實際環(huán)境中命令行的前面不帶有虛擬環(huán)境的名稱。我們可以看到實際環(huán)境下的numpy版本是1.20.1,這樣一來我們就用這么一個開銷并不是很高的方式,實現(xiàn)了兩個不同的numpy版本的共存。

    退出虛擬環(huán)境

    在當(dāng)前的虛擬環(huán)境下,可以直接執(zhí)行deactivate退出。我們可以測試這樣的一個場景:先退出虛擬環(huán)境,然后再次進入,以確認剛才的操作被自動的保存到了虛擬環(huán)境中:

    (test_env)[dechin@dechin-manjaro virtualenv]$ deactivate
    [dechin@dechin-manjaro virtualenv]$ source test_env/bin/activate
    (test_env)[dechin@dechin-manjaro virtualenv]$ python3 -m pip list
    Package    Version
    ---------- -------
    numpy      1.20.2
    pip        21.0.1
    setuptools 54.1.2
    wheel      0.36.2
    (test_env)[dechin@dechin-manjaro virtualenv]$ deactivate

    在上述的執(zhí)行結(jié)果中可以看到,對python環(huán)境的變更是永久保存下來了的。這一點上來說操作也比docker容器更加容易,在docker中如果需要持久化的保存一個操作,需要在對容器鏡像操作之后,執(zhí)行額外的commit指令才能保存。因此我們認為virtualenv是一個更加優(yōu)雅、更加輕量級的,python環(huán)境差異化管理的解決方案。

    總結(jié)概要

    在前面幾篇博客中我們介紹過docker等容器的編程環(huán)境解決方案,但是容器作為一個系統(tǒng)級的隔離方案,其實更加強調(diào)的是用戶間的隔離,這一點也得益其對NameSpace技術(shù)的推廣和使用。但是在一部分的場景下,比如快速構(gòu)造一個純凈的python環(huán)境、輕量級的操作實現(xiàn)不同python包的共存,容器技術(shù)雖然也可以完成,但是功能顯得過于冗余,這就需要使用到本文所介紹的virtualenv這樣的一個python依賴管理解決方案。文中我們介紹了virtualenv的安裝與基本的使用方法,做了一遍比較完整的演示。

    版權(quán)聲明

    本文首發(fā)鏈接為:https://www.cnblogs.com/dechinphy/p/virtualenv.html
    作者ID:DechinPhy
    更多原著文章請參考:https://www.cnblogs.com/dechinphy/

網(wǎng)站首頁   |    關(guān)于我們   |    公司新聞   |    產(chǎn)品方案   |    用戶案例   |    售后服務(wù)   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區(qū)    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權(quán)所有