摘要:本文基于計算思維的算法與程序設計,結合人工智能的語音合成應用創(chuàng)造,研究計算思維與工程設計思維如何綜合生成真實項目學習。結合本欄目上期的文章,經過項目規(guī)劃與概要設計、數據模型與功能設計,通過語音合成技術實驗、GUI界面設計、數據模型與數據整理已形成信息系統(tǒng)項目雛形之后,本文繼續(xù)以功能實現為主體內容研究項目內容設計,其中包括對數據檢索與統(tǒng)計功能算法、多線程朗讀原理應用以及項目迭代優(yōu)化與泛化適應等的研究,探討項目學習的“算法中心”“技術核心”及“迭代增強”與“泛化增值”,以更完整地探索真實項目中的技術與思維融合于跨學科學習的項目設計方法。
關鍵詞:計算思維;跨學科學習;真實項目;生成研究
中圖分類號:G434? 文獻標識碼:A? 論文編號:1674-2117(2023)11-0029-04
在項目學習中,最困難的是根據項目內容的“真實性”特征進行項目主題設計。通過“經典名著朗讀者”人工智能信息系統(tǒng)的設計,我們已經可以用五個微項目來設計完成數據的獲取、數據模型構建以及基礎的數據訪問與顯示。此前,朗讀技術已經進行過基礎實驗,有了基于人工智能的語音合成技術的朗讀體驗,項目的主題效果可見度得到預判。本文將基于計算思維與工程設計思維繼續(xù)研究,包括對數據檢索、多線程朗讀及信息系統(tǒng)功能設計迭代與泛化,即對真實項目生成進行具體的技術實現研究。
信息系統(tǒng)項目以數據處理為“算法中心”
數據檢索、查詢與統(tǒng)計等數據處理是信息系統(tǒng)項目設計的“算法中心”,能體現出算法針對用戶需求、工作效率等功能的實現。例如,數據檢索可包括順序檢索(翻頁瀏覽)、按頁搜索和關鍵字檢索等功能。
微項目6:數據檢索與統(tǒng)計。
(1)分頁數據檢索與瀏覽。首先,根據全書文本的數據列表text和每頁第一行位置變量textp,用于數據輸出模塊browser()進行當前頁碼計算、頁碼與文本的顯示;其次,通過改變textp數值后調用browser()實現前一頁、后一頁、指向頁碼的頁面文字顯示(如下頁圖1)。在系統(tǒng)設計中,要注意數據的容錯判斷,如圖書數據是否已讀取、輸入頁碼是不是數字及是否在正確范圍等,在調試中可用try、int等試錯判斷,滲透功能兼容的信息意識與分解、模式、算法等計算思維要素。
(2)關鍵字檢索與統(tǒng)計。根據關鍵字進行數據檢索是體現數字素養(yǎng)的重要技術之一,它廣泛存在于應用軟件與程序設計中。在程序設計中,可用“枚舉算法”來現實。例如,向前搜索的關鍵是循環(huán)的步長為負值,而向后搜索循環(huán)的步長是正值,基于循環(huán)程序結構和枚舉算法即可形成清晰的數據檢索模型。
(3)實踐學習。①參考任一頁檢索統(tǒng)計算法,采用半成品補充前一頁、后一頁的技術留白,如補充關鍵技術“textp+(-)20”的翻頁檢索模型。②參考向后搜索算法,補充向前搜索的關鍵詞統(tǒng)計算法,如“for i in range(textp-1,0,-1)”等內容的枚舉范圍補充。
(4)項目交流。①數據檢索中本頁首行數據位置textp與關鍵字所在位置i的關系模型。②數據檢索的容錯中的數據邊界、輸入合法性等,除去try還有哪些方法?
人工智能語音合成項目以多線程控制朗讀為“技術核心”
微項目7:朗讀多線程任務設計。
在語音合成朗讀項目中,筆者先是用單線程設計,但若文章過長則需要等待(不能進行內容查找、翻頁等操作)另外,“系統(tǒng)正忙”頁面也會影響用戶體驗,所以,研究多線程是本項目的技術核心,即以更高層次體現信息科技獨特的計算思維。
(1)單線程技術實驗。朗讀少量內容用較簡單的單線程即可完成,語音合成核心技術如圖2所示。
(2)多線程技術實驗。Python中多線程模塊功能較多。朗讀中采用engine.startLoop()來實現朗讀線程的循環(huán)功能更容易。
①線程的開啟。在GUI界面設計按鈕作為線程開啟鑰匙,去調用pagereadlin()函數驅動朗讀功能。事件響應設計代碼簡述如圖3所示。
②線程的創(chuàng)建。
③線程的應用。為循環(huán)朗讀,全程序只運行一次engine.startLoop(),即可采用一個邏輯開關loop變量控制。在程序初始化時,loop=True即可。朗讀分readerpage()、reader()兩個函數,這正是線程的工作原理所需,兩個函數可以來回自動切換,在延時中信息同步顯示??梢?,項目生成研究的技術細節(jié)較多,并非有理論即可實現理想的功能。
④朗讀功能。
(3)實踐練習。①算法學習可針對讀秒循環(huán)的控制、朗讀副本的累加等內容。②從邏輯開關理解布爾型數據的特點。
(4)項目交流。①結合操作系統(tǒng)多任務工作原理,觀察“進程管理”,探討多線程對操作系統(tǒng)的意義。②結合全部程序功能來理解線程的意義。借用“唱歌”“跳舞”兩個線程的分時運行來觀察線程的運行機制。
項目功能優(yōu)化與適應環(huán)境以“迭代增強與泛化增值”為追求
為更完善地升級信息系統(tǒng),從計算思維的迭代功能、適應泛化出發(fā),可以增加功能、完善細節(jié),提高信息系統(tǒng)的安全性、完備性、體驗感以及信息系統(tǒng)的適應性等。在項目生成時,遇到問題、解決的過程能夠優(yōu)化信息系統(tǒng),更能夠體驗到計算思維迭代增強功能與泛化讓系統(tǒng)增值的深刻意義。
微項目8:迭代優(yōu)化信息系統(tǒng)的功能。
可增加設計閱讀點的記憶,讓閱讀更舒適;可設計朗讀詞匯的屏蔽,如對“①”等注解符號屏蔽不朗讀,提高體驗感;設計標點符號的統(tǒng)計功能讓朗讀進程標記更準確;可設計像卡拉OK式的字幕跟讀增強個性化的特色功能等。
(1)屏蔽朗讀詞匯,提高體驗感(如圖4)。
(2)標記閱讀朗讀位置?!爱斍绊撐淖诛@示”是整個項目核心的數據模型,大量的功能由此接口去讀取、檢索、存儲、朗讀。所以,標記閱讀朗讀的位置,就是保存當前頁的首行位置。
①讀取閱讀位置(如圖5)。
②保存閱讀位置(如圖6)。
③調用位置功能函數(如圖7)。在def readflie()中打開“圖書文件”,即可讀取位置。每次因為翻頁、查找等使用的browser()顯示“當前數據時及時保存該頁位置”,即可實現動態(tài)保存與讀取位置頁碼。
(3)朗讀語音的保存。在朗讀名著的重要章節(jié)時,可以錄音,為學生提供音頻學習文件,以此迭代音頻保存的功能設計,使學生更好地理解語音合成技術(如圖8)。
(4)實踐學習。①一般文件操作的算法學習,可以調用屏蔽詞匯、閱讀位置等進行閱讀與補充。②信息系統(tǒng)設計的學習項目,體驗對讀取、保存數據的關鍵技術價值意義。
(5)項目交流。學生舉例說明信息系統(tǒng)功能迭代對功能增強方面的意義。
另外,利用計算思維的“泛化”進行功能增值,可以結合迭代微項目進行闡述,如打開圖書文件用交互設計而非固定的文件名,即泛化應用等。
總之,通過以上微項目研究與學習,可以體驗到真實項目生成中問題解決的意義所在,即發(fā)現問題、解決問題的過程正是學習生成的過程。越來越完善的項目設計與信息系統(tǒng)功能實現,會讓學習進程螺旋上升,也會讓跨學科學習促進核心素養(yǎng)向高階發(fā)展。
參考文獻:
[1]中華人民共和國教育部.普通高中信息技術課程標準(2017年版2020年修訂)[S].北京:人民教育出版社,2020.
[2]中華人民共和國教育部.義務教育信息科技課程標準(2022年版)[S].北京:北京師范大學出版社,2020.
[3]熊璋,吳建鋒.普通高中信息技術課程必修1中的人工智能[J].中國信息技術教育,2020(11):22-24.
[4]王榮良.計算思維教育中的情境創(chuàng)設與模型建立[J].中國信息技術教育,2021(21):39-42+79.
[5]王愛勝.基于計算思維“跨學科學習”真實項目生成研究(上)——以“名著朗讀者”系統(tǒng)設計為例[J].中國信息技術教育,2023(09):25-28.