資源簡介 學習任務單課程基本信息課題《編程調用平臺中的智能工具》教科書書名:《信息技術必修1:數據與計算》出版社:人民教育出版社、中國地圖出版社出版日期:2019年6月學生信息姓名學校班級學號學習目標1.理解對話機器人的工作原理,經歷使用編程開發智能工具的過程,完成對話機器人的編程實現。【計算思維】2.認識對話機器人在信息社會中的應用價值,體會人工智能對我們生活的影響。【信息意識】【計算思維】課前學習任務1.準備好學生資源中的素材以及任務單。2.在自己的電腦中安裝好ChatterBot及ChatterBotCorpus模塊,安裝包已在素材庫中提供。課上學習任務【學習任務一】對話機器人工作原理分析請嘗試寫出對話機器人的工作原理是什么。【學習任務二】對話機器人的開發實現請按照如下所示的步驟將對話機器人的程序代碼寫出來。構建機器人模型創建對話語料數據訓練對話機器人模型與對話機器人開展對話【學習任務三】對話機器人的優化設計請按照如下所示的要求將對話機器人的程序代碼寫出來。創建中文對話機器人為對話機器人手動添加語料數據推薦的學習資源ChatterBot訓練方式:1、通過列表數據進行訓練chatterbot.trainers.ListTrainer(storage,kwargs)允許使用對話字符串列表來訓練ChatBot。對于訓練過程,您需要傳遞一個語句列表,其中每個語句的順序基于其在給定對話中的位置。例如,如果你使用如下語言進行訓練,則當你輸入Hithere!或者Greetings!的時候機器人會回復你Hello。fromchatterbot.trainersimportListTrainerchatterbot=ChatBot("TrainingExample")chatterbot.set_trainer(ListTrainer)chatterbot.train(["Hithere!","Hello",])chatterbot.train(["Greetings!","Hello",])您還可以提供更長的訓練對話清單。這將在列表中建立每個項目作為響應。chatterbot.train(["Howareyou?","Iamgood.","Thatisgoodtohear.","Thankyou","Youarewelcome.",])2、使用語料庫數據進行訓練chatterbot.trainers.ChatterBotCorpusTrainer(storage,kwargs)允許使用來自ChatterBot對話語料庫的數據訓練聊天機器人。ChatterBot附帶一個數據語料庫和實用程序模塊,可以很容易地快速訓練您的機器人進行交流。為此,只需指定要使用的語料庫數據模塊即可。3、指定語料庫范圍也可以一次導入ChatterBot語料庫的各個子集。例如,如果您只希望根據英文問候語和對話語料進行訓練,那么您只需指定它們即可。chatterbot.train("chatterbot.corpus.english.greetings","chatterbot.corpus.english.conversations")在調用train方法時,您還可以指定文件路徑到語料庫文件或語料庫文件的目錄。chatterbot.train("./data/greetings_corpus/custom.corpus.json","./data/my_corpus/")4、使用Ubuntu對話語料庫進行訓練Ubuntu對話語料庫是一個海量數據集。當使用這個語料庫時,開發者目前會遇到顯著下降的表現,其形式是來自聊天機器人的延遲訓練和響應時間。chatterbot.trainers.UbuntuCorpusTrainer(storage,kwargs)允許chatbots使用來自UbuntuDialogCorpus的數據進行訓練。此訓練類使您可以使用Ubuntu對話語料庫來訓練您的聊天機器人。由于Ubuntu對話語料庫的文件大小,下載和訓練過程可能需要相當長的時間。此訓練類將處理下載壓縮語料庫文件并提取它的過程。如果該文件已被下載,則不會再次下載。如果文件已被提取,則不會再提取。(共61張PPT)編程調用平臺中的智能工具(第三十一課時)課前準備2安裝第三方庫安裝好ChatterBot及ChatterBotCorpus模塊。1學生資源素材準備好學生資源中的素材以及任務單。智能客服3億次在線咨詢97%智能客服全天候服務減少人力提高效率對話機器人對話機器人是模擬人類對話聊天形式并提供服務的程序。探究一:對話機器人的工作原理機器學習學習規律數據預測探究一:對話機器人的工作原理模型歷史數據訓練新的數據輸入未知屬性預測探究一:對話機器人的工作原理對話機器人模型構建對話機器人的模型探究一:對話機器人的工作原理新的數據模型未知屬性歷史數據訓練輸入預測探究一:對話機器人的工作原理早上好!早上好!早上好!早!探究一:對話機器人的工作原理語句1早上好!語句2早上好!對話語料對話1語句1早上好!語句2早!對話2探究一:對話機器人的工作原理新的數據模型未知屬性歷史數據訓練輸入預測探究一:對話機器人的工作原理對話語料模型訓練對話機器人模型(訓練之前)對話機器人模型(訓練之后)探究一:對話機器人的工作原理語句1早上好!語句2早上好!對話1語句1早上好!語句2早!對話2對話機器人的知識圖譜探究一:對話機器人的工作原理語句1早上好!語句1最近怎么樣?語句2早上好!語句2早!語句2我挺好的!對話機器人的知識圖譜探究一:對話機器人的工作原理對話語料模型訓練對話機器人模型(訓練之前)對話機器人模型(訓練之后)存儲訓練結果探究一:對話機器人的工作原理模型未知屬性歷史數據訓練新的數據輸入預測探究一:對話機器人的工作原理輸入最近怎么樣?匹配對話機器人模型(訓練之后)探究一:對話機器人的工作原理語句1早上好!語句1最近怎么樣?語句2早上好!語句2早!語句2我挺好的!對話機器人的知識圖譜語句1最近怎么樣?探究一:對話機器人的工作原理新的數據模型歷史數據訓練輸入未知屬性預測探究一:對話機器人的工作原理語句1早上好!語句1最近怎么樣?語句2早上好!語句2早!語句2我挺好的!對話機器人的知識圖譜語句1最近怎么樣?語句2我挺好的!探究一:對話機器人的工作原理對話模型(訓練結果)輸入最近怎么樣?輸出我挺好的!應答匹配探究一:對話機器人的工作原理建立語料庫數據訓練機器人模型開展機器人對話構建機器人模型探究二:對話機器人的開發實現探究二:對話機器人的開發實現探究二:對話機器人的開發實現探究二:對話機器人的開發實現ChatterBot基于機器學習實現根據輸入返回輸出對話機器人模型:ChatBot探究二:對話機器人的開發實現ChatterBotChatBot建立語料庫數據訓練機器人模型開展機器人對話構建機器人模型探究二:對話機器人的開發實現模塊名子模塊等名字ChatBotfromimportchatterbot12ChatBot()“name““Candice“bot=探究二:對話機器人的開發實現探究二:對話機器人的開發實現ChatterBotChatBot自帶語料手動添加建立語料庫數據訓練機器人模型開展機器人對話構建機器人模型探究二:對話機器人的開發實現自帶語料庫ChatterbotCorpus探究二:對話機器人的開發實現探究二:對話機器人的開發實現自帶語料庫ChatterbotCorpus手動添加語料對話列表數據示例1:["包郵嗎?","親,全場包郵!"]手動添加語料對話列表數據示例2:["Howareyou?","Iamfine."]示例3:["去看電影吧?","好呀,看什么?","八佰怎么樣?","可以!"]探究二:對話機器人的開發實現自帶語料庫ChatterbotCorpus手動添加語料對話列表數據ChatterBotCorpusTrainerListTrainer探究二:對話機器人的開發實現fromimport模塊名chatterbot.trainers34ChatterBotCorpusTrainer()子模塊等名字ChatterBotCorpusTrainerChatBotbottrainer=探究二:對話機器人的開發實現探究二:對話機器人的開發實現ChatterBotChatBot自帶語料手動添加訓練過程建立圖譜建立語料庫數據訓練機器人模型開展機器人對話構建機器人模型探究二:對話機器人的開發實現.train()5機器人訓練師語料數據“chatterbot.corpus.english”trainer探究二:對話機器人的開發實現探究二:對話機器人的開發實現探究二:對話機器人的開發實現ChatterBotChatBot自帶語料手動添加訓練過程建立圖譜對話規則輸入輸出建立語料庫數據訓練機器人模型開展機器人對話構建機器人模型匹配語句獲取反饋輸出Bye輸入是否為Bye輸出反饋語句退出循環結束NY循環開始接收用戶輸入結束接收用戶輸入輸入是否為Bye匹配語句獲取反饋輸出反饋語句輸出Bye退出循環NY循環input()WhileTrue條件語句ChatBot.get_response()breakprint()print()開始探究二:對話機器人的開發實現探究二:對話機器人的開發實現探究二:對話機器人的開發實現ChatterBotChatBot自帶語料手動添加訓練過程建立圖譜對話規則輸入輸出建立語料庫數據訓練機器人模型開展機器人對話構建機器人模型探究三:對話機器人的優化設計如何學會說中文?在中文語料數據上進行訓練探究三:對話機器人的優化設計trainer.train()優化1語料數據“chatterbot.corpus.chinese”探究三:對話機器人的優化設計探究三:對話機器人的優化設計探究三:對話機器人的優化設計如何學會說中文?如何添加訓練語句?在中文語料數據上進行訓練探究三:對話機器人的優化設計自帶語料庫ChatterbotCorpus手動添加語料對話列表數據ChatterBotCorpusTrainerListTrainer探究三:對話機器人的優化設計fromchatterbot.trainersimportListTrainertrainer=ListTrainer(bot)trainer.train([“今天吃什么?”,“炸醬面!”])優化2探究三:對話機器人的優化設計探究三:對話機器人的優化設計探究四:對話機器人的應用價值智能疫情助理探究四:對話機器人的應用價值博物館觀覽助手探究四:對話機器人的應用價值智能語音助手小結與練習編程開發智能工具對話機器人工作原理對話機器人應用價值對話機器人編程實現小結與練習Q1.對話機器人的工作原理是什么?Q2.請嘗試編程,讓機器人學會如下對話:“請問有什么需要?”“我想買兩張電影票。”“哪部電影?”“八佰,謝謝!”課程基本信息課題《編程調用平臺中的智能工具》教科書書名:《信息技術必修1:數據與計算》出版社:人民教育出版社、中國地圖出版社出版日期:2019年6月教學目標教學目標:1.理解對話機器人的工作原理,經歷使用編程開發智能工具的過程,完成對話機器人的編程實現?!居嬎闼季S】認識對話機器人在信息社會中的應用價值,體會人工智能對我們生活的影響?!拘畔⒁庾R】【計算思維】教學重點:對話機器人的工作原理教學難點:對話機器人的編程實現教學過程時間教學環節主要師生活動2分鐘情境導入智能客服的應用在日常生活中,我們經常會使用智能客服來進行咨詢,解決問題。去年雙十一當天,淘寶接待在線咨詢服務超3億次,其中97%由智能客服機器人完成。對話機器人智能客服本質上是一個對話機器人,用來模擬人類對話聊天形式并提供服務的程序。對話機器人是如何實現與人之間的交流呢?今天我們就來聊一聊,對話機器人的工作原理是什么,以及如何利用編程來開發實現。8分鐘探究一:對話機器人的工作原理1.回顧機器學習在前面的學習中,同學們已經了解到人工智能技術的核心是機器學習。簡單來說,機器學習就是從已有數據中學習規律,從而對未來數據進行預測。機器學習通過對歷史數據進行處理,訓練模型。訓練之后的模型可對新數據的特性進行預測。2.對話機器人的工作原理(1)構建對話機器人的模型首先,我們要選擇構建對話機器人的模型,這個模型是訓練之前的模型。(2)創建對話語料數據通過收集對話產生的數據,并加以存儲處理,即可形成相應的對話語料數據。例如,這兩段對話通過收集處理,可存儲為如下格式的語料數據。(3)訓練對話機器人模型有了對話語料的數據,對話機器人模型就可以開始訓練,從數據中學習規律。對話機器人在訓練時,會遍歷每一條對話語句,最終生成知識圖譜。例如,對于對話1和2,其語句1都是早上好,但回復的語句2不同,就可以合并為如圖所示的對話結構。訓練之后的結果將會存儲在計算機中。(4)與對話機器人開展對話訓練之后的對話機器人模型就可以開展實際對話,來進行模型應用。根據用戶的輸入內容,與知識圖譜中的語句進行比對匹配,找到與其最相似的一條,然后給出本語句的反饋,做出應答。3.小結對話機器人的工作原理10分鐘探究二:對話機器人的開發實現1.構建機器人模型——ChatterBot庫與ChatBot函數(1)ChatterBot庫ChatterBot庫是一個基于機器學習的對話機器人引擎,可以實現對用戶輸入的自動響應。ChatterBot可訓練支持任何語言的聊天機器人。(2)編程實現導入Chatterbot模塊的ChatBot利用ChatBot創建一個對話機器人框架2.建立語料庫數據——ChatterBotCorpus及列表數據(1)自帶語料庫:ChatterBotCorpusChatterbotCorpus包是一個機器可讀的多語言對話語料庫。這些模塊用于快速訓練ChatterBot以響應不同語言的各種輸入。體驗活動:查看ChatterbotCorpus英文語料庫。(2)手動添加語料:對話列表數據編程實現:3.訓練對話機器人模型以在ChatterBotCorpusTrainer英文數據訓練為例,利用訓練師trainer中的train()函數進行訓練。在訓練的過程中,對話機器人將遍歷每一個語句,從而生成知識圖譜。編程實現:4.開展對話機器人模型的對話(1)對話規則與流程圖(2)編程實現5.小結對話機器人實現過程3分鐘探究三:對話機器人的優化設計對話機器人如何實現說中文?解決辦法:對話機器人模型是通過對話語料數據來進行學習,因此將訓練數據改為中文語料數據即可。編程實現:對話機器人如何添加語句?解決辦法:使用列表數據進行訓練,將需要學習的對話在源代碼中寫出。編程實現:3分鐘探究四:對話機器人的應用價值對話機器人助力防疫中的咨詢導診博物館觀覽助手智能語音助手2分鐘小結與練習1.回顧總結知識2.小測完成自評學生完成課后練習題,檢驗自己的學習效果。Q1.對話機器人的工作原理是什么?Q2.嘗試編程,讓機器人學會如下對話:“請問有什么需要?”“我想買兩張電影票?!?br/>“哪部電影?”“八佰,謝謝!”練習題Q1.對話機器人的工作原理是什么?Q2.嘗試編程,讓機器人學會如下對話:“請問有什么需要?”“我想買兩張電影票。”“哪部電影?”“八佰,謝謝!” 展開更多...... 收起↑ 資源列表 編程調用平臺中的智能工具(第三十一課時)- 任務單.docx 編程調用平臺中的智能工具(第三十一課時)- 教學設計.docx.docx 編程調用平臺中的智能工具(第三十一課時)- 練習題.docx 編程調用平臺中的智能工具(第三十一課時)- 課件00.ppt 縮略圖、資源來源于二一教育資源庫