魯鳴鳴,張丹,王建新
中南大學(xué)信息科學(xué)與工程學(xué)院,湖南 長沙 410083
基于校園一卡通數(shù)據(jù)好友發(fā)現(xiàn)及應(yīng)用
魯鳴鳴,張丹,王建新
中南大學(xué)信息科學(xué)與工程學(xué)院,湖南 長沙 410083
教育大數(shù)據(jù)是近年來的研究熱點。利用分布式文件系統(tǒng)對校園一卡通數(shù)據(jù)進行存儲、預(yù)處理和分布式計算。在此基礎(chǔ)上,提出學(xué)生生活軌跡中的相遇模型,從而挖掘?qū)W生線下社交關(guān)系。為了區(qū)分熟悉的陌生人和真正的好友,從單個學(xué)生和整個班級兩個角度分析學(xué)生線下相遇行為,既可以挖掘好友關(guān)系(包括比較孤立的學(xué)生),又可以為校園班級社群管理提供數(shù)據(jù)支撐。實驗結(jié)果表明,挖掘出的社交關(guān)系比較符合實際情況。
社群發(fā)現(xiàn);相遇模型;線下社交關(guān)系
“數(shù)據(jù)驅(qū)動學(xué)校,分析變革教育”的大數(shù)據(jù)時代已經(jīng)來臨,利用教育大數(shù)據(jù)技術(shù)為教育教學(xué)決策提供有效的支持將成為未來教育的發(fā)展趨勢。世界知名高校、機構(gòu)和企業(yè)紛紛啟動了教育大數(shù)據(jù)相關(guān)研究計劃,從研究內(nèi)容來看,國外教育大數(shù)據(jù)研究工作主要圍繞學(xué)生信息系統(tǒng)和在線學(xué)習(xí)行為,綜合運用統(tǒng)計學(xué)、機器學(xué)習(xí)和數(shù)據(jù)挖掘的技術(shù),研究如何促進學(xué)習(xí)者學(xué)習(xí)的有效性,并根據(jù)學(xué)生能力和實際需求,提供個性化教育方案[1]。我國高校對在校生實行統(tǒng)一集中的住校食宿管理,這一特點使得我國的教育大數(shù)據(jù)不僅需要關(guān)注學(xué)習(xí)的有效性和個性化教育,還需要在心理健康和學(xué)生校園管理方面提供更好的指導(dǎo)。集中式的管理方式給我國的教育大數(shù)據(jù)發(fā)展帶來了新的機會,提供了國外教育機構(gòu)難以獲取的學(xué)生線下行為數(shù)據(jù)。例如,不少高校都有校園一卡通系統(tǒng),其數(shù)據(jù)能反映學(xué)生在食堂就餐、去圖書館、打熱水、洗浴等生活軌跡信息?;谝豢ㄍ〝?shù)據(jù)進行分析,國內(nèi)已有不少研究成果[2-4]。
通過分析智慧校園數(shù)據(jù)來反映大學(xué)生學(xué)習(xí)生活狀態(tài),是幫助學(xué)校掌握學(xué)生動態(tài)一個有效途徑。但是,很多研究工作是基于學(xué)生上網(wǎng)數(shù)據(jù)分析學(xué)生線上行為,線上數(shù)據(jù)不能準(zhǔn)確反映學(xué)生的線下行為。雖然已有不少對學(xué)生線下行為分析的工作,但是絕大部分都只對線下行為數(shù)據(jù)進行統(tǒng)計分析,沒有對學(xué)生線下社交關(guān)系進行挖掘。
筆者根據(jù)學(xué)生刷卡數(shù)據(jù)建立學(xué)生相遇模型,通過關(guān)聯(lián)規(guī)則挖掘?qū)W生社交關(guān)系,并從學(xué)生角度、班集體角度兩個方面反映學(xué)生線下社交情況。
筆者基于中南大學(xué)校園一卡通數(shù)據(jù)集,通過用戶就餐刷卡數(shù)據(jù)記錄,構(gòu)建相遇模型,從而發(fā)現(xiàn)用戶刷卡相遇,利用關(guān)聯(lián)規(guī)則理論,計算相關(guān)度量(如支持度、可信度等),找出經(jīng)常一起刷卡的學(xué)生,進而生成線下社交關(guān)系網(wǎng)絡(luò)圖、挖掘好友、發(fā)現(xiàn)社群。為驗證相遇模型分析發(fā)現(xiàn)好友的準(zhǔn)確度,對56名學(xué)生進行了訪談和問卷,發(fā)現(xiàn)好友準(zhǔn)確度超過90%。
本文的主要貢獻如下:
● 基于校園一卡通線下數(shù)據(jù),定義相遇模型,挖掘?qū)W生線下社交關(guān)系;
● 將模型推廣到一般場景,適用于一切具體相遇場景數(shù)據(jù)用戶的好友挖掘;
● 挖掘出班級社交關(guān)系,找出“孤立”學(xué)生以及小團體活動的學(xué)生,及早發(fā)現(xiàn)潛在的孤獨癥學(xué)生,引導(dǎo)更健康的班級社群關(guān)系,為學(xué)校更好管理學(xué)生提供數(shù)據(jù)支撐。
隨著在線社交網(wǎng)絡(luò)的蓬勃發(fā)展和線上用戶的急劇增長,以交友、信息共享等為目的的社交網(wǎng)絡(luò)迅速成長為人們傳播信息、表述觀點、發(fā)泄情緒的理想平臺。很多研究者基于用戶線上數(shù)據(jù)分析線上用戶社交關(guān)系[5,6],但是線上社交分析沒有辦法很好地反映用戶線下行為。
相關(guān)研究者對大學(xué)生心理健康的研究及調(diào)查表明[7-9],當(dāng)代我國大學(xué)生心理健康形勢比較嚴峻,相當(dāng)一部分學(xué)生心理上存在各種不良反應(yīng)和適應(yīng)障礙,有的甚至到了較嚴重的程度,心理健康問題已經(jīng)影響到大學(xué)生的健康成長與發(fā)展。因此,積極運用一切手段開展大學(xué)生心理問題的預(yù)防工作,是全社會的一項重要任務(wù)。但是大學(xué)生心理問題預(yù)防是一項長期的工程,需要對每個學(xué)生跟蹤階段性的狀態(tài),因此,挖掘?qū)W生線下社交,了解學(xué)生交友動態(tài),引導(dǎo)和幫助學(xué)生積極健康學(xué)習(xí)、交友和生活是非常有意義的。
當(dāng)前研究者對校園一卡通數(shù)據(jù)做了多方面的研究。羅華群[10]提出結(jié)合各單位的申請和一卡通系統(tǒng)的消費數(shù)據(jù)來審核助學(xué)金和貸款發(fā)放工作,比單純由各院系收集學(xué)生們寫的申請會更加合理和高效,也會更客觀;陳建兵[11]利用一卡通系統(tǒng)數(shù)據(jù)輔助辨別貧困生;金培莉等人[12]提出從學(xué)校后勤、人事等部門以就餐人數(shù)、月均消費情況和洗浴情況3組數(shù)據(jù)分析來支撐學(xué)校決策等。研究人員基于校園一卡通數(shù)據(jù)及各類校園數(shù)據(jù)進行多方面分析挖掘,但是到目前為止,還沒有研究者基于校園一卡通數(shù)據(jù)這類線下活動數(shù)據(jù)來分析學(xué)生社交關(guān)系。
筆者的目標(biāo)是通過校園一卡通數(shù)據(jù)挖掘?qū)W生好友以及學(xué)生社交狀態(tài),而好友總是傾向于一起活動,如一起去食堂就餐、去圖書館等,而這些線下行為在一卡通刷卡記錄里得以反映,因此,可以通過分析一卡通刷卡記錄的時空相關(guān)性發(fā)現(xiàn)學(xué)生之間一起活動的行為。同時,按照一起刷卡這個行為挖掘好友時,存在“熟悉的陌生人”這種情況,即有相似作息行為習(xí)慣卻并非好友的陌生人,因此提出相遇模型解決這一問題。
利用校園一卡通刷卡數(shù)據(jù)進行相遇建模,計算學(xué)生刷卡相遇情況,然后以學(xué)生刷卡相遇數(shù)據(jù)計算相關(guān)支持度和可信度,從而發(fā)現(xiàn)關(guān)聯(lián)規(guī)則,進一步分析學(xué)生之間的關(guān)聯(lián)性,最后找出每個學(xué)生關(guān)聯(lián)的學(xué)生,并將學(xué)生線下社交關(guān)系以社交網(wǎng)絡(luò)圖的形式呈現(xiàn)。為了更準(zhǔn)確地計算相遇,對部分地點的刷卡機(POS機)聚類,使相遇更加精準(zhǔn)。
學(xué)生好友人群分析查找工作涉及數(shù)據(jù)預(yù)處理、關(guān)聯(lián)分析、關(guān)系挖掘等多個過程[13],這其中也有很多關(guān)鍵難點需要克服和解決,主要集中在以下幾個方面。
● 數(shù)據(jù)處理分析過程涉及多個閾值,很容易影響分析結(jié)果。在POS機聚類階段有兩個閾值,針對學(xué)生每一次就餐存在多次刷卡的情況,對每次就餐刷卡的POS機序列建立任意兩個POS機間的一次計數(shù),并且采用一個月的數(shù)據(jù)進行聚類,因此兩個閾值取值區(qū)間比較大,對應(yīng)值的選取比較容易且對結(jié)果影響較小。再者,在學(xué)生相遇模型建立階段,給定時間閾值dis,將在dis時間內(nèi)刷卡的學(xué)生視為相遇,dis是根據(jù)學(xué)生刷卡平均占用時間來確定的,使得相遇統(tǒng)計結(jié)果更理想。
● 由于人與人之間的關(guān)系隨著時間的推移也會改變,僅通過刷卡數(shù)據(jù)很容易漏掉熟悉的人。按照學(xué)生關(guān)聯(lián)規(guī)則分析,根據(jù)實際刷卡規(guī)律提出3個限制條件,若滿足3個條件中的一個,便被視為熟悉人群,這樣就有效地解決了這類問題。
● 相似性行為的陌生人由于生活規(guī)律極其相似,容易被劃分到熟悉人群。因為有相似的就餐習(xí)慣,很容易被錯分,筆者盡量采用多種方式度量考察,避免這類陌生人被劃分到熟悉人群。在預(yù)處理過程中對POS機聚類時,把食堂POS機按照樓層分開,這樣能很好地排除部分相似就餐規(guī)律的陌生人。
● 部分人群極少使用校園卡,此類學(xué)生無法通過一卡通數(shù)據(jù)發(fā)現(xiàn)線下社交。后期筆者會加入更多類型的數(shù)據(jù)(如上網(wǎng)數(shù)據(jù)、宿舍刷卡等),進一步分析學(xué)生社交。
4.1 數(shù)據(jù)初步預(yù)處理
數(shù)據(jù)集共有304個表,包括用戶基本信息、食堂信息、刷卡記錄數(shù)據(jù)(包括卡號、刷卡時間、刷卡食堂地點、POS機編號等)等,共有用戶173 490人,刷卡記錄時間是2015年1月1日—12月24日,消費刷卡數(shù)據(jù)約5 014萬條。數(shù)據(jù)集包含大量的字段,需從原始數(shù)據(jù)中篩選出相關(guān)字段,同時直接過濾掉異常記錄。由于數(shù)據(jù)量較大,在單機上處理困難,筆者搭建了分布式Hadoop集群,將數(shù)據(jù)放在集群上進行存儲和處理。將數(shù)據(jù)存放在Hadoop分布式文件系統(tǒng)(Hadoop distributed file system,HDFS)上,方便后續(xù)處理和分析。表1為篩選之后的字段,其中,account表示用戶唯一識別字段,des表示刷卡機所在地點編碼,poscode表示刷卡機編碼,time表示刷卡時間。
表1 初步預(yù)處理后數(shù)據(jù)樣例
圖1 A棟食堂各區(qū)域聚類重新編號
4.2 刷卡機聚類
4.2.1 模式計數(shù)
食堂刷卡是學(xué)生最典型的刷卡行為,數(shù)據(jù)集中消費刷卡數(shù)據(jù)記錄為5 014萬條,其中食堂刷卡記錄為4 378萬條,超過90%的刷卡記錄為食堂刷卡。由于中南大學(xué)的食堂通常都是整棟樓,每棟樓里有若干個食堂,而刷卡地點des與食堂并非是一一對應(yīng)的,數(shù)據(jù)中des往往對應(yīng)若干個屬于同一棟樓的食堂。若不做處理,容易把陌生人當(dāng)成好友。因此,通過對所有食堂的所有POS機聚類,將每棟食堂每一區(qū)域的POS機分開。如圖1所示的A棟食堂,其中箭頭的左側(cè)為A棟食堂的結(jié)構(gòu),第一層左右兩個食堂的des編號均為272,而第二和第三層均為271。在實際的場景中,學(xué)生每次就餐在同一棟樓的多個不同食堂都刷卡的概率比較低,因此,可將每個學(xué)生每次就餐所刷的POS機歸為同一區(qū)域的POS機。這樣精確區(qū)分刷卡地點能更準(zhǔn)確地估算相遇事件。其他刷卡記錄與預(yù)處理后的食堂刷卡數(shù)據(jù)一樣,均使用相同的方法計算相遇行為事件,因此,本文均以學(xué)生食堂刷卡數(shù)據(jù)為例進行說明。
為了高效率地處理數(shù)據(jù),筆者使用并行數(shù)據(jù)處理高級查詢語言Pig[14]對一卡通數(shù)據(jù)進行處理。
算法1:生成POS關(guān)系對
選取一個月的一卡通學(xué)生就餐數(shù)據(jù),用Pig的Group方法將數(shù)據(jù)以用戶賬號分組,并將每個用戶的刷卡交易數(shù)據(jù)以時間排序,排序后的數(shù)據(jù)作為輸入傳給算法1。輸入的數(shù)據(jù)為input,list表示學(xué)生一次就餐刷過的POS機列表,L表示一個時間閾值,如果兩次刷卡為同一次就餐,那么時間間隔必須在L內(nèi),最后返回的tuples表示用戶每次就餐刷過的POS機集合內(nèi)任意兩個POS機記錄,即很多個<despos1,despos2>對,然后用Pig自帶的COUNT方法統(tǒng)計despos對出現(xiàn)的次數(shù)times,數(shù)據(jù)格式為:{despos1,despos2,times}。
表2 despos對計數(shù)數(shù)據(jù)樣例
4.2.2 無向圖聚類
通過同一用戶一次就餐刷卡的模式計數(shù)統(tǒng)計本次刷卡的POS機列表,從而使該列表的POS機兩兩計數(shù)(又稱despos對計數(shù))值為1次,將多個用戶多次就餐刷卡產(chǎn)生的相同despos對的計數(shù)值求和(見表2),despos1和despos2代表兩個不同POS機的編號,times表示兩POS機對應(yīng)的計數(shù)和,計數(shù)值越大,表明這兩個POS機屬于des食堂同區(qū)域的可能性越大。給定一個閾值時間T,當(dāng)despos對計數(shù)times>T時,則可視為POS機屬于同一層。
對這些despos對構(gòu)造無向圖,每個despos對被視為一個節(jié)點,times>T,表示despos對對應(yīng)的節(jié)點存在邊。
圖2是由despos對構(gòu)造的無向圖,其中T=200,當(dāng)times>T,despos對的兩個節(jié)點構(gòu)成邊,從而實現(xiàn)POS機聚類成多個簇,無向圖存在k個連通分量,每個連通分量都是一個簇,對每個簇重新編號(按照1,2,3,…,k編號),再將每個簇內(nèi)節(jié)點按照des和簇編號組合成新編號posid,每個簇內(nèi)編號都相同,這樣就把同一餐飲樓的每個區(qū)域食堂POS機分開了。
4.3 數(shù)據(jù)二次預(yù)處理
根據(jù)對POS機的聚類,每個食堂的任意POS機despos都有一個對應(yīng)的posid,并且屬于食堂同一區(qū)域的POS機的posid相同,將初步預(yù)處理的刷卡交易記錄數(shù)據(jù)(見表1)的des和poscode用新對應(yīng)的posid代替。
學(xué)生每次就餐刷卡次數(shù)是一次或者多次,設(shè)置時間閾值,若每個用戶連續(xù)兩次刷卡時間間隔在這個閾值之內(nèi),就視為同一次就餐刷卡。用Pig進行預(yù)處理,同樣按照用戶分組,將每個用戶數(shù)據(jù)用自定義的方法處理,該方法將屬于同一次就餐刷卡的數(shù)據(jù)記錄合并成一條數(shù)據(jù)記錄,最后將記錄返回給Pig,并保存在HDFS上。表3為預(yù)處理后部分數(shù)據(jù)樣例,account表示學(xué)生卡號,num表示一次就餐刷卡次數(shù),stime、endtime分別表示一次就餐第一次刷卡時間、最后一次刷卡時間。
4.4 學(xué)生關(guān)聯(lián)規(guī)則
關(guān)聯(lián)規(guī)則是形如X->Y的蘊含式[15,16],通過X可以推出Y,類比本文的學(xué)生對象以刷卡相遇為依據(jù)的關(guān)聯(lián)規(guī)則,即由學(xué)生X刷卡可以推導(dǎo)學(xué)生Y也很有可能在同一地點刷卡。關(guān)聯(lián)規(guī)則的強度可以用其支持度S和置信度C度量,在這里,定義X的刷卡次數(shù)為X的支持度,用S(X)表示,支持度S(X->Y)表示學(xué)生X和學(xué)生Y在同一地點同一時間區(qū)間內(nèi)刷卡的次數(shù)。置信度又稱可信度,X->Y的可信度為:
常見的關(guān)聯(lián)規(guī)則挖掘算法(如Apriori算法、FP-Tree算法等[17-19])對頻繁項集進行挖掘,事先對規(guī)則剪枝,80%以上的規(guī)則會被丟棄。這些算法更多地關(guān)心出現(xiàn)頻率較高的對象,高頻對象才是關(guān)聯(lián)挖掘的主體。
由于學(xué)生用戶數(shù)量較多,使用上述算法對學(xué)生關(guān)聯(lián)分析挖掘,提取規(guī)則的數(shù)目達到指數(shù)級,整體的計算規(guī)模極大,并且很多學(xué)生用戶無法被挖掘。另外,學(xué)生關(guān)聯(lián)分析挖掘的每個學(xué)生對象都作為一個主體,它更多地是在查找二項集,每位學(xué)生在一定程度上是同等重要的。因此,本文采用相遇模型來計算可信度,從而挖掘?qū)W生關(guān)聯(lián)。
圖2 刷卡地點重新編號
表3 二次預(yù)處理后數(shù)據(jù)樣例
4.5 關(guān)聯(lián)分析過程及相遇模型
4.5.1 學(xué)生刷卡數(shù)據(jù)
為了確定相遇的時間窗口閾值,對學(xué)生每次就餐平均的刷卡時間進行了統(tǒng)計,如圖3所示。從圖3可看出,大部分學(xué)生在1~2 min可以打完飯菜,超過150 s才打完飯菜的學(xué)生很少,只有1%。因此,在150 s的基礎(chǔ)上適當(dāng)放寬一點,設(shè)定相遇時間窗口為180 s。
4.5.2 相遇模型
為了更好地進行學(xué)生關(guān)聯(lián)分析,建立了學(xué)生相遇模型,即規(guī)定在同一相遇時間窗口內(nèi)、在同一食堂刷卡的記錄為學(xué)生在該食堂刷卡相遇的記錄。
為了統(tǒng)計學(xué)生的相遇記錄,以1個月為時間周期,學(xué)生對象(X,Y),i表示第i個周期,分以下3步進行處理。
步驟1統(tǒng)計每個周期內(nèi)每個學(xué)生的刷卡次數(shù)Si(X),其中一次就餐多次刷卡視為一次刷卡,account為學(xué)生X的卡號,數(shù)據(jù)格式為{account,Si(X)},數(shù)據(jù)文件命名為i_count.csv。
圖3 學(xué)生每次就餐平均刷卡時間
步驟2用Pig對預(yù)處理后的數(shù)據(jù)按照(posid,date)進行Group分組,將每組數(shù)據(jù)傳給算法2。該算法根據(jù)相遇定義,將所有相遇的學(xué)生形成兩兩記錄,其中maxP表示某用戶前后關(guān)聯(lián)人數(shù),dis表示時間閾值,設(shè)定maxP和dis兩個參數(shù)同時滿足條件才符合相遇。由第4.5.1節(jié)分析得知:每個學(xué)生平均刷卡時間在3 min之內(nèi)的人數(shù)超過99%,從而確定了時間閾值dis。再統(tǒng)計兩兩記錄在這個周期內(nèi)出現(xiàn)的次數(shù),數(shù)據(jù)格式為{account1,account2,meettimes,month},數(shù)據(jù)文件命名為i_meettimes.csv。
步驟3使用Pig將i_meettimes.csv文件和i_count.csv文件進行第一次join left連接,得到每組{account1,account2,meettimes}中a c c o u nt1在i個月中刷卡次數(shù)Si(X);再繼續(xù)和i_count.csv進行一次join left連接,得到對應(yīng)account2 在i月中刷卡次數(shù)Si(Y)。那么可信度C(X->Y)=meettimes/Si(X),C(Y->X)= meettimes/Si(Y)。
算法2:生成相遇記錄
input=DataBag
tuples=LinkedList( );
line[maxP] =new Person( ) //line指相遇人群隊列
indexS,indexE = 0 //line的開始索引和結(jié)束索引
values = input.iterator( )
flag = false //標(biāo)記是否為第一條數(shù)據(jù)
while ( values.hasNext( ))
person = values.next( ) //用戶一條刷卡數(shù)據(jù)
if (indexS == indexE&&flag)
indexS =(indexS+1)% maxP
line[indexE].account = person.account
line[indexE].stime = person.stime
while (indexS ! = indexE) //修改開始索引
4.5.3 關(guān)聯(lián)規(guī)則
根據(jù)相遇定義和算法2,進一步統(tǒng)計學(xué)生刷卡相遇情況,并計算出相關(guān)的支持度和可信度。最后,利用支持度和可信度兩個度量標(biāo)準(zhǔn)衡量學(xué)生對象間的關(guān)聯(lián)性。
設(shè)置最小支持度閾值minsup,對于單個學(xué)生對象X或者Y,其相關(guān)支持度必須大于minsup,因為支持度很低的規(guī)則可能只是偶爾出現(xiàn)。當(dāng)S(X)或者S(Y)很低時,說明學(xué)生X或者Y刷卡的次數(shù)很低,這也意味著關(guān)聯(lián)性在這種情況下難以反映出來。此外,若S(X->Y)很低,說明X、Y的相遇極具偶然性。
可信度的度量通過規(guī)則進行推理具有可靠性,對于給定規(guī)則X->Y,可信度越高,X與Y一起刷卡的概率越高,所以可信度在一定程度上反映彼此相遇的強度,從而間接反映兩者關(guān)系的關(guān)聯(lián)性強度。設(shè)置最小可信度閾值minconf,其相關(guān)可信度必須大于minconf,因為如果C(X->Y)或者C(Y->X)太小,說明他們聯(lián)系強度太弱。
在滿足S(X)>minsup和S(Y)>minsup的前提下,X與Y滿足下面至少一種情況即可被劃分為關(guān)系密切,其中,i表示第i個周期。
由于關(guān)聯(lián)規(guī)則作出的推理并不必然蘊含因果關(guān)系,且因果關(guān)系通常更多地涉及長期出現(xiàn)的聯(lián)系,所以在上述第2個條件中,a,b表示周期,指在第a~b個周期期間,X、Y相遇的總次數(shù)大于一個設(shè)定的值Smin時,可以認為X、Y為關(guān)系密切。第3個條件中,Meeti(XY)的取值為0或者1,當(dāng)?shù)趈個周期Sj(X->Y)>minsup,即X、Y在該周期相遇的次數(shù)大于minsup次時,Meeti(XY)取值為1,否則取值為0,那么經(jīng)過n個周期,對Meetj(XY)求和,值大于K次,就說明這兩者關(guān)系密切。對于第1個條件,當(dāng)Ci(X->Y)>minconf時,X與Y兩個人若為相識,則彼此之間的可信度Ci(X->Y)和Ci(Y->X)應(yīng)該相差不大,所以在分析X與Y是否為好友時,還需要滿足條件Ci(Y->X)>Ci(X->Y)/2。
上述涉及兩個閾值minsup、minconf的確定。其中最小支持度閾值minsup是為了過濾因刷卡行為較少、無法通過刷卡相遇來發(fā)現(xiàn)好友關(guān)系的用戶,minsup的值取決于一個周期的時間長短,本文以1個月為一個周期,令minsup=((1/n)∑S(k))×10%,n表示用戶量,S(k)表示用戶k在一個周期內(nèi)的刷卡次數(shù)。對于最小可信度閾值minconf的確定,根據(jù)經(jīng)驗給定minconf的初始值,利用采集的數(shù)據(jù)作為訓(xùn)練樣本(信息包括:卡號、好友列表、所屬班級等),對比實驗結(jié)果計算罰函數(shù),罰函數(shù)值越小,minconf值越優(yōu),通過不斷調(diào)整minconf值,使罰函數(shù)值不斷減少至可接受范圍,最終確定當(dāng)前最佳minconf值。
中南大學(xué)校園一卡通數(shù)據(jù)包含了學(xué)生所有刷卡行為記錄,將前面部分預(yù)處理技術(shù)及相遇模型應(yīng)用到中南大學(xué)一卡通數(shù)據(jù)集,構(gòu)建相遇模型,然后利用關(guān)聯(lián)規(guī)則理論計算相關(guān)度量,最后發(fā)現(xiàn)學(xué)生好友關(guān)系。
為了驗證之前提出的學(xué)生好友關(guān)系驗證方法,通過調(diào)查問卷和訪談的形式獲取真實的線下好友關(guān)系。問卷涉及內(nèi)容包括用戶卡號、性別、在校好友列表、所在宿舍等,并選擇在5個宿舍樓(3棟男寢、2棟女寢)門口進行了為期5天的隨機問卷調(diào)查,去掉信息不完整的數(shù)據(jù)后最終保留56名用戶信息,其中包括37名男生,19名女生。此外,還通過聯(lián)系院系輔導(dǎo)員,爭取了3個班級的配合,分別對2個班級(共86名學(xué)生)進行了訪談,完成此次班級社群關(guān)系挖掘。
本文第4.5.2節(jié)已經(jīng)完成了支持度和可信度的計算,并且第4.5.3節(jié)定義了兩個學(xué)生對象關(guān)系密切需要滿足的條件,由此將計算出的單個學(xué)生對象支持度以及兩兩學(xué)生對象的支持度和可信度,按照是否滿足關(guān)系密切的條件,判定任意兩個學(xué)生對象是否關(guān)系密切。
為更好地反映學(xué)生線下社交關(guān)系,本文從兩個角度挖掘?qū)W生社交關(guān)系,分別是以團體為分析對象的社交網(wǎng)絡(luò)和以個體為中心的社交網(wǎng)絡(luò),再通過可視化的方面呈現(xiàn),從而更準(zhǔn)確地評估分析結(jié)果與線下社交真實度。
5.1 單個對象的社交網(wǎng)絡(luò)
以被查詢的學(xué)生對象為中心,挖掘其線下社交關(guān)系,從而發(fā)現(xiàn)該學(xué)生線下社交情況。即對于每個被選擇的學(xué)生對象X,由關(guān)聯(lián)規(guī)則分析理論找出與X滿足關(guān)系密切條件的所有學(xué)生對象集合A。
圖4中account1和account2為兩個用戶4個周期與其他學(xué)生相遇情況的熱力圖,其中橫坐標(biāo)卡號表示不同用戶,縱坐標(biāo)表示周期,利用相遇模型計算的支持度和可信度來展現(xiàn),其中方格越大,相遇概率越高,顏色越深,相識的概率越大。從圖4可以很明顯看出,4個周期中,account1用戶好友關(guān)系比較穩(wěn)定,而account2相對于account1用戶好友關(guān)系沒那么固定。
圖4 兩名學(xué)生4個周期刷卡相遇情況
圖5 3個不同用戶各自線下相遇情況
用戶的活躍程度可以間接地根據(jù)用戶的朋友圈規(guī)模以及用戶的朋友的朋友圈規(guī)模來衡量。圖5為3個學(xué)生的線下刷卡相遇情況,每個節(jié)點表示一個用戶個體,節(jié)點大小表示用戶的可能好友的個數(shù),節(jié)點間的邊表示兩個個體關(guān)系,邊的粗細程度指兩個用戶的相遇程度,邊越粗越可能關(guān)系密切。其中3個社群表示3個用戶的好友以及各自好友的好友的兩層傳遞的刷卡相遇情況,社群大小反映了該用戶活躍程度,很顯然,學(xué)生c比較活躍。
5.2 班級社群關(guān)系網(wǎng)絡(luò)
一個班集體社交關(guān)系研究作為一類典型的社區(qū)發(fā)現(xiàn),具有十分重要的意義。班集體內(nèi)部的社交關(guān)系,反映了每個學(xué)生班內(nèi)的交友情況,間接地為學(xué)校引導(dǎo)學(xué)生走向更健康的學(xué)習(xí)生活方式提供了數(shù)據(jù)支撐。
圖6是兩個不同班級線下社交關(guān)系網(wǎng)絡(luò)圖,圖6分別為中南大學(xué)計算機專業(yè)1401班和信息安全專業(yè)1401班同學(xué)之間社交情況,其中最大節(jié)點代表非本班的學(xué)生,其他每個節(jié)點表示一名學(xué)生,不同班級呈現(xiàn)出社交網(wǎng)絡(luò)差別很大。計算機專業(yè)1401班明顯班內(nèi)學(xué)生聯(lián)系密切,主要集中在本班,信息安全專業(yè)1401班的班內(nèi)聯(lián)系不緊密,班內(nèi)還有小群體以及單獨人群。
圖6 兩個班級社交情況
5.3 實驗評估
筆者利用問卷收集的56名用戶信息以及3個班級的訪談問卷信息,從學(xué)生對象和班級對象進行分析,并根據(jù)分析的結(jié)果對比真實調(diào)研情況。圖7為56名用戶的準(zhǔn)確率的情況,縱坐標(biāo)表示用戶準(zhǔn)確率,橫坐標(biāo)代表不同用戶,此處準(zhǔn)確率=實驗好友正確的個數(shù)/實際好友個數(shù),虛線代表正確率曲線,實線為90%準(zhǔn)確率參考線。從實驗結(jié)果可看出,筆者提出的好友挖掘方法對好友的識別率有90%左右。
圖7 好友識別準(zhǔn)確率
將3個班級的社交網(wǎng)絡(luò)圖分別放在對應(yīng)班級訪談,并將實驗結(jié)果的正確程度劃分為完全不符合、部分不符合、基本符合和完全符合4個級別,如圖8所示,橫坐標(biāo)表示不同班級,縱坐標(biāo)表示各班級分析結(jié)果的不同符合程度所占比例,由圖8可知,班級代號為1、3的兩個班基本符合和完全符合所占比例之和超過90%,代號為2的班級同樣接近90%,由此可見班級社交關(guān)系挖掘比較準(zhǔn)確。
圖8 3個班級符合程度
筆者建立相遇模型來統(tǒng)計學(xué)生相遇情況,并通過關(guān)聯(lián)規(guī)則理論挖掘?qū)W生好友關(guān)系,從而找到任意學(xué)生及與其關(guān)系密切的人群。通過這種方式挖掘?qū)W生線下社交關(guān)系,有諸多方面應(yīng)用。首先,通過這種方式找到學(xué)生關(guān)系密切人群,從而排除這類學(xué)生患有孤獨癥的可能。其次,以班級為單位進行社群發(fā)現(xiàn),了解班級間學(xué)生現(xiàn)實生活交友交流狀態(tài),發(fā)現(xiàn)不利學(xué)生個人發(fā)展的現(xiàn)象,如固定小團體交友現(xiàn)象等,繼而將這種班級社群關(guān)系向更健康的社群關(guān)系引導(dǎo),并且為校園線下社交關(guān)系挖掘研究添加新內(nèi)容。
筆者提出關(guān)于校園學(xué)生刷卡相遇模型,該模型不僅僅適用于校園刷卡挖掘?qū)W生線下社交,同時適用于其他場景的基于線下活動數(shù)據(jù)發(fā)現(xiàn)用戶線下社交。
[1]徐鵬, 王以寧, 劉艷華, 等. 大數(shù)據(jù)視角分析學(xué)習(xí)變革:美國《通過教育數(shù)據(jù)挖掘和學(xué)習(xí)分析促進教與學(xué)》報告解讀及啟示[J]. 遠程教育雜志, 2013(6): 11-17.
XU P, WANG Y N, LIU Y H, et al. The learning innovation from the perspective of big data: an analysis of the U.S. report of enhancing teaching and learning through educational data mining and learning analytics and its enlightenment[J].Distance Education Journal, 2013(6): 11-17.
[2]王德才. 數(shù)據(jù)挖掘在校園卡消費行為分析中的研究與應(yīng)用[D]. 哈爾濱: 哈爾濱工程大學(xué), 2010.
WANG D C. Research and application of data mining in campus card consumption behavior analysis[D]. Harbin: Harbin Engineering University, 2010.
[3]YAN Z. The research of data mining technology in campus card consumption system[C]// 2011 International Conference on Electronics and Optoelectronics (ICEOE), September 8, 2011, Dalian, China. New Jersey: IEEE Press, 2011: 265-267.
[4]呂紅胤, 連德富, 聶敏, 等. 大數(shù)據(jù)引領(lǐng)教育未來: 從成績預(yù)測談起[J]. 大數(shù)據(jù), 2015045.
LV H Y, LIAN D F, NIE M, et al. Big data drives a new epoch of education:a case study of academic performance predication[J]. Big Data Research, 2015045.
[5]AGRAWAL R, IMIELI?SKI T, SWAMI A. Mining association rules between sets of items in large databases[J]. ACM SIGMOD Record, 1993, 22(2): 207-216.
[6]AGR AWA L R, SR I K A NT R. Fa st algorithms for mining association rules[C]//20th International Conference on Very Large Data Bases, September 12-15, 1994, Santiago, Chile. New York: ACM Press, 1994: 487-499.
[7]孫吉貴, 劉杰, 趙連宇. 聚類算法研究[J]. 軟件學(xué)報, 2008, 19(1): 48-61. SUN J G, LIU J, ZHAO L Y. Clustering algorithms research[J]. Journal of Software, 2008, 19(1): 48-61.
[8]ANDERBERG M R. Cluster analysis for applications: probability and mathematical statistics: a series of monographs and textbooks[M]. Manhattan: Academic Press, 2014.
[9]AIN A K, DUBES R C. Algorithms for clustering data[M]. New Jersey: Prentice-Hall, Inc., 1988.
[10]楊媛媛. 社交網(wǎng)絡(luò)中的關(guān)系構(gòu)建和親密度分析[J].石家莊學(xué)院學(xué)報, 2009, 11(6): 91-96.
YANG Y Y. An analysis of relationship formation a nd intimacy in social network[J]. Journal of Shijiazhuang University, 2009, 11(6): 91-96.
[11]吳昊, 劉東蘇. 社交網(wǎng)絡(luò)中的好友推薦方法研究[J]. 現(xiàn)代圖書情報技術(shù), 2015, 31(1): 59-65.
WU H, LIU D S. Research on the method of friends’recommendation in social network[J]. New Technology of Library and Information Service, 2015, 31(1): 59-65.
[12]張淑娟. 大學(xué)生心理健康狀況與應(yīng)對措施[J].中醫(yī)藥管理雜志, 2016(3): 30-31.
ZHANG S J. The mental health of college students and the countermeasures[J]. Journal of Traditional Chinese Medicine Management, 2016(3): 30-31.
[13]WAN L C. A research on the correlation of loneliness and social anxiety in college students[J]. Advances in Psychology, 2016, 6(4): 391-397.
[14]李旭, 鄭涵予, 盧勤. 大學(xué)生自殺意念及其影響因素分析[J]. 中國公共衛(wèi)生, 2016, 32(3):359-362.
LI X, ZHENG H Y, LU Q. Suicidal ideation and associated factors among university students[J]. Chinese Journal of Public Health, 2016, 32(3): 359-362.
[15]羅華群. 校園一卡通數(shù)據(jù)的挖掘與應(yīng)用[D]. 上海: 華東師范大學(xué), 2009.
LUO H Q. Excavation and application ofcampus card data[D]. Shanghai: East China Normal University, 2009.
[16]陳建兵. 利用校園一卡通數(shù)據(jù)優(yōu)化高校貧困生認定系統(tǒng)[D]. 成都: 電子科技大學(xué), 2012.
CHEN J B. Using the campus card data to optimize the system of determining poor students in colleges and universities[D]. Chengdu: University of Electronic Science and Technology of China, 2012.
[17]金培莉,王曉震. 校園一卡通系統(tǒng)決策支持實例分析[J]. 華東師范大學(xué)學(xué)報 (自然科學(xué)版), 2015(1): 525-529.
JIN P L, WANG X X. Instance analysis of campus card system decision support[J]. Journal of East China Normal University (Natural Science), 2015(1): 525-529.
[18]K A N TA R D Z I C M. D a t a-m i n i n g concepts[J]. Data Mining: Concepts, Models, Methods, and Algorithms, Second Edition, 2011(1): 1-25.
[19]GATESA. Pig編程思想[M]. 曹坤, 譯. 北京:人民郵電出版社, 2013.
GATESA. Thinking in Pig [M]. Translated by CAO K. Beijing: Posts & Telecom Press, 2013.
王建新(1969-),博士,中南大學(xué)信息科學(xué)與工程學(xué)院教授,中國計算機學(xué)會高級會員,主要研究方向為計算機算法、網(wǎng)絡(luò)優(yōu)化理論、生物信息學(xué)。
Smart-card based campus friend mining and its applications
LU Mingming, ZHANG Dan, WANG Jianxin
School of Information Science and Engineering, Central South University, Changsha 410083, China
Recently, educational big data has become a hot topic. A distributed file system to store, preprocess, and analyze campus card data was adopted. Based on it, a student encounter model has been proposed, so as to mine students’offline social relations. To distinguish real friends from familiar strangers, the offline social relations for either individual students or classes were analyzed. Through these two perspectives, the students’ offline encounters was analyzed, which can not only extract social relationship between friends (including the isolated students), but also provide data support for the campus class management. The experimental results show that the mined social relations reflect the real relationship.
community discovery, encounter model, offline social relation
TP181
A
10.11959/j.issn.2096-0271.2017021
魯鳴鳴(1978-),男,博士,中南大學(xué)信息科學(xué)與工程學(xué)院副教授,中國計算機學(xué)會會員,主要研究方向為深度學(xué)習(xí)及其在大數(shù)據(jù)、城市計算、移動計算和物聯(lián)網(wǎng)方面的應(yīng)用。
張丹(1991-),女,中南大學(xué)信息與工程學(xué)院碩士生,主要研究方向為大數(shù)據(jù)、數(shù)據(jù)分析。
2016-10-25
國家自然科學(xué)基金資助項目(No.61232001,No.61173169,No.60903222);湖南省戰(zhàn)略新興產(chǎn)業(yè)重大科技研究計劃基金資助項目(No.208GK4054)
Foundation Items: The National Natural Science Foundation of China(No.61232001, No.61173169, No.60903222), Hunan Strategic Emerging Industries Major Scientific and Technological Research Project(No.208GK4054)