




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
深度學習技術與應用DeepLearningTechnologyandApplicationcontents目錄第四章神經網絡入門01.常見深度學習框架介紹Introductiontocommondeeplearningframeworks02.Tensorflow樂園的使用Useoftensorflowplayground03.
Keras神經網絡的核心組件Corecomponentsofkerasneuralnetwork04.
Tensorflow實現神經網絡TensorflowimplementationofneuralnetworkPART1常見深度學習框架介紹01.常見深度學習框架介紹Introductiontocommondeeplearningframeworks
Keras是一個對初學者非常友好且簡單的深度學習框架。如果想快速入門深度學習,Keras將是不錯的選擇。Keras是一個用Python編寫的高級神經網絡API,它能夠以TensorFlow,CNTK,或者Theano作為后端運行,并且可以方便地定義和訓練幾乎所有類型的深度學習模型。能夠以最小的時延把你的想法轉換為實驗結果,是做好研究的關鍵。除了本書所使用的框架外,常見的深度學習框架還有PyTorch、Caffe、Theano、MXNet、CNTK、DeepLearning4j等,這些深度學習框架被應用于計算機視覺、語音識別、自然語言處理與生物信息學等領域,并獲取了極好的效果。。PART2Tensorflow樂園的使用02.Tensorflow樂園的使用UseoftensorflowplaygroundTensorFlowPlayground
Tensorflow是Google推出的機器學習開源平臺,而有了TensorflowPlayground,我們就可以在瀏覽器中通過生動形象的圖像更直觀地了解神經網絡的工作原理。
02.Tensorflow樂園的使用UseoftensorflowplaygroundTensorFlowPlayground
learningrate是學習率,作為監督學習以及深度學習中重要的超參,其決定著目標函數能否收斂到局部最小值以及何時收斂到最小值。Activation是激活函數,默認為非線性函數Tanh,該網站上提供ReLU、Tanh、sigmoid、Linear四中激活函數。Regularization正則化,正則化是利用范數解決過擬合的問題,而Regularizationrate則是用來調整正則化率的選項。Problemtype是問題類型,網站上提供分類(Classification)與回歸(Regression)兩種類型。02.Tensorflow樂園的使用UseoftensorflowplaygroundTensorFlowPlayground右邊數據區域有四個調整項目,DATA數據集類型,網站上提供了四種數據集,用黃、藍色小點所分布的形態來表示四種不同的數據狀態,每一個小點代表一個樣例例子,點的顏色代表樣例的標簽;因為只有兩種顏色,所以這里是一個二分類問題,被選中的數據也會顯示在最右側的OUTPUT中。Ratiooftrainingtotestdata數據用于測試的比例,可以直接對進度條進行操作即可調整。Noise對數據中引入噪聲,調整該參數為零時黃、藍色小點分離得越清晰,當該參數越大時則黃、藍色小點會出現交融現象。
02.Tensorflow樂園的使用UseoftensorflowplaygroundTensorFlowPlayground在網頁中間的網絡結構調整區域中,FEATURES特征向量是神經網絡的輸入,x1、x2…代表特征向量中每一個特征的取值,在問題中實體的特征向量作為神經網絡的輸入,不同實體可以提取不同的特征向量。HIDDENLAYERS隱藏層,在輸入和輸出之間的神經網絡層稱為隱藏層,一般神經網絡的隱藏層越多這個神經網絡越深,計算量就越大。可以通過+、-來增加與減少隱藏層。02.Tensorflow樂園的使用UseoftensorflowplaygroundTensorFlowPlayground可以通過點擊該路徑上的Weight修改權值。在輸出結果OUTPUT區域中,通過設置完上面的參數,點擊運行即可觀測到輸出結果的變化。點擊Showtestdata可以顯示未參與訓練的測試數據集的情況,點擊Discretizeoutput可以看到離散化后的結果。PART3Keras神經網絡的核心組件03.
Keras神經網絡的核心組件CorecomponentsofkerasneuralnetworkTensorFlowKerasPythonTensorFlow1.13.0Keras2.2.4Python3.6.TensorFlow1.12.0Keras2.2.4Python3.6.TensorFlow1.12.0Keras2.2.4Python2.TensorFlow1.11.0Keras2.2.4Python3.6.TensorFlow1.11.0Keras2.2.4Python2.TensorFlow1.10.0Keras2.2.0Python3.6.TensorFlow1.10.0Keras2.2.0Python2.TensorFlow1.9.0Keras2.2.0Python3.6.TensorFlow1.9.0Keras2.2.0Python2.TensorFlow1.8.0Keras2.1.6Python3.6.TensorFlow1.8.0Keras2.1.6Python2.TensorFlow1.7.0Keras2.1.6Python3.6.TensorFlow1.7.0Keras2.1.6Python2.TensorFlow1.5.0Keras2.1.6Python3.6.TensorFlow1.5.0Keras2.1.6Python2.TensorFlow1.4.0Keras2.0.8Python3.6.TensorFlow1.4.0Keras2.0.8Python2.TensorFlow1.3.0Keras2.0.6Python3.6.TensorFlow1.3.0Keras2.0.6Python2.TensorFlow1.2.0Keras2.0.6Python3.5.TensorFlow1.2.0Keras2.0.6Python2.TensorFlow1.1.0Keras2.0.6Python3.5.TensorFlow1.1.0Keras2.0.6Python2.TensorFlow1.0.0Keras2.0.6Python3.5.TensorFlow1.0.0Keras2.0.6Python2.TensorFlow0.12.1Keras1.2.2Python3.5.TensorFlow0.12.1Keras1.2.2Python2.Keras神經網絡的核心組件
Keras是一個模型級的庫,為開發深度學習模型提供了高層次的構建模塊。它是一個用Python編寫的高級神經網絡API,不處理張量操作、求微分等低層次的運算。相反,它依賴于后端引擎。Keras能夠將TensorFlow后端引擎無縫嵌入到Keras中,以最小的時延把我們的想法轉換為實驗結果,將常見用例所需的用戶操作數量降至最低,并且在用戶錯誤時提供清晰和可操作的反饋神經網絡中核心組件:層、網絡、目標函數和優化器。層:是一種數據處理模塊,也可以將它看成數據過濾器網絡:多個層組合成多層神經網絡的模型,將輸入的數據經過模型運算輸出預測值損失函數:用于學習的反饋信號,網絡如何衡量在訓練數據上的性能,使網絡如何朝著正確的方向前進優化器:決定學習過程如何進行,基于訓練數據和損失函數來更新網絡的機制03.
Keras神經網絡的核心組件CorecomponentsofkerasneuralnetworkKeras主要包括14個模塊包,下面主要對Models、Layers、Initializations、Activations、Objectives、Optimizers、Preprocessing、metrics八個模塊包展開介紹。Models包:keras.models
這是Keras中最主要的一個模塊,用于對各個組件進行組裝。Keras中有兩種主要的模型類型:順序模型Sequential和與功能性API一起使用的Model類。Layers包:keras.layers該模塊主要用于生成神經網絡層,包含多種類型,如Corelayers、Convolutionallayers、PoolingLayers、Normalizationlayers、Recourrentlayers、AdvancedActivationslayers、embeddingslayers等。03.
Keras神經網絡的核心組件CorecomponentsofkerasneuralnetworkInitializations包:keras.initializations該模塊初始化設置Keras層的初始隨機權重的方法,初始化方法包括:Initializer、Zeros、Ones、Constant、RandomNormal、RandomUniform、TruncatedNormal、VarianceScaling、Orthogonal、Identity、lecun_uniform、glorot_uniform、he_normal、lecun_normal、he_uniform等。Activations包:keras.activations、keras.layers.advanced_activations(高級激活層)該模塊主要負責為神經層附加激活函數,如softmax、selu、softplus、softsign、relu、tanh、sigmoid、hard_sigmoid、exponential、linear以及高級激活層使用的LeakyReLU、PReLU等比較新的激活函數。
03.
Keras神經網絡的核心組件CorecomponentsofkerasneuralnetworkObjectives包:keras.objectives目標函數或稱損失函數,該模塊主要負責為神經網絡附加損失函數,是編譯一個模型必須的參數之一,目標函數是用來估量模型的預測值與真實值的不一致程度,它是一個非負實值函數,目標函數越小,模型的魯棒性就越好。
Optimizers包:keras.optimizers優化器是編譯Keras模型必要的兩個參數之一,它與目標函數相互協作完成權重的更新,該模塊主要負責設定神經網絡的優化方法,如最基本的隨機梯度下降SGD,另外還有RMSprop、Adagrad、Adadelta、Adam、Adamax、Nadam等方法。Preprocessing包:keras.preprocessing數據預處理模塊,包括序列數據的處理、文本數據的處理和圖像數據的處理等。對于圖像數據的處理,keras提供了ImageDataGenerator函數,實現數據集擴增,對圖像做一些彈性變換,比如水平翻轉,垂直翻轉,旋轉等。Metrics包:keras.metrics評價函數用于評估當前訓練模型的性能。當模型編譯后,評價函數應該作為metrics的參數來輸入,評價函數和損失函數相似,只不過評價函數的結果不會用于訓練過程中。03.
Keras神經網絡的核心組件CorecomponentsofkerasneuralnetworkPART4Tensorflow實現神經網絡04.Tensorflow實現神經網絡TensorflowimplementationofneuralnetworkTensorFlow是一個端到端開源機器學習平臺,借助TensorFlow,初學者可以輕松地創建機器學習模型。Keras是一個用于構建和訓練深度學習模型的高階API。它將可配置的構造塊連接在一起就可以構建Keras模型,并且幾乎不受限制。04.Tensorflow實現神經網絡Tensorflowimplementationofneuralnetwork使用了TensorFlow網站上服裝圖像分類的案例,練一個神經網絡模型來分類像運動鞋和襯衫這樣的衣服的圖像。導入實例:無需自己去構造數據庫集,在keras.datasets中獲取相關現有數據集,這些數據集有:mnist手寫數字、fashion_mnist時尚分類、cifar10(100)10個類別分類。importtensorflowastffromtensorflowimportkerasfashion_mnist=keras.datasets.fashion_mnist(train_images,train_labels),(test_images,test_labels)=fashion_mnist.load_data()print(train_images,train_labels)04.Tensorflow實現神經網絡Tensorflowimplementationofneuralnetwork在Keras中,可以通過組合層來構建模型。模型通常是由層構成的圖。最常見的模型類型是層的堆疊。
tf.keras.Sequential模型實例:
fromtensorflow.python.keras.layersimportDensefromtensorflow.python.keras.layersimportDepthwiseConv2Dfromtensorflow.python.keras.layersimportDotfromtensorflow.python.keras.layersimportDropoutfromtensorflow.python.keras.layersimportELUfromtensorflow.python.keras.layersimportEmbeddingfromtensorflow.python.keras.layersimportFlattenfromtensorflow.python.keras.layersimportGRUfromtensorflow.python.keras.layersimportGRUCellfromtensorflow.python.keras.layersimportLSTMCell04.Tensorflow實現神經網絡TensorflowimplementationofneuralnetworkFlatten實現將輸入數據進行形狀改變展開,Dense則是添加一層神經元。tf.keras.Sequential構建類似管道的模型。
model=keras.Sequential([keras.layers.Flatten(input_shape=(28,28)),keras.layers.Dense(128,activation=tf.nn.relu),keras.layers.Dense(10,activation=tf.nn.softmax)])04.Tensorflow實現神經網絡Tensorflowimplementationofneuralnetwork訓練與評估,通過調用model的compile方法去配置該模型所需要的訓練參數以及評估方法。pile(optimizer,loss=None,metrics=None,準確率):配置訓練相關參數。
optimizer:梯度下降優化器(keras.optimizers)
from
tensorflow.python.keras.optimizers
import
Adadeltafrom
tensorflow.python.keras.optimizers
import
Adagradfrom
tensorflow.python.keras.optimizers
importAdamfrom
tensorflow.python.keras.optimizers
import
Adamaxfrom
tensorflow.python.keras.optimizers
import
Nadamfrom
tensorflow.python.keras.optimizers
importOptimizerfrom
tensorflow.python.keras.optimizers
import
RMSpropfrom
tensorflow.python.keras.optimizers
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇省無錫錫東片2025屆初三語文試題中考模擬試題含解析
- 五邑大學《開放性實驗》2023-2024學年第二學期期末試卷
- 蘆溪縣2025年數學三下期末統考模擬試題含解析
- 遼寧稅務高等專科學校《機電工程專業英語》2023-2024學年第一學期期末試卷
- 嘉興職業技術學院《臨床流行病學》2023-2024學年第二學期期末試卷
- 擔保協議書的范例二零二五年
- 二零二五場地轉租協議書
- 知識產權委托代理協議書二零二五年
- 學校校長聘用合同書協議書二零二五年
- 二零二五影視劇導演聘用勞動合同書例文
- 工程款結算合同書
- 中央空調系統維保服務報價清單
- 急性左心衰搶救應急預案
- 孕產婦高危五色管理(醫學講座培訓課件)
- 8.3 法治社會 課件高中政治統編版必修三政治與法治
- 豆腐制品購銷協議
- 智鼎在線測評28題答案
- 青少年無人機課程:第一課-馬上起飛
- 公路養護施工組織設計 公路設施、交安設施、公路綠化日常維護管理施工方案
- 2024年國家義務教育質量監測-八年級心理健康考核試題
- 3班主任基本功競賽:主題班會《我本是高山》教學課件
評論
0/150
提交評論