沈荣 张保文
摘要:通过建立多元线性回归分析模型,采用数据挖掘理论中的数据分析方法对蛋糕店月营业额的特征因素进行提取,确定距离车站最近距离和店铺面积作为特征因素,从而对蛋糕房月营业额进行预测。利用Python3.6面向对象编程语言特性,借助其高效、简洁、灵活等特点,结合Python3.6提供的Padas、matplotlib等模块提供的强大功能,编程实现对判定系数的计算,调用库函数对多元线性回归模型进行训练、评分、预测,得到了较为理想的预测结果,该预测结果在指导投资人在蛋糕房选址上提供了重要的参考价值。结果进一步表明,利用Python 3.6的高效性和强大的扩展性,使得其在多元线性回归模型及数据挖掘领域的其他模型使用中均有极大应用潜力。
关键词: 教学实验;多元线性回归;数据挖掘;数据分析;预测
中图分类号:G424 文献标识码:A
文章编号:1009-3044(2019)10-0254-03
开放科学(资源服务)标识码(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 引言
多元線性回归具有模型简单、预测结果准确、模型解释能力强的特点,在模型预测中得到了广泛用用[1-2].在数据挖掘及数据分析领域,一些企业案例在引用线性回归模型做预测,得到了较理想的结果,将其作为教学内容实践,也取得了良好的效果。
大数据时代数据挖掘技术再次走向高潮,数据挖掘(data mining)又称为数据库中的知识发现(KDD),是指从存放在数据库、数据仓库或其他信息库中的大量数据中挖掘出有趣的知识的过程[3]。
近年来为了推动数据挖掘在实际中的应用,许多研究者对数据系统的体系结构做了大量的研究工作,一个合理的数据挖掘系统应具有以下特点[4]:1)系统功能和工具的完备性;2)系统的可扩展性;3)支持多种数据源;4)对大数据量的处理能力;5)良好的用户界面和结果展示能力[5]。
本文在对蛋糕房营业额预测之前,对前几年因店铺面积、店铺位置等数据进行采集,数据清洗,去除冗余数据,选出典型特征值,即店铺面积和距离最近的车站,利用选区的特征值进行多元线性回归模型的构建,引入机器学习、数据挖掘领域下强大的面向对象编程语言Python3.6,通过引用函数库中的回归函数、测试函等对已构建好的蛋糕房的多元线性回归模型进行编程,得到了一个只需知道蛋糕房面积、距离最近车站的距离即可预测月营业额的得二元线性回归模型,极大地提升了蛋糕房的总体利润,为投资人是否在开分店的选择上节约了大量的时间、人力物力等成本,该线性回归模型简单易用,具有极大的商用价值,值得推广。
同时,Python3.6因其平臺无关性,语言简洁、优雅的特性,得到了广大机器学习、数据挖掘领域人士的青睐。Python 是一种解释型、面向对象、动态语义、语法优美的脚本语言,自1989 年由Guido Van Rossum设计出来,经过十余年的发展,与Tcl、Perl一起成为目前应用最广泛的3 种跨平台语言[6],Python还是abques的二次开发语言[7],提供了多种内置数据类型,如列表、字典等,可以方便地实现所需要的功能,同时还有内置的数据库模块[8]。通过对象引用机制来自动管理变量内存空间的申请和释放,避免了C 或者 C++中管理指针对象所带来的大量工作,大大减少了程序的出错概率,提高了软件的开发效率。除此之外,Python 也提供了许多创建和操作三维对象的模块,如Py Open GL等,并通过Alice以及Py Game 还可以实现三维对象的操作与对象的显示[9]。
在这一趋势下,本文采用最新版本的Python3.6实现了整个多元线性回归模型的建立,对蛋糕房的月营业额因受地理位置、面积大小因素的影响进行预测,降低了商家的投入成本,对其他商家具有重要的参考价值。
2 特征值提取及模型构建
在公司企业等实际问题研究中,因变量的变化往往受几个重要因素的影响,这时因变量的变化就要用两个或两个以上的自变量的影响因素作为自变量来解释,这就是多元回归,当多个自变量与因变量之间的关系是线性的时候,所进行的回归分析就是多元线性回归。
目前在数据挖掘领域对商铺营业额的预测方法很多,多元线性回归模型由于其方法简单,模型简捷易健,预测费用相对较低等优点而应用广泛。
故本文应用多元线性回归模型预测蛋糕房月营业额,对其他商铺利润的提升有重要的参考价值。
2.1 多元线性回归模型理论
3 Python 3.6下预测额模型教学实践
3.1 Python 3.6简介
Python是一种面向对象,解释型,动态数据类型的高级程序设计语言[10]。目前,国外的一些知名大学已经采用Python教授程序设计课程,比如麻省理工学院已经将Python作为授课语言,2018年国内首次将Python作为计算机等级考试语言列入考试科目,皆因为其一:代码容易读写,容易维护与学习;其二:支持继承、多继承、重载、派生等面向对象程序特性,在内容设计上非常贴近教学;其三:Python3.6可以直接在交互式环境下用命令方式执行Python语句,非常方便测试;其四:Python编程语言的发布是免费开源的,有丰富的标准库和扩充库,无须考虑其他内存管理等底层细节,代码规范,可读性强,在数据分析方面可以直接进行数学函数的调用,在建立数学模型及其编码上有极大优势,大数据分析是大数据研究领域的核心内容之一[11],通常一幅图胜过千言万语人类从外界获得的信息约有80%以上来自于视觉系统[12,13],而Python做数据分析则更占有语言优势。
本文利用Python3.6版本,通过多元线性回归调用函数,建立回归模型,之后调用函数对模型进行训练,进一步评分、预测,实现了蛋糕房分店因受其地理位置、店铺大小而影响月营业额的预测。
3.2 Python3.6下多元线性回归模型教学实践
4 结束语
本文通过对蛋糕房营业额的数据进行采集、清洗,通过数据挖掘技术,对营业额的特征因素进行提取,提取店铺面积和距离车站最近距离作为特征因素,建立了多元线性回归模型,实际上也可以称为二元回归模型,利用强大的Python3.6的简洁、平台无关性等优势,调用评分、预测等库函数,对蛋糕房的营业额进行了预测,得到了较好的回归模型和预测结果,从而为商家在蛋糕房分店地址的选取上提供了有力的理论支持,也可以为其他商家提供重要的参考依据,并很好地完成了实践教学任务。
参考文献:
[1]王勇,黄国兴,彭道刚.带反馈的多元线性回归在电力负荷预测中的应用[J].计算机应用与软件,2008,25(1):82-84.
[2]周晨,冯宇东,肖匡心,等.基于多元线性回归模型的东北地区需水量分析[J].数学的实践和认识,2014(1):118-223.
[3]HAN Jia-wei,KAMBER M.数据挖掘:概念与技术[M].范明,孟小峰译.北京:机械工业出版社,2001,305-307.
[4]周斌,刘亚萍,吴泉源.一个面向电子商务的数据挖掘系统的设计与实现[J].计算机工程,2000,26(6):18-20.
[5]王冠,司建辉,杨昌铎.数据挖掘系统研究[J].北京工业大学学报,2005,31(4):383-387.
[6] 罗霄, 任勇, 山秀明.基于Python的混合语言编程及其实现[J]. 计算机应用与软件, 2004, 21(12): 7.
[7] 钟同圣, 卫丰,王鸷, 等. Python语言和ABAQUS前处理二次开发[J].郑州大学学报(理学版),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编程经典[M]. 周靖 译. 北京: 清华大学出版社, 2003: 495-513.
[10] 狄博,王晓丹.基于Python语言的面向对象程序设计课程教学[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.
【通联编辑:唐一东】