趙衛(wèi)東,袁雪茹
(復旦大學 軟件學院,上海 200433)
當前,隨著信息時代的快速發(fā)展,銀行、投資、零售、互聯(lián)網(wǎng)甚至傳統(tǒng)的制造業(yè)都產(chǎn)生了大量數(shù)據(jù)。IDC在《2020年的“數(shù)字宇宙”》研究報告中預測,到2020年,全球數(shù)據(jù)量將達到40ZB,中國在全球數(shù)據(jù)市場的份額也將由目前的13%上升到22%[1]。各行各業(yè)開始逐步應用機器學習算法分析數(shù)據(jù),以便在海量數(shù)據(jù)中提取有效的規(guī)律,輔助決策。這種發(fā)展趨勢使就業(yè)市場對數(shù)據(jù)科學、機器學習人才的需求不斷擴大,同時對人才的多元化和綜合實踐能力提出了新的要求。
隨著數(shù)據(jù)分析相關(guān)行業(yè)的快速發(fā)展,數(shù)據(jù)分析在各個領(lǐng)域都得到了很多成功的應用,企業(yè)和政府期望在各個業(yè)務崗位都有數(shù)據(jù)分析能力強的人勝任,而不是將數(shù)據(jù)分析作為一項專業(yè)技能,更期望員工能夠探索有效的數(shù)據(jù)分析方法,并根據(jù)實際數(shù)據(jù)場景分析結(jié)果作出決策,將分析和處理數(shù)據(jù)作為日常工作流程的一個環(huán)節(jié)。同時,隨著數(shù)據(jù)種類和數(shù)量的爆炸式增長,市場對畢業(yè)生的數(shù)據(jù)分析和處理能力提出了更高的要求,需要有數(shù)據(jù)分析技能的人才預測行業(yè)前景,及時抓住發(fā)展機會,形成獨有的競爭優(yōu)勢。高校的基本職能是培養(yǎng)人才,為了使學生更好地適應現(xiàn)代工作場所和終身發(fā)展,需要認真思考如何培養(yǎng)應用型人才,以適應當前的就業(yè)環(huán)境。機器學習相關(guān)專業(yè)以培養(yǎng)數(shù)據(jù)分析師、算法工程師、大數(shù)據(jù)工程師等高度數(shù)據(jù)分析、應用型人才為目標,這些工作不僅要求學生理解算法本身,更需要培養(yǎng)學生跨學科的實踐能力,將算法邏輯應用到實際生產(chǎn)、生活場景以解決現(xiàn)實問題。
企業(yè)對數(shù)據(jù)分析人才的數(shù)量和質(zhì)量的高要求導致了巨大的大數(shù)據(jù)技術(shù)、人工智能人才缺口,而目前高校的機器學習教學偏向理論化,更注重算法本身,缺乏完善的實踐教學體系和教學資源。學生的課堂學習只是面對多種專業(yè)知識的組合,缺少真實項目的實踐過程,學生不能有效地將學習內(nèi)容應用到實踐過程中,這與應用型人才的培養(yǎng)目標存在一定的偏離,畢業(yè)生不足以適應競爭激烈的就業(yè)市場。因此,高校需要考慮就業(yè)環(huán)境與學生的真實需求,對傳統(tǒng)的教學模式進行變革,掌握數(shù)據(jù)科學時代的新技術(shù)和新應用,在遵循教育規(guī)律的基礎(chǔ)上,將實際項目實踐與理論教學融為一體,逐步調(diào)整課程內(nèi)容,培養(yǎng)學生自主思考與解決實際問題的能力,從而提高競爭優(yōu)勢。
如何在教學過程中結(jié)合項目實踐,已成為各高校關(guān)注的話題。目前各高校分別建立了機器學習、數(shù)據(jù)科學與大數(shù)據(jù)相關(guān)專業(yè),而機器學習作為其中的重要課程,具有高度實踐性且涉及的算法眾多。如何結(jié)合真實項目以培養(yǎng)應用型人才,是當前人才培養(yǎng)的一個難題。
1)機器學習技能難以短期速成。
機器學習(包括深度學習)涉及的算法眾多,而掌握這些算法要求學生在理論學習基礎(chǔ)上,將算法結(jié)合企業(yè)實際項目,對理論知識有扎實的理解。這一過程需要學生接觸實際問題,經(jīng)過長期訓練達到將理論知識輸出為實際應用的水平。盡管目前網(wǎng)絡(luò)上可接觸許多精品課程,但這些課程大多以知識體系的教學為主,注重介紹算法本身、介紹機器學習中常用的理論,較少涉及實際應用。同時,新技術(shù)進入課堂教學需要過程,這對教師提出了更高的要求。教師需要積極獲取企業(yè)先進技術(shù)與解決方案,將實際生產(chǎn)流程歸納成適應于教學氛圍的學習資源,而新技術(shù)快速迭代和教材易老化成為機器學習教學的一大痛點,教師需要不斷積累和沉淀,高效創(chuàng)建出合適的教學大綱和教學內(nèi)容。因此,機器學習的技能培養(yǎng)與企業(yè)人才需求存在差距,這種技能需要通過解決實際問題來不斷摸索和積累經(jīng)驗,難以通過短時間授課的方式獲得。
2)教學過程缺少實際數(shù)據(jù)和案例。
機器學習相關(guān)專業(yè)的學生傾向于選擇機器學習工程師、數(shù)據(jù)分析師等高度應用型工作。為了讓學生更好地掌握機器學習算法,很多人工智能、數(shù)據(jù)挖掘課程都包含了實驗教學部分。在實驗過程中學生需要自主實現(xiàn)算法,培養(yǎng)動手操作能力。然而,教學實驗內(nèi)容往往是理想化的,由于企業(yè)的真實數(shù)據(jù)難以獲取,在校學生接觸到的數(shù)據(jù)普遍是二手數(shù)據(jù)。更多時候,為了實現(xiàn)某一特定算法,實驗內(nèi)容往往經(jīng)過特殊處理。當面對一個企業(yè)實際項目時,在與客戶的交流過程中,客戶的實際需求、數(shù)據(jù)代表的真實含義,可能由于客戶自身缺乏相關(guān)的技術(shù)知識背景難以表述明確,需要數(shù)據(jù)分析人員從龐雜的數(shù)據(jù)中自主降噪、挖掘有效信息,這與課程實驗存在較大反差。此外,由于傳統(tǒng)的機器學習教學偏理論,將更多的精力放在對算法本身的理解上,缺少具有實際意義的應用案例。為快速把握企業(yè)的真正痛點,要求學生對相關(guān)領(lǐng)域有一定程度的認知。機器學習的教學集中在理論方面,學生難以深入理解真實場景下的企業(yè)項目。因此,在數(shù)據(jù)、問題和性能要求等方面都與企業(yè)實際存在偏離,對從課堂轉(zhuǎn)向企業(yè)實際問題的學生來說,尚且存在很多挑戰(zhàn)。
3)人才培養(yǎng)體制不夠完善。
在當前高校教學評價體制下,教師可能忽視了或不愿意參與企業(yè)真實調(diào)研及與企業(yè)合作項目。學生通過課堂和實驗室的知識積累,可以完成圖像識別、聲音模擬,通過網(wǎng)絡(luò)可以較為容易地獲取很多開源的代碼,這些技術(shù)已經(jīng)得到比較廣泛的應用,易于實踐和理解。然而數(shù)據(jù)分析方法和算法的應用具有很強的藝術(shù)性,數(shù)據(jù)分析的每個階段都沒有固定的答案,需要結(jié)合實際場景進行調(diào)整和優(yōu)化,并考慮實際生產(chǎn)環(huán)境的可行性。與教學實驗不同,面對一個新的實際問題,條件苛刻且結(jié)果未知,學生無法直接獲得解決問題的思路,而現(xiàn)實問題是無法規(guī)避的,且這些問題難以在校園環(huán)境中為學生所接觸。因此,面向項目實踐的機器學習教學需要在實踐中摸索,與應用結(jié)合,培養(yǎng)人才的多學科性。強調(diào)項目實踐不等于否認理論教學,由于實際問題的復雜多變,反而要求學生具備扎實的理論基礎(chǔ)。
傳統(tǒng)的機器學習教學在技能培養(yǎng)、數(shù)據(jù)與實際案例的選擇以及人才培養(yǎng)體制上仍存在提高的空間。這與新時代機器學習人才發(fā)展需要存在一定偏離,有必要對現(xiàn)有的人才培養(yǎng)方式進行與項目實踐相結(jié)合方向上的探索,嘗試新的滿足社會發(fā)展需要的實踐教學模式,為培養(yǎng)具有專業(yè)素質(zhì)和創(chuàng)新能力的機器學習人才奠定堅實的基礎(chǔ)。
項目實踐教學能夠培養(yǎng)學生的實踐能力和創(chuàng)新能力,提高人才培養(yǎng)質(zhì)量。針對機器學習這一高度實踐性課程,很多高校提出了豐富教學內(nèi)容、加強實用型師資隊伍、優(yōu)化教學條件等一系列措施,逐步建立并完善專業(yè)培養(yǎng)目標和培養(yǎng)模式的實踐教學體系。然而,如何更有效地提高實踐教學質(zhì)量并與傳統(tǒng)的理論授課相結(jié)合,是實現(xiàn)基于項目實踐的機器學習教學目標的關(guān)鍵。
由于機器學習的相關(guān)知識在實際應用中是靈活多變的,需要根據(jù)特定場景對算法進行調(diào)整和優(yōu)化,對多種經(jīng)典算法進行取舍。因此,實際工作對算法本身的理解提出了更高的要求,需要在堅實的理論基礎(chǔ)上引導實踐,從而在實踐中加深對理論的理解。針對現(xiàn)階段人才需求目標,在機器學習教學初期,理論基礎(chǔ)教學應注重完整機器學習過程的每一個環(huán)節(jié),使學生掌握從數(shù)據(jù)獲取、數(shù)據(jù)預處理到模型評估與選擇以及模型優(yōu)化與結(jié)果分析的每個步驟,形成完整的機器學習思路。最有效的方法是教師身體力行,積極參與企業(yè)合作的科研項目,在教學過程中不僅注重實現(xiàn)算法本身,也可以嘗試從大數(shù)據(jù)競賽網(wǎng)站了解真實的問題場景,并選擇現(xiàn)階段成熟的開源工具實現(xiàn)數(shù)據(jù)處理,如微軟Azure平臺、騰訊云平臺,這些平臺提供現(xiàn)成可用的解決方案與經(jīng)典案例的實現(xiàn)步驟,允許學生自主創(chuàng)建項目并進行機器學習算法取舍。
此外,由于機器學習的概念范圍十分廣闊,而具體的應用范圍可能包括輿情分析、異常檢測、人臉識別、自然語言處理等,機器學習工程師等相關(guān)崗位都有著不同的技能側(cè)重要求??山榻B機器學習每一步驟對應的典型工作崗位與職責,讓學生在教學場景中理解和體驗所學知識的真實應用過程,培養(yǎng)學生的職業(yè)意識。例如,通過引入作者與京東合作的發(fā)現(xiàn)好貨、會買專輯等寫作機器人項目,可以詳細介紹文本分析的過程,從商品數(shù)據(jù)和用戶評論的獲?。∣CR技術(shù)的應用)、分詞與語義的識別,到用戶情感分析、長短期記憶網(wǎng)絡(luò)的組詞造句、文本質(zhì)量的評價,都有具體的項目內(nèi)容對應。這些內(nèi)容基本覆蓋了文本分析章節(jié)的大部分內(nèi)容,可以使學生一定程度上沉浸在項目中,對各個階段遇到的問題,討論解決方法,開闊思路。
現(xiàn)階段各高校的機器學習相關(guān)課程普遍開設(shè)了實驗環(huán)節(jié),但主要內(nèi)容是實現(xiàn)課本中的算法,學生通過實驗能夠掌握很多經(jīng)典算法,提高動手能力。但是,機器學習技術(shù)更新快,教材內(nèi)容易老化,學生的實驗場景、問題、數(shù)據(jù)、解決方案都偏于理想化,與真實的企業(yè)場景存在偏離,僅僅掌握實驗內(nèi)容難以勝任實際工作。
為了使學生更好地適應就業(yè)環(huán)境需要,在直接接觸企業(yè)實際項目前,可在實踐項目的驗證與設(shè)計兩個環(huán)節(jié)對學生進行培養(yǎng)。高校可邀請企業(yè)中機器學習相關(guān)方向的專業(yè)人員,教授當前最新項目實施思路與過程,與教師和學生一起討論在企業(yè)數(shù)據(jù)處理中使用的各種算法。教師在熟悉企業(yè)場景及解決方案的基礎(chǔ)上,制訂實踐培訓的內(nèi)容、教學形式和培訓過程,盡量在教學過程中營造真實的企業(yè)項目發(fā)展氛圍。在與京東公司上述的合作項目中,筆者不僅把項目成果引入課程,介紹項目實施過程中的具體思路和辛酸苦辣,還將部分問題作為課程研討的選題。
在學生理解算法原理的基礎(chǔ)上,可采用靈活的模塊化教學方法培養(yǎng)學生對實際應用場景的認知。以企業(yè)項目為驅(qū)動,項目案例分為驗證項目和項目設(shè)計兩個部分[2]?;诟咝,F(xiàn)有的多媒體實驗環(huán)境,有實踐經(jīng)驗的教師或企業(yè)專家在講解一些知識點和分析相關(guān)案例后,結(jié)合案例程序展示其應用,然后結(jié)合教學進度提出一些問題;學生通過模仿實現(xiàn)一個類似的驗證型實驗項目,該項目作為設(shè)計實驗項目的原型,學生可訪問、分析其功能、代碼并測試其效果。隨后,以此為基礎(chǔ)做擴展實踐,學生可以模仿教師提供的案例,通過創(chuàng)新自主設(shè)計并實現(xiàn)一個相對完整的項目,深化鞏固所學的知識,鍛煉整體考慮的問題能力,提高靈活的應用知識能力和創(chuàng)新能力。
應用型人才需要具有扎實的理論基礎(chǔ)、科學研究方法以及跨領(lǐng)域的視野和解決生產(chǎn)問題的能力,更需要具備實際操作的技能。在理論基礎(chǔ)與了解企業(yè)相關(guān)領(lǐng)域的基礎(chǔ)上,高??梢耘c企業(yè)聯(lián)合組建合作項目和教學團隊,結(jié)合企業(yè)需求,開展各種形式的培訓和實踐,不斷完善實踐教學內(nèi)容。真實的企業(yè)實踐項目能夠?qū)W生所學知識應用于解決實際問題,形成一個完整處理問題的思路[3]。
在數(shù)據(jù)獲取上,高??衫眯F蠛献麝P(guān)系,在教學內(nèi)容中加入企業(yè)實踐學時,教師可根據(jù)班級人數(shù)將學生分為若干調(diào)研團隊,使學生能夠與企業(yè)進行直接交流[4]。在調(diào)研過程中學生能夠密切關(guān)注企業(yè)實際生產(chǎn),接觸企業(yè)的真實數(shù)據(jù)。企業(yè)數(shù)據(jù)真實龐大,且大多質(zhì)量糟糕,例如存在很多噪聲以及數(shù)據(jù)不一致等一系列現(xiàn)實問題,學生需要思考如何提取數(shù)據(jù),消除噪聲,達到可用的目的。這一過程學生可對數(shù)據(jù)建立更加感性的認識。
在問題解決上,由于企業(yè)面對的很多問題并不能直接交由機器處理,數(shù)據(jù)的篩選、特征提取以及算法的整合與取舍在實驗的層面可能是需要技巧的;同時,企業(yè)實踐項目真實靈活且與當前研究熱點緊密相關(guān),在項目解決方案的探討中學生會面對很多瓶頸,例如樣本的不平衡、算法存在的某些缺陷等,這些瓶頸不能直接從課堂或其他途徑獲取到有效的解決方案,需要學生總結(jié)經(jīng)驗,在現(xiàn)有的思路上進行調(diào)優(yōu),從而解決算法缺陷,自主發(fā)現(xiàn)一些原有教學中被忽略的難點。在真實的企業(yè)環(huán)境中,客戶的要求十分苛刻,可能存在階段性變化,這需要機器學習相關(guān)領(lǐng)域工作人員掌握與客戶溝通的軟技能,需要對所在領(lǐng)域有一定程度的認知,從可行性的角度上理解業(yè)務。
企業(yè)實踐項目具有一般知識和實踐技能的特點,能夠加深學生對數(shù)據(jù)分析算法的理解和解決問題的經(jīng)驗,也是培養(yǎng)學生實踐能力和創(chuàng)新意識的一個重要手段。高??膳c企業(yè)合作建立實驗室、培訓基地,開展合作項目或聯(lián)合研發(fā),使企業(yè)直接參與課程策劃,資助課外活動中的科技創(chuàng)新,建立俱樂部實現(xiàn)對接。實際的應用型教學能夠激發(fā)學生興趣,使其對原有的理論知識有更深刻的理解。筆者最近幾年與10多家企業(yè)開展了制造企業(yè)質(zhì)量管理、銀行貸后催收語音合成、上海圖書館自動標注、婦嬰用品電子推薦、在線學習學生行為分析等項目,與這些企業(yè)建立了長期的合作關(guān)系,可以供學生調(diào)研實習,參與聯(lián)合研發(fā)項目。
基于實踐的機器學習教學,對教師和學生提出了一些挑戰(zhàn),其中會遇到一些突出的問題需要解決。
1)實踐項目的選擇難題。
任課教師在企業(yè)合作項目的選擇上需要深入研究行業(yè)整體,同時根據(jù)學生水平進行課堂內(nèi)容調(diào)整,設(shè)計適合不同層次學生的實踐項目,并通過研討了解學生自身實際編程基礎(chǔ)和分析能力,這對教師提出了更高的要求。
2)實踐過程的管理難題。
機器學習實踐教學的目的是培養(yǎng)學生的自主分析和實際應用能力,加深對理論知識的理解,驗證課堂教學理論,從而與職業(yè)發(fā)展平穩(wěn)接軌。這一過程中的每個環(huán)節(jié)都不同于單純的課堂和實驗室教學,而是需要真實的實踐環(huán)境,需要與企業(yè)溝通以獲得實踐環(huán)境以及必要的師資指導支持。如何培養(yǎng)有較強應用能力的師資是需要深入探討的問題,從企業(yè)引進有項目經(jīng)驗的師資或培養(yǎng)積極參與企業(yè)合作項目的師資都是必要的。這需要高校的薪酬和職稱制度相應的配套措施改革。
3)實踐思路的引導難題。
企業(yè)實踐項目不同于常規(guī)教學實驗,在大多數(shù)傳統(tǒng)教學方法中,學生按照已有步驟和原則進行規(guī)范化的實驗,往往可以獲得滿意的結(jié)果。然而,在整個過程中,學生很少獨立思考,往往不會考慮這些步驟背后的思路,很難培養(yǎng)獨立解決問題和創(chuàng)新的能力。在實際應用中,可能同時面臨很多新的問題,例如數(shù)據(jù)是否足夠、數(shù)據(jù)是否滿足客戶問題的分析等,這些現(xiàn)實的問題與課程教學、實驗存在較大差距。因此,有實際項目經(jīng)驗的教師在對學生的思路引導方面也是重要的[5]。
大數(shù)據(jù)時代對機器學習方面的人才提出了更高的實踐性要求,而高校機器學習課程主要以理論知識教授為主,這與實踐性人才培養(yǎng)的目標存在一定的偏離。筆者最近幾年與京東、上海圖書館等多家企業(yè)合作了機器學習項目,通過抽象和提煉這些項目的成果,形成第一手的案例和實驗素材,引入機器學習課程,不僅使課程的內(nèi)容更容易理解,而且鍛煉了學生的數(shù)據(jù)思維。這不僅沒有耽誤理論課的教學,反而可以作為學習和檢驗理論的重要手段。
高校對人才的培養(yǎng)不能脫離行業(yè)實踐,需要積極與企業(yè)建立項目合作,理解企業(yè)所需的技能,培養(yǎng)和引進有實踐項目經(jīng)驗的師資,這樣才能培養(yǎng)學生自主思考與解決實際問題的能力,從而提高競爭優(yōu)勢。