沈榮 張保文
摘要:通過建立多元線性回歸分析模型,采用數(shù)據(jù)挖掘理論中的數(shù)據(jù)分析方法對(duì)蛋糕店月營業(yè)額的特征因素進(jìn)行提取,確定距離車站最近距離和店鋪面積作為特征因素,從而對(duì)蛋糕房月營業(yè)額進(jìn)行預(yù)測。利用Python3.6面向?qū)ο缶幊陶Z言特性,借助其高效、簡潔、靈活等特點(diǎn),結(jié)合Python3.6提供的Padas、matplotlib等模塊提供的強(qiáng)大功能,編程實(shí)現(xiàn)對(duì)判定系數(shù)的計(jì)算,調(diào)用庫函數(shù)對(duì)多元線性回歸模型進(jìn)行訓(xùn)練、評(píng)分、預(yù)測,得到了較為理想的預(yù)測結(jié)果,該預(yù)測結(jié)果在指導(dǎo)投資人在蛋糕房選址上提供了重要的參考價(jià)值。結(jié)果進(jìn)一步表明,利用Python 3.6的高效性和強(qiáng)大的擴(kuò)展性,使得其在多元線性回歸模型及數(shù)據(jù)挖掘領(lǐng)域的其他模型使用中均有極大應(yīng)用潛力。
關(guān)鍵詞: 教學(xué)實(shí)驗(yàn);多元線性回歸;數(shù)據(jù)挖掘;數(shù)據(jù)分析;預(yù)測
中圖分類號(hào):G424 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)10-0254-03
開放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):
The Practice of Regression Prediction Model under Python Teaching Experiment Environment
SHEN Rong1, ZHANG Bao-wen2
(1.School of Information Engineering, Ningxia University,Yinchuan 750021,China; 2.School of Mathematics and Statistics, Ningxia University,Yinchuan 750021,China)
Abstract:By establishing multiple linear regression analysis model, using the method of data analysis in the theory of data mining to extract the characteristics of the cake shop month turnover factors, determine the distance and the station nearest store area as characteristic factor, which month turnover to make predictions on the cake.Using Python3.6 object-oriented programming language features, with the aid of its characteristics such as high efficiency, simple, flexible, combining Python3.6 Padas, matplotlib module provides powerful functions, such as programming to determine the calculation of the coefficient, call library functions for training, score, multiple linear regression model, the ideal prediction results, the predicted results in guiding the investors in the cake room provides an important reference value on the site.The results show that the high efficiency and strong expansibility of Python 3.6 have great potential in the use of multiple linear regression models and other models in data mining.
Key words:Multiple linear regression; data mining; data analysis; forecas
1 引言
多元線性回歸具有模型簡單、預(yù)測結(jié)果準(zhǔn)確、模型解釋能力強(qiáng)的特點(diǎn),在模型預(yù)測中得到了廣泛用用[1-2].在數(shù)據(jù)挖掘及數(shù)據(jù)分析領(lǐng)域,一些企業(yè)案例在引用線性回歸模型做預(yù)測,得到了較理想的結(jié)果,將其作為教學(xué)內(nèi)容實(shí)踐,也取得了良好的效果。
大數(shù)據(jù)時(shí)代數(shù)據(jù)挖掘技術(shù)再次走向高潮,數(shù)據(jù)挖掘(data mining)又稱為數(shù)據(jù)庫中的知識(shí)發(fā)現(xiàn)(KDD),是指從存放在數(shù)據(jù)庫、數(shù)據(jù)倉庫或其他信息庫中的大量數(shù)據(jù)中挖掘出有趣的知識(shí)的過程[3]。
近年來為了推動(dòng)數(shù)據(jù)挖掘在實(shí)際中的應(yīng)用,許多研究者對(duì)數(shù)據(jù)系統(tǒng)的體系結(jié)構(gòu)做了大量的研究工作,一個(gè)合理的數(shù)據(jù)挖掘系統(tǒng)應(yīng)具有以下特點(diǎn)[4]:1)系統(tǒng)功能和工具的完備性;2)系統(tǒng)的可擴(kuò)展性;3)支持多種數(shù)據(jù)源;4)對(duì)大數(shù)據(jù)量的處理能力;5)良好的用戶界面和結(jié)果展示能力[5]。
本文在對(duì)蛋糕房營業(yè)額預(yù)測之前,對(duì)前幾年因店鋪面積、店鋪位置等數(shù)據(jù)進(jìn)行采集,數(shù)據(jù)清洗,去除冗余數(shù)據(jù),選出典型特征值,即店鋪面積和距離最近的車站,利用選區(qū)的特征值進(jìn)行多元線性回歸模型的構(gòu)建,引入機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘領(lǐng)域下強(qiáng)大的面向?qū)ο缶幊陶Z言Python3.6,通過引用函數(shù)庫中的回歸函數(shù)、測試函等對(duì)已構(gòu)建好的蛋糕房的多元線性回歸模型進(jìn)行編程,得到了一個(gè)只需知道蛋糕房面積、距離最近車站的距離即可預(yù)測月營業(yè)額的得二元線性回歸模型,極大地提升了蛋糕房的總體利潤,為投資人是否在開分店的選擇上節(jié)約了大量的時(shí)間、人力物力等成本,該線性回歸模型簡單易用,具有極大的商用價(jià)值,值得推廣。
同時(shí),Python3.6因其平臺(tái)無關(guān)性,語言簡潔、優(yōu)雅的特性,得到了廣大機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘領(lǐng)域人士的青睞。Python 是一種解釋型、面向?qū)ο?、?dòng)態(tài)語義、語法優(yōu)美的腳本語言,自1989 年由Guido Van Rossum設(shè)計(jì)出來,經(jīng)過十余年的發(fā)展,與Tcl、Perl一起成為目前應(yīng)用最廣泛的3 種跨平臺(tái)語言[6],Python還是abques的二次開發(fā)語言[7],提供了多種內(nèi)置數(shù)據(jù)類型,如列表、字典等,可以方便地實(shí)現(xiàn)所需要的功能,同時(shí)還有內(nèi)置的數(shù)據(jù)庫模塊[8]。通過對(duì)象引用機(jī)制來自動(dòng)管理變量內(nèi)存空間的申請和釋放,避免了C 或者 C++中管理指針對(duì)象所帶來的大量工作,大大減少了程序的出錯(cuò)概率,提高了軟件的開發(fā)效率。除此之外,Python 也提供了許多創(chuàng)建和操作三維對(duì)象的模塊,如Py Open GL等,并通過Alice以及Py Game 還可以實(shí)現(xiàn)三維對(duì)象的操作與對(duì)象的顯示[9]。
在這一趨勢下,本文采用最新版本的Python3.6實(shí)現(xiàn)了整個(gè)多元線性回歸模型的建立,對(duì)蛋糕房的月營業(yè)額因受地理位置、面積大小因素的影響進(jìn)行預(yù)測,降低了商家的投入成本,對(duì)其他商家具有重要的參考價(jià)值。
2 特征值提取及模型構(gòu)建
在公司企業(yè)等實(shí)際問題研究中,因變量的變化往往受幾個(gè)重要因素的影響,這時(shí)因變量的變化就要用兩個(gè)或兩個(gè)以上的自變量的影響因素作為自變量來解釋,這就是多元回歸,當(dāng)多個(gè)自變量與因變量之間的關(guān)系是線性的時(shí)候,所進(jìn)行的回歸分析就是多元線性回歸。
目前在數(shù)據(jù)挖掘領(lǐng)域?qū)ι啼仩I業(yè)額的預(yù)測方法很多,多元線性回歸模型由于其方法簡單,模型簡捷易健,預(yù)測費(fèi)用相對(duì)較低等優(yōu)點(diǎn)而應(yīng)用廣泛。
故本文應(yīng)用多元線性回歸模型預(yù)測蛋糕房月營業(yè)額,對(duì)其他商鋪利潤的提升有重要的參考價(jià)值。
2.1 多元線性回歸模型理論
3 Python 3.6下預(yù)測額模型教學(xué)實(shí)踐
3.1 Python 3.6簡介
Python是一種面向?qū)ο?,解釋型,?dòng)態(tài)數(shù)據(jù)類型的高級(jí)程序設(shè)計(jì)語言[10]。目前,國外的一些知名大學(xué)已經(jīng)采用Python教授程序設(shè)計(jì)課程,比如麻省理工學(xué)院已經(jīng)將Python作為授課語言,2018年國內(nèi)首次將Python作為計(jì)算機(jī)等級(jí)考試語言列入考試科目,皆因?yàn)槠湟唬捍a容易讀寫,容易維護(hù)與學(xué)習(xí);其二:支持繼承、多繼承、重載、派生等面向?qū)ο蟪绦蛱匦?,在?nèi)容設(shè)計(jì)上非常貼近教學(xué);其三:Python3.6可以直接在交互式環(huán)境下用命令方式執(zhí)行Python語句,非常方便測試;其四:Python編程語言的發(fā)布是免費(fèi)開源的,有豐富的標(biāo)準(zhǔn)庫和擴(kuò)充庫,無須考慮其他內(nèi)存管理等底層細(xì)節(jié),代碼規(guī)范,可讀性強(qiáng),在數(shù)據(jù)分析方面可以直接進(jìn)行數(shù)學(xué)函數(shù)的調(diào)用,在建立數(shù)學(xué)模型及其編碼上有極大優(yōu)勢,大數(shù)據(jù)分析是大數(shù)據(jù)研究領(lǐng)域的核心內(nèi)容之一[11],通常一幅圖勝過千言萬語人類從外界獲得的信息約有80%以上來自于視覺系統(tǒng)[12,13],而Python做數(shù)據(jù)分析則更占有語言優(yōu)勢。
本文利用Python3.6版本,通過多元線性回歸調(diào)用函數(shù),建立回歸模型,之后調(diào)用函數(shù)對(duì)模型進(jìn)行訓(xùn)練,進(jìn)一步評(píng)分、預(yù)測,實(shí)現(xiàn)了蛋糕房分店因受其地理位置、店鋪大小而影響月營業(yè)額的預(yù)測。
3.2 Python3.6下多元線性回歸模型教學(xué)實(shí)踐
4 結(jié)束語
本文通過對(duì)蛋糕房營業(yè)額的數(shù)據(jù)進(jìn)行采集、清洗,通過數(shù)據(jù)挖掘技術(shù),對(duì)營業(yè)額的特征因素進(jìn)行提取,提取店鋪面積和距離車站最近距離作為特征因素,建立了多元線性回歸模型,實(shí)際上也可以稱為二元回歸模型,利用強(qiáng)大的Python3.6的簡潔、平臺(tái)無關(guān)性等優(yōu)勢,調(diào)用評(píng)分、預(yù)測等庫函數(shù),對(duì)蛋糕房的營業(yè)額進(jìn)行了預(yù)測,得到了較好的回歸模型和預(yù)測結(jié)果,從而為商家在蛋糕房分店地址的選取上提供了有力的理論支持,也可以為其他商家提供重要的參考依據(jù),并很好地完成了實(shí)踐教學(xué)任務(wù)。
參考文獻(xiàn):
[1]王勇,黃國興,彭道剛.帶反饋的多元線性回歸在電力負(fù)荷預(yù)測中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用與軟件,2008,25(1):82-84.
[2]周晨,馮宇東,肖匡心,等.基于多元線性回歸模型的東北地區(qū)需水量分析[J].數(shù)學(xué)的實(shí)踐和認(rèn)識(shí),2014(1):118-223.
[3]HAN Jia-wei,KAMBER M.數(shù)據(jù)挖掘:概念與技術(shù)[M].范明,孟小峰譯.北京:機(jī)械工業(yè)出版社,2001,305-307.
[4]周斌,劉亞萍,吳泉源.一個(gè)面向電子商務(wù)的數(shù)據(jù)挖掘系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2000,26(6):18-20.
[5]王冠,司建輝,楊昌鐸.數(shù)據(jù)挖掘系統(tǒng)研究[J].北京工業(yè)大學(xué)學(xué)報(bào),2005,31(4):383-387.
[6] 羅霄, 任勇, 山秀明.基于Python的混合語言編程及其實(shí)現(xiàn)[J]. 計(jì)算機(jī)應(yīng)用與軟件, 2004, 21(12): 7.
[7] 鐘同圣, 衛(wèi)豐,王鷙, 等. Python語言和ABAQUS前處理二次開發(fā)[J].鄭州大學(xué)學(xué)報(bào)(理學(xué)版),2006(1).
[8] HETLAND M L. Beginning Python: from novice to professional[M]. [S. l.]: Apress, 2005: 30-50, 286-295.
[9] DEITEL H M, DEITEL P J, LIPERI J P, 等. Python編程經(jīng)典[M]. 周靖 譯. 北京: 清華大學(xué)出版社, 2003: 495-513.
[10] 狄博,王曉丹.基于Python語言的面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)[J],計(jì)算機(jī)工程與設(shè)計(jì),2014,36(4).
[11] Labrinidis A, Jagadish HV. Challenges and opportunities with big data. PVLDB, 2012,5(12):2032 2033. [doi: 10.14778/2367502. 2367572]
[12] Ren L. Research on interaction techniques in information visualization [Ph.D. Thesis]. Beijing: The Chinese Academy of Sciences,
2009 (in Chinese with English abstract).
[13] Card S K, Mackinlay J D, Shneiderman B. Readings in Information Visualization: Using Vision To Think. San Francisco: Morgan- Kaufmann Publishers, 1999. 1-712.
【通聯(lián)編輯:唐一東】