




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1 / 49本本 科科 畢畢 業(yè)業(yè) 設(shè)設(shè) 計(論文)計(論文) 題目題目: : 基于數(shù)據(jù)挖掘技術(shù)的學(xué)生成績分析系統(tǒng)的設(shè)計與實現(xiàn)基于數(shù)據(jù)挖掘技術(shù)的學(xué)生成績分析系統(tǒng)的設(shè)計與實現(xiàn) 姓姓 名名 張宇恒張宇恒 學(xué)學(xué) 院院 軟件學(xué)院軟件學(xué)院 專專 業(yè)業(yè) 軟件工程軟件工程 班班 級級 2010211503 學(xué)學(xué) 號號 10212099 班內(nèi)序號班內(nèi)序號 01 指導(dǎo)教師指導(dǎo)教師 牛琨牛琨 2014 年年 5 月月基于數(shù)據(jù)挖掘技術(shù)的學(xué)生成績分析系統(tǒng)的設(shè)計與實現(xiàn)基于數(shù)據(jù)挖掘技術(shù)的學(xué)生成績分析系統(tǒng)的設(shè)計與實現(xiàn)摘摘 要要隨著科技的不斷發(fā)展和中國教育制度的日趨完善,各大高校對教務(wù)管理工作提出了越來越高的要求。各大高校不
2、再滿足于傳統(tǒng)的成績管理方式,開始運(yùn)用數(shù)據(jù)挖掘領(lǐng)域的先進(jìn)方法對學(xué)生成績進(jìn)行分析和研究。教務(wù)工作人員使用關(guān)聯(lián)規(guī)則挖掘算法分析課程間的內(nèi)在聯(lián)系,可為學(xué)校的改進(jìn)教學(xué)工作提供依據(jù),并為學(xué)生的選課和學(xué)業(yè)規(guī)劃提供指導(dǎo);對學(xué)生進(jìn)行分類,讓學(xué)生能夠?qū)ψ约涸谛F陂g所學(xué)課程的成績有一個全面而清晰的了解,方便學(xué)生揚(yáng)長避短選擇選修課程,及時對可能在學(xué)習(xí)上遇到困難的學(xué)生進(jìn)行預(yù)警;運(yùn)用聚類算法對學(xué)生進(jìn)行聚類,找出具有共同特征的學(xué)生,并對不同學(xué)生群體分別采取不同的教學(xué)方法,初步體現(xiàn)因材施教的教育理念,最終探索出適合中國國情和教育制度的個性化培養(yǎng)模式。本系統(tǒng)采用 Eclipse 作為開發(fā)平臺,以 Java 作為開發(fā)語言。通過對
3、高校學(xué)生成績分析系統(tǒng)的需求分析,本系統(tǒng)設(shè)計實現(xiàn)了可以使用關(guān)聯(lián)規(guī)則挖掘算法分析課程間的內(nèi)在聯(lián)系,使用分類算法對學(xué)生進(jìn)行分類,使用聚類算法對學(xué)生進(jìn)行聚類。希望本系統(tǒng)能對今后高校學(xué)生成績分析系統(tǒng)的開發(fā)提供一定的參考價值。關(guān)鍵詞關(guān)鍵詞 成績分析 關(guān)聯(lián)規(guī)則 分類 聚類Design and implementation of student achievement analysis system based on data mining technologyABSTRACTWith the continuous development of technology and the Chinese educa
4、tion system maturing, Universities have put higher requirements to their academic administration. Universities are no longer satisfied with traditional performance management, began to apply advanced data mining methods to analyze and study students achievement. Staff of academic affairs use associa
5、tion rule mining algorithm to analysis intrinsic link between courses, which can provide the basis for improving the teaching of the school and guidance for the students enrollment and academic planning. Using classification algorithm to classify the students, so that students can have a clear under
6、standing in their academic performance, and facilitate students in selecting courses. Warning students who probably face difficulties in the academic. Using clustering algorithm to cluster the students to identify students with common characteristics, so that teachers can teach different students in
7、 different way, embodies the concept of individualized education, finally discover a personalized education model, which is suitable for Chinas national conditions and education system.The system was developed in Eclipse, with java as a development language. By analyzing the need of student achievem
8、ent analysis system, this system uses association rule mining algorithm to analysis intrinsic link between courses, uses classification algorithm to classify the students, uses clustering algorithm to cluster the students to identify students. I hope this system can provide some reference value to t
9、he future development of college students achievement analysis system.KEY WORDS achievement analysis association rules classification clustering目錄目錄第一章第一章 引言引言.11.1 選題的背景和意義 .11.2 個性化培養(yǎng)的重要意義 .11.3 國內(nèi)外個性化培養(yǎng)的現(xiàn)狀 .21.3.1 國外個性化培養(yǎng)現(xiàn)狀 .21.3.2 國內(nèi)個性化培養(yǎng)現(xiàn)狀 .31.4 成績分析系統(tǒng)的現(xiàn)狀和存在的問題 .31.4.1 成績分析系統(tǒng)開發(fā)使用的現(xiàn)狀 .31.4.2 成績分
10、析系統(tǒng)建設(shè)存在的問題 .4第二章第二章 相關(guān)技術(shù)相關(guān)技術(shù).42.1 相關(guān)數(shù)據(jù)挖掘知識理論 .42.1.1 數(shù)據(jù)挖掘 .42.1.2 關(guān)聯(lián)規(guī)則 .52.1.3 分類 .62.1.4 聚類 .62.2 開發(fā)工具的選擇 .72.2.1 Eclipse 簡介.72.2.2 Eclipse 的優(yōu)勢.7第三章第三章 系統(tǒng)分析系統(tǒng)分析.83.1 軟件過程模型 .83.2 需求分析 .93.2.1 用例圖 .93.2.2 需求的結(jié)構(gòu)化描述 .10第四章第四章 系統(tǒng)設(shè)計與實現(xiàn)系統(tǒng)設(shè)計與實現(xiàn).144.1 系統(tǒng)概要設(shè)計 .144.1.1 系統(tǒng)體系結(jié)構(gòu) .144.1.2 系統(tǒng)數(shù)據(jù)結(jié)構(gòu) .154.2 系統(tǒng)詳細(xì)設(shè)計 .1
11、64.2.1 文件導(dǎo)入數(shù)據(jù) .164.2.2 數(shù)據(jù)預(yù)處理 .164.2.3 關(guān)聯(lián)規(guī)則 .184.2.4 分類 .194.2.5 聚類 .204.2.6 導(dǎo)出文件 .224.3 系統(tǒng)實現(xiàn) .234.3.1 文件導(dǎo)入數(shù)據(jù) .234.3.2 數(shù)據(jù)預(yù)處理 .234.3.3 關(guān)聯(lián)規(guī)則 .234.3.4 分類 .244.3.5 聚類 .244.3.6 導(dǎo)出文件 .254.4 系統(tǒng)應(yīng)用 .26第五章第五章 結(jié)論結(jié)論.30參考文獻(xiàn)參考文獻(xiàn).31致致 謝謝.32第一章第一章 引言引言1.11.1 選題的背景和意義選題的背景和意義進(jìn)入新世紀(jì)以來,我國的高等教育事業(yè)正在快速發(fā)展,各個領(lǐng)域的重大科研成果不斷涌現(xiàn),各知
12、名院校的國際排名和知名度也不斷攀升。然而在這些光鮮靚麗的學(xué)術(shù)成果之下,各大高校對學(xué)生的管理工作卻并沒有跟上時代的步伐。其實對于給大高校來說,學(xué)生的考試成績是一筆非常寶貴的財富。學(xué)生的成績是反映學(xué)校教學(xué)水平的最直接的第一手資料,這些數(shù)據(jù)可以為學(xué)校改進(jìn)招生和教學(xué)工作提供重要依據(jù)。然而,學(xué)生成績的管理工作并沒有引起高校足夠的重視,尤其是在對學(xué)生成績的分析處理方面,絕大部分高校還停留在較為原始的數(shù)據(jù)庫管理和查詢階段,沒有對學(xué)生的成績進(jìn)行橫向和縱向的對比研究,也缺乏對各學(xué)科之間成績內(nèi)在聯(lián)系的挖掘。學(xué)科成績間的內(nèi)在聯(lián)系是廣泛存在于各個專業(yè)的各門課程中的,學(xué)科成績間內(nèi)在聯(lián)系的分析和研究對對學(xué)生和學(xué)校都有著十
13、分重要的意義。通過了解學(xué)科成績間存在的內(nèi)在聯(lián)系,學(xué)生可以清楚地認(rèn)識到基礎(chǔ)課程、先導(dǎo)課程的重要性,并且在選擇選修課的時候,做到揚(yáng)長避短,通過更多地選擇與自己優(yōu)勢課程成績正相關(guān)的課程來幫助提高成績。而對于學(xué)校來說,分析學(xué)科成績間的內(nèi)在聯(lián)系可以為各個專業(yè)的課程設(shè)置提供重要的參考依據(jù)。在教務(wù)工作人員進(jìn)行排課工作時,可參考對往屆學(xué)生成績的分析結(jié)果來調(diào)整課程的排布順序,達(dá)到不斷優(yōu)化課程設(shè)置的目的。個性化培養(yǎng)和發(fā)展是當(dāng)今高等教育發(fā)展的主流方向,以往填鴨式、工廠式的教學(xué)方式已經(jīng)被先進(jìn)的教育理念所替代,而中國教育制度中流水線式的培養(yǎng)模式一直是一個被廣泛詬病、急需解決的問題。在這一方面,我們可以借鑒發(fā)達(dá)國家的先進(jìn)
14、經(jīng)驗,結(jié)合我國高等教育發(fā)展現(xiàn)狀,探索并逐步建立由中國特色的、適合我國國情的個性化培養(yǎng)體系。目前可以通過對學(xué)生的成績進(jìn)行挖掘和分析,對學(xué)生進(jìn)行分群,為具有一定共同特征的學(xué)生制定個性化培養(yǎng)方案?;谏鲜銮闆r,本題目以完善高校培養(yǎng)制度和制定學(xué)生個性化培養(yǎng)方案為背景,通過運(yùn)用數(shù)據(jù)挖掘及相關(guān)專業(yè)技術(shù),設(shè)計并實現(xiàn)學(xué)生成績分析系統(tǒng)。1.21.2 個性化培養(yǎng)的重要意義個性化培養(yǎng)的重要意義個性化培養(yǎng)其實并不是一個新穎的概念,2000多年前,我國著名教育家孔子就提出了因材施教的教育理念,并且身體力行地用因材施教的方法教育自己的弟子。在2000多年后的今天,多元化人才培養(yǎng)是高等教育發(fā)展的必然趨勢。個性化培養(yǎng)不僅是實
15、現(xiàn)多元化人才培養(yǎng)最重要的方式,更是我國建立創(chuàng)新型國家戰(zhàn)略對高等教育提出的必然需求。只有摒棄傳統(tǒng)的流水線式培養(yǎng)模式,在高等院校中全面推行個性化培養(yǎng),我國高等教育才能真正完成人才培養(yǎng)方式的革命。(1)個性化培養(yǎng)是高等教育發(fā)展的現(xiàn)實需要個性化教育,是社會對大學(xué)生的預(yù)期變化的結(jié)果。在當(dāng)今時代,社會要求每個人都能發(fā)揮自己獨特而不可替代的作用,教育的使命也悄然轉(zhuǎn)變?yōu)榧ぐl(fā)每一名學(xué)生的內(nèi)在潛能。在高等院校推行個性化教育是中國高等教育的發(fā)展方向,更是世界大多數(shù)國家的共識。隨著大學(xué)的擴(kuò)招,原本曲高和寡的高等教育已經(jīng)走進(jìn)了普羅大眾的生活。但是大眾化的高等教育不等于流水線式的培養(yǎng),相反普及高等教育的意義正在于讓更多的
16、人進(jìn)入大學(xué),按照自己的興趣和自身特點選擇專業(yè)進(jìn)行學(xué)習(xí),成為獨特的人才。(2)個性化培養(yǎng)是創(chuàng)新型國家戰(zhàn)略的必然要求2006 年,國家制定了建設(shè)創(chuàng)新型國家的重大決策。增強(qiáng)自主創(chuàng)新能力是建設(shè)創(chuàng)新型國家戰(zhàn)略中最重要的一環(huán),而作為高端人才培養(yǎng)基地的眾多高等院校毫無疑問成為了自主創(chuàng)新的排頭兵。受制于特殊的國情和幾千年的科舉傳統(tǒng),我國目前的教育模式仍然是以死記硬背為主要學(xué)習(xí)手段,以分?jǐn)?shù)作為評價學(xué)生優(yōu)劣的主要甚至是唯一標(biāo)準(zhǔn)。在這種教育模式中培養(yǎng)出來的學(xué)生中,相當(dāng)一部分是與社會脫節(jié)的、毫無創(chuàng)新能力可言的“考試機(jī)器”。現(xiàn)有的人才培養(yǎng)模式明顯滯后于經(jīng)濟(jì)社會的發(fā)展,更是與建設(shè)創(chuàng)新型國家戰(zhàn)略相違背的。只有立即轉(zhuǎn)變?nèi)瞬排?/p>
17、養(yǎng)模式,真正實現(xiàn)以人為本的個性化培養(yǎng),才能使高等院校成為培養(yǎng)創(chuàng)新型人才的土壤。因此,以培養(yǎng)多元化人才為主導(dǎo)的個性化培養(yǎng)模式是我國高等教育發(fā)展的必然趨勢。1.31.3 國內(nèi)外個性化培養(yǎng)的現(xiàn)狀國內(nèi)外個性化培養(yǎng)的現(xiàn)狀1.3.11.3.1 國外個性化培養(yǎng)現(xiàn)狀國外個性化培養(yǎng)現(xiàn)狀隨著高等教育的不斷發(fā)展,在發(fā)達(dá)國家學(xué)生個性化發(fā)展的理念已經(jīng)深入人心。其中高等教育最為發(fā)達(dá)同時也是中國留學(xué)生首選目的地的美國毫無疑問走在了世界的前列。以常青藤聯(lián)盟為代表的美國知名大學(xué)在新生錄取時并不會給新生確定專業(yè),而是根據(jù)學(xué)生的意愿將學(xué)生分進(jìn)不同的基礎(chǔ)學(xué)院,允許學(xué)生在學(xué)院內(nèi)自由地選擇課程。在完成一到兩年的基礎(chǔ)學(xué)習(xí)后,學(xué)生可以根據(jù)所
18、學(xué)的課程和個人興趣愛好自由選擇自己的專業(yè)。這是一種非常人性化的人才培養(yǎng)模式。學(xué)生在入學(xué)時往往對自己所選擇的專業(yè)并不十分了解,有的甚至是一無所知,僅憑一時興起做出了選擇。在這種情況下確定學(xué)生的專業(yè)顯然不是最合理選擇的。當(dāng)學(xué)生完成了一段時間的學(xué)習(xí)后,無論是對所學(xué)的專業(yè),還是對自身的學(xué)術(shù)能力和興趣愛好都有了一個更深層次的認(rèn)識。在這個時候?qū)W生對專業(yè)的選擇往往會更加理性,這無論對學(xué)生還是對學(xué)校來說都是大有裨益的。而國際知名的布朗大學(xué)更是敢為天下先地取消了必修課制度,學(xué)生可以完全根據(jù)自己的興趣選擇學(xué)校提供的任何課程,修滿學(xué)校要求的學(xué)分后即可畢業(yè)。學(xué)校根據(jù)學(xué)生選擇的課程來給學(xué)生頒發(fā)不同專業(yè)的畢業(yè)證書。布朗大
19、學(xué)認(rèn)為:沒有人會告訴學(xué)生應(yīng)該上什么課或怎樣做,只要有興趣,學(xué)生可以自由的發(fā)展。但是這種教學(xué)模式一度受到了美國教育界的廣泛非議。相比布朗大學(xué),其他常青藤盟校顯得保守了許多,或是設(shè)置了一些必修課,或是對學(xué)生可以選擇的課程做出了一系列規(guī)定,總而言之,布朗大學(xué)超前的教育理念并沒有被其他大學(xué)所廣泛接受。1.3.21.3.2 國內(nèi)個性化培養(yǎng)現(xiàn)狀國內(nèi)個性化培養(yǎng)現(xiàn)狀國內(nèi)的高等院校仍然遵循著傳統(tǒng)的人才培養(yǎng)模式,在當(dāng)今的時代中已經(jīng)暴露出了諸如學(xué)科專業(yè)結(jié)構(gòu)的設(shè)置缺乏整體思考、缺少系統(tǒng)設(shè)計;課程體系不夠綜合、開設(shè)比例不夠合理;考核評價體系知識記憶、輕創(chuàng)新實踐等方面的問題。在高校中探索并發(fā)展個性化培養(yǎng)模式已經(jīng)成為了絕大
20、多數(shù)教育界人士的共識。相比較國外已經(jīng)比較成熟的個性化培養(yǎng)方案而言,國內(nèi)的個性化培養(yǎng)方案尚處在起步摸索階段,絕大多數(shù)國內(nèi)高校的課程設(shè)置都已必修課程為主,輔以少量與專業(yè)相關(guān)的選修課程供學(xué)生選擇,離真正的個性化培養(yǎng)還有比較大的差距。學(xué)生的專業(yè)也都是在招生是就已經(jīng)確定了,為學(xué)生提供的更改專業(yè)的機(jī)會也比較少,與高等教育比較發(fā)達(dá)的國家還有較大差距。1.41.4 成績分析系統(tǒng)的現(xiàn)狀和存在的問題成績分析系統(tǒng)的現(xiàn)狀和存在的問題1.4.11.4.1 成績分析系統(tǒng)開發(fā)使用的現(xiàn)狀成績分析系統(tǒng)開發(fā)使用的現(xiàn)狀對于高校來說,教務(wù)管理是他的核心工作之一,而成績分析能力的高低是衡量教務(wù)管理水平的一個關(guān)鍵指標(biāo)。教務(wù)管理的水平對高
21、校教學(xué)水平的進(jìn)步和發(fā)展有著至關(guān)重要的意義。在當(dāng)今社會,隨著教育改革的逐步深入,和科學(xué)技術(shù)的發(fā)展 社會對高校的成績分析管理提出了許多新的要求, “規(guī)范化、信息化、網(wǎng)絡(luò)化”是學(xué)校教學(xué)管理的必然選擇。建立并應(yīng)用一套優(yōu)秀的成績分析系統(tǒng)是提升教務(wù)管理水平的關(guān)鍵所在。目前,各高校普遍建立了教務(wù)信息管理系統(tǒng),其中很多高校還根據(jù)自身需求建有成績分析系統(tǒng)。此類系統(tǒng)一般采用關(guān)系型數(shù)據(jù)模型, 數(shù)據(jù)庫中主要包括學(xué)生的姓名、學(xué)號、專業(yè)、考試成績的個人信息。而每個信息又與其它信息相關(guān)聯(lián),形成了龐大的、涵蓋整個教務(wù)管理過程的數(shù)據(jù)信息網(wǎng)。教務(wù)管理信息系統(tǒng)實現(xiàn)了教務(wù)信息的集中管理、分散操作、信息共享,使傳統(tǒng)的教務(wù)管理向數(shù)字化、
22、無紙化、智能化、綜合化及多元化的方向發(fā)展。借助現(xiàn)代信息技術(shù),不同形式的成績分析系統(tǒng)正在利用網(wǎng)絡(luò)優(yōu)勢實現(xiàn)資源的共享、權(quán)限的信息錄入、查詢及修改等,改變了傳統(tǒng)教務(wù)管理模式下信息數(shù)據(jù)層層傳達(dá)及存儲的模式,提高了信息的實效性,實現(xiàn)了真正意義上的信息交換與互動。1.4.21.4.2 成績分析系統(tǒng)建設(shè)存在的問題成績分析系統(tǒng)建設(shè)存在的問題然而需要正視的是,我國高校的學(xué)生成績分析系統(tǒng)仍然存在著一定問題,主要表現(xiàn)在:(1) 功能需求不明確,設(shè)計不盡完善各所高校間教務(wù)管理的流程有所不同,教務(wù)管理人員如何根據(jù)自身學(xué)校的特點建立成績分析系統(tǒng)是一個具有普遍性問題。目前建成的成績分析系統(tǒng),大多都沒有嚴(yán)格遵循軟件項目開發(fā)流
23、程,對功能需求的分析做的不夠徹底,設(shè)計也不夠完善,難以達(dá)到理想的效果。其中一個最主要的原因是使用者和設(shè)計者沒能進(jìn)行充分的溝通,設(shè)計人員對教務(wù)管理流程并不熟悉,和教學(xué)效果體現(xiàn)的理解也不透徹,使得現(xiàn)今的成績分析系統(tǒng)大多不盡如人意。(2) 沒有運(yùn)用數(shù)據(jù)挖掘技術(shù)對成績進(jìn)行分析當(dāng)今大部分高校對學(xué)生成績管理的理解還停留在較為原始的數(shù)據(jù)庫管理和查詢階段,對學(xué)生成績的分析多以簡單地求平均分、中位數(shù)、計算方差和標(biāo)準(zhǔn)差、統(tǒng)計優(yōu)秀率及格率等方式進(jìn)行。對于很多教務(wù)工作者來說,數(shù)據(jù)挖掘技術(shù)是一個更多的運(yùn)用在商業(yè)領(lǐng)域的、離教務(wù)管理很遙遠(yuǎn)的東西。其實在美國等發(fā)達(dá)國家,數(shù)據(jù)挖掘技術(shù)早已走進(jìn)了教務(wù)工作,成為了教務(wù)工作人員對學(xué)生
24、成績進(jìn)行分析的重要手段。有一些名校甚至擁有一支數(shù)據(jù)挖掘技術(shù)方面的專業(yè)團(tuán)隊來對學(xué)生成績進(jìn)行分析。這些專業(yè)的分析結(jié)果不僅為學(xué)校改進(jìn)教學(xué)工作提供了重要的參考依據(jù),也為學(xué)生選擇選修課和今后的發(fā)展方向提供了極大的便利。第二章第二章 相關(guān)技術(shù)相關(guān)技術(shù)2.12.1 相關(guān)數(shù)據(jù)挖掘知識理論相關(guān)數(shù)據(jù)挖掘知識理論2.1.12.1.1 數(shù)據(jù)挖掘數(shù)據(jù)挖掘數(shù)據(jù)挖掘(Data mining),又譯為資料探勘、數(shù)據(jù)采礦。它是數(shù)據(jù)庫知識發(fā)現(xiàn)(Knowledge-Discovery in Databases, KDD)中的一個步驟。數(shù)據(jù)挖掘一般是指從大量的數(shù)據(jù)中通過算法搜索隱藏于其中信息的過程。數(shù)據(jù)挖掘通常與計算機(jī)科學(xué)有關(guān),并通
25、過統(tǒng)計、在線分析處理、情報檢索、機(jī)器學(xué)習(xí)、專家系統(tǒng)(依靠過去的經(jīng)驗法則)和模式識別等諸多方法來實現(xiàn)上述目標(biāo)。數(shù)據(jù)挖掘是目前人工智能技術(shù)和數(shù)據(jù)庫領(lǐng)域的研究前沿。數(shù)據(jù)挖掘是指從海量數(shù)據(jù)中發(fā)現(xiàn)出隱含在表象之下的、不為人所知的并有一定價值的信息的過程。數(shù)據(jù)挖掘的實質(zhì)是一種決策支持過程,它主要基于人工智能、模式識別、統(tǒng)計學(xué)等相關(guān)技術(shù),分析規(guī)模龐大的數(shù)據(jù),從中找出某種規(guī)律并做出歸納性的推理,幫助決策者提高決策的準(zhǔn)確性。數(shù)據(jù)準(zhǔn)備、尋找規(guī)律和規(guī)律表示是數(shù)據(jù)挖掘的三個基本步驟。數(shù)據(jù)準(zhǔn)備是指從數(shù)據(jù)源中選取相關(guān)的數(shù)據(jù)并生成可用于數(shù)據(jù)挖掘工作的數(shù)據(jù)集;尋找規(guī)律是指通過一定方法將數(shù)據(jù)集中所隱含的規(guī)律挖掘出來;規(guī)律表示是
26、指以用戶容易理解的方式(尤其是那些并不熟悉數(shù)據(jù)挖掘技術(shù)的用戶)將挖掘出的規(guī)律呈現(xiàn)給用戶。數(shù)據(jù)挖掘有填補(bǔ)缺失值,過濾噪聲點、關(guān)聯(lián)規(guī)則挖掘、分類、聚類、異常分析等任務(wù)。近年來,“大數(shù)據(jù)”成為了一個非常流行的詞匯,這意味著數(shù)據(jù)挖掘技術(shù)已經(jīng)進(jìn)入了我們生活的方方面面。這其中最為主要的原因是我們身處在信息爆炸的時代,全世界每天產(chǎn)生的信息都以指數(shù)級增長,我們每天所接觸的信息甚至超過幾百年前一個人一生所能接觸到的信息的總和。如果不對數(shù)據(jù)進(jìn)行處理,如此海量的數(shù)據(jù)對于人類來說就是電子垃圾。通過數(shù)據(jù)挖掘技術(shù),人們可以將原本無法處理的海量數(shù)據(jù)轉(zhuǎn)變?yōu)橛杏们矣邢薜男畔⒑椭R,充分發(fā)揮信息的價值。2.1.22.1.2 關(guān)聯(lián)
27、規(guī)則關(guān)聯(lián)規(guī)則關(guān)聯(lián)規(guī)則是指大量數(shù)據(jù)中項集之間有趣的關(guān)聯(lián)或相關(guān)聯(lián)系。如果兩項或多項屬性之間存在關(guān)聯(lián),那么其中一項的屬性就可以依據(jù)其他屬性值進(jìn)行預(yù)測。關(guān)聯(lián)規(guī)則挖掘在數(shù)據(jù)挖掘中是一個重要的研究課題,一直是業(yè)界的研究熱點?!捌【婆c尿布”的故事是對關(guān)聯(lián)規(guī)則挖掘的生動闡釋。世界著名的沃爾瑪超市在一次對原始銷售數(shù)據(jù)的分析中意外發(fā)現(xiàn):和尿布一起銷售最多的商品竟然是啤酒!按照人們的常規(guī)思維,和尿布一起銷售的應(yīng)該是奶粉奶瓶一類的嬰兒用品,尿布和啤酒可謂風(fēng)馬牛不相及。但沃爾瑪超市的工作人員在運(yùn)用數(shù)據(jù)挖掘技術(shù)對銷售信息進(jìn)行分析后,成功揭示了 “啤酒與尿布”的內(nèi)在聯(lián)系:在美國,很多男士下班之后經(jīng)常要遵照太太的指示去超市去
28、給孩子購買尿布。而他們其中三到四成的人會在同時為自己購買一些啤酒。若不是借助了數(shù)據(jù)挖掘技術(shù),很難想象沃爾瑪能夠在海量的銷售信息中發(fā)現(xiàn)這一規(guī)律。Apriori 算法是一種應(yīng)用最為廣泛的統(tǒng)計關(guān)聯(lián)規(guī)則頻繁項集的算法,其核心是基于兩階段頻集思想的遞歸算法。在 Apriori 算法中,所有大于最小支持度的集都稱為頻繁項集。該算法的基本思想是:首先找出所有的頻繁項集,然后由頻繁項集產(chǎn)生強(qiáng)關(guān)聯(lián)規(guī)則,而這些規(guī)則必須同時滿足最小支持度和最小置信度。由于采用了遞歸的方法,Apriori 算法有兩個主要的缺點:會產(chǎn)生大量的候選集,以及需要對數(shù)據(jù)進(jìn)行多次掃描。在數(shù)據(jù)量大于一定規(guī)模時,Apriori 算法的時間復(fù)雜度會
29、比較驚人。2.1.32.1.3 分類分類分類是一種重要的數(shù)據(jù)分析形式,它提取刻畫重要的數(shù)據(jù)類的模型。這種模型稱為分類器,預(yù)測分類的類標(biāo)號。分類可用于預(yù)測,從歷史數(shù)據(jù)記錄中自動推導(dǎo)出給定數(shù)據(jù)的推廣描述,從而對未來的數(shù)據(jù)進(jìn)行類預(yù)測。分類具有廣泛的應(yīng)用,例如醫(yī)療診斷、信用卡系統(tǒng)的信用分級、圖像模式識別等。決策樹算法是一種非常典型的算法。在決策樹算法中,首先要對數(shù)據(jù)進(jìn)行處理,生成可讀的規(guī)則和決策樹,然后使用決策對其他數(shù)據(jù)進(jìn)行分析和判斷。從本質(zhì)上說,決策樹算法是通過一系列規(guī)則對數(shù)據(jù)進(jìn)行分類的過程。決策樹算法在 20 世紀(jì) 60 年代被首次提出,到了 70 年代末,J Ross Quinlan 提出了 I
30、D3 算法,此算法的目的在于減少樹的深度,但是忽略了葉子數(shù)目的研究。C4.5 算法是其改進(jìn)算法,在缺值處理、剪枝技術(shù)和派生規(guī)則等方面作了較大改進(jìn)。使其既適用于分類問題,又適用于回歸問題。構(gòu)造的決策樹是否精度足夠高、規(guī)模足夠小是評價一個決策樹算法是否優(yōu)秀的關(guān)鍵標(biāo)準(zhǔn)。決策樹構(gòu)造可以分為兩個步驟。首先是由訓(xùn)練樣本集生成決策樹的過程。在大多數(shù)情況下,訓(xùn)練樣本數(shù)據(jù)集是根據(jù)實際需要有歷史的、有一定綜合程度的,用于數(shù)據(jù)分析處理的數(shù)據(jù)集。然后是對決策樹的剪枝,其本質(zhì)是對決策樹進(jìn)行檢驗和校正的過程,主要方法是用新數(shù)據(jù)校驗決策樹生成過程中得出的規(guī)則,并將影響準(zhǔn)確性的分枝剪除。2.1.42.1.4 聚類聚類將物理或
31、抽象對象的集合分成由類似的對象組成的多個類的過程被稱為聚類。由聚類所生成的簇是一組數(shù)據(jù)對象的集合,這些對象與同一個簇中的對象彼此相似,與其他簇中的對象相異?!拔镆灶惥?,人以群分”,在自然科學(xué)和社會科學(xué)中,存在著大量的分類問題。聚類分析又稱群分析,它是研究(樣品或指標(biāo))分類問題的一種統(tǒng)計分析方法。聚類分析起源于分類學(xué),但是聚類不等于分類。聚類與分類的不同在于,聚類所要求劃分的類是未知的。聚類分析內(nèi)容非常豐富,有系統(tǒng)聚類法、有序樣品聚類法、動態(tài)聚類法、模糊聚類法、圖論聚類法、聚類預(yù)報法等。K-means 算法是很典型的基于距離的聚類算法,采用距離作為相似性的評價指標(biāo),即認(rèn)為兩個對象的距離越近,其相
32、似度就越大。該算法認(rèn)為簇是由距離靠近的對象組成的,因此把得到緊湊且獨立的簇作為最終目標(biāo)。k 個初始類聚類中心點的選取對聚類結(jié)果具有較大的影響,因為在該算法第一步中是隨機(jī)的選取任意 k 個對象作為初始聚類的中心,初始地代表一個簇。該算法在每次迭代中對數(shù)據(jù)集中剩余的每個對象,根據(jù)其與各個簇中心的距離將每個對象重新賦給最近的簇。當(dāng)考察完所有數(shù)據(jù)對象后,一次迭代運(yùn)算完成,新的聚類中心被計算出來。如果在一次迭代前后,J 的值沒有發(fā)生變化,說明算法已經(jīng)收斂。DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一個比較有代表
33、性的基于密度的聚類算法。與劃分和層次聚類方法不同,它將簇定義為密度相連的點的最大集合,能夠把具有足夠高密度的區(qū)域劃分為簇,并可在噪聲的空間數(shù)據(jù)庫中發(fā)現(xiàn)任意形狀的聚類。DBSCAN 需要二個參數(shù): 掃描半徑和最小包含點數(shù)。 任選一個未被訪問的點開始,找出與其距離在最小半徑之內(nèi)的所有附近點。如果 附近點的數(shù)量大于等于最小包含點數(shù),則當(dāng)前點與其附近點形成一個簇,并且出發(fā)點被標(biāo)記為已訪問。 然后遞歸,以相同的方法處理該簇內(nèi)所有未被標(biāo)記為已訪問的點,從而對簇進(jìn)行擴(kuò)展。如果 附近點的數(shù)量小于最小包含點數(shù),則該點暫時被標(biāo)記作為噪聲點。如果簇充分地被擴(kuò)展,即簇內(nèi)的所有點被標(biāo)記為已訪問,然后用同樣的算法去處理未
34、被訪問的點。2.22.2 開發(fā)工具的選擇開發(fā)工具的選擇2.2.12.2.1 Eclipse 簡介簡介Eclipse 是一個開源的、基于 Java 技術(shù)的可擴(kuò)展開發(fā)平臺。就 Eclipse 本身而言,它只是一個框架和一組服務(wù),主要用于通過插件組件構(gòu)建開發(fā)環(huán)境。Eclipse 附帶了一個標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(JDK)。雖然對于絕大多數(shù)用戶來說, Eclipse 只是一個 Java 集成開發(fā)環(huán)境(IDE),但 Eclipse 的目標(biāo)卻不僅限于此。Eclipse 還包括插件開發(fā)環(huán)境(Plug-in Development Environment,PDE),這個組件主要針對希望擴(kuò)展 E
35、clipse 的軟件開發(fā)人員,因為它允許他們構(gòu)建與 Eclipse 環(huán)境無縫集成的工具。由于 Eclipse 中的每樣?xùn)|西都是插件,對于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)人員都具有同等的發(fā)揮場所。這種平等和一致性并不僅限于 Java 開發(fā)工具。盡管 Eclipse 是使用 Java 語言開發(fā)的,但它的用途并不限于 Java 語言;例如,支持諸如 C/C+、COBOL、PHP 等編程語言的插件已經(jīng)可用,或預(yù)計將會推出。Eclipse 框架還可作為與軟件開發(fā)無關(guān)的其他應(yīng)用程序類型的基礎(chǔ),比如內(nèi)存管理系統(tǒng)。2.2.22.2.2 Eclipse 的優(yōu)
36、勢的優(yōu)勢Eclipse 是開源軟件。這表明 Eclipse 不僅不收取使用者的任何費(fèi)用,而且使用者還可以通過研究網(wǎng)絡(luò)上、尤其是各大編程論壇上公開的源代碼進(jìn)行學(xué)習(xí)。對于使用者尤其是初學(xué)者來說,世界一流軟件工程師的代碼是一筆非常寶貴的財富,學(xué)習(xí)他們優(yōu)秀的編程風(fēng)格可以幫助初學(xué)者迅速提高自己的編程能力。Eclipse 采用插件機(jī)制,這意味著 Eclipse 是真正可擴(kuò)展并可配置的。對于使用者來說 Eclipse 就好象一間倉庫,你可以隨時在倉庫里存放任何東西,也可以很方便地將不再需要的東西從倉庫中取出來。在互聯(lián)網(wǎng)上有大量免收費(fèi)和免費(fèi)的插件,使用者可以通過合理使用插件極大地簡化編程工作。雖然絕大多數(shù)開發(fā)
37、者僅僅把 Eclipse 作為一個 Java 開發(fā)系統(tǒng),但實際上 Eclipse 支持多種類的開發(fā)語言。從本質(zhì)上講,Eclipse 只提供了一個能夠擴(kuò)展系統(tǒng)功能的最小核心,只要安裝相應(yīng)語言的插件,Eclipse 就可以支持不同的開發(fā)語言。目前,Eclipse 已經(jīng)可以支持 C/C+、 COBOL、PHP、Perl、Python 等多種語言。這顯著降低了多語言程序開發(fā)和程序移植的難度。Eclipse 支持多種開發(fā)環(huán)境,這使得開發(fā)者可以選擇自己最熟悉的平臺來進(jìn)行開發(fā)工作。主流的操作系統(tǒng)都得到了支持,如 Windows、MacOS 和 Linux 等。Eclipse 對每個平臺都有不同的圖形工具包,
38、這使得在 Eclipse 上開發(fā)的程序可以最大限度地適應(yīng)不同開發(fā)環(huán)境的特性。Eclipse 基于業(yè)界領(lǐng)先的 OSGi 規(guī)范。1999 年,Sun Microsystems、IBM、愛立信等等公司首先推出了 OSGi 規(guī)范。其服務(wù)涵蓋:服務(wù)網(wǎng)關(guān)、汽車、移動電話、工業(yè)自動化、建筑物自動化、PDA 網(wǎng)格計算、 娛樂、IDE 等眾多領(lǐng)域。OSGi 規(guī)范以微內(nèi)核形式運(yùn)行,故可以實現(xiàn)熱插拔、動態(tài)改變行為等軟件從業(yè)者夢寐以求的功能。從 3.1 版本開始,Eclipse 果斷放棄了原本已經(jīng)獲得業(yè)界廣泛認(rèn)可的框架,采用 OSGi 作為其架構(gòu)。從 3.2版本開始,Eclipse 提供了基于 OSGi 開發(fā)的支持,
39、開發(fā)者可以利用其開發(fā)基于 OSGi 的系統(tǒng)了。Eclipse 堪稱業(yè)界人機(jī)的標(biāo)桿之作。Eclipse 提供了全新的 SWT/JFace API 界面,全面取代了以往 SWT/Swing 單調(diào)、沉悶的風(fēng)格。方便使用者開發(fā)基于本地的具有豐富圖形界面的應(yīng)用程序,備受廣大軟件開發(fā)工作者的贊譽(yù)。Eclipse 基金會吸收了大量學(xué)術(shù)研究機(jī)構(gòu)、商業(yè)組織,領(lǐng)導(dǎo) Eclipse 的長遠(yuǎn)規(guī)劃和發(fā)展,其先進(jìn)理念使得 Eclipse 始終處于業(yè)界領(lǐng)先地位。綜合這些原因,我選用了 Eclipse 作為開發(fā)工具。第三章第三章 系統(tǒng)系統(tǒng)分析分析3.13.1 軟件過程模型軟件過程模型在選擇軟件過程模型時,首先考慮本系統(tǒng)的需求
40、較為明確且不易發(fā)生變更,因此在開發(fā)初期選擇了瀑布模型作為過程模型。瀑布模型廣泛應(yīng)用于軟件項目的開發(fā)中,該模型將軟件開發(fā)過程劃分成描述、設(shè)計、開發(fā)有效性驗證等界限分明且獨立的過程階段,適用于需求明確且不易變更的軟件項目。但在開發(fā)的過程中,由于本人的需求分析能力有限,對任務(wù)書的需求分析工作做得不夠充分,需要經(jīng)常和導(dǎo)師討論需求,導(dǎo)致需求變更較為頻繁,需求分析階段過分拉長。而且在學(xué)院和導(dǎo)師需要經(jīng)常檢查進(jìn)度的情況下,瀑布模型顯然是不適當(dāng)?shù)?,因此改用了增量式開發(fā)模型。增量式開發(fā)的優(yōu)點是可以很快開發(fā)出一個具有部分功能的、可使用的版本,而且適應(yīng)需求變更的成本也比較低,比較適合本系統(tǒng)的開發(fā)工作。結(jié)合本系統(tǒng)的任務(wù)
41、目標(biāo)和學(xué)校的進(jìn)度要求,我將本系統(tǒng)的開發(fā)工作分為 4 個版本來進(jìn)行。第一個最初始的版本實現(xiàn)了對數(shù)據(jù)的預(yù)處理和關(guān)聯(lián)規(guī)則的挖掘功能。第二個版本即中期檢查的版本在第一個版本的基礎(chǔ)上實現(xiàn)了分類功能和文件導(dǎo)入數(shù)據(jù)功能。第三個版本在之前版本的基礎(chǔ)上增加了聚類功能,截止到此版本,主要的功能算法已經(jīng)實現(xiàn)。第四個版本也就是最終的版本,為系統(tǒng)設(shè)計了交互界面。圖 3-1 增量式開發(fā)模型圖在系統(tǒng)開發(fā)的過程中,描述和開發(fā)工作交織在一起。每完成一個模塊或一個版本,都會進(jìn)行有概要描述開發(fā)有效性驗證描述并行活動版本 2版本 3版本 4版本 1效性驗證。通過驗證后才會進(jìn)入下一個模塊或版本的開發(fā)3.23.2 需求分析需求分析3.2
42、.13.2.1 用例圖用例圖圖 3-2 系統(tǒng)用例圖系統(tǒng)的使用者教務(wù)管理人員對系統(tǒng)有包括導(dǎo)入文件、數(shù)據(jù)預(yù)處理、關(guān)聯(lián)規(guī)則挖掘、分類、聚類和導(dǎo)出文件在內(nèi)的六大需求3.2.23.2.2 需求的結(jié)構(gòu)化描述需求的結(jié)構(gòu)化描述使用結(jié)構(gòu)化自然語言來描述需求,保留了自然語言在表達(dá)能力和易懂性方面的優(yōu)勢,讓沒有專業(yè)背景的用戶也能比較容易的理解需求;同時也約束了描述的一致性,降低了產(chǎn)生歧義的可能性。表 3-1 文件導(dǎo)入用例用例 1名稱文件導(dǎo)入功能將數(shù)據(jù)從文件導(dǎo)入系統(tǒng)中以備各算法調(diào)用描述將文件中的數(shù)據(jù)存入系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)中輸入學(xué)生的姓名,各門課程的成績來源數(shù)據(jù)文件輸出學(xué)生的姓名,各門課程的成績目的地系統(tǒng)的所定義的數(shù)據(jù)結(jié)構(gòu)
43、行動系統(tǒng)為每一個學(xué)生初始化一個結(jié)構(gòu)體,分別讀取每個學(xué)生的姓名和成績數(shù)據(jù),并存儲到結(jié)構(gòu)體中對應(yīng)的成員里前置條件結(jié)構(gòu)體已被定義,文件內(nèi)數(shù)據(jù)的數(shù)據(jù)類型和順序合法后置條件數(shù)據(jù)被完整存入結(jié)構(gòu)體中此用例屬于文件導(dǎo)入需求表 3-2 數(shù)據(jù)預(yù)處理用例用例 2名稱數(shù)據(jù)預(yù)處理功能對導(dǎo)入系統(tǒng)的學(xué)生數(shù)據(jù)進(jìn)行預(yù)處理描述將每門課程的最高分和最低分拉平,并對其他成績進(jìn)行等比例縮放輸入學(xué)生各門課程的成績來源結(jié)構(gòu)體輸出學(xué)生各門課程的新成績目的地結(jié)構(gòu)體行動系統(tǒng)從數(shù)據(jù)結(jié)構(gòu)中讀取全體學(xué)生各門課程的成績,通過算法找出其中的最高分和最低分。分別將其他每一門課程的最高分和最低分乘以一個比例系數(shù),使之與該最高分和最低分相等,并對該門課程內(nèi)的其
44、他成績均進(jìn)行乘以該比例系數(shù)的操作。前置條件數(shù)據(jù)已被成功導(dǎo)入結(jié)構(gòu)體中后置條件輸出新的學(xué)生成績到結(jié)構(gòu)體中此用例屬于數(shù)據(jù)預(yù)處理需求表 3-3 判斷相關(guān)性用例用例 3名稱相關(guān)性功能計算學(xué)生成績間的相關(guān)性描述將學(xué)生各門功課的成績轉(zhuǎn)化為每兩門課程成績的相關(guān)性輸入學(xué)生各門課程的成績來源結(jié)構(gòu)體輸出成績相關(guān)課程的序號目的地關(guān)聯(lián)統(tǒng)計數(shù)組行動對比學(xué)生每兩門課程的成績,按照一定標(biāo)準(zhǔn)判斷成績是否相關(guān)。若相關(guān)則將這兩門課程的編號輸入到相應(yīng)的數(shù)據(jù)結(jié)構(gòu)中存儲起來前置條件數(shù)據(jù)預(yù)處理完畢后置條件生成課程相關(guān)性數(shù)據(jù)此用例屬于關(guān)聯(lián)規(guī)則需求表 3-4 統(tǒng)計頻繁項用例用例 4名稱頻繁項功能找出相關(guān)性數(shù)據(jù)中的頻繁項描述統(tǒng)計相關(guān)性數(shù)據(jù)中各項
45、的重復(fù)次數(shù)輸入課程相關(guān)性數(shù)據(jù)來源結(jié)構(gòu)體輸出成績相關(guān)聯(lián)的課程目的地關(guān)聯(lián)規(guī)則數(shù)組行動記錄相關(guān)性數(shù)據(jù)中各項的重復(fù)次數(shù),用重復(fù)次數(shù)除以學(xué)生數(shù)得到每個相關(guān)性的置信度,輸出大于最小置信度的數(shù)據(jù)前置條件課程相關(guān)性數(shù)據(jù)已生成后置條件生成關(guān)聯(lián)規(guī)則并輸出此用例屬于關(guān)聯(lián)規(guī)則需求表 3-5 判斷高風(fēng)險學(xué)生用例用例 5名稱掛科學(xué)生功能輸出掛科風(fēng)險較高的學(xué)生描述分析學(xué)生現(xiàn)有成績(平均分,是否掛科),輸出掛科風(fēng)險較高的學(xué)生輸入學(xué)生的姓名,各門課程的成績來源結(jié)構(gòu)體輸出學(xué)生的姓名目的地高風(fēng)險學(xué)生數(shù)組行動統(tǒng)計學(xué)生是否有過掛科經(jīng)歷,計算沒有掛科經(jīng)歷學(xué)生的平均分,輸出有掛科經(jīng)歷和平均分小于一定值的學(xué)生前置條件數(shù)據(jù)已被成功導(dǎo)入結(jié)構(gòu)體中
46、后置條件學(xué)生被成功分類并輸出掛科風(fēng)險較高的學(xué)生此用例屬于分類需求表 3-6 判斷高風(fēng)險課程用例用例 6名稱高風(fēng)險課程功能輸出掛科風(fēng)險較高的課程描述分析所有課程的掛科風(fēng)險,輸出掛科風(fēng)險較高的課程輸入學(xué)生各門課程的成績來源結(jié)構(gòu)體輸出課程名目的地高風(fēng)險課程數(shù)組行動計算所有課程的掛科率,若某課程的掛科率高于一定值,則認(rèn)定該課程為高風(fēng)險課程,輸出所有高風(fēng)險課程前置條件數(shù)據(jù)已被成功導(dǎo)入結(jié)構(gòu)體中后置條件課程被成功分類并輸出高風(fēng)險課程此用例屬于分類需求表 3-7 聚類用例用例 7名稱聚類功能對學(xué)生進(jìn)行聚類描述識別出噪聲點,將學(xué)生劃入不同的簇,輸出聚類結(jié)果輸入學(xué)生的姓名,各門課程的成績來源結(jié)構(gòu)體輸出學(xué)生各門課程
47、的新成績目的地聚類數(shù)組行動系統(tǒng)依次讀取每個學(xué)生的信息,通過聚類算法判斷其是否為噪聲點,對不是噪聲點的學(xué)生判斷其應(yīng)該被歸入哪一個簇,直到所有學(xué)生都判斷完畢前置條件數(shù)據(jù)已被成功導(dǎo)入結(jié)構(gòu)體中后置條件學(xué)生被成功聚類并輸出聚類結(jié)果此用例屬于聚類需求表 3-8 導(dǎo)出文件用例用例 8名稱導(dǎo)出文件功能將挖掘結(jié)果導(dǎo)出至文件描述將各數(shù)組中存儲的挖掘結(jié)果導(dǎo)出至文件輸入文件地址,挖掘結(jié)果來源各數(shù)組輸出挖掘結(jié)果目的地文件行動系統(tǒng)創(chuàng)建文件,依次讀取每個數(shù)組內(nèi)的信息,輸出到文件前置條件挖掘結(jié)果成功存入數(shù)組內(nèi)后置條件文件成功生成并寫入數(shù)據(jù) 此用例屬于導(dǎo)出文件需求第四章第四章 系統(tǒng)設(shè)計與實現(xiàn)系統(tǒng)設(shè)計與實現(xiàn)4.14.1 系統(tǒng)概要
48、設(shè)計系統(tǒng)概要設(shè)計4.1.14.1.1 系統(tǒng)體系結(jié)構(gòu)系統(tǒng)體系結(jié)構(gòu)本系統(tǒng)使用容器體系結(jié)構(gòu)。當(dāng)一個系統(tǒng)需要生成大量數(shù)據(jù)并持久保存時,一般使用容器體系結(jié)構(gòu)。容器體系結(jié)構(gòu)的優(yōu)點是各個功能組件是相互獨立的,它們無需知道其他組件的存在,在運(yùn)行時也不會受到其他組件的影響。一個組件的變更可以傳播到其他所有的組件,所有數(shù)據(jù)可以得到一致的管理。具體到本系統(tǒng)來說,采用容器體系結(jié)構(gòu)可以使挖掘結(jié)果持久保存,可以比較方便的管理學(xué)生信息,各組件之間交互性不強(qiáng),可避免因一個組件發(fā)生錯誤影響到其他組件的功能。圖 4-1 學(xué)生成績分析系統(tǒng)體系結(jié)構(gòu)圖系統(tǒng)包括導(dǎo)入數(shù)據(jù)、數(shù)據(jù)預(yù)處理、關(guān)聯(lián)規(guī)則、分類和聚類五個組件,組件間相互平行互不干涉。
49、所有組件共享的學(xué)生信息和各組件生成的挖掘結(jié)果存放在項目容器中,這提高了數(shù)據(jù)傳輸?shù)男?。各組件下有若干子功能模塊 4.1.24.1.2 系統(tǒng)數(shù)據(jù)結(jié)構(gòu)系統(tǒng)數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體數(shù)組記錄學(xué)生信息,每一個結(jié)構(gòu)體代表一個學(xué)生。每個結(jié)構(gòu)體內(nèi)有用字符串?dāng)?shù)組存儲的學(xué)生姓名,用一維整數(shù)數(shù)組存儲的學(xué)生成績(若學(xué)生成績保留小數(shù)可改用浮點數(shù)數(shù)組) ,用整數(shù)存儲的平均分。還可根據(jù)各學(xué)校的具體需求加入性別、學(xué)號、學(xué)院、專業(yè)等信息。采用二維整數(shù)數(shù)組記錄關(guān)聯(lián)規(guī)則,二維數(shù)組的行數(shù)和列數(shù)與課程數(shù)相等,數(shù)組中的每個元素代表其行標(biāo)和列標(biāo)所對應(yīng)的兩門課程的關(guān)聯(lián)。項目容器交互器聚類器分類器關(guān)聯(lián)規(guī)則挖掘器數(shù)據(jù)預(yù)處理器導(dǎo)入文件生成規(guī)則分析關(guān)聯(lián)計
50、算最值縮放數(shù)據(jù)計算縮放比例學(xué)生分類課程分類識別噪聲點生成簇學(xué)生信息關(guān)聯(lián)規(guī)則分類結(jié)果聚類結(jié)果人機(jī)交互導(dǎo)出文件采用一維整數(shù)數(shù)組記錄高風(fēng)險課程的編號。采用二維字符串?dāng)?shù)組記錄高風(fēng)險學(xué)生和和聚類結(jié)果,每一行對應(yīng)一名學(xué)生。4.24.2 系統(tǒng)系統(tǒng)詳細(xì)設(shè)計詳細(xì)設(shè)計4.2.14.2.1 文件導(dǎo)入數(shù)據(jù)文件導(dǎo)入數(shù)據(jù)圖 4-2 文件導(dǎo)入數(shù)據(jù)時序圖首先用戶將導(dǎo)入數(shù)據(jù)文件的請求和數(shù)據(jù)文件的地址發(fā)送給 openfile,openfile 對系統(tǒng)中已經(jīng)定義的結(jié)構(gòu)體進(jìn)行初始化。初始化完成后,openfile 打開文件并開始從文件中讀取數(shù)據(jù),并存入結(jié)構(gòu)體中。循環(huán)這一過程,直到所有的數(shù)據(jù)都被存入了結(jié)構(gòu)體中,openfile 關(guān)閉文
51、件,并向用戶輸出“成功導(dǎo)入文件”4.2.24.2.2 數(shù)據(jù)預(yù)處理數(shù)據(jù)預(yù)處理本系統(tǒng)所采用的數(shù)據(jù)為大學(xué)生各門課程的考試成績,均為百分制,數(shù)據(jù)的準(zhǔn)確性、完整性、一致性和可信性都比較高,無需涉及填補(bǔ)缺失值和過濾噪聲點等處理,數(shù)據(jù)預(yù)處理的工作較為簡單??紤]到不同課程間難易程度存在區(qū)別和閱卷教師存在主觀差異,需對數(shù)據(jù)做出一定處理。例如全體學(xué)生中課程 A 的最高分為 95 分,最低分為 55 分,課程 B 的最高分為 85 分,最低分為 35 分,應(yīng)對課程 A 和課程 B 的成績進(jìn)行一定處理,使得 A 和 B 的最高分處在同一成績區(qū)間,最低分也處在同一成績區(qū)間。按照一些教育領(lǐng)域中用百分比(即排名)替代分?jǐn)?shù)來
52、表述成績是一個可行的辦法,但這種方法有其一定的局限性。對于選拔性考試來說,這種辦法是非常合理的,因為選拔性考試只按照成績高低排序擇優(yōu)錄取,而無需考慮這些成績之間差距的大小。但對于本系統(tǒng)涉及到的算法來說,成績間的差值顯然是不能忽略的。若采用排名的方式代替分?jǐn)?shù)表述成績,在一些特定情況下會對產(chǎn)生較大誤差。如某一門課程中,有 5 名學(xué)生得分 82 分,10 名學(xué)生得分 81 分,1 名學(xué)生得分 80 分。則得到 82 分的學(xué)生和得到 80 分的學(xué)生之間的相差 15 個名次,顯然遠(yuǎn)大于兩者之間 2 分的分?jǐn)?shù)差。故對成績的預(yù)處理采用的方法為選取一門課程的最高分和最低分為標(biāo)準(zhǔn),將其他課程所有學(xué)生的成績等比例
53、放大或縮小,使得所有課程的最高分與最低分一致,消除課程難度的客觀因素和閱卷教師的主觀因素對成績的影響。一些國外大學(xué)用 ABCD 的方式取代百分制對學(xué)生進(jìn)行評價,當(dāng)學(xué)生成績中存在不同評價標(biāo)準(zhǔn)的成績時,應(yīng)對成績進(jìn)行處理,統(tǒng)一標(biāo)準(zhǔn)??紤]到絕大部分國內(nèi)大學(xué)所有課程均采用百分制對學(xué)生進(jìn)行評價,故本系統(tǒng)不再進(jìn)行成績轉(zhuǎn)換功能的開發(fā)。圖 4-3 數(shù)據(jù)預(yù)處理時序圖用戶向 pretreatment 發(fā)出數(shù)據(jù)預(yù)處理請求,pretreatment 從結(jié)構(gòu)體中讀取學(xué)生成績信息并進(jìn)行預(yù)處理,預(yù)處理結(jié)束后將新的成績再存入結(jié)構(gòu)體中4.2.34.2.3 關(guān)聯(lián)規(guī)則關(guān)聯(lián)規(guī)則關(guān)聯(lián)規(guī)則功能模塊的關(guān)鍵點有兩個,一是用什么樣的標(biāo)準(zhǔn)判斷兩門
54、課程是否存在關(guān)聯(lián),二是如何挖掘各門課程的關(guān)聯(lián)規(guī)則。對于如何判斷兩門課程存在關(guān)聯(lián)的問題,從現(xiàn)有的數(shù)據(jù)來看,用兩門課程成績的接近程度來判斷是否存在關(guān)聯(lián)是一個比較合理的方式。判斷兩門課程的成績是否接近有等寬和等深兩種方式。等寬的方式為將所有學(xué)生各門課程的成績按照一定的寬度分為若干個區(qū)間(根據(jù)大多數(shù)高校的計分制度,本系統(tǒng)按照每 10 分一個區(qū)間將成績分為10 個區(qū)間),處在一個成績區(qū)間內(nèi)的課程即認(rèn)為成績足夠接近存在關(guān)聯(lián)。但這種判斷標(biāo)準(zhǔn)有一定缺陷,在一些特定情況下會產(chǎn)生較大的誤差。例如某學(xué)生課程 A 的成績?yōu)?1 分,課程 B 的成績?yōu)?89 分,課程 C 的成績?yōu)?81 分。按照等寬的判斷標(biāo)準(zhǔn),課程
55、B和課程 C 存在關(guān)聯(lián),課程 A 與課程 B 和 C 均無關(guān)聯(lián)。但是按照我們的常識來講,毫無疑問課程 A 和課程 B 的成績更為接近,二者僅相差 2 分,應(yīng)該認(rèn)定為存在關(guān)聯(lián)。導(dǎo)致這種現(xiàn)象的原因是衡量兩門課程是否接近應(yīng)該依據(jù)兩門課程成績的差值,無需考慮成績的絕對值。而采用等寬方式判斷成績是否接近的方法無疑會受到成績絕對值的影響。之后我嘗試采用等深的方式判斷課程關(guān)聯(lián),在一定程度上避免絕對值影響判斷的問題,但是又帶來了新的問題,即如何劃定深度。由于各高校在計算考試成績時無需考慮成績差值,所以在這方面無經(jīng)驗和先例可循。若采用動態(tài)劃定深度的方式(即根據(jù)每個學(xué)生最高分和最低分之間的差值劃定不同的深度)可在
56、一定程度上得到比較合理的結(jié)果,但此種方法缺乏教育學(xué)理論的支持,僅作為參考。綜上所述,本系統(tǒng)采取應(yīng)用較為廣泛、能為大多數(shù)人所接受的等寬的方式判斷兩門課程的成績是否接近。本系統(tǒng)采用 Apriori 算法挖掘各門課程的關(guān)聯(lián)規(guī)則。Apriori 算法是應(yīng)用最為廣泛的挖掘布爾關(guān)聯(lián)規(guī)則頻繁項集的算法。Apriori 算法也有一定的缺陷,主要表現(xiàn)在可能產(chǎn)生大量的候選集,以及可能需要重復(fù)掃描數(shù)據(jù)庫。但是對于應(yīng)用于普通高校的學(xué)生成績分析系統(tǒng)來說,其課程數(shù)和學(xué)生數(shù)都是很有限的,現(xiàn)代高性能計算機(jī)可以迅速完成上述工作。因此對于本系統(tǒng)來說,Apriori 算法的一些固有缺陷是完全可以接受的。圖 4-4 關(guān)聯(lián)規(guī)則挖掘時序
57、圖用戶向 associationrules 發(fā)出挖掘關(guān)聯(lián)規(guī)則請求,associationrules 從結(jié)構(gòu)體中讀取學(xué)生成績信息并進(jìn)行分析關(guān)聯(lián),處理完成后將關(guān)聯(lián)數(shù)據(jù)存入關(guān)聯(lián)數(shù)組,然后統(tǒng)計關(guān)聯(lián)數(shù)組中的頻繁項,生成關(guān)聯(lián)規(guī)則并存入關(guān)聯(lián)規(guī)則數(shù)組4.2.44.2.4 分類分類本系統(tǒng)采用決策樹算法來實現(xiàn)分類預(yù)測功能,主要預(yù)測全體在校學(xué)生是否有掛科風(fēng)險,以及掛科風(fēng)險比較高的課程。在現(xiàn)有數(shù)據(jù)條件下,決策樹選取該學(xué)生已經(jīng)完成學(xué)習(xí)的課程中是否有掛科和所有已經(jīng)完成學(xué)習(xí)的課程的平均成績是否低于一個特定值來作為測試屬性。如果某學(xué)生有過掛科經(jīng)歷,說明該學(xué)生在學(xué)習(xí)態(tài)度、學(xué)習(xí)方法或?qū)W習(xí)能力方面存在一定問題,那么他在今后學(xué)習(xí)其他
58、課程的過程中會比其他學(xué)生掛科的可能性更大,這種因果聯(lián)系符合一般人的認(rèn)知,因此選擇是否有掛科經(jīng)歷作為一個測試屬性。若某學(xué)生各門課程的成績較低(平均分低于某一特定值),他顯然比其他成績更好的學(xué)生要承擔(dān)更多的掛科風(fēng)險,因此選擇平均成績是否低于一個特定值來作為另一個測試屬性。本算法將某一課程以畢業(yè)學(xué)生的掛科率作為衡量該課程是否為高風(fēng)險課程的測試屬性,將掛科率高于某一特定值的課程作為高風(fēng)險課程,此參數(shù)可由教務(wù)工作人員根據(jù)本專業(yè)的課程難度和生源水平等實際情況進(jìn)行調(diào)整。圖 4-5 分類時序圖用戶向 classify 發(fā)出分類請求,classify 從結(jié)構(gòu)體中讀取學(xué)生成績信息并進(jìn)行分析處理,將高風(fēng)險學(xué)生的姓名
59、存入高風(fēng)險學(xué)生數(shù)組中并輸出給用戶。學(xué)生分類完成后,classify 對課程進(jìn)行分析,將高風(fēng)險課程的名字存入高風(fēng)險課程數(shù)組中并輸出給用戶4.2.54.2.5 聚類聚類本系統(tǒng)使用聚類算法對學(xué)生進(jìn)行聚類,根據(jù)聚類結(jié)果分析學(xué)生在校表現(xiàn)和成績之間的關(guān)聯(lián)性。K-means 算法是數(shù)據(jù)挖掘領(lǐng)域應(yīng)用最為廣泛的聚類算法,采用距離作為相似性的評價指標(biāo),即認(rèn)為兩個對象的距離越近,其相似度就越大。該算法認(rèn)為簇是由距離靠近的對象組成的,因此把得到緊湊且獨立的簇作為最終目標(biāo)。從這些方面來看,K-means 算法是比較符合本系統(tǒng)對于聚類算法的要求的。但 K-means 算法同樣有一些固有缺點。首先是 K-means 算法需
60、要不斷地進(jìn)行樣本分類調(diào)整,不斷地計算調(diào)整后的新的聚類中心,因此當(dāng)數(shù)據(jù)量非常大時,算法的時間開銷是非常大的。不過出于和采用 Apriori 算法同樣的理由,時間復(fù)雜度高的缺點可以忽略。其次,在 K-means 算法中 K 是事先給定的,這個 K 值的選定是非常難以估計的。很多時候,事先并不知道給定的數(shù)據(jù)集應(yīng)該分成多少個類別才最合適。在本系統(tǒng)中,被聚類的對象是學(xué)生,即使對于同一所高校甚至是同一專業(yè)的學(xué)生來說,學(xué)生間的個體差異也是很大的,因此無法事先估算出 K 值。而且在使用 K-means 算法時,首先需要根據(jù)初始聚類中心來確定一個初始劃分,然后對初始劃分進(jìn)行優(yōu)化,且初始聚類中心的選擇對聚類結(jié)果的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 水泥供應(yīng)協(xié)議書
- 民用航空器維修人員執(zhí)照考試的關(guān)聯(lián)知識與試題及答案
- 朋友相處協(xié)議書
- 初級審計師考試面臨的心理挑戰(zhàn)及應(yīng)對辦法試題及答案
- 有償轉(zhuǎn)讓協(xié)議書
- 造林補(bǔ)充合同和補(bǔ)充協(xié)議
- 配件廠合伙合同協(xié)議
- 車輛交強(qiáng)險合同協(xié)議
- 燈具拆除協(xié)議書
- 會計基本原理試題及答案
- CJT244-2016 游泳池水質(zhì)標(biāo)準(zhǔn)
- 納稅人(扣繳義務(wù)人)基礎(chǔ)信息報告表
- 泛血管疾病抗栓治療中國專家共識(2024版)
- 幼兒園中班數(shù)學(xué)課件:《理解數(shù)字符號的意義-查查路線》
- 廣東省深圳市27校2022年中考一模英語試題(無答案無聽力部分)
- 《紅樓夢》知識點
- 聚苯乙烯樹脂回收市場現(xiàn)狀研究分析與發(fā)展前景預(yù)測報告
- 西北政法大學(xué)課件模板
- (正式版)SHT 3225-2024 石油化工安全儀表系統(tǒng)安全完整性等級設(shè)計規(guī)范
- 2023年高考政治真題模擬試題專項匯編:邏輯與思維(含答案)【新教材專用】
- 湖北省宜昌市2023年中考?xì)v史試卷(附真題答案)
評論
0/150
提交評論