深度學習技術應用課件:使用Keras和Tensorflow Hub對電影評論進行文本分類_第1頁
深度學習技術應用課件:使用Keras和Tensorflow Hub對電影評論進行文本分類_第2頁
深度學習技術應用課件:使用Keras和Tensorflow Hub對電影評論進行文本分類_第3頁
深度學習技術應用課件:使用Keras和Tensorflow Hub對電影評論進行文本分類_第4頁
深度學習技術應用課件:使用Keras和Tensorflow Hub對電影評論進行文本分類_第5頁
已閱讀5頁,還剩41頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

TensorFlow實現文本分類深度學習應用技術使用Keras和TensorflowHub對電影評論進行文本分類職業能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08

使用Keras和TensorflowHub對電影評論進行文本分類了解遷移學習相關知識了解TensorflowHub了解文本嵌入及Embedding能夠掌握構建含預訓練層的模型的方法;能夠使用Keras構建模型進行文本分類;能夠掌握TensorFlowHub模型訓練過程;能夠掌握評估模型準確率的方法并進行預測。職業能力目標01知識目標技能目標職業能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08

使用Keras和TensorflowHub對電影評論進行文本分類

對下載電影評論數據集進行預處理,使用Keras進行預訓練模型構建、模型訓練以及評估。任務描述任務要求下載IMDB數據集并對其進行預處理;下載預訓練模型并進行修改以完成模型訓練;完成模型評估,得到80%以上準確率。任務描述與要求02職業能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08

使用Keras和TensorflowHub對電影評論進行文本分類任務分析如何使用TensorflowHub進行模型訓練?如何進行文本分類?任務分析與計劃03任務計劃表通過上面的思考,你是否對本任務要完成的工作有所了解?讓我們一起來制訂完成本次任務的實施計劃吧!任務分析與計劃03項目名稱TensorFlow實現文本分類任務名稱使用Keras和TensorflowHub對電影評論進行文本分類計劃方式自主設計計劃要求請用8個計劃步驟來完整描述出如何完成本次任務序號任務計劃1

2

3

4

5

6

7

8職業能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08

使用Keras和TensorflowHub對電影評論進行文本分類TensorflowHub204知識儲備遷移學習1文本嵌入3遷移學習概念04

遷移學習是將某個領域或任務上學習到的知識或模式應用到不同但相關的領域或問題中。人在實際生活中有很多遷移學習,比如學會騎自行車,就比較容易學摩托車,學會了C語言,在學一些其它編程語言會簡單很多。那么機器是否能夠像人類一樣舉一反三呢?遷移學習意義04(1)站在巨人的肩膀上:前人花很大精力訓練出來的模型在大概率上會比你自己從零開始搭的模型要強悍,沒有必要重復造輪子。(2)訓練成本可以很低:如果采用導出特征向量的方法進行遷移學習,后期的訓練成本非常低,用CPU都完全無壓力,沒有深度學習機器也可以做。(3)適用于小數據集:數據集本身很小的情況,從頭訓練具有幾千萬參數的大型神經網絡是不現實的,因為越大的模型對數據量的要求越大,過擬合無法避免。這時候如果還想用上大型神經網絡的超強特征提取能力,只能靠遷移學習。04遷移學習方式010203TransferLearning:凍結預訓練模型的全部卷積層,只訓練自己定制的全連接層。ExtractFeatureVector:先計算出預訓練模型的卷積層對所有訓練和測試數據的特征向量,然后拋開預訓練模型,只訓練自己定制的簡配版全連接網絡。Fine-tune:凍結預訓練模型的部分卷積層(通常是靠近輸入的多數卷積層),訓練剩下的卷積層(通常是靠近輸出的部分卷積層)和全連接層。04遷移學習的基本方法010203樣本遷移特征遷移模型遷移TensorflowHub204知識儲備遷移學習1文本嵌入3204TensorflowHub在機器學習中,模型訓練需要大量時間與計算資源。為了提升資源利用與效率,優化模型訓練表現,創建了TensorFlowHub,促進機器學習中可復用模型的再利用——發布、探索與使用的代碼庫。這個模型庫中包含了獨立的TensorFlow計算圖、權重及數據,可以將TensorFlow的預訓練模型片段重用在新的任務上。只需幾行代碼即可重復使用經過訓練的模型,例如BERT和FasterR-CNN。TensorflowHub204知識儲備遷移學習1文本嵌入32

文本嵌入(TextEmbeddings)是字符串的實值向量表示形式。每個單詞構建一個稠密的向量,這樣做是以便它與出現在相似上下文中的單詞向量相似。

對于大多數深度NLP任務而言,詞嵌入被認為是一個很好的起點。它們允許深度學習在較小的數據集上有效,通常是深度學習體系結構的第一批輸入,也是NLP中最流行的遷移學習方式。

詞嵌入中最流行的方法是Google的Word2vec和Stanford的GloVe。文本嵌入04Embedding介紹04

輸入模型的分類數是來自有限選擇集的一個或多個離散項的輸入特征。分類數據通過稀疏張量(sparsetensors)表示最有效,稀疏張量是具有非常少的非零元素的張量。

所以需要將單詞表示成向量(張量)。最簡單的方法是為詞匯表中的每個單詞定義一個帶有節點的巨型輸入層,或者至少為數據中出現的每個單詞定義一個節點。

向量可能包含更大塊文本中的單詞計數。這被稱為“詞袋(bagofwords)”表示。職業能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08

