【摘" 要】 針對機器學習算法這門課程理論性強、課程難度大的特點,再加上高職學生基礎薄弱、學習興趣較低、學習效果不佳等問題,筆者以一線教學者的視角,結合實際教學經驗,研究與探討行之有效的教學方法,即“以案例帶動理論”“化繁為簡,直擊核心”“切換師生角色”。實踐表明該教學方法有助于改善教學質量,提升學生的學習效率。
【關鍵詞】 機器學習;教學質量;高職課堂;案例帶動理論
一、研究背景
隨著社會的不斷進步,中國經濟增長點由傳統(tǒng)的制造業(yè)逐步向創(chuàng)新和高科技產業(yè)升級,因此職業(yè)教育的發(fā)展也要與時俱進。為推動職業(yè)教育的發(fā)展,2021年中共中央辦公廳、國務院辦公廳印發(fā)了《關于推動現(xiàn)代職業(yè)教育高質量發(fā)展的意見》,其中明確提出要“深化教育教學改革”,要求一線教師“創(chuàng)新教學模式與方法”。白永明等學者分別從學生維度、教師維度、專業(yè)維度分析了影響高職院校教學質量的原因,并給出了三種提升教學質量的路徑。馬國勤探討的是線上教學,它運用大數(shù)據(jù)關聯(lián)分析技術,分析高職線上教學質量影響因素,為教學質量的提升提供科學分析依據(jù)。顧錢娟針對高職數(shù)學的特點,總結出適應該學科的教學方法。總之,教學方法千變萬化,只有結合實際情況做到因材施教,才能有的放矢,取得事半功倍的效果。本文結合筆者所教授課程“機器學習算法及應用”,首先從學生維度分析高職學生現(xiàn)狀,然后從教學點滴出發(fā),詳細論述如何提升學生的學習效率。
二、高職學生學習現(xiàn)狀
目前,高職院校學生的學情是思維靈活,信息掌握全面,自主學習能力欠佳,獲取知識途徑多樣,缺乏實踐經驗。大部分學生都能夠積極主動學習,按時完成學習任務,但仍然存在一些問題。
(一)學生基礎偏弱
目前高職學生的生源主要是高考錄取的最后批次,學生考取的分數(shù)普遍較低,文化課基礎薄弱。部分高職學生是通過對口單招錄取的,沒有經過系統(tǒng)的高中知識學習,知識相對匱乏。同時大學課程授課不同于中小學,課程進度較快,因此會導致部分學生學習進度跟不上。
(二)學習習慣有待改進
部分學生的學習習慣相對較差,有待改進,比如有的學生不能集中精力學習,往往是三分熱度,“善始者眾,善終者寡”。有的學生自主性較差,需要教師在旁邊不斷地督促。有的學生缺乏有效的學習方法,投入的時間偏多,但收效甚微。
(三)缺乏學習動力
目前高校學生大多是在應試教育環(huán)境下成長起來的,沒有社會經驗,對就業(yè)實際崗位要求缺乏深刻的理解,對所學知識在實際中能否得到有效運用感到迷茫。部分教材理論難度偏大,學生理解起來困難重重。諸如此類的原因,導致部分學生缺乏學習動力。
三、課堂效率提升方法與實踐
(一)以案例帶動理論
在傳統(tǒng)的教學方法中,教師首先教授理論知識,然后結合理論知識進行例題的講解。但是理論知識抽象度過高,不易于學生理解,建立的“第一印象”往往不好,難以吸引其繼續(xù)學習。教師可以反其道而行,重點教授例題,以簡單示例的練習帶動學生對理論知識的理解。以筆者所教授的機器學習算法K-均值算法為例,教程給出的是抽象的算法描述,如下是文獻4中給出的算法過程:
(1)適當選擇K個簇的初始質心。
(2)在第k次迭代中,對任意一個樣本,求其到k個質心的距離,將該樣本歸到距離最短的中心所在的簇。
(3)利用均值等方法更新該類的質心值。
(4)對于所有的K個簇中心,如果利用(2)和(3)的迭代更新后,值保持不變,則迭代結束,否則繼續(xù)迭代。
學生看到如上抽象描述,通常一頭霧水,首先體現(xiàn)在概念上,比如什么是“簇”,什么是“質心”,什么是“樣本”;另外,“最短距離”如何確定,算法什么時候迭代結束。而大多教材沒有具體計算案例,直接給出抽象難懂的理論,不利于高職學生理解算法的核心思想。
為幫助學生更好地掌握知識,優(yōu)先通過簡單例題,通過例題的學習,帶動學生對枯燥理論知識的理解。筆者設計授課例題如下:假設在平面坐標上有6個點,分別是(1,2)、(2,3)、(15,15)、(15,16)、(35,35)、(35,36),試對這6個點進行K-均值聚類。在此僅展示第一步、第二步:
(1)假設聚類個數(shù)是 3,初始聚類中心是(1,2)、(2,3)、(15,15)。
(2)計算其余的點(15,16)、(35,35)、(35,36)到各個初始聚類中心的距離。點(15,16)到聚類中心(1,2)的距離是14,到聚類中心(2,3)的距離是13,到聚類中心(15,15)的距離是1,因為點(15,16)到點(15,15)的距離最近,分到聚類中心(15,15)所在的類中。同理:點(35,35)分到聚類中心(15,15)所在的類中,點(35,36)分到聚類中心(15,15)所在的類中。
通過簡單明了的案例帶動學生思維,使學生對算法有更加具體形象地了解,然后再升華到抽象理論,更容易為學生所接受。此種教學方法提升了學生的成就感,調動了學習的動力。
(二)化繁為簡,直擊核心
基于職教學生基礎薄弱、缺乏學習興趣和動力的特點,在授課時不宜貪多,不宜面面俱到,更不能填鴨式教學。要返璞歸真,化繁為簡,直擊核心,方能提升課堂效率。同樣以K-均值算法為例,文獻4給出了算法的代碼案例(在此僅顯示部分代碼):
#第一步:裝載數(shù)據(jù)
from sklearn. datasets import load_digits
digits = load_digits()
X = digits. data
y = digits. target
#第二步:引入時間計時
import time
start = time. process_time()
#第三步:進行K-means聚類
from sklearn. cluster import KMeans
KM = KMeans(n_clusters=10)
c = KM. fit_predict(X)
end = time. process_time()
print(‘Time is %.3f’ % (end - start))
#第四步:計算聚類結果,代碼省略。
#第五步:顯示聚類中心,代碼省略。
#第六步:輸出聚類準確率,代碼省略。
以上代碼實現(xiàn)的是針對Sklearn自帶的手寫數(shù)據(jù)進行K-均值聚類,學生存在如下困難:1.代碼案例復雜,手寫數(shù)字是圖像,在電腦中以二進制的方式存儲,圖片的分辨率是8像素×8像素,也即算法中每條數(shù)據(jù)是64個代表像素的數(shù)字。類似的圖片一共有1797張。2.代碼調試復雜,在pycharm進行debug,聚類過程中中間變量值過多(1797×64),不利于代碼錯誤分析。3.部分學生python基礎薄弱,代碼過于復雜不利于閱讀。在教學過程中,要簡化代碼案例,摒除冗余的代碼。如下是筆者設計的代碼案例:
from sklearn. cluster import KMeans
import numpy as np
data = [[1, 2], [2, 3], [15, 15], [15, 16],[35,35],[35,36]]
claster_centers = [[1, 2], [2,3],[15, 15]]
init = np. array(claster_centers)
k_means = KMeans(init=init, n_init=1)
k_means. n_clusters = 3 # 設置聚類個數(shù)
k_means. n_features_in_ = claster_centers # 設置聚類中心
k_means. fit(data)
print(“迭代次數(shù):”, k_means. n_iter_)
print(“聚類結果標簽:”, k_means. labels_)
如上代碼聚類數(shù)據(jù)案例簡單,僅有6條簡單數(shù)據(jù);由于數(shù)據(jù)緯度低,數(shù)據(jù)量少,便于pycharm進行斷點調試。它沒有冗余的代碼,便于對聚類結果進行分析,比如聚類結果是[0 1 2 2 2 2],那么代表分為3類,第1條數(shù)據(jù)劃分到第0類,第2條數(shù)據(jù)劃分到第1類,第3、4、5、6條數(shù)據(jù)劃分到第2類。如下是課本案例與筆者設計案例對比:
(三)切換師生角色
傳統(tǒng)的教學模式是教師在講臺上講,學生在下面認真學習,學生的思路時刻跟著教師的講解,自始至終學生處在被動接受的狀態(tài),久而久之出現(xiàn)倦怠現(xiàn)象。為調動學生學習積極性,采用“切換師生角色”的方法,下文以關聯(lián)規(guī)則算法Apriori為例。
首先,課前布置授課任務。為了鼓勵更多學生參與授課,把Apriori算法的講解分為三塊,分別由三名學生講解。這三塊內容分別是連接步、剪枝步、掃描數(shù)據(jù)庫確定頻繁項集步。要求學生參照課本,或課下查詢網絡資料,把自己要講解的那一塊研究明白,比如連接步,連接的條件有哪些;剪枝步,如何對頻繁項集進行修剪;如何確定頻繁項集,如果數(shù)據(jù)放在內存中如何進行掃描;等。
其次,課中學生講解。上課時間,要求授課的學生挨個講解自己準備的內容,教師坐在旁邊認真聆聽。教師也做好筆記,記錄學生講解精彩的內容以及講解有所疏漏的地方。對于精彩的講解給予及時表揚,對于出現(xiàn)的問題給予及時的完善和補充。比如有的學生不僅能夠講解Apriori算法原理,還能夠指出該算法的缺陷,并且研究其他關聯(lián)規(guī)則算法。對此類學生要樹立榜樣,帶動整個班級共同進步。有的學生對候選項集的選取模棱兩可,此時教師可以適當加以引導,找出其理解的薄弱環(huán)節(jié)加以彌補。
最后,課后總結反思。針對授課的學生,要求其在課下做出積極的反思,比如哪些內容講得比較透徹,哪些內容講得比較籠統(tǒng),有待進步。引導學生進行后續(xù)研究,研究的內容包括:Apriori算法有哪些應用場景,怎么改進Apriori算法,如何用所學的程序語言實現(xiàn)該算法,等等。
切換師生角色的授課方式,能夠積極調動學生參與課堂的積極性,活躍課堂氣氛,有效避免課堂出現(xiàn)困頓的現(xiàn)象。它提高了學生自主學習的能力,鍛煉了學生的膽識,增強了學生的自信心和抗壓能力。
四、結語
以上三種教學方法為筆者在教學實踐中的經驗總結,能夠有效提升機器學習算法課程的教學質量,使學生的學習效率有所提升。每個學校的學情不一樣,教學方式永無定式。教師要切實遵從新時代執(zhí)教理念,做到“因地制宜”“因材施教”,總結適合本校學生的教學方法,推動職教事業(yè)的發(fā)展。
參考文獻:
[1] 白永明,張立影. 高職院校教學質量影響因素及提升路徑[J]. 職業(yè)技術教育,2021(42):52-55.
[2] 馬國勤. 基于大數(shù)據(jù)的高職線上教學質量分析及“三教”改革探究[J]. 天津職業(yè)大學學報,2021(30):46-51.
[3] 王燕子. 淺析高職學生學情現(xiàn)狀[J]. 南方農機,2019,50(09):187-188.
[4] 李陽. 機器學習算法與應用(Python版)[M]. 北京:清華大學出版社,2022.
[5] 顧錢娟. 高職數(shù)學建模的教學方法與策略研究[J]. 科技視界,2022(03):138-139.