模糊控制及其MATLAB仿真.pdf
主要讲解模糊控制理论在MATLAB系统的中的应用前言自动控制理论经历了经典控制和现代控制两个重大发展阶段,已经相当完善。然而,对于许多复杂庞大的被控对象及其外界环境,有时难以建立有效的数学模型,因而无法采用常规的控制理论做定量分析计算和进行控制,这时就要借助于新兴的智能控制。智能控制是人工智能、控制论和运筹学相互交叉渗透形成的新兴学科,它具有定量和定性相结合的分析方法,融会了人类特有的推理、学习和联想等智能。模糊控制是在智能控制中适用面宽广、比较活跃且容易普及的一个分支。人类在感知世界、获取知识、思维推理、相互交流及决策和实施控制等诸多的实践环节中,对知识的表述往往带有“模糊性”的特点,这使得所包含的信息容量有时比“清晰性”的更大,内涵更丰富,也更符合客观世界。1965年美国的控制论专家L.A. Zadeh教授创立了模糊集合论,从而为描述、硏究和处理模糊性事物提供了一种新的数学工具。模糊控制就是利用模糊集合理论,把人的模糊控制策略转化为计算机所能接受的控制算法,进而实施控制的一种理论和技术。它能够模拟人的思维方式,因而对一些无法构建数学模型的系统可以进行有效的描述和控制,除了用于工业,也适用于社会学、经济学、环境学、生物学及医学等各类复杂系统。由于模糊控制应用广泛、便于普及,不仅许多高等学校开设了模糊控制课程,而且不少工程技术人员也渴望了解和学习这方面的知识。集作者多年从事“模糊信息处理”、“模糊控制”方面的科研和教学经验,编写了这本模糊控制方面的入门书。本书在选材、安排上均遵从“入门”和“实用”的原则,着重介绍模糊控制的基本概念、基本原理和基本方法。本着“重视实用性和可操作性”的工程教育思想,内容选取和叙述形式不追求“理论的高深和数学推导的严谨”,在学术性和实用性发生冲突时,学术性服从实用性。本书主要内容包括模糊控制的数学和逻辑学基础、模糊控制器的设计、模糊控制系统的仿真及神经网络在模糊控制中的应用。在介绍模糊控制的理谂时,按照模糊控制的需要介绍必要的基础理论和基本知识,而不是把模糊控制仅仅看作模糊理论的一种应用,片面追求模糊理论的系统性和完整性,致使读者在模糊数学和模糊逻辑的演算上花费很多精力。在介绍模糊规则的生成方法时,不仅介绍了根据操作经验建立规则的常用方法,而且通过实例介绍了从系统的输入、输出数据中获取模糊规则的方法在介绍模糊控制器时,集中介绍了实用范围较广的两种类型模糊控制器:Maπdani型和 Sugeno型。前一种模糊控制器的输λ量和输出量都是模糊子集,输出量需要经过清晰化才能用于执行机构;而后一种模糊控制器的输入量是模糊子集,输岀量为数字量,可以直接用于推动执行机构考虑到科技工作者学习模糊控制理论时需要实践及其实际需求,把模糊控制理论和计算机仿真进行了有机融合,较详细地介绍了 MATLAB仿真技术及其在模糊控制方面的应用通过仿真练习,弥补了学习理论过程中难以实践的缺陷,加深对模糊控制的理解,也使在解WW. 9CAX COI决实际问题时有所借鉴,为进一步深入学习和应用模糊控制理论打下良好的基础。神经网络是智能控制的一个重要分支,本书简要介绍了它在模糊控制中的应用,着重举例介绍了 MATLAB中“自适应神经模糊系统”的使用方法。本书配有教学课件,可从北京交通大学出版社网站下载,或发邮件至 cbswce( jg.bitu.edu.cn或aushi@126.com索取。吴嫦娥编辑对本书的出版起了极大的推动作用,在此深表谢意!由于模糊控制领域的理论目前尚不成熟,还存在许多未解难题,虽然作者在“模糊领域”有十余年的科研教学经验,但毕竟水平有限,恳请广大读者不吝赐教!编者(E mail: aushixm(a 126. com)2008年3月WW. 9CAX COI目录第1章引言………………………………………………………(1)1.1自动控制理论的发展历程……………………………………………………(1)1.2智能控制概况………………(2)1.2.1智能控制的发展简况………………………………………………………………(2)1.2.2智能控制的几个重要分支…1.3模糊控制,,,,,.,,,………(6)1.3.1模糊控制解决的问题…(7)1.3.2模糊控制的发展简史…………………………………………………………(7)1.3.3模糊控制的特点及展望…(9)思考与练习题………………………………………………………………………(10)第2章模糊控制的数学基础……………………………………………………(11)2.1清晰向模糊的转换·(11)2.1.1经典集合的基本概念………………………………………………………………(11)2.1.2模糊集合………………………………………………………………(14)2.2隶属函数…………………………………………………………………………………(22)2.2.1确定隶属函数的基木方法…………………………………………………(23)2.2.2常用隶属函数2.3F集合的运算………………………………………………(26)2.3.1F集合的基本运算………………………………………………(26)2.3.2模糊集合的基本运算规律………………………………………………………(29)2.3.3F集合运算的其他定义………………………………………………………(31)2.4模糊关系及其运算……………………………………………………………(32)2.4.1经典关系……(32)2.4.2模糊关系………………………………………………………………(34)2.4.3模糊关系的运算…………………………………………………………………(382.4.4F关系的合成…………………………………(40)2.5模糊向清晰的转换…………………………………………………………(45)2.5.1模糊集合的截集………………………………………………………(45)2.5.2模糊关系矩阵的截矩阵…(47)2.5.3模糊集合转化为数值的常用方法…(47)思考与练习题………………………………………………………………………(51)第3章模糊控制的逻辑学基础……………………………………………………………(53)3.1二值逻辑简介……………………………………………………………………(53)1判断WW. 9CAX COI3.1.2推理……………………………………………………………………(58)3.2自然语言的模糊集合表示……………………………………………………(59)3.2.1一些自然词语的F集合表示……………(59)3.2.2糢糊算子…………………………………………………………………(60)3.3模糊逻辑和近似推理……………(63)3.3.1模糊命题……………………………………………………(64)3.3.2常用的两种基本模糊条件语句…………………………………………………(65)3.3.3近似推理及其合成法则…(74)3.4T-S型模糊推理…………………………………………………………(81)3.4.1双输入、单输出系统的T-S型糢糊推理模型…………………………………(81)3.4.2MISO系统的TS模型………………………………………………………………(85)思考与练习题…(87)第4章模糊控制器的设计………………………………………(89)4.1模糊控制系统的基本组成………………(89)4.1.1从传统控制系统到模糊控制系统…………………………………………………(89)4.1.2模糊控制器的结构………………………………………………………………(92)4.2 Mamdani型模糊控制器的设计…(93)4.2.1 Mamdani型模糊控制器的基本组成…………(93)4.2.2量化因子和比例因子……………………………………………(94)4.2.3模糊化和清化……………………………………………………(98)4.2.4模糊控制规则……………………………………………………………………(102)4.2.5模糊自动洗衣机的设计…………………………(113)4.3T-S型模糊控制器的设计…(117)1.3.1T-S型模糊模型(118)4.3.2T-S型模糊系统设计要点………………………………………………………(121)4.4F控制器和PID控制器的结合…(121)4.4.1F-PID复合控制器……………………………(121)4.4.2F-PID复合控制器的其他形式………(122)4.4.3用模糊控制器调节PID控制器的参数………………………………(123)思考与练习题……………………………………………………………………………(125)第5章模糊控制系统的 MATLAB仿真…………………………………(127)5.1 Simulink仿真入门……………………………………………(127)5.1.1 MATLAB中的仿真模块库…………………………………………(128)5.1.2仿真模型图的构建……………………………………………………(135)5.1.3动态系统的 Simulink仿真……5.2模糊推理系统的设计与仿真………(149)5.2.1模糊推理系统的图形用户界面简介·..···,····,·············………(149)5.2.2模糊推理系统编辑器…………………………………………………………(150)2.3隶属函数编辑器…(156)WW. 9CAX COI5.2.4模糊规则编辑器…(161)5.2.5模糊规则观测窗…………(172)5.2.6FIS输出量由面观测窗………(179)5.2.7用GUI设计 Mamdani型模糊系统举例……………………………………(182)5.2.8用GUI设计 Sugeno型模糊系统举例……………………………………(189)5.3模糊控制系统的设计与仿真…………………………………………………(196)5.3.1FIS与 Simulink的连接………………………………………………………(196)5.3.2构建模糊控制系统的仿真模型图…(200)5.3.3通过仿真对系统进行分析……………………………………………(208)考与练习题……………………………………………………………………………………(218)第6章神经网络在模糊控制中的应用……………………………………………(219)6.1神经网络的基本原理…(219)6.1.1神经网络发展历史…(219)6.1.2神经元的生理结构……………………………………………(221)6.1.3神经元的数学模型…………………………………………………………(222)6.1.4人工神经网络模型…………………………………………………………(224)6.1.5神经网络模型的学习方法……(225)6.1.6BP型神经网络原理简介……………………………(227)6.2神经模糊控制……着,,,着……………(228)6.3用自适应神经模糊系统建立FIS…………………………………………(229)6.3.1 ANFIS图形用户界面简介,,,,·,.,··.,,.,·,·,着,,里,,,,,,·,,··,,,·,.·,·,,·(229)6.3.2用 Anfis建立FIS的步骤…………………………………………(233)6.3.3用 Anfis建立FIS举例……………………………………………………(245)思考与练习题(255)参考文献………………………………………………………………………………(256)ⅢlWW. 9CAX COI第1章引言本章介绍自动控制学科发展的历史概况,叙述从开环控制到智能控制的发展进程,并简单介绍智能控制的几个主要分支——专家控制、模糊控制和神经网络控制1.1自动控制理论的发展历程自动控制就是在没有人直接参与的情况下,利用外加的设备或装置(控制器),使机器、设备或生产过程(被控对象)的某个工作状态或参数(被控量),能够自动地按照设定的规律或指标运行的设备或系统。自从美国数学家维纳在20世纪40年代创立控制论以来,自动控制从最早的开环控制起步,然后是反馈控制、最优控制、随机控制,再到自适应控制、自学习控制、自组织控制,直发展到自动控制的最新阶段——智能控制。整个自动控制理论的发展进程,是由简单到复杂、由量变到质变的辩证发展过程,如图1-1所示。智能控制但会买继智能控制自学习控制自适应控制,鲁棒控制现代控随机控制最优控制确定性反馈控制开环控制控制系统的复杂性图1-1控制科学的发展过程传统控制理论经历过经典控制理论和现代控制理论两个具有里程碑意义的重要阶段,它们的共同点都是基于被控对象的清晰数学模型,即控制对象和干扰都得用严帑的数学方程和函数表示,控制任务和目标一般都比较直接明确,控制对象的不确定性和外界干扰只允许在很小的限度内发生个系统的数学模型就是对系统运动规律的数学描述,微分方程、传递函数和状态方程是描述控制系统的三种最基本的数学模型,其中微分方程是联系其他两者的纽带。经典控制理论主要研究单变量、常系数、线性系统数学模型,经常使用传递函数为基础的频域分析法;现代控制理论主要研究多输入-多输出线性系统数学模型,经常使用微分方程或状态方WW. 9CAX COI模糊控制及其 MATLAB仿真程为基础的时域分析法。传统控制方法多是解决线性、时不变性等相对简单的被控系统的控制问题,这类系统完全可以用线性、常系数、集总参量的微分方程予以描述。但是,许多实际的工业对象和控制目标常常并非都是如此理想,特别是遇到系统的规模庞大、结构复杂、变量众多,加之参数随机多变、参数间又存在强耦合或系统存在大滞后等错综复杂情况时,传统控制理论的纯粹数学解析结构则很难表达和处理。由于硏究对象和实际系统具有非线性、时变性、不确定性、不完全性或大滞后等特性,无法建立起表述它们运动规律和特性的数学模型,于是便失去了进行传统数学分析的基础,也就无法设计出合理的理想经典控制器。况且,在建立数学模型时一般都得经过理想化假设和处理,即把非线性化为线性,分布参数化为集中参数,时变的化为定常的,等等。因此,数学模型和这些实际系统的巨大差距,使之很难对其实现有效的传统自动控制,于是便出现了某些仿人智能的工程控制与信息处理系统,产生和发展了智能控制大量的生产实践表明,有许多难以建立数学模型的复杂系统和繁难工艺过程,可以由熟练技术工人、工程师或专家的手工操作,依靠人类的智慧,能够获得满意的控制效果。例如,欲将一辆汽车倒入指定的车位,确实无法建立起这一过程的数学模型。然而熟练的司机却可以非常轻松地把它倒入预定的位置。类似的问题使人们自然想到,能否在传统控制中加人人类的认知、手工控制事物的经验、能力和逻辑推理等智能成分,充分利用人的操作技巧、控制经验和直觉推理,把人的因素作为一个有机部分融入控制系统呢?能否根据系统的实际输入、输出类似于熟练技工那样进行实时控制,甚至使机器也具有人类的学习和自适应能力,进而用机器代替人类进行复杂对象和系统的实时控制呢?1.2智能控制概况20世纪60年代以来,由于空间技术、计算机技术及人工智能技术的发展,控制界学者在研究自组织、自学习控制的基础上,为了提高控制系统的自学习能力,开始注意将人工智能技术与方法应用于工程控制中,逐渐形成了智能控制。1.2.1智能控制的发展简况所谓智能控制,就是通过定性和定量相结合的方法,针对被控对象和控制任务的复杂性、不确定性和多变特性,有效自主地实现繁杂信息的处理、优化和判断,以致决策,最终达到控制被控系统的目的。智能控制的诞生1966年,J.M. Mendal首先提出将人工智能技术应用于飞船控制系统的设计;其后,1971年,美籍华人科学家傅京逊首次提岀智能控制这一概念,并归纳了三种类型的智能控制系统①)人作为控制器的控制系统:这种控制系统具有自学习、自适应和自组织的功能。②人-机结合作为控制器的控制系统:机器完成需要连续进行的、快速计算的常规控制任务,人则完成任务分配、决策、监控等任务。③无人参与旳自主控制系统:用多层智能控制系统,完成问题求解和规划、环境建模、WW. 9CAX COI第1章引言传感器信息分析和低层的反馈控制任务,如自主机器人。1985年8月,美国电机及电子工程师学会( Institute of Electrical and Electrical Enginers,IEEE)在纽约召开了第一届智能控制学术讨论会,随后成立了智能控制专业委员会;1987年1月,在美国举行第一次国际智能控制大会,标志着智能控制领域的形成。智能控制即含有人类智能的控制系统,它具有学习、抽象、推理、决策等功能,并能根据环境(包括被控对象或被控过程)信息的变化做岀适应性反应,从而使机器能够完成以前只能由人可以完成的控制任务。2.智能控制的三元论智能控制是一门交叉学科,傅京逊教授于1971年首先提出智能控制( Intelligent Control,IC)是人工智能与自动控制的交叉,即智能控制的二元论。在此基础上,美国学者G.N. Saridis于1977年引入运筹学,提出了三元论的智能控制概念,认为智能控制是人工智能( Artificial Intelligence,AⅠ)、自动控制( Automatic control,AC)和运筹学(Operational research,OR)等形成的交叉学科,即IC=AI∩AC∩OR,它们的含义如下:信号处理、形式语言AI—人工智能,是一个用来模拟人启发推理规划、调度、管理类思维的知识处理系统,具有记忆、学习、人工智能运筹学信息处理、形式语言、启发推理等功能学习、记忆可以应用于判断、推理、预测、识别、决智能控制协调、管理策、学习等各类问题;AC自动控制,描述系统的动力学自动控制特性,实现无人操作而能完成预设目标的一优化、动力学、动态反馈种理论体系,一般具有动态反馈功能;OR—运筹学,是一种定量优化方法,如线性规划、网络规划、调度、管理、优化决策和多目标优化方法等。图1-2智能控制的三元论示意图基于三元论的智能控制概念如图1-2所示。现在,为多数人所接受的三元论智能控制概念,除了“智能”与“控制”外,还强调了更高层次控制中的调度、规划和管理作用,为分层、递阶智能控制提供了理论依据。3.智能控制的特点在分析方法上具有定量与定性相结合的智能控制,应该具有以下一些功能。1)学习功能智能控制器能通过从外界环境所获得的信息进行学习,不断积累知识,使系统的控制性能得到改善。2)适应功能智能控制器具有从输入到输岀的映射关系,可实现不依赖于模型的自适应控制,当系统某一部分出现故障时,仍能进行控制。WW. 9CAX COI
- 2020-06-01下载
- 积分: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