康怡琳,汪 紅,田莎莎,任 愷
(中南民族大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,湖北 武漢 430074)
機(jī)器學(xué)習(xí)是一門多領(lǐng)域交叉學(xué)科,涉及理論基礎(chǔ),包括高等數(shù)學(xué)、線性代數(shù)、概率論與統(tǒng)計(jì)學(xué)、數(shù)據(jù)庫、最優(yōu)化理論、復(fù)雜度理論等多門學(xué)科,它是人工智能的重要技術(shù)基礎(chǔ),也是智能科學(xué)的核心。目前人工智能的4次浪潮都與機(jī)器學(xué)習(xí)的方法有關(guān)。因此,“機(jī)器學(xué)習(xí)”課程是人工智能專業(yè)和智能科學(xué)與技術(shù)專業(yè)學(xué)生必修的一門基礎(chǔ)課[1]。
民族院校在教育領(lǐng)域有著獨(dú)特的地位和特點(diǎn),如何在民族院校中進(jìn)行機(jī)器學(xué)習(xí)課程的教學(xué)與實(shí)踐改革,培養(yǎng)新時(shí)代人工智能人才具有重要的現(xiàn)實(shí)意義[2-4]。
傳統(tǒng)“機(jī)器學(xué)習(xí)”課程局限在介紹機(jī)器學(xué)習(xí)的主要經(jīng)典算法原理與機(jī)制。由于其中大部分方法是基于復(fù)雜的數(shù)學(xué)模型,使學(xué)生望而生畏,反而對(duì)該門課程產(chǎn)生消極情緒。此外,傳統(tǒng)機(jī)器學(xué)習(xí)課程采用教師講授、學(xué)生聽課的方式進(jìn)行。學(xué)生被動(dòng)接受知識(shí),很難對(duì)這門課程產(chǎn)生興趣和熱情。在新工科背景與教育部產(chǎn)學(xué)研項(xiàng)目的支持下,歷經(jīng)八年的教學(xué)實(shí)踐,筆者摸索出一套課程的教學(xué)與實(shí)踐改革經(jīng)驗(yàn)。以社會(huì)需求與企業(yè)需求為導(dǎo)向,以交叉融合、共享、創(chuàng)新為主要途徑來培養(yǎng)多元化、創(chuàng)新型人工智能人才。
“機(jī)器學(xué)習(xí)”課程作為人工智能專業(yè)、智能科學(xué)與技術(shù)專業(yè)的核心基礎(chǔ)課程,一般安排在第三、四學(xué)期開課。在課程的安排上,既要涵蓋Python的基礎(chǔ)知識(shí),也需要機(jī)器學(xué)習(xí)的幾大模型:回歸、分類、聚類、推薦、神經(jīng)網(wǎng)絡(luò)等[5]。以典型案例為鋪墊,提高學(xué)生學(xué)習(xí)興趣;采用啟發(fā)式教學(xué),提高學(xué)生思維能力,發(fā)揮主觀能動(dòng)性;將所學(xué)知識(shí)運(yùn)用于當(dāng)前階段的熱點(diǎn)或前沿問題上進(jìn)行實(shí)踐。下面將詳細(xì)介紹課程模塊。
要求學(xué)生在課前安裝好Anaconda軟件,課堂邊講解理論知識(shí)邊實(shí)際操作。安裝和配置Jupyter Notebook,演示如何創(chuàng)建新的Notebook和Markdown單元格;介紹Python語言的特點(diǎn),以及其在數(shù)據(jù)處理和分析領(lǐng)域的重要性;講解Python語言的基本語法、數(shù)據(jù)結(jié)構(gòu)和編程方法;講解Pandas庫的特點(diǎn)和使用場(chǎng)景,以及如何用Pandas進(jìn)行數(shù)據(jù)處理和分析;講解Numpy庫的特點(diǎn)和使用場(chǎng)景,以及如何用Numpy進(jìn)行數(shù)組操作和數(shù)學(xué)計(jì)算,演示如何加載、處理和分析數(shù)據(jù)。
1.教學(xué)目的:引導(dǎo)學(xué)生理解回歸問題的本質(zhì),即通過輸入特征預(yù)測(cè)連續(xù)目標(biāo)值。
2.教學(xué)過程:以房?jī)r(jià)預(yù)測(cè)為切入點(diǎn),首先讓學(xué)生理解問題本質(zhì),從而介紹線性回歸的基本概念,包括回歸方程和線性模型。講解如何擬合線性回歸模型。其次解釋過擬合和欠擬合的概念,以及它們的影響,演示如何使用訓(xùn)練集和測(cè)試集來評(píng)估模型性能,并討論如何選擇合適的模型復(fù)雜度。再次介紹梯度下降算法的基本思想和數(shù)學(xué)原理,演示如何使用梯度下降來優(yōu)化線性回歸模型的參數(shù)。最后討論損失函數(shù)的概念,如均方誤差損失函數(shù),講解如何計(jì)算和解釋RMSE作為性能指標(biāo)。
3.課堂編程實(shí)踐:提供編程實(shí)踐練習(xí),讓學(xué)生在房?jī)r(jià)預(yù)測(cè)的問題中實(shí)現(xiàn)線性回歸模型和梯度下降優(yōu)化。學(xué)生使用實(shí)際數(shù)據(jù)集來進(jìn)行模型訓(xùn)練和評(píng)估,解決一個(gè)真實(shí)世界的回歸問題,并帶領(lǐng)學(xué)生分析案例中的數(shù)據(jù)、模型和結(jié)果。
1.教學(xué)目的:使學(xué)生能夠理解分類問題的本質(zhì),區(qū)分分類和回歸任務(wù)的不同之處,并掌握幾種常見的分類模型;學(xué)習(xí)如何使用似然函數(shù)和代價(jià)函數(shù)來訓(xùn)練邏輯回歸模型,并了解決策邊界、訓(xùn)練分類器和評(píng)估指標(biāo)的重要性;能夠解釋什么是一個(gè)好的準(zhǔn)確率,并了解學(xué)習(xí)曲線和模型偏差的概念。
2.教學(xué)過程:引入情感分析問題,解釋為什么情感分析可以視為分類問題,例如將情感分為正面和負(fù)面;闡述分類和回歸的差別,以圖示和示例來加深學(xué)生對(duì)這兩個(gè)任務(wù)的理解;介紹簡(jiǎn)單閾值分類器,討論其原理和局限性,并在實(shí)際數(shù)據(jù)集上進(jìn)行演示;深入研究邏輯回歸模型,解釋似然函數(shù)和代價(jià)函數(shù)的概念,以及如何使用梯度下降來訓(xùn)練模型;講解決策邊界的概念,如何在圖上可視化不同分類模型的決策邊界;指導(dǎo)學(xué)生通過訓(xùn)練數(shù)據(jù)來擬合分類器,討論模型參數(shù)的優(yōu)化和調(diào)整;引入評(píng)估指標(biāo),包括準(zhǔn)確率、錯(cuò)誤率、混淆矩陣,并圖示如何計(jì)算這些指標(biāo);通過實(shí)際案例和示例,說明什么是一個(gè)好的準(zhǔn)確率,并強(qiáng)調(diào)準(zhǔn)確率不是唯一的評(píng)估標(biāo)準(zhǔn);最后探討學(xué)習(xí)曲線和模型偏差的概念,以幫助學(xué)生理解模型的偏差與數(shù)據(jù)集大小之間的權(quán)衡。
3.課堂編程實(shí)踐:在電影影評(píng)的問題中實(shí)現(xiàn)從文本中推測(cè)情感傾向。學(xué)生使用豆瓣影評(píng)數(shù)據(jù)集來進(jìn)行模型訓(xùn)練和評(píng)估。解決一個(gè)真實(shí)世界的分類問題,并帶領(lǐng)學(xué)生分析案例中的數(shù)據(jù)、模型和結(jié)果。
1.教學(xué)目的:理解聚類分析的概念和應(yīng)用領(lǐng)域,掌握文檔檢索中的詞袋模型和TF-IDF模型,理解文檔相似度的計(jì)算方法,學(xué)習(xí)K近鄰算法和K均值算法的原理及應(yīng)用,能夠確定K均值算法中的k值,理解聚類與分類的區(qū)別和聯(lián)系。
2.教學(xué)過程:引入聚類:介紹聚類的概念和應(yīng)用領(lǐng)域,如文本聚類、圖像聚類等;介紹文檔檢索與特征提?。航忉屛臋n檢索的概念,引入詞袋模型和TF-IDF模型,講解如何使用詞袋模型和TFIDF模型將文本轉(zhuǎn)換為向量表示。講解余弦相似度和歐氏距離等文檔相似度的計(jì)算方法;介紹K近鄰算法的原理,討論如何根據(jù)文檔相似度進(jìn)行近鄰選擇。演示K 近鄰算法的應(yīng)用;詳細(xì)講解K均值算法的原理和步驟。討論如何確定K均值算法中的k值,引入常見的方法,如肘部法則??偨Y(jié)聚類與分類的區(qū)別:對(duì)比聚類與分類的異同,強(qiáng)調(diào)聚類是一種無監(jiān)督學(xué)習(xí)方法,而分類是有監(jiān)督學(xué)習(xí)方法。
3.課堂編程實(shí)踐:提供名人的文本數(shù)據(jù)集,包含多個(gè)名人的介紹文本。演示如何使用詞袋模型和TF-IDF模型將文本數(shù)據(jù)轉(zhuǎn)換為特征向量;讓學(xué)生編寫代碼來計(jì)算不同名人之間的文檔相似度;使用K近鄰和K均值算法進(jìn)行聚類,并討論聚類結(jié)果的合理性。通過這種實(shí)踐,學(xué)生能夠?qū)⑺鶎W(xué)的聚類概念和算法應(yīng)用于實(shí)際文本數(shù)據(jù),加深對(duì)聚類分析的理解和應(yīng)用能力。
1.教學(xué)目的:理解推薦系統(tǒng)的基本概念和應(yīng)用領(lǐng)域,理解推薦系統(tǒng)的利弊。掌握不同類型的推薦算法,熟悉推薦系統(tǒng)評(píng)估指標(biāo),如精準(zhǔn)率、召回率和AUC。能夠運(yùn)用所學(xué)知識(shí)實(shí)現(xiàn)一個(gè)簡(jiǎn)單的歌曲推薦系統(tǒng)。
2.教學(xué)過程:引入推薦系統(tǒng)的概念和應(yīng)用,介紹《互聯(lián)網(wǎng)信息服務(wù)算法推薦管理規(guī)定》,引出推薦系統(tǒng)的優(yōu)勢(shì)和局限性,特別關(guān)注信息繭房的問題以及解決方法。介紹基于流行度的推薦系統(tǒng)和基于分類的推薦系統(tǒng)的原理及應(yīng)用場(chǎng)景。深入探討共生矩陣、協(xié)同過濾和矩陣分解等關(guān)鍵概念。解釋精準(zhǔn)率、召回率和AUC等推薦系統(tǒng)評(píng)估指標(biāo)的意義及計(jì)算方法。分組討論推薦系統(tǒng)的倫理和隱私問題,提出解決方案和建議。分析不同類型的推薦系統(tǒng)在不同場(chǎng)景下的適用性,并討論案例。討論推薦系統(tǒng)在電商、社交媒體等領(lǐng)域的實(shí)際應(yīng)用和成功案例。
3.課堂編程實(shí)踐:帶領(lǐng)學(xué)生使用Python和相關(guān)機(jī)器學(xué)習(xí)庫來實(shí)現(xiàn)一個(gè)歌曲推薦系統(tǒng),使用流行度和協(xié)同過濾方法來為用戶生成個(gè)性化的歌曲推薦。需要考慮數(shù)據(jù)預(yù)處理、模型訓(xùn)練、評(píng)估指標(biāo)等方面的工作。在實(shí)踐過程中,學(xué)生將學(xué)會(huì)如何使用推薦算法,以及如何評(píng)估推薦系統(tǒng)的性能。
1.教學(xué)目的:理解深度學(xué)習(xí)的基本概念和背景,包括神經(jīng)網(wǎng)絡(luò)的發(fā)展歷史;掌握神經(jīng)元的工作原理和基本數(shù)學(xué)概念。通過神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)手寫數(shù)字的識(shí)別的案例,理解神經(jīng)網(wǎng)絡(luò)的工作原理;熟悉ImageNet數(shù)據(jù)集和深度卷積神經(jīng)網(wǎng)絡(luò)在圖像分類任務(wù)中的應(yīng)用;分析深度學(xué)習(xí)的優(yōu)缺點(diǎn),包括模型復(fù)雜性和數(shù)據(jù)需求;掌握遷移學(xué)習(xí)的基本原理和應(yīng)用場(chǎng)景。
2.教學(xué)過程:簡(jiǎn)要介紹深度學(xué)習(xí)的背景和歷史;解釋神經(jīng)元的基本原理,包括激活函數(shù)和數(shù)學(xué)表達(dá);講解邏輯運(yùn)算中的AND、OR和異或問題,演示如何使用神經(jīng)網(wǎng)絡(luò)解決這些問題;引入MNIST數(shù)據(jù)集,教授如何使用深度學(xué)習(xí)模型實(shí)現(xiàn)手寫數(shù)字識(shí)別。探討圖像檢索和人臉識(shí)別的基本概念和方法;講解ImageNet數(shù)據(jù)集和卷積神經(jīng)網(wǎng)絡(luò)的基本原理;討論深度學(xué)習(xí)的優(yōu)點(diǎn)和缺點(diǎn),包括模型復(fù)雜性、數(shù)據(jù)需求和泛化能力等方面;引入遷移學(xué)習(xí)的概念,講解遷移學(xué)習(xí)的原理和實(shí)際應(yīng)用場(chǎng)景。
3.課堂編程實(shí)踐:講解如何使用深度學(xué)習(xí)框架構(gòu)建一個(gè)手寫數(shù)字識(shí)別的深度學(xué)習(xí)模型。使用MNIST數(shù)據(jù)集進(jìn)行模型訓(xùn)練和性能評(píng)估,調(diào)整模型的架構(gòu)和超參數(shù),以優(yōu)化性能。
學(xué)生分組交流討論機(jī)器學(xué)習(xí)領(lǐng)域的最新進(jìn)展,如自然語言處理(NLP)的最新進(jìn)展:該組學(xué)生可以選擇一個(gè)NLP領(lǐng)域的最新研究論文,探討其中的方法和技術(shù),并分享其在文本生成、情感分析等任務(wù)中的應(yīng)用。
機(jī)器學(xué)習(xí)課程設(shè)計(jì)順應(yīng)創(chuàng)新型國家發(fā)展需要,在經(jīng)典機(jī)器學(xué)習(xí)項(xiàng)目的基礎(chǔ)上,以先進(jìn)的智能平臺(tái)為載體,以智能車、機(jī)械臂、機(jī)器狗、機(jī)器人應(yīng)用為導(dǎo)向,圍繞其運(yùn)動(dòng)以及聽、說、看、思開展課程相應(yīng)的活動(dòng),以促進(jìn)學(xué)生知識(shí)、能力、素質(zhì)協(xié)調(diào)發(fā)展為目標(biāo),將機(jī)器學(xué)習(xí)相關(guān)理論和技術(shù)綜合應(yīng)用于分析和解決機(jī)器人復(fù)雜工程問題,全面提升學(xué)生在科學(xué)研究、技術(shù)創(chuàng)新、項(xiàng)目開發(fā)、組織管理、團(tuán)隊(duì)協(xié)作等方面的綜合素質(zhì)。以下列舉一個(gè)課題范例:智能四足機(jī)器人智能報(bào)警電話識(shí)別。
智能四足機(jī)器人(機(jī)器狗)是國際上處于領(lǐng)先水平的一種全地形移動(dòng)機(jī)器人形態(tài)。機(jī)器狗作為仿生移動(dòng)機(jī)器人,可適應(yīng)絕大多數(shù)地形環(huán)境,部署成本低廉,可在各種行業(yè),多場(chǎng)景覆蓋巡檢。請(qǐng)模擬機(jī)器狗在安防巡檢場(chǎng)景下穿過復(fù)雜地形,識(shí)別報(bào)警電話標(biāo)志并語言播放報(bào)警。
請(qǐng)通過網(wǎng)絡(luò)和機(jī)器狗的視覺傳感器收集報(bào)警電話標(biāo)志的訓(xùn)練集。
1.模型設(shè)計(jì)和訓(xùn)練。對(duì)收集的圖像進(jìn)行預(yù)處理,需要在數(shù)據(jù)集上盡可能地進(jìn)行數(shù)據(jù)增強(qiáng),將擴(kuò)充的數(shù)據(jù)集用于訓(xùn)練模型:設(shè)計(jì)一種神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),完成報(bào)警標(biāo)志的識(shí)別。針對(duì)識(shí)別結(jié)果進(jìn)行分析,并輸出每個(gè)模型的混淆矩陣、精度、準(zhǔn)確率和召回率,對(duì)模型進(jìn)行參數(shù)調(diào)整和優(yōu)化。
2.機(jī)器狗識(shí)別和播報(bào)。標(biāo)志擺放在距離機(jī)器狗前端至少1米處,機(jī)器狗視覺相機(jī)必須在6秒內(nèi)正確識(shí)別標(biāo)志并對(duì)識(shí)別的標(biāo)志進(jìn)行語音播報(bào)。
在本課程學(xué)習(xí)的基礎(chǔ)上,學(xué)生以賽促學(xué),在機(jī)器人國際及國家級(jí)賽事、泰迪杯、ASC超算大賽中取得了多項(xiàng)國家級(jí)和省級(jí)獎(jiǎng)項(xiàng)。鼓勵(lì)學(xué)生將學(xué)習(xí)成果轉(zhuǎn)化成科研成果,多名本科生參與科研工作,發(fā)表多篇論文。同時(shí),在教師的帶領(lǐng)下,學(xué)生積極服務(wù)學(xué)校與社會(huì),前往新疆和廣西開展“科普邊疆行”,向當(dāng)?shù)貦C(jī)關(guān)及教育機(jī)構(gòu)科普機(jī)器學(xué)習(xí)相關(guān)知識(shí);利用課程知識(shí),承擔(dān)了學(xué)校的機(jī)器人導(dǎo)覽任務(wù)和博物館機(jī)器人講解員Nao的開發(fā)工作;舉辦湖北省科技活動(dòng)周科普開放活動(dòng),還走進(jìn)多所小學(xué)給小學(xué)生進(jìn)行科普講解,相關(guān)工作曾多次被官媒報(bào)道。