实验室安排管理系统
数据库,软件工程的实验室安排管理系统,很好的文档和代码。第一章引言1.1项目背景随着信息技术的普及,对计算机应用的普及,高等学校的计算机实验室在逐年上升,面对众多的计算机实验课,如何有效安排实验室,成为实验室管理人员的重要工作之一。为了提高实验室安排管理效率,方便教师对实验室的使用情况及时查询和申请实验室,需要设计一个能提供教师实时了解当前实验室教师申请情况,并可以对闲置实验室的申请,最后通过实验室管理员对教师所做的实验申请进行安排管理。本系统基于B/S结构,主要山前台教师对实验室申请和后台基本资料的维护及实验室的安排,主要包括以下功能:登录、申请实验、基本资料维护、实验室安排管理、用户管理,个人设置等。1.2实验室安排管理系统概述实验室安排管理系统是一门新兴的集管珪科学、信息科学、系统科学级计算机科学为一体的综合性学科,研究的是大学校园的实验室安排管理的全过程,以便有效的安排管理实验室信息,提高校园的实验室使用率,提供各类管理决策信息辅助实验室管理部门进行现代化管理。实验室安排管理系统是大学校园的实验空信息管理系统,它具备数据增加、修改、删除和査询功能,具体如下(1)对用户信息增加、修改、删除管理;(2)对实验室信息增加、修改、删除管理com3)对日期和课程信息增加、修改、删除管理(4)实验室安排管理1.3系统开发的意义为了有效的安排管理实验室信息,提高校园的实验室使用率,提供各类管理决策信息辅助实验室管理部门进行现代化管理需要设计一个能提供教师实时了解当前实验室教师申请情况,并可以对闲置实验室的申请,最后通过实验室管理员对教师所做的实验申请进行安排管理。本系统基于B/S结构,主要由前台教师对实验室申请和后台基本资料的维护及实验室的安排,主要包括以下功能:登录、申请实验、申请实习、基本资料维护、用户管理,个人设置、实验室安排管理等第二章系统分析2.1系统功能分析通过讨论分析,要求系统需要有以下功能:(1)要有良好的人机界面功能。(2)支持多用户操作,要求有较好的权限分配功能。(3)支持实验申请和实习申请多行录入功能。(4)为了方便用户能快速正确地申请到实验室,提供实验室申请浏览。(5)每个用户,课程,实验,实习,实验室都有惟一的编号即ID,编号需要是整型标识,能自动生成有序ID。(6)支持用户,课程,班级,实验室的修改,增加,删除功能。(7)支持实验室的安排浏览。2.2用户管理流程丁公共用户登录修改密退出→码图2-1用户管理流程com2.3实验管理流程用户登录系统—>申请实验—>修改申请—>查询申请结果申请实公共用户登录验,修改退出图2-2实验管理流程2.4实习管理流程用户登录系统—>申请实习—一>修改申请——一>查询申请结果申请实习,修改公共用户登录实习4退出图2-3实习管理流程2.5实验室安排系统管理流程管理员登录—>査询实验、实习申请—>安排实验室—>审核——>安排登录4添加、修改管理员册除用户退出管理实验室艹图2-4实验室安排系统管理流程docn豆丁www.docin.com第三章系统设计3.1项目规划本系统分为如下的几大模块:主界面登录模块实验室安排浏览模块用户控制面版实验宝查询用广管理实验审管理|报表图3-1系统模块图1、主界面模块该模块提供管理系统的主界面,是主系统的唯一入口和出口,该界面提供用户选择并调用各子模块2、登录根据用户管理分配不同的角色权限,核对用户,进入系统进行相应的操作。子模块:(1)用户控訇面版(公共用户)该模块提供用户的基本信息的界面,用户可在此修改密码、基本资料;察看本人申请实验室的情况。(2)实验室查询(老师)该模块提供査询符合某一条件的实验室安排情况的界面。(3)用户管理(管理员)该模块提供对用户信息进行更改、删除和新增和手动安排实验室的界面(4)实验室管理(管理员)该模块提供对实验室信息进行更改、删除和新增和手动安排实验室的界面。3、实验室安排浏览该模块提供全部实验室安排情況的界面。3.2功能框图用户查询更新查询更新查查更查查更更洵询更新结果询询新新条结条结条条结件|果果|件自果浏览申请表实验室安排表系统安排管理员审核图3-2主数据流程图3.3数据库设计创建数据库是设计系统的第·步,其关键问题在于确定所需的表结构并为之建立索引。为∫使系统设计精练实用,体现关系型数据库的特点,本系统还为各相关表建立关系。数据项设计通过需求分析,可确定系统的数据项和数据结构如下:实验申请表: shiyang(实验申请ID,周次,星期,节次,实验名称,实验班级,实验人数,任课教师,实验教师,申请时间实习申请I,周次,实习内容,实习课程名称,实习班级,实习人数,任课教师,申请时间)实习申请表 shixing(实习申请ID,周次,实习内容,实习课程名称,实习班级,实习人数,任课教师,申请时间)用户表:user(用户ID,用户名,用户类型)。班级表: classdb(班级ID,班级名称,班级入学时间)课程表:Kedb(课程ID,课程名称)实验室表: Ssdb(实验室ID,实验室名称,实验室座位)为了方便安排,本系统还设定了几个用于安排的临时表学年表: Xuelian(学年ID,学年名称)。学期表: xueqI(节次ID,节次名称)。周次表: Weekdb(周次ID,周次名称)。节次:jeci(节次I,节次名称)。实验表: shiyan(实验ID,实验名称)实习表: shixi(实习ID,实习名称)2、概念结构设计本系统在需求分析的基础上设计出能够满足用户需求的各种实体。根据上面的分析所得的实体有:实验室安排实体、用户实体。3、逻辑结构设计数据项描述{数据项名,数据类型,长度,数据项含义说明,可否为空}(1)用户表: Userdb用户表用来保存用信息,用户表结构如表3-1所示表3-1用户表数据项名数据类型(长度)数据项含义说明「可否为空user 1dint(4)用户ID否User-name char(20)用广名否User perchar(20)用户类型否(2)班级表: classdb班级表用来保存班级信息,班级表结构表3-2所示表3-2班级表数据项名数据类型(长度)数据项含义说明可否为空Class idInt(4)班级ID否Class nameChar(50)班级名称Class inyearChar(20)班级入学时间否3)实习申请表: shixia实习申请表用来保存实验申请信息,实习申请表结构表3-3所示表3-3实习申请表数据项名数据类型(长度)‖数据项含义说明「可否为空Shixing idInt(4)实习申请ID否Shixing week Char(20)周次否Shixing nameChar(100)实习内容否Shixing keChar(100)实习课程名称否Shixisg class Char(100)实习班级否Shixisq menInt(4)实习人数否Shixisq manChar(20)「任课教师否Shixing timeChar(20)申请时间可4)实验申请表: shiyang实验申请表用来保存实验申请信息,实验申请表结构如表3-4所示表34实验申请表数据项名数据类型(长|数据项含义说明「可否为空度)Shiyang idInt(4)实验申请ID否Shiyang weekChar(20周次Shiyang xqChar(20)星期Shiyang jcChar(20)节次否否否Shiyang nameCar(100实验名称Shiyang classChar(100)实验班级Shiyang menInt(4实验人数口Shiyang manar(2任课教师Shiyansq syteacher Char(20)实验教师Shiyang timeChar(20)申请时间(5)实验教师表: teacher实验教师表用来保存实验教师信息,实验教师表结构如表3-5所示表3-5实验教师表数据项名数据类型(长度)数据项含义说明「可否为空Teacher idInt(4)教师ID否Teacher nameChar(20)教师名称否(6)课程表:Kedb课程表用来保存课程信息,课程表结构如表3-6所示表3-6课程表数据项名数据类型(长度)数据项含义说明「可否为空Ke idInt(4)课程ID否Ke namelChar(100课程名称否(7)实验室表: Ssdb实验室表用来保存实验室信息,实验室表结构如表3-7所示表3-7实验室表数据项名数据类型(长度)数据项含义说明可否为空Sys idint(4)实验室ID否sys namechar(100)实验室名称否Sys menInt(4)实验室座位否(8)学年表: Xuelian学年表用来保存用信息,学年表结构如表3-8所示表3-8学年表数据项名数据类型(长度)数据项含义说明可否为空Xuenian idchar(20)学年ID否Xuwenlan nameint(20)学年名称否(9)周次表: Weekdb周次表用来保存周次信息,周次表结构如表39所示表3-9周次表数据项名数据类型(长度)「数据项含义说明「可否为空Week idchar (20)周次IDWeek nameint(20)周次名称否否(10)星期表: XIng星期表用来保存星期信息,星期表结构如表3-10所示表3-10星期表数据项名数据类型(长度)「数据项含义说明可否为空xing idchar(20)学年IDXIngl nameint(20)学年ID否否(11)节次表: J1eC1节次表用来保存节次信息,节次表结构如表3-11所示表3-11节次表数据项名数据类型(长度)数据项含义说明「可否为空c ldchar(20)班级名称合Jc nameint(20)编级人数4www.docin.com
- 2020-11-30下载
- 积分:1
基于Xgboost的商业销售预测
基于Xgboost的商业销售预测,以德国Rossmann商场的数据为例,通过对数据的探索性分析,以相关背景业务知识体系为基础,通过可视化分析,提取隐含在数据里的特征,使用性能较优的Xgboost方法进行规则挖掘,取得较好效果。第3期饶泓等:基于 Boost的商业销售预测277·(3)eta:收缩步长,即学习速率,取值范围是,3.1数据来源默认为0.3。在更新叶子节点的时候,权重乘以本文所有数据均来自 Haggle中的 Rossmanneta,以避免在更新过程中的过拟合。商店销售额数据集。 Rossmann是商人 Dirk ross(4) max _ depth:每棵树的最大深度,取值范围mann创立的德国首家平价日用品商店,现在的是,默认为6。树越深,越容易过拟合。Rossmann公司逼布欧洲7个国家,分店达100多(5) subsample:训练的实例样本占整体实例样家。论文通过位于德国的1115所 Rossmann连锁本的比例取值范围是(0.1],默认为1。值为0.5商店的历史数据预测未来48天商店的销售额时意味着 Boost随机抽取一半的数据实例来生成Haggle给出了三个数据集: train、test、 store,分树模型,这样能防止过拟合别是训练集测试集和商店基本信息的数据集,对训(6) colsample bytree:在构建每棵树时,列(特练集建模训练,对测试集进行预测。征)的子样本比,参数值的范围是(0,1]数据集基本信息如下(7) objective:默认为reg: linear;(1)训练集 train.csv:时间范围为2013年01月(8)sccd:随机数种子,为确保数据的可重现01日到2015年07月31日,共942天,1017209条性,默认为0。数据。2.2K折交叉验证方法(K一CV(2)测试集test.csv:时间范围为2015年08月论文采用K折交叉验证方法。将原始数据0日到2015年09月17日,共48天,41088条数分为K个子集,每个子集分别验证一次,剩余的K据组子集作为训练数据,这样可得到K组训练集(3)商店基本信息数据集 store.csv:1115条数和测试集以最终的分类平均精度作为性能指标。据,共1115家商店的信息。在实际应用中,K值一般大于或等于2,需要建立K3.2数据的可视化分析及原始特征提取个模型来进行K折交叉验证的实验,并计算K次为了获取影响销售额的基本数据特征,论文对测试集的平均辨识率Gaggle提供的 Rossmann数据集进行了可视化分K折交叉验证的结果能较好说明模型效果,有析,提取原始特征集。效地避免欠拟合与过拟合。在 Boost中,通过(1)顾客数和销售额之间的关系xgb.cv函数来做交叉验证。从图1中可以看出,顾客数和销售额之间存在2.3独热编码(One- hot encoding紧密的正相关关系。由于 Boost仅适用于处理数值型向量,因此处理训练集和测试集时需要将所有其它形式的数10.0据转换为数值型向量,本文采用独热编码将特征值转专换为数值。50独热编码也称一位有效编码,即对于任意时间任意给定的状态,状态向量中只有一位为1,其余6各位为0,将n类特征值转化成n位二进制数串,将顾客数特征的每个对应类设置为1。独热编码将每一个特图1顾客数与销售额的关系曲线征的个取值通过独热编码后转换成了n个二元特(2)促销对销售的影响的可视化分析征,通过该方法将特征转变成稀疏矩阵6。独热编图2和图3中 Promo取1表示当天有促销活码能够解决分类器不好处理属性数据的问题并在动取0表示没有促销活动。从图中可以看出促销一定程度上扩充了特征活动对顾客数并没有太大影响,但销售量却明显提3数据预处理高了,即促销活动并没有吸引更多的顾客,但提高了顾客的购买力,从而提高了销售额。通过查询原始为了获取数据中的有效特征,论文采用探索性数据发现没有促销的情况下顾客平均消费8.94欧数据分析方法对数据进行可视化分析获得数据分元,有促销活动的情况下平均消费10.18欧元布特征,理解原始数据的基本特征,发现数据之间的(3)星期( DayOf Week)对销售影响的可视化分潜在模式.找出数据中的有效特征析21994-2017ChinaAcademicJournalElectronicPublishingHouse.Allrightsreservedhttp://www.cnki.net278南昌大学学报(理科版)2017年40000表2商店薮据基本特征集30000特征名称含义值批20000ore商店号取值:1到1115商店类型10000商店类别分类:逢础类met最近的党争对手的距薮卷:桊商店0离里有761个商店有PromoCompetition-图2促销对销售额的影响Open SinceMonth竞争对手开张的月份月份Open since year竞争对手开张的年份年份数据6000P持续性的促销活动0:无,1:有的4000Prom2 Since Week开始参加Pomo2促销日历上的第几周数的日历周值2000Pomo2 Sincerer开始参加Pm2i年份数据PromoPromoInterval参加Pomn2促销开始Jan,Apr,Jo)e的月份列表Feb, May, Aug, Nov".图3促销对顾客数的影响Mar, Jun, Sept, Dec从图中可以看出,星期日的销售额中位数和上不同的分类特征在训练集和测试集中的比例见四分位数远远高出正常营业日,但是下四分位数却表3~6低于正常营业日,即有些商店星期日营业额高于平表3Open特征取值比例时,但也有一部分商店的销售额低于正常营业日。从图中也可以看出,从周一到周六,周一的销售额偏16.99高一些,星期六的销售额偏低一些test/yo14.5585,4440000表4Prom特征取值比例30000Pramo0凝train61.8538,15批2000test/%50.4239.5810000表5 Stateholiday特征取值比例y星期几1.990.660.40图4销售额在星期1~7中的分布情况test/%99.560.44由于篇幅的关系,对数据的可视化分析不表6 Schoolholiday特征取值比例列岀。根据这些数据的可视化化析,我们提取出如Schoclholiday表1所示和表2所示的训练数据和测试数据原始特test/%55.6544.35征集以及商店数据基本特征集。表1数据原始特征集3.3数据预处理持征名称含义3.3.1数据清洗为获得可训练用数据,我们对原tcre有店号取值:1到1115始数据进行清洗,具体过程如下:DayOfWeek星期几取值:1到7(1)标记异常数据。如商店是开门的,但是销Date时间如2013-01-01Sales销售额数值售额为零的数据为异常数据Customers顾客数数值(2)对训练集的 Sales销售额字段取对数,设置是否开店关店,1:开店为 Saleslog字段;P当天是否有促销0:无促销,1:促销0:非假日,a:公共假日;b:(3)缺失值用一1填充;State Holiday假日复活节,c:圣诞节(4)合并训练集和测试集,添加Set字段,用以SchoclHoliday学校假日0非假日,1:假日分训练集和测试集,值1为训练集,0为测试集;(3)数值化分类特征值。原始数据集中, State21994-2017ChinaAcademicJournalElectronicPublishingHouse.Allrightsreservedhttp://www.cnki.net第3期饶泓等:基于 Boost的商业销售预测holiday分类特征取值为0、a、b、c,无法代入模型计算因此重新编码为0、1、2、3; Store Type分类特4实验结果及分析值为a、b、c、d, Assortment分类特征值为a、b、c,采4.1实验条件用同样方法用整型数据重新编码(1)软件环境(6)分解特征。将原始数据集中Date特征分(a)操作系统: Windows7x64解为 DatcDay、 Datc Wcck、 DatcMonth、 Datc ycar(b)开发平台: Python2.7+R3.4.2DateDay OfYear5个特征(c)第三方库: Python: numpy+ pandas+(7)增加字段 PateNt,即Date转换为整型的 atplotlib I xgboost;R3.4.2库: data table|gg形式lot2tlubridate-zoo-dplyr+scales+xgboost+(8)规范化特征表达。对 Competition- forecast glmnetpen sinceRer和 CompetitionOpenSinceMonth字(2)硬件环境段合并成普通年月的表达,并转化为整型;将Pro处理器:Iner(R)Core(TM)i3-4160CPUcmoZsincc ycar和 Promo2 Since wcck字段合并成普3.60GHz通年月的表达,并转化为整型,增加字段内存:8GBPromo2 SinccInt4.2单 Boost模型()删除偏差大于2.5的异常数据。对特征工程后的所有特征用 Boost模型进行(10)删除存在异常的数据点,如图5所示的异训练,参数如表7所示。常数据。表7单 Boost模型参数25000参数值参数值15000thread500M4M小人Activereg: linear subsamplegrounds20000colsample bytearly stop. round250004.3组合模型0%时你以根据模型的作用将模型分为三类:商店模式模型、数据合并模型、混合模型。商店模式模型:下面采用单个模型是对每个商图5异常数据店进行单独拟合。这类模型关注商店各自的特性,3.3.2特征处理论文根据相关信息背景对数据但是它也错过了可在其他相似商店的模式中获取的进行特征处理:信息(1)增加字段 Competition OpenInt(1)线性模型lm拟合趋势,不带特征交互的(2)添加一些额外的特征,如商店的位置特征 Boost模型拟合残差StoreState发薪日效应特征 PayDay(在一个月的第(2)线性模型lm拟合趋势,带特征交互的Ⅹg个工作日设置特征值为3在随后的两天设置为 boost模型拟合残差2、1)(3)线性模型lm拟合趋势,不同参数值的(3)增加商店平均每天的销售额 Sales PerDay、 glmnet模型拟合残差平均每天的顾客数 CustomersPerDay、平均每天每(4)tslm模型拟合趋势丨季节性,Ⅹ gboost模位顾客的销售额 SalesPerCustomers Per Day作为新型拟合残差。的特征。(5)tslm模型拟合趋势十季节性, glmnet模型(4)增加特征组合,如: store; DayofWeek,拟合残差store: Dayofweek: Promo等等。(6)tslm模型拟合趋势十季节性,Ⅹ gboost模型+ gemnet模型拟合残差。(7)每个商店直接用Ⅹ gboost模型拟合残差。21994-2017ChinaAcademicJournalElectronicPublishingHouse.Allrightsreservedhttp://www.cnki.net·280·南昌大学学报(理科版)2017年这些模型中,含有 Boost模型的模型参数设1.5- A. train-rmspe- B. train-rmspe置如表8,其中模型7中参数 rounds值设为500。1.0-A.validation-rmspe-B validation表8组合 Boost的模型参数0.5参数值0150030004500600075009000参数值RMSPEreg: linear eta0.013C0max _ depth图6在训练集 train和验证集 validation上的 RMSPE值colsamplc bytrcc0.8subsample3.95图7给出了 Boost模型中非组合特征的重要数据合并模型:下列模型使用合并有 store数度得分,从图中可以看出时间类特征和有关竞争对据集和trai训练集的数据集。各个模型的参数设手的特征得分非常髙,这意味着这些特征对模型具置如表9-11有非常大的影响。表9没有特征工程的 Boost模型DateWeek参数参数CompetitionopenIntreg: lineareta0.01SalesperDayPromorounds3000max _depthcolsample bytreesubsampleAssortment 152100000020000003000000F score特征重要度表10有特征工程的 Boost模型图?特征重要度得分参数参数值bjectivereg: linear eta为了对比各模型的泛化效果,我们给出了单类模型(线性模型LM、时间序列线性模型TSLM、基4000subsoIl0.9于 Lasso和 Elastic net正则广义线性模型 glmnet、early stop. round100cclsample bytree极端梯度上升模型ⅹ gboost)和它们之间的组合模型在测试集上 RMSPE值,从而评价模型在测试集表11153个特征十特征交互的 Xgboost模型上的泛化能力。如表13所示参数值参数表13各模型 RMSPE值比较objectivereg: linear etaC.015max depth18模型RMSPE值.20657300CLM一简单的特征处理rounds. 1l.7TSLM+筒单的特征处理cCanvTree0.12751early stop. round100random forest-简单的特征处理glmnet+简单的特征工程3.11974组合模型:通过组合数据合并模型来获取跨多个商Boost十简单的特征工程0.11839店之间共同的特质。模型的残差用商店模式模型中Boost+特征工程Boost+ glmnet+特征工程0.11262的模型来拟合,从而获得每个商店的特质。用Igloos+ glmnet+tslm+lm+特征工程0.1114Gprcomp函数从数据中提取50个主成分,并用Xg从表中可以看出,Ⅹ ghost单模型的能力就优bost模型来拟合、计算残差。模型说明如下:于其它模型,在进行了简单特征工程后, Boost(1)使用线性模型lm拟合趋势,带特征交互的和 gemnet模型相比, Boost模型依然效果更好。glmnet模型+ Boost模型拟合残差,最后我们结合TSLM|LM在处理趋势和季节性上(2)使用tslm拟合趋势和季节性,带特征交互的优势,采用集成方法对 Xgboost+ glmnet进行组的 Boost模型拟合残差。合得出优化模型Ⅹ gboost+ glmnet+tslm+lm+特图6给出模型在训练集和验证集上的 RMSPE征工程, RMSPE值得到较大提升,泛化性能最优的变化过程,横坐标是次数,纵坐标是 RMSPE的值A是人工删除了异常点的数据中的异常数据5结论并没有删除。可以发现在训练集上训练的前500次本论文研究基于 Boost方法对实体零售业销RMSPE的值就迅速的降低到0.2,然后在1750次售额进行预测。论文以德国零售业 Rossmann公就在0.1左右了,可以看出在训练集上效果很好。司1115家实体门店的商场信息和销售数据为薮据21994-2017ChinaAcademicJournalElectronicPublishingHouse.Allrightsreservedhttp://www.cnki.net第3期饶泓等:基于 Boost的商业销售预测281·源,采用 Boost方法对公司销售额进行预测。参考文献通过在特征工程中对原始数据进行特征提取、L1」赵啸彬.基于数据挖掘的零售业销售预测LD.上海:选择和构建,筛选岀用于训练的特征属性;对比Xα上海交通大学.2010boost、随机森林、 GLMNET以及IM、TSIM模型2 CHEN T,HET. Higgs Boson Discovery with boosted等不同方法对销售额的预测结果,表明 Xgboosτ方TreesLCI.JMLR: Workshop and Conference Proceed法无论是训练速度还是在 RMSPE评价标准上都具2015.42:6980有明显的优势。3 ROBERT E. Banfield, Lawrence (. Hall. Kevin WBowyer. W. P. Kegelmeyer, A Comparison of Decision为了进一步提高 Boost预测模型的精度和泛Tree Ensemble Creation Techniques LI]. IEEE Trans-化能力,本文通过大量的特征工程,尝试多种模型的actions on Pattcrn Analysis and machinc intelligence集成学习方法和参数调优,利用 GLMNET和Xg2007,29(1):173-180boost模型拟合残差,并结合IM、TSLM在趋势和[]李航.统计学习方法[M]北京:清华大学出版社,李节性预测的优点,获得组合优化模型。实验表明2012该组合模型在性能上优于单一 Boost预测模型。[5]闻玲·移动平均季节模型在商品销售收入预测中的应这种基于Xⅹ gboost的组合模型不仅适用于对德AJ. Market Modernization, 2010(28):43-45国零售业销售额的预测还可以将此方法应用于国6黄伟陶俊才.一种基于k- means聚类和关监督学习内零售实体业甚至电商平台的销售额预测,对于提的医学图像分割算法[J].南吕大学学报(理科版),2(14,33(1):31-35高商店的运营生产模式、日常管理、价格管理、配送[7 RICE J Mathematical Statics and Data Analysis[M]方式及精准营销具有重要的意义cand Edition, Plymouth: Duxbury Press, 2006: 221-21994-2017ChinaAcademicJournalElectronicPublishingHouse.Allrightsreservedhttp://www.cnki.net
- 2021-05-06下载
- 积分:1