項目5 趣味文本1_第1頁
項目5 趣味文本1_第2頁
項目5 趣味文本1_第3頁
項目5 趣味文本1_第4頁
項目5 趣味文本1_第5頁
已閱讀5頁,還剩4頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

《趣味文本》教學設計1課題:詞向量的訓練與應用授課對象:中職課型:新授課課時:3~4課時教材分析:結構內容:本節課選自《人工智能通識》的項目七。本節課的主要內容體驗自然語言處理的應用,了解自然語言處理技術發展趨勢和應用場景,熟悉詞的向量表示,掌握一種詞向量的調用方法,通過中文詞的詞向量來找到同類詞,通過中文詞的詞向量來判斷兩詞的相似度。地位作用:如今人工智能已經逐步讓人們的生活智能化,讓企業服務智能化,那么無論為了工作還是為了跟上時代步伐,有必要去了解人工智能是如何運作的。本節課的學習將帶領學生感知自然語言處理技術應用,需要學習關于詞向量基本操作,為后面的學習打好基礎。學情分析學習心理特征:本節課的授課對象為中職一年級學生該階段的學生學習自制力較差,上課注意力易被分散,因此在上課過程中,應該采用講練結合的方式,讓學生能夠在實踐中學習和鞏固課程內容。同時該階段的學生有很多自己的想法和創意,因此在設計任務時,需要給學生一定的自由發揮的空間,讓學生自主地學習和實踐。另外由于中職一年級的學生水平各不相同,因此教師在學生操作過程中應該實時觀察,引導并鼓勵基礎較差的學生完成練習。知識基礎:學生在之前的學習中已經感知到了部分人工智能技術的應用,對代碼的實操和概念的理解會有一些基礎。教學目標知識與技能目標:了解自然語言處理技術發展趨勢和應用場景了解文本表示熟悉gensim工具的使用完成詞向量模型的訓練掌握一種詞向量的調用方法通過中文詞的詞向量來找到同類詞、判斷兩次的相似度、找異類詞、實現詞匯加減法過程與方法:使用搜索引擎搜索信息,小組合作討論自然語言處理中詞向量的概念和應用應用。根據教師發布的實訓任務書,自主進行通過中文詞的詞向量來找到同類詞、判斷兩詞的相似度。根據教師發布的實訓任務書,自主通過中文詞的詞向量來找到一組詞中的異類詞、實現詞匯加減法。情感態度與價值觀:能夠體會到自然語言處理技術的奇妙和給生活帶來的樂趣。通過小組合作的方式,培養學生的主動參與的意識,強化自身的責任感,以及增強自己的合作能力。教學重難點教學重點:1、什么是文本表示?2、什么是gensim工具?3、完成詞向量模型的訓練4、熟悉詞的向量表示5、掌握一種詞向量的調用方法教學難點:通過中文詞的詞向量來找到同類詞通過中文詞的詞向量來判斷兩詞的相似度通過中文詞的詞向量來找到一組詞中的異類詞通過中文詞的詞向量實現詞匯加減法教學方法教法:任務驅動法、理實一體法學法:自主學習法、小組合作學習法教學準備教學環境:人工智能實訓室教學資源:派LabAI云課堂,PPT課件,教案,實訓源代碼,相關素材教學過程教學內容及過程時間分配設計意圖一、創設情景【教師活動】現在市場上智能學習機器人特別火,小派的妹妹剛上幼兒園,于是他想要自己動手做一款簡易的機器人,作為生日禮物送給妹妹。其中有一個功能是關于漢語詞語的,比如人指定一個詞,找到它的同類詞;人指定多個詞,找到其中的異類詞等。于是,小派從詞向量開始了研究。2分鐘該環節通過創設一個生活中真實存在的情景,讓學生了解人工智能的應用。二、任務分析【教師活動】?本案例我們主要需要學習詞向量的相關原理和操作,為后面的學習打好基礎。首先我們需要對如何開展該任務進行分析(該過程可以讓學生進行小組討論回答)預設:首先需要熟悉詞的向量表示,接著.掌握一種詞向量的調用方法,然后通過中文詞的詞向量來找到同類詞,最后通過中文詞的詞向量來找到同類詞、異類詞、實現詞匯加減法。【學生活動】小組展開討論各小組發表自己的任務分析結果【教師活動】對各小組的討論結果進行評價,最后進行小結,得出最后的任務分析結果:子任務一:熟悉詞的向量表示子任務二:訓練詞向量模型子任務三:通過中文詞的詞向量來找到同類詞、異類詞、實現詞匯加減法3分鐘該環節主要是對本節課的任務的一個討論分析,在該過程中,讓每個學生對接下來要完成的任務進行分析和討論,讓學生成為課堂的主體,提高學生的參與感,提升學生的自主思考能力。三、新知學習任務一:熟悉詞的向量表示【教師活動】本節需要掌握以下幾個知識點:詞的向量化概念、離散表示、分布式表示、gensim詞向量工具。【學生活動】根據提出的要點進行理解和感知。【教師活動】1、詞的向量化概念??詞與向量間的轉換過程就叫作詞的向量化。自然語言理解的問題要轉化為機器學習的問題,第一步肯定是要找一種方法把這些符號數學化。詞向量是自然語言處理中常見的一個操作,是搜索引擎、廣告系統、推薦系統等互聯網服務背后常見的基礎技術。關于一個詞的編碼表示,自然語言處理有一個特點,就是一段話中,一個詞的表示是和上下文相關的。問題來了??一個文本,經過分詞之后,送入某一個自然語言處理模型之前該如何表示???例如,“人/如果/沒用/夢想/,/跟/咸魚/還有/什么/差別”,向機器學習模型直接輸入字符串顯然是不明智的,不便于模型進行計算和文本之間的比較。那么,我們需要一種方式來表示一個文本,這種文本表示方式要能夠便于進行文本之間的比較、計算等。??在自然語言處理任務中,詞在計算機中的表示方法通常有兩種:離散表示(One-hotRepresentation)和分布式表示(DistributionRepresentation)。離散表示??One-hotRepresentation把每個詞表示為一個長向量。這個向量的維度是詞表大小,向量中只有一個維度的值為1,其余維度為0,這個維度就代表了當前的詞。??這種方式相當于給每個詞分配一個id,導致不能展示詞與詞之間的關系。另外,還可能導致特征空間非常大。詞袋模型是把文本看成是由一袋一袋的詞構成的。有這樣兩個文本:1.“人/如果/沒有/夢想/,/跟/咸魚/還有/什么/差別”2.“人生/短短/幾十/年/,差別/不大/,/開心/最/重要”這兩個文本,可以構成這樣一個詞典:{“人”,“如果”,“沒有”,“夢想”,“,”,“跟”,“咸魚”,“還有”,“什么”,“差別”,“人生”,“短短”,“幾十”,“年”,“不大”,“開心”,“最”,“重要”}字典的長度為18,每個詞對應有一個索引,所以每個詞可以用一個18維的向量表示。“人”表示為:{1,0,0,0,····,0},“如果”表示為:{0,1,0,0,····,0},“重要”表示為:{0,0,0,0,····,1},那么,文本該怎么表示呢?詞袋模型把文本當成一個由詞組成的袋子,記錄句子中包含各個詞的個數。文本1:{1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0}文本2:{0,0,0,0,2,0,0,0,0,1,1,1,1,1,1,1,1,1}以文本2為例,用詞袋模型可以這么描述:文本2里有0個“人”,0個“如果”,2個“,”,1個“差別”等。詞袋模型有以下特點:文本向量化之后的維度與詞典的大小相關;詞袋模型沒有考慮詞語之間的順序關系。詞袋模型有以下難點:當語料庫很大時,詞典的大小可以是幾千甚至幾萬,高維度的向量讓計算機很難去計算。其次,詞袋模型會造成語義鴻溝現象,即兩個表達意思很接近的文本,可能其文本向量差距很大。最后,詞袋模型忽略了詞序信息,對語義理解來講是一個極大的信息浪費。【學生活動】小組討論探究,各組分享探究結果【教師活動】進行總結這里先簡單的說一下詞的向量化概念然后再總結詞袋模型,同學們需要根據每一步驟,學習一個知識點,每個函數的使用方法和參數。最后進行同學答疑。15分鐘在該環節中,通過對幾個重要概念的介紹和講解,能夠讓學生對自然語言處理技術有一定的認知。后續再增加課堂的實踐性,讓學生對項目的目標成果有個整體理解。【教師活動】請同學們思考,jieba庫如何使用呢?預設:jieba庫是優秀的中文分詞第三方庫,中文文本需要通過分詞獲得單個的詞語。??jieba庫的分詞原理:利用一個中文詞庫,確定漢字之間的關聯概率,漢字間概率大的組成詞組,形成分詞結果。除了分詞,用戶還可以添加自定義的詞組。jieba庫分詞有3種模式:精確模式、全模式、搜索引擎模式。【學生活動】思考并回答問題:各模式如何選擇【教師活動】精確模式:就是把一段文本精確地切分成若干個中文單詞,若干個中文單詞之間經過組合,就精確地還原為之前的文本。其中不存在冗余單詞。全模式:將一段文本中所有可能的詞語都掃描出來,可能有一段文本它可以切分成不同的模式,或者有不同的角度來切分變成不同的詞語,在全模式下,Jieba庫會將各種不同的組合都挖掘出來。分詞后的信息再組合起來會有冗余,不再是原來的文本。搜索引擎模式:在精確模式基礎上,對發現的那些長的詞語,我們會對它再次切分,進而適合搜索引擎對短詞語的索引和搜索。(同學們先動手實踐,然后討論)【學生活動】思考并回答問題30分鐘在該環節中,通過提問的方式引出接下來要操作的內容,同時讓學生在動手操作之前能夠思考為什么要做這個事.另外,讓學生動手安裝之后再拋出一個問題,讓學生討論發現問題的答案,而不是直接給出,增加學生之間的互動與交流。任務二:訓練詞向量模型【教師活動】下面我們使用中文文本數據訓練詞向量模型:步驟1:解壓資源文件步驟2:導入包步驟3:文本分詞預處理步驟4:詞向量訓練步驟5:獲取模型中的詞及其詞向量步驟6:查看某個詞的詞向量首先點擊左側文件夾圖標,進入“data-sets”目錄,可以看到壓縮文件‘wordvec.zip’,其中的reviews_train_101058.txt是我們用來訓練詞向量的文本數據集。接著導入包,Gensim是本項目使用的一個關鍵包,它是一款開源的Python工具包,對文本向量的變換是Gensim的核心。代碼如下:fromgensim.modelsimportword2vecimportjieba#調用多進程管理包importmultiprocessing接著進行文本分詞預處理;?本項目使用的數據是某平臺商品的評價記錄,在訓練詞向量之前需要對中文句子進行分詞,本項目使用jieba來分詞。代碼如下:#打開文本,讀取數據file=open("./reviews_train_101058.txt")#創建一個空列表,用于存儲分詞后的數據sentences=[]forlineinfile:temp=line.replace('\n','').split(',,')sentences.append(jieba.lcut(temp[0]))#jieba.lcut()生成分詞后的列表file.close()【學生活動】參考實訓任務書或派Lab平臺上的實訓指南,完成詞向量訓練的實操【教師活動】在學生練習時進行巡視,對一些動手能力較弱的學生進行相關的指導,引導學生完成4-6步驟練習。進行詞向量訓練時,要將分詞結果輸入Gensim內建的word2vec對象進行訓練。和算法有關的參數都在gensim.models.word2vec.Word2Vec類中,主要參數介紹如下:sentences:分詞后的句子列表。min_count:最小詞頻,默認是5,少于min_count次數的詞會被丟棄,能去掉一些很生僻的低頻詞。window:窗口大小,即詞向量上下文最大距離,默認是5。workers:用于訓練的線程數。sg:訓練的核心算法,0代表skip-gram,1代表CBOW。iter:訓練的迭代輪數獲取模型中的詞和詞向量代碼如下:#獲取模型中的詞words=model.wv.index2word#輸出前10個詞print(words[1:10])#獲取模型中對應的詞向量vectors=model.wv.vectors#輸出前10個詞對應的詞向量print(vectors[1:10])最后查看某個詞的詞向量:model.wv['評價']【教師活動】對學生的練習進行簡單小結,指出學生常見的錯誤。30分鐘在該環節中,主要介紹詞向量相關,當然,這部分要考慮實現難度與學生的能力。給出一批代碼樣例,有條件的學生可以在此基礎上進行改進。這里需要老師帶著學生一起去理解代碼之間的結構以及代碼內部的核心部分。重點了解詞向量的訓練和應用。讓學生對詞向量的使用有所認知。任務二:應用詞向量進行詞匯計算【教師活動】步驟1:解壓資源文件步驟2:加載詞向量模型步驟3:輸出兩個詞的相似度步驟4:輸出詞匯的同類詞步驟5:輸出異類詞步驟6:詞匯加減法下面我們使用中文文本數據訓練詞向量模型,然后使用訓練出的詞向量找同類詞、相似度、異類詞。首先解壓資源文件:'data-sets/wordvec.zip'中包含了預訓練好的詞向量模型。然后加載詞向量模型,使用load函數加載模型。代碼如下:fromgensim.modelsimportWord2Vec#導入Word2Vec包用于處理詞向量model=Word2Vec.load('./Word60.model')#加載已經訓練好的詞向量模型接著輸出兩個詞的相似度,調用similarity函數,函數原型即similarity(self,w1,w2),該函數計算給定的兩個詞w1,w2對應的詞向量的余弦相似度。代碼如下:text='不錯滿意'#定義一組詞rslt=model.wv.similarity(text.split()[0],text.split()[1])#調用相似度函數計算并輸出上面這組詞的相似度大小print(rslt)輸出詞匯的同類詞將調用similar_by_word函數,該函數計算給定的詞匯與模型中其他所有詞對應的詞向量之間的相似度,并按從大到小排序,默認輸出前10個詞,也可以配置函數中的參數topn,輸出相似度最高的topn個詞。輸出異類詞是調用doesnt_match函數,函數原型即doesnt_match(self,words),找到給定詞列表words中的異常詞。該函數核心調用了另一個方法即rank_by_centrality,主要功能是計算給定所有詞對應的詞向量的均值向量(中心),然后分別計算給定每個詞與該中心的余弦相似度,并按從大到小排序。doesnt_match函數直接輸出rank_by_centrality函數的返回結果中與中心相似度最小的那個詞(余弦距離最大即最遠)。最后要進行的詞匯加減法,將?調用most_similar函數,并配置參數positive和negative時,能夠實現詞匯的加減法。該函數實現的是將positive對應的

溫馨提示

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

最新文檔

評論

0/150

提交評論