使用Keras和TensorflowHub對電影評論進行文本分類05任務實施數據集準備21構建模型3模型訓練與評估4環境配置05安裝所需要的依賴包:tensorflow、tensorflow-hub、tensorflow-datasets、tfds-nightly、matplotlib等。1、安裝依賴包環境配置05導入所需要的依賴包2、導入依賴包環境配置05任務實施數據集準備2環境配置1構建模型3模型訓練與評估4051、數據集下載下載IMDB數據集并將數據集分成訓練集、驗證集和測試集。數據集準備05數據集準備tfds.load(name,split=None,data_dir=None,download=True,as_supervised=False):?

name:數據集的名字。?

split:對數據集切分。?

data_dir:數據的位置或者數據下載的位置。?

download:是否下載。?

as_supervised:返回元組(默認返回時字典的形式的)。052、查看數據每個樣本都是一個代表電影評論的句子和一個相應的標簽。句子未經過任何預處理。標簽是一個整數值(0或1),其中0表示負面評價,而1表示正面評價。數據集準備05任務實施數據集準備2環境配置1構建模型3模型訓練與評估4051、模型載入神經網絡由堆疊的層來構建,這需要從三個主要方面來進行體系結構決策:構建模型如何表示文本?模型里有多少層?每個層里有多少隱層單元?05構建模型本示例中,輸入數據由句子組成。預測的標簽為0或1。表示文本的一種方式是將句子轉換為嵌入向量。使用一個預訓練文本嵌入向量作為首層,這將具有三個優點:不必擔心文本預處理可以從遷移學習中受益嵌入具有固定長度,更易于處理052、層按順序堆疊以構建模型第一層是TensorFlowHub層。構建模型此層使用預訓練的SaveModel將句子映射到其嵌入向量。使用的預訓練文本嵌入向量模型google/nnlm-en-dim50/2可將句子拆分為詞例,嵌入每個詞例,然后組合嵌入向量。05構建模型生成的維度是:(num_examples,embedding_dimension)。對于此NNLM模型,embedding_dimension是50。該定長輸出向量通過一個有16個隱層單元的全連接層(Dense)進行管道傳輸。最后一層與單個輸出結點緊密相連。使用Sigmoid激活函數,其函數值為介于0與1之間的浮點數,表示概率或置信水平。053、編譯模型一個模型需要一個損失函數和一個優化器來訓練:構建模型

這是二元分類問題,并且模型輸出logit(具有線性激活的單一單元層),因此,將使用binary_crossentropy損失函數。05構建模型tf.keras.Mpile(optimizer,loss,metrics)optimizer:模型訓練使用的優化器,可以從tf.keras.optimizers中選擇。loss:模型優化時使用的損失值類型,可以從tf.keras.losses中選擇。metrics:訓練過程中返回的矩陣評估指標,可以從tf.keras.metrics中選擇。05任務實施數據集準備2環境配置1構建模型3模型訓練與評估4051、訓練模型一個模型需要一個損失函數和一個優化器來訓練:模型訓練與評估

這是二元分類問題,并且模型輸出logit(具有線性激活的單一單元層),因此,將使用binary_crossentropy損失函數。05構建模型tf.keras.Model.fit(x,y,batch_size,epochs,validation_data)x:訓練集數組。y:訓練集標簽數組。batch_size:批處理數量。epochs:迭代次數。validation_data:驗證集數據和標簽數組。052、評估模型查看模型的表現如何,將返回兩個值。模型訓練與評估

損失值(loss)(一個表示誤差的數字,值越低越好)與準確率(accuracy)。職業能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施05任務檢查與評價06任務小結07任務拓展08

使用Keras和TensorflowHub對電影評論進行文本分類任務檢查與評價061、請參照評價標準完成自評和對其他小組的互評。2、各組請代表分析本組任務實施經驗。項目名稱100TensorFlow實現文本分類任務名稱使用Keras和TensorflowHub對電影評論進行文本分類評價方式可采用自評、互評、老師評價等方式說明主要評價學生在項目學習過程中的操作技能、理論知識、學習態度、課堂表現、學習能力等

評價內容與評價標準序號評價內容評價標準分值得分1理論知識(20%)了解遷移學習的相關知識,包括概念、方法和種類;了解TensorflowHub;了解文本嵌入及Embedding的介紹。(20分)20分

2專業技能(40%)環境配置(5%)正確的安裝依賴包(3分)5分

正確導入依賴包(2分)3數據集準備(10%)正確下載IMDB數據集(2分)10分

正確的劃分數據集(3分)正確的劃分訓練集、驗證集、測試集(5分)4構建模型(15%)正確載入預訓練嵌入層(5分)15分

正確層按順序堆疊以構建模型(5分)正確編譯模型(5分)5模型訓練與評估(10分)正確訓練模型(5分)10分正確評估模型(5分)6核心素養(20%)具有良好的自主學習能力、分析解決問題的能力、整個任務過程中有指導他人(20分)20分

具有較好的學習能力和分析解決問題的能力,任務過程中無指導他人(15分)能夠主動學習并收集信息,有請教他人進行解決問題的能力(10分)不主動學習(0分)7課堂紀律(20%)設備無損壞、設備擺放整齊、工位區域內保持整潔、無干擾課堂秩序(20分)20分

設備無損壞、無干擾課堂秩序(15分)無干擾課堂秩序(10分)干擾課堂秩序(0分)總得分職業能力目標01任務描述與要求02任務分析與計劃03知識儲備04任務實施

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論