盧小杰 張 浩 葉明全 潘媛媛
(皖南醫(yī)學(xué)院醫(yī)學(xué)信息學(xué)院 健康大數(shù)據(jù)挖掘與應(yīng)用研究中心,安徽 蕪湖 241002)
醫(yī)學(xué)信息專業(yè)是一門以信息科學(xué)和醫(yī)學(xué)為主的多學(xué)科交叉與融合的新興交叉性學(xué)科;是電子、計(jì)算機(jī)、通信、智能儀器、傳感檢測、醫(yī)學(xué)儀器及生物學(xué)、現(xiàn)代醫(yī)學(xué)等在生命科學(xué)中的應(yīng)用與融合,該專業(yè)學(xué)生應(yīng)具備較為系統(tǒng)的計(jì)算機(jī)知識和編程能力[1]。醫(yī)學(xué)信息專業(yè)結(jié)合信息科學(xué)和醫(yī)學(xué),以智能醫(yī)療為培養(yǎng)方向,形成“人工智能+醫(yī)療”復(fù)合專業(yè)培養(yǎng)新模式[2]?!皵?shù)據(jù)結(jié)構(gòu)”課程是醫(yī)學(xué)信息專業(yè)重要的課程之一,是學(xué)生學(xué)習(xí)計(jì)算機(jī)算法的起步階段,本課程旨在培養(yǎng)學(xué)生的數(shù)據(jù)抽象能力,在理解各種數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)上,掌握算法編程方法,為以后學(xué)習(xí)更深入的機(jī)器學(xué)習(xí)算法打好基礎(chǔ)。面向醫(yī)學(xué)信息專業(yè)學(xué)生,把數(shù)據(jù)結(jié)構(gòu)算法思想可應(yīng)用到實(shí)際系統(tǒng)開發(fā)中,如構(gòu)建醫(yī)學(xué)信息系統(tǒng)、電子病例系統(tǒng)和醫(yī)學(xué)圖像處理和護(hù)士排班系統(tǒng)等。
醫(yī)學(xué)信息專業(yè)數(shù)據(jù)結(jié)構(gòu)教學(xué)中目前存在的主要問題如下。
首先,C語言是在“數(shù)據(jù)結(jié)構(gòu)”課程學(xué)習(xí)之前必須要掌握的計(jì)算機(jī)語言,C語言課時少、學(xué)生基礎(chǔ)較差、缺乏專業(yè)思想指導(dǎo)等因素造成學(xué)生對C語言的理解和認(rèn)識都不足,學(xué)生編程基礎(chǔ)薄弱。要理解各種抽象的數(shù)據(jù)類型,需要具備算法分析和設(shè)計(jì)的能力。學(xué)生往往出現(xiàn)能夠理解算法思想,但其薄弱的編程能力不能轉(zhuǎn)化為具體的程序,更不會根據(jù)實(shí)際問題的特點(diǎn)來靈活運(yùn)用“數(shù)據(jù)結(jié)構(gòu)”課程知識。例如,常用知識點(diǎn)如結(jié)構(gòu)體、指針、函數(shù)等,學(xué)生對此把握不足,直接造成了學(xué)生學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)知識比較吃力,尤其對指針和結(jié)構(gòu)體的理解應(yīng)用欠缺,如鏈表的結(jié)構(gòu)體和插入算法等[3]。
其次,“離散數(shù)學(xué)”知識學(xué)習(xí)不扎實(shí),數(shù)理邏輯、圖論和組合優(yōu)化思想欠缺,從而對數(shù)據(jù)結(jié)構(gòu)知識不能全面地認(rèn)知和科學(xué)地理解把握。如果能夠理解“離散數(shù)學(xué)”圖論知識,那么在學(xué)習(xí)樹和圖這兩章時就容易得多。
總之,由于先修課程不扎實(shí),學(xué)生感到本課程難學(xué),學(xué)習(xí)積極性受到阻礙,學(xué)習(xí)效果不好,出現(xiàn)厭學(xué)情緒。
實(shí)驗(yàn)教學(xué)是高校專業(yè)課教學(xué)中的重要環(huán)節(jié),實(shí)驗(yàn)動手能力,解決問題、分析問題的能力是學(xué)生終身受益的基本功。但在“數(shù)據(jù)結(jié)構(gòu)”課程的實(shí)際教學(xué)中,實(shí)驗(yàn)教學(xué)出現(xiàn)一些不合理現(xiàn)象,如實(shí)驗(yàn)項(xiàng)目驅(qū)同化、難度層次不明確、目標(biāo)性不強(qiáng)和實(shí)驗(yàn)考核方法不當(dāng)?shù)葐栴}。
對實(shí)驗(yàn)作業(yè)題目而言,目前,國內(nèi)高校幾乎全部計(jì)算機(jī)相關(guān)專業(yè)都會開設(shè)“數(shù)據(jù)結(jié)構(gòu)”課程,但實(shí)驗(yàn)項(xiàng)目類似,鮮有創(chuàng)新,如二叉樹遍歷的實(shí)現(xiàn),學(xué)生僅按照教材方法完成了靜態(tài)構(gòu)造二叉樹遍歷的程序,缺乏創(chuàng)新和引申。在醫(yī)學(xué)高校中的授課過程也缺乏與醫(yī)學(xué)信息學(xué)科相關(guān)的附加性或引申性的實(shí)驗(yàn)項(xiàng)目,缺乏專業(yè)特色。
實(shí)驗(yàn)課考核方法是保障學(xué)生實(shí)驗(yàn)教學(xué)質(zhì)量的決定性因素,嚴(yán)肅實(shí)驗(yàn)課考核可以督促學(xué)生學(xué)習(xí)理論知識,正向反饋課堂授課效果[4]。教師對實(shí)驗(yàn)課考核不嚴(yán)謹(jǐn)、考核方法不當(dāng)造成學(xué)生實(shí)驗(yàn)課不認(rèn)真、實(shí)驗(yàn)效果不理想,從而達(dá)不到實(shí)驗(yàn)的教學(xué)目的。在以往的實(shí)驗(yàn)評定中,教師多以實(shí)驗(yàn)報(bào)告來評定實(shí)驗(yàn)成績,實(shí)驗(yàn)報(bào)告存在大量抄襲現(xiàn)象,如果僅僅以實(shí)驗(yàn)報(bào)告來評定實(shí)驗(yàn)成績,并不能全面評判學(xué)生對知識的理解和把握,教師不能及時、準(zhǔn)確、科學(xué)地把握授課效果。另外,大多數(shù)學(xué)生對實(shí)驗(yàn)課不認(rèn)真對待,完成實(shí)驗(yàn)項(xiàng)目缺乏成就感和目標(biāo)性,實(shí)驗(yàn)課上出現(xiàn)紀(jì)律混亂,增加教師的管理難度。
醫(yī)學(xué)信息專業(yè)是計(jì)算機(jī)科學(xué)、醫(yī)學(xué)、信息科學(xué)交叉融合的專業(yè),教師自身的專業(yè)背景和指導(dǎo)思想不同,即計(jì)算機(jī)專業(yè)教師、醫(yī)學(xué)專業(yè)教師和電子信息專業(yè)教師在專業(yè)背景上各具特色,學(xué)科壁壘在授課過程中突顯,從而造成同學(xué)對課程體系設(shè)置不理解,專業(yè)向心力不強(qiáng),專業(yè)思想不穩(wěn)定的不良后果。
在“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)中,作為醫(yī)學(xué)信息專業(yè)的核心課程應(yīng)把交叉專業(yè)的思想融會貫通,加強(qiáng)專業(yè)之間的融合。
C語言作為“數(shù)據(jù)結(jié)構(gòu)”課程的重要先修知識,考慮到學(xué)生基礎(chǔ),可用兩個學(xué)時來復(fù)習(xí)C語言的重難點(diǎn),尤其是指針、結(jié)構(gòu)體、參數(shù)傳遞等知識點(diǎn),壓縮“數(shù)據(jù)結(jié)構(gòu)”課程第一章節(jié)緒論內(nèi)容,只強(qiáng)調(diào)數(shù)據(jù)結(jié)構(gòu)的發(fā)展歷史、重要性、使用場合、算法復(fù)雜度等問題。在進(jìn)入后面章節(jié)的教學(xué)時,關(guān)于程序部分可進(jìn)行適當(dāng)提及C語言的知識點(diǎn)。另外,對“離散數(shù)學(xué)”課程的復(fù)習(xí)可以選擇性地融合到樹和圖的章節(jié)中。鞏固先修課程,引入新課程,使學(xué)生逐步接受“數(shù)據(jù)結(jié)構(gòu)”課程新知識的學(xué)習(xí)。課后,教師可利用現(xiàn)代通訊手段增加答疑環(huán)節(jié),如微信、QQ作業(yè)等,利用碎片化學(xué)習(xí)時間來貼近學(xué)生日常學(xué)習(xí)生活。
實(shí)驗(yàn)課用布置作業(yè)和計(jì)成績的方法,并把每次實(shí)驗(yàn)成績匯總計(jì)入總評成績中,設(shè)計(jì)層次實(shí)驗(yàn)?zāi)P秃拖鄳?yīng)的考核方式,有層次的教學(xué)方式可以做到因材施教,區(qū)分學(xué)生層次提高學(xué)生做實(shí)驗(yàn)的興趣。例如,“鏈表”的層次實(shí)驗(yàn)及考核,如表1所示。
表1 層次實(shí)驗(yàn)實(shí)例和考核方法
經(jīng)過調(diào)查和實(shí)際推行,這種層次實(shí)驗(yàn)?zāi)P秃涂己朔绞骄哂锌尚行浴A硗?,為了減輕教師實(shí)驗(yàn)考核負(fù)擔(dān),可以在實(shí)驗(yàn)室安裝代碼測試工具軟件,讓學(xué)生自測自評,教師負(fù)責(zé)最后打分。
對于交叉專業(yè)的授課,教師自身應(yīng)改變思維方式,不僅要求教師在授課舉例上與醫(yī)學(xué)信息學(xué)科相結(jié)合,更應(yīng)該在實(shí)踐上讓學(xué)生得到鍛煉。課程設(shè)計(jì)是目前高校中常用的一種實(shí)踐教學(xué)方法,是項(xiàng)目驅(qū)動法的重要體現(xiàn),項(xiàng)目驅(qū)動法是理論知識和專業(yè)實(shí)踐技能相結(jié)合的一種教學(xué)方法,使學(xué)生全面地掌握理論思想、設(shè)計(jì)方法、需求分析、可行性和專業(yè)技術(shù)。目前,在“數(shù)據(jù)結(jié)構(gòu)”課程的項(xiàng)目驅(qū)動教學(xué)方法中,多半是以計(jì)算機(jī)專業(yè)的課程設(shè)計(jì)為主要導(dǎo)向,課程設(shè)計(jì)題目也多以計(jì)算機(jī)專業(yè)為主,缺乏學(xué)科針對性[5]。本文采用具有與醫(yī)學(xué)信息學(xué)科相關(guān)性的項(xiàng)目,從課程設(shè)計(jì)題目上以醫(yī)療系統(tǒng)開發(fā)和醫(yī)用信息技術(shù)作為主要方向。
1.HIS系統(tǒng)開發(fā)中的應(yīng)用
樹型結(jié)構(gòu)是一種常見的非線性數(shù)據(jù)結(jié)構(gòu)[6],在HIS(Hospital Information System)系統(tǒng)中,不同的醫(yī)院部門科室、醫(yī)院管理體系結(jié)構(gòu)上需使用樹型結(jié)構(gòu)設(shè)計(jì)[7]。設(shè)計(jì)HIS網(wǎng)頁界面的樹型菜單,把不同的科室作為樹的節(jié)點(diǎn),結(jié)合HTML5、JavaScript、DIV+CSS3技術(shù)編寫頁面程序,數(shù)據(jù)庫實(shí)體關(guān)系的建立也以樹型結(jié)構(gòu)進(jìn)行,同時不同部門在構(gòu)造、查詢等操作也是樹型結(jié)構(gòu)進(jìn)行。
2.電子病歷系統(tǒng)中的應(yīng)用
目前,國際上存在若干種病歷數(shù)據(jù)表達(dá)格式,如臨床文檔體系結(jié)構(gòu)(Clinical Document Architecture, CDA)[8]、網(wǎng)絡(luò)社區(qū)的電子病歷技術(shù)規(guī)范open EHR[9]、數(shù)字成像和醫(yī)療通信的結(jié)構(gòu)化(Digital Imaging and Communications in Medicine,DICOM)[10]等。其中,醫(yī)學(xué)圖像和傳輸采用XML格式的DICOM文件,解析后可在普通瀏覽器上直接查看醫(yī)學(xué)圖像信息。數(shù)據(jù)結(jié)構(gòu)的線性結(jié)構(gòu)和樹型結(jié)構(gòu)被引入到DICOM文件中,如圖1所示。
圖1 DICOM的樹型數(shù)據(jù)結(jié)構(gòu)
數(shù)據(jù)結(jié)構(gòu)算法思想使DICOM的信息對象和數(shù)據(jù)元素之間的嵌套和依賴關(guān)系更加清晰,解析更加方便快捷。
3.醫(yī)學(xué)圖像處理中的應(yīng)用
智能醫(yī)療與語音、 圖像、 文字結(jié)合,將推動工科人才培養(yǎng)向類人化目標(biāo)轉(zhuǎn)變,“數(shù)據(jù)結(jié)構(gòu)”為醫(yī)學(xué)圖像的壓縮、增強(qiáng)、邊緣提取、分割及識別做好基本的數(shù)據(jù)模型,是對醫(yī)學(xué)圖像的分類、智能診斷和預(yù)測等研究的基礎(chǔ)工作。采用鏈表技術(shù),對醫(yī)學(xué)圖像的每一個像素點(diǎn)進(jìn)行統(tǒng)計(jì)。其鏈?zhǔn)酱鎯Y(jié)構(gòu),如圖2所示。
圖2 圖像像素鏈表示意圖
其中red、blue、green為紅藍(lán)綠三基色,count為像素出現(xiàn)的次數(shù),head1和rear1分別為該像素出現(xiàn)的位置鏈隊(duì)中的首位指針,head2為指向統(tǒng)計(jì)該元素在圖像中出現(xiàn)的間距的鏈表的頭指針,next為下一個節(jié)點(diǎn)的指針。hangl和liel為該像素出現(xiàn)在圖像中的行列坐標(biāo),hangz和lie2為該位置距離該像素前一次出現(xiàn)位置的相對距離。定義像素鏈表后可對像素進(jìn)行排序操作,利用鏈表知識來完成醫(yī)學(xué)圖像特征的初步統(tǒng)計(jì)。
4.護(hù)士排班系統(tǒng)中的應(yīng)用
排班是護(hù)士站的一項(xiàng)常規(guī)工作,目的是提高護(hù)士在班時間的利用率,有效利用醫(yī)院護(hù)理資源。傳統(tǒng)的排班方式無法結(jié)合邏輯算法,其按職、按功能制排班的方式不能有效地利用人力資源、調(diào)動醫(yī)護(hù)人員的工作積極性,排班模式單一,探尋一種合理的護(hù)理排班算法模式是非常必要的。結(jié)合實(shí)際需求,在學(xué)生課程設(shè)計(jì)中結(jié)合數(shù)據(jù)結(jié)構(gòu)算法設(shè)計(jì)出一種合理的排班方式。
護(hù)士排班表用數(shù)組表示,采用動態(tài)隊(duì)列管理進(jìn)行排班。設(shè)計(jì)簡單的排班模型,例如,某護(hù)士站有20名護(hù)士值夜班,每月工作30天,要求至少每次有兩人值班。定義隊(duì)列結(jié)構(gòu)如下[11]:
struct SqQueue{
QElemeType *elem;
Int front,rear;
Int queuesize,increment;
};
設(shè)計(jì)成30個空間大小的循環(huán)隊(duì)列,以此進(jìn)行插入和刪除的隊(duì)列運(yùn)算,完成排班的模擬。通過這種排班方式的練習(xí),培養(yǎng)學(xué)生在以后醫(yī)院管理工作中的科學(xué)的決策方式。當(dāng)然,對于層次較高的學(xué)生,可進(jìn)一步研究蟻群算法、模擬退火算法、變鄰域搜索算法等算法在護(hù)士排班中應(yīng)用的課題,分化出研究型學(xué)習(xí)的學(xué)生。
以上數(shù)據(jù)結(jié)構(gòu)理論與實(shí)際醫(yī)學(xué)信息系統(tǒng)應(yīng)用相結(jié)合能夠讓學(xué)生融合概念和原理,達(dá)到以項(xiàng)目驅(qū)動教學(xué)、以實(shí)踐反饋原理的目的,讓醫(yī)學(xué)信息專業(yè)的學(xué)生能夠發(fā)揮專業(yè)特長。
以皖南醫(yī)學(xué)院為試點(diǎn),對醫(yī)學(xué)信息專業(yè)的數(shù)據(jù)結(jié)構(gòu)課程實(shí)行教學(xué)改革。連續(xù)三年的期末考試成績用spass22.0分析,得出期末成績比較結(jié)果,如表2所示。
表2 期末成績對比表
由表2可以看出,經(jīng)過教學(xué)改革方法嘗試的班級成績要相應(yīng)提高,并且學(xué)生期末成績在顯著水平a=0.01下服從正態(tài)分布。
“數(shù)據(jù)結(jié)構(gòu)”課程在醫(yī)學(xué)信息專業(yè)人才培養(yǎng)過程中具有非常重要的地位,通過成績結(jié)果顯示:此教改方法具有可行性,值得推廣。此教改方案不僅可以增強(qiáng)了學(xué)生分析問題、解決問題的能力,還可以通過項(xiàng)目訓(xùn)練,培養(yǎng)學(xué)生的專業(yè)認(rèn)知能力、團(tuán)隊(duì)精神和責(zé)任心。
此類教學(xué)方法初見成效,可以推廣到其他新工科建設(shè)模式中去,在專業(yè)改革中實(shí)踐,經(jīng)過不斷完善,形成專業(yè)風(fēng)格,培養(yǎng)出有特色、有競爭力的醫(yī)學(xué)信息專業(yè)學(xué)生[12]。新時期,醫(yī)學(xué)信息學(xué)的發(fā)展應(yīng)該更加密切關(guān)注人工智能的后續(xù)發(fā)展,借助人工智能發(fā)展的歷史性機(jī)遇促進(jìn)智能醫(yī)療建設(shè)取得新的更大的成功。