王軍 趙穎珺

摘 要: 隨著大數據時代來臨,數據挖掘技術成為全球研究的熱點,在數據挖掘過程中,經常會用到統計學方面的知識、理論和統計思想。與此同時,對數據挖掘技術的研究也促進著統計學的研究和發展。因此,培養具有統計思維的程序設計人才正是培養應用型人才的客觀要求。本文分析了數據挖掘與統計思想之間的關聯,并提出在培養程序設計人才過程中滲透統計思維的三個具體方法,從而加強程序設計人才統計思維的培養,提高人才培養的質量。
關鍵詞: 數據挖掘; 統計思維; 應用型人才; 分析方法
中圖分類號:TP311 文獻標志碼:A 文章編號:1006-8228(2018)09-96-03
Abstract: With the coming of big data era, data mining has become a hot research topic in the global. During the data mining, the knowledge, theory and thought of statistics are often used. At the same time, the research of data mining also stimulates the research and development of statistics. Therefore, it is the objective requirement of cultivating application-oriented talents to train the programming talents with statistical thinking. In this paper, the relationship between the data mining and the statistical thinking is analyzed, and three specific methods to infiltrate the statistics thinking in the training of programming talents are put forward, so as to strengthen the training of the statistical thinking of program design talents and improve the quality of personnel training.
Key words: data mining; statistical thinking; application-oriented talent; analysis method
0 引言
隨著智能終端、云計算、移動互聯網日新月異的發展,數據正以驚人的速度產生,尤其是大企業如電信運營商、電子商務、互聯網公司、金融、股市等生產并掌握著PB或ZB級數據,大數據正在改變著人們的思維、擁有無限價值的潛能。如今,衡量企業的核心資產能力和價值能力都是以其管理大數據的能力為依據[1]。如何從大規模數據中挖掘出有價值的數據,現在成為全球研究的熱點。
1 相關技術介紹
1.1 統計思維
文獻[2]胡敏認為,統計思維是學生獲得統計基礎和基本技能,形成數據分析觀念和隨機思想的思維模式和解決問題的方法,具體包括,具有收集和整理數據的意識,學會分析和解釋數據的方法,并根據數據處理結果做出合理的推斷和決策;體會數據的隨機性和不確定性,統計思維的具體表現是數據的收集、整理、描述、分析和解釋等方面的能力。
1.2 數據挖掘
數據挖掘是指,從存放在數據庫、數據倉庫、互聯網或其他信息庫中大量的、含有噪聲的、未知的和對決策有潛在價值的數據發現有價值知識的過程[3],或者是指,從大量的數據中通過算法搜索隱藏于其中有價值信息的過程,通過統計、在線分析處理、情報檢索、機器學習、專家系統和模式識別等諸多方法來發現知識。研究的目的主要是發現知識、使數據可視化、糾正數據、預測趨勢走向,獲取可用的新穎的數據展現方式,幫助數據所有者理解并開發其使用價值。
數據挖掘的過程就是對觀測到的數據集進行分析,比如回歸分析、預測分析、可視化分析,發現未知的關系和總結。在這個過程中,我們會利用不同的分析方法和分析工具,在海量數據處理過程中進行數學建模和關系發現,這些模型和關系可以輔助決策和預測。
1.3 數據挖掘與統計思維的關系
文獻[4]中詳細介紹了數據挖掘的各個階段的數據挖掘算法所用到的統計學理論和統計分析方法;文獻[5,7]中介紹了在線流數據聚類挖掘算法和并行化加權近鄰傳播聚類挖掘算法;文獻[6]提出了一種基于部分約束信息的大規模數據集EM概率聚類算法等大量運用了概率和數理統計方法。十大經典算法中的K-means算法,介紹了先選擇k個對象,每一個對象初始地代表一簇平均值中心對剩余的對象根據與其各個簇中心的距離,將它賦給最近的簇,然后重新計算每個簇的平均值。這個過程不斷的迭代,直到準則函數收斂。準則函數定義為:
其中,E是準則函數,表示數據集中所有數據點的平均誤差總和,x是空間中的點,表示所給定的數據點,是簇Ci的平均值,準則函數E使得生成的結果簇盡可能地獨立和緊湊。
十大經典算法中的EM算法,介紹把數據的每一個聚類看作是一個高斯分布,這個多維的高斯分布的概率密度函數為:
其中,μh為高斯分布中心,Σh,h=1,2,…,k為協方差,若X為d維列向量,則為d維的列中心向量,Σh為d×d的協方差,密度函數為每一個多維高斯分布設置一個權重系數wh,于是對無標簽數據聚類的過程轉變為估計適合的參數,使得原始待聚類數據的擬然最大,都是用統計學知識和統計分析方法進行數據挖掘。還有更多的數據挖掘算法表明,統計學方法作為數據挖掘的工具在數據挖掘中發揮著不可忽視的作用。數據挖掘過程中無時無刻不是在對數據進行收集、歸類、分析、整理且反復進行。統計思維始終貫穿在數據挖掘的全過程中,數據挖掘過程就是對統計思維的培訓和強化訓練、獲取思維能力的過程,也是統計思維得到應用和創新過程,同時統計思維也指導或引導數據挖掘時思維指向,集中思考采用什么樣的統計方法或統計分析方法才能達到數據挖掘的目的。數據挖掘的過程與統計思維的訓練是相輔相承的,同時還要在統計學或數理統計的學習過程中強化統計思維的訓練,使之不斷地在應用中為數據挖掘提供新的指導思想
2 程序設計人才培養方式的轉變
程序設計是給出解決特定問題程序的過程。程序設計是以某種程序設計語言為工具、以算法為基礎對數據進行處理的過程;程序設計的過程包括分析、設計、編碼、測試和排錯等幾個環節。
人才培養是對人才進行教育、培訓的過程。目標是培養具有良好人文、科學素質和社會責任感,學科基礎扎實,具有自我學習能力、創新精神和創新能力的人才。具體包含以下幾個方面:得到基礎研究和應用研究的訓練,具有扎實的基礎理論知識和實驗技能,動手能力強、綜合素質好;掌握科學的思維方法,具備較強的獲取知識能力,具有探索精神、創新能力和優秀的科學品質。結合時代背景與自己多年教學經驗,本文提出了3個培養具有統計思維的程序設計人才具體思路與方法。
2.1 從純形式的程序設計向概率思維的轉變
日常的程序設計教學過程中,程序設計的學習或教學主要是學習基本的語法規則,程序設計的基本方法和語言的表達能力。實驗或實訓中所給出的問題主要是一些常規性的計算、實際問題的計算機表示、算法的空間復雜度和時間復雜分析、數據在計算機中組織方式和數據輸入、輸出形式等能力進行訓練。在大數據時代,傳統的教學模式不太適應社會或行業或企業對程序設計人員的客觀需求,程序設計人員的培養必須加強統計學或數理統計或統計方法的學習。統計學是數據分析、處理的一門學科。隨機事件、概率分析、統計分析等基礎理論來源于統計學或數理統計。因此在實驗或實訓中加強隨機事件、概率統計方面的問題設計,設計貼近實際、貼近生活的案例。比如:某高速路的流量分析、某交通要道交通阻塞時間段分析、交通事故調查、城市綠化樹苗的成活率等。所以,設計人員必須深入實踐、隨機抽樣、大量實踐,反復驗證,最后通過統計分析有可能提供有價值的方案。堅持在程序設計中以概率事件的問題來驅動和引導程序設計的實訓、訓練,訓練概率思維的思維能力和統計思維的思維能力,調整程序設計人才的思維方式和訓練方法,為數據挖掘培養合格的人才,即大數據時代所需要的人才。
2.2 從常規的確定性研究向隨機性研究的轉變
當前程序設計人員的培養或程序設計教學主要是研究某一特定的軟件架構和實現方法。主要真對數據庫中有結構化的數據進行應用研究。大數據時代產生的數據呈現無結構化或半結構化,且無結構或半結構化數據量與日聚增,這些無結構或半結構化的數據中隱藏著極具價值的知識,這就要求程序設計人員的培養或程序設計教學盡快轉變為對云計算、云存儲、分布存儲、人工智能、機器學習等方面知識進行學習、訓練、研究,從超大量的隨機事件中發現更多隱藏價值的知識。使這知識能為企業、交通、國防、科技、農業等各行各業服務,培養更多數據挖掘人才。
2.3 從演繹歸納向統計思維模式的轉變
數據挖掘過程中,利用統計分析方法對數據挖掘算法進行演繹歸納。從事的主要工作還是進行方法論研究,是在尋找普遍性規律。當然有很多算法應用在實際中,如機器學習算法、神經網絡算法、模式識別算法等。但是數據中存在非常多的數據是無規律可循的,這就要求數據分析人員、數據分析師、程序設計人員及程序研究人員,對產生的數據進行各種各樣大規模實際或實時的統計,當全局數據中的某一類數據統計量達到一定程度后有可能從統計的數據中發現規律或發現隱藏的知識,這種思維是純形式的統計思維,這種統計思維避開了數據挖掘完全依賴統計分析方法的絕對性,即:當找不到統計分析方法時,機械地對全局大數據中的各類數據進行不停的統計和分析,最終也有可能發現更多有價值的規律和隱藏的知識。比如,對全國流通量比較大的一百條高速公路的某路段的轎車的車型、車牌進行幾乎無漏的100天統計,統計結果可能提高用戶對某種轎車的認可程度,特定車輛在某路段出現的頻度、屬地車輛出現的頻度等分析結果,有可能對轎車生產廠家或交通管理或對車輛的追逃提供有價值的線索。
也就是說,傳統的統計方法也有可能對數據挖掘帶來意想不到的結果。從演繹歸納到純形式的統計思維的訓練,當量變達到一定程度時對數據挖掘的研究可能提供很有價值的線索。
3 結束語
客觀世界是充滿概率的,而不是確定的,客觀世界的事物之間是存在某種關聯關系而不是存在某種因果關系的。大數據時代的數據挖掘的價值是尋找數據之間的關聯關系,這種關聯關系能夠幫助決策者正確決策,制定科學的辦法,創造更的價值,推動事物之間能夠協調發展。教學的目的是為社會輸送符合社會需要的人才,大數據時代程序設計人才的培養,不僅要懂得計算機相關的知識,掌握程序設計的基本理論、方法,有設計能力,更主要的是懂得尋找多學科交叉的知識背景,能夠利用統計,分析方法去發現交叉學科的關聯關系,交叉學科間的關聯關系存在著更多的科學價值和應用前景。
數據之間的關聯關系本質上就是事物之間的關聯關系,這種關聯關系是驅動社會發展的原動力。大數據時代對程序設計人才的培養堅持從單純的程序設計向概率思維轉變、從研究問題的確定性向隨機性轉變、從演繹歸納向統計思維轉變。在創新驅動發展的大背景下,培養具有統計思維的程序設計人才,是計算機教育、軟件教育工作者必須承擔的歷史重任和歷史使命。
參考文獻(References):
[1] 陳一昕.大數據的思維革命及算法挑戰[J].信息通信技術,2013.6.
[2] 胡敏.五年級學生統計思維水平的調查研究[D].蘇州大學碩士學位論文,2016.
[3] 范明.孟小峰等.數據挖掘概念與技術[M].機械工業出版社,2006.
[4] 崔廣風.數據挖掘中的統計方法[D].西南石油大學碩士學位論文,2014.
[5] 李維.面向大數據的聚類數據挖掘算法[D].南京郵電大學碩士學位論文,2014
[6] 王玉雷.面向大數據的聚類挖掘算法研究[D].南京郵電大學碩士學位論文,2015.
[7] 孫吉貴.劉杰.趙連宇.聚類算法研究[J].軟件學報,2009.20(5):1337-1348
[8] 李金昌.統計思維研究[M].中國統計出版社,2009.
[9] 李金昌.應用抽樣技術[M].科學出版社,2010.
[10] 張建鋒.陳鋼譯.程序員數學之概率統計[M].人民出版社,2013.