《R语言数据分析与挖掘实战》——1.4 数据挖掘建模过程

简介:

本节书摘来自华章计算机《R语言数据分析与挖掘实战》一书中的第1章,第1.4节,作者 张良均,云伟标,王路,刘晓勇,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.4 数据挖掘建模过程

从本节开始,将以餐饮行业的数据挖掘应用为例来详细介绍数据挖掘的建模过程,如图1-1所示。

1.4.1 定义挖掘目标

针对具体的数据挖掘应用需求,首先要明确本次的挖掘目标是什么?系统完成后能达到什么样的效果?因此我们必须分析应用领域,包括应用中的各种知识和应用目标,了解相关领域的有关情况,熟悉背景知识,弄清用户需求。要想充分发挥数据挖掘的价值,必须要对目标有一个清晰明确的定义,即决定到底想干什么。

screenshot

针对餐饮行业的数据挖掘应用,可定义如下挖掘目标:

实现动态菜品智能推荐,帮助顾客快速发现自己感兴趣的菜品,同时确保推荐给顾客的菜品也是餐饮企业所期望的,实现餐饮消费者和餐饮企业的双赢;

对餐饮客户进行细分,了解不同客户的贡献度和消费特征,分析哪些客户是最有价值的,哪些是最需要关注的,对不同价值的客户采取不同的营销策略,将有限的资源投放到最有价值的客户身上,实现精准化营销;

基于菜品历史销售情况,综合考虑节假日、气候和竞争对手等影响因素,对菜品销量进行趋势预测,方便餐饮企业准备原材料;

基于餐饮大数据,优化新店选址,并对新店所在位置的潜在顾客口味偏好进行分析,以便及时进行菜式调整。

1.4.2 数据取样

在明确需要进行数据挖掘的目标后,接下来就需要从业务系统中抽取出一个与挖掘目标相关的样本数据子集。抽取数据的标准,一是相关性,二是可靠性,三是有效性,而不是动用全部企业数据。通过数据样本的精选,不仅能减少数据处理量,节省系统资源,而且使我们想要寻找的规律性更加突显出来。

进行数据取样,一定要严把质量关。在任何时候都不能忽视数据的质量,即使是从一个数据仓库中进行数据取样,也不要忘记检查其质量如何。因为数据挖掘是要探索企业运作的内在规律性,原始数据有误,就很难从中探索规律性。若真的从中探索出了“规律性”,再依此去指导工作,则很可能会造成误导。若从正在运行的系统中进行数据取样,更要注意数据的完整性和有效性。

衡量取样数据质量的标准包括:

1)资料完整无缺,各类指标项齐全;

2)数据准确无误,反映的都是正常(而不是异常)状态下的水平。

对获取的数据,可再从中作抽样操作。抽样的方式是多种多样的,常见的有:

随机抽样:在采用随机抽样方式时,数据集中的每一组观测值都有相同的被抽样的概率。如按10%的比例对一个数据集进行随机抽样,则每一组观测值都有10%的机会被取到。

等距抽样:如按5%的比例对一个有100组观测值的数据集进行等距抽样,则有:100/5=20,等距抽样方式是取第20、40、60、80和第100这5组观测值。

分层抽样:在这种抽样操作时,首先将样本总体分成若干层次(或者说分成若干个子集)。在每个层次中的观测值都具有相同的被选用的概率,但对不同的层次可设定不同的概率。这样的抽样结果通常具有更好的代表性,进而使模型具有更好的拟合精度。

从起始顺序抽样:这种抽样方式是从输入数据集的起始处开始抽样。抽样的数量可以给定一个百分比,或者直接给定选取观测值的组数。

分类抽样:在前述几种抽样方式中,并不考虑抽取样本的具体取值。分类抽样则依据某种属性的取值来选择数据子集,如按客户名称分类、按地址区域分类等。分类抽样的选取方式就是前面所述的几种方式,只是抽样以类为单位。

基于1.4.1节定义的针对餐饮行业的挖掘目标,需从客户关系管理系统、前厅管理系统、后厨管理系统、财务管理系统和物资管理系统抽取用于建模和分析的餐饮数据,主要包括:

1)餐饮企业信息:名称、位置、规模、联系方式,以及部门、人员、角色等;

2)餐饮客户信息:姓名、联系方式、消费时间、消费金额等;

3)餐饮企业菜品信息:菜品名称、菜品单价、菜品成本、所属部门等;

4)菜品销量数据:菜品名称、销售日期、销售金额、销售份数;

5)原材料供应商资料及商品数据:供应商姓名、联系方式、商品名称,以及客户评价信息;

6)促销活动数据:促销日期、促销内容、促销描述;

7)外部数据:如天气、节假日、竞争对手以及周边商业氛围等。

1.4.3 数据探索

前面所叙述的数据取样,多少是带着人们对如何实现数据挖掘目标的先验认识进行操作的。当我们拿到一个样本数据集后,它是否达到我们原来设想的要求;其中有没有什么明显的规律和趋势;有没有出现从未设想过的数据状态;属性之间有什么相关性;它们可区分成哪些类别……,这都是要首先探索的内容。

对所抽取的样本数据进行探索、审核和必要的加工处理,是保证最终挖掘模型的质量所必需的。可以说,挖掘模型的质量不会超过所抽取样本的质量。数据探索和预处理的目的是保证样本数据的质量,从而为保证模型质量打下基础。

针对1.4.2节采集的餐饮数据,数据探索主要包括:异常值分析、缺失值分析、相关性分析、周期性分析等,有关介绍详见第3章。

1.4.4 数据预处理

当采样数据维度过大时,如何进行降维处理、缺失值处理等都是数据预处理要解决的问题。

由于采样数据中常常包含许多含有噪声、不完整,甚至不一致的数据,对数据挖掘所涉及的数据对象必须进行预处理。那么如何对数据进行预处理以改善数据质量,并最后达到完善最终数据挖掘结果的目的呢?

针对采集的餐饮数据,数据预处理主要包括:数据筛选、数据变量转换、缺失值处理、坏数据处理、数据标准化、主成分分析、属性选择、数据规约等,有关介绍详见第4章。

1.4.5 挖掘建模

样本抽取完成并经预处理后,接下来要考虑的问题是:本次建模属于数据挖掘应用中的哪类问题(分类、聚类、关联规则、时序模式或者智能推荐),选用哪种算法进行模型构建?

这一步是数据挖掘工作的核心环节。针对餐饮行业的数据挖掘应用,挖掘建模主要包括基于关联规则算法的动态菜品智能推荐、基于聚类算法的餐饮客户价值分析、基于分类与预测算法的菜品销量预测、基于整体优化的新店选址。

以菜品销量预测为例,模型构建是对菜品历史销量,是综合了节假日、气候和竞争对手等采样数据轨迹的概括,它反映的是采样数据内部结构的一般特征,并与该采样数据的具体结构基本吻合。模型的具体化就是菜品销量预测公式,公式可以产生与观察值有相似结构的输出,这就是预测值。

1.4.6 模型评价

从1.4.5节的建模过程中会得出一系列的分析结果,模型评价的目的之一就是从这些模型中自动找出一个最好的模型,另外就是要根据业务对模型进行解释和应用。

对分类与预测模型和聚类分析模型的评价方法是不同的,具体评价方法详见5.1节和5.2节介绍。

相关文章
|
5月前
|
数据采集 数据可视化 搜索推荐
Python数据分析全流程指南:从数据采集到可视化呈现的实战解析
在数字化转型中,数据分析成为企业决策核心,而Python凭借其强大生态和简洁语法成为首选工具。本文通过实战案例详解数据分析全流程,涵盖数据采集、清洗、探索、建模、可视化及自动化部署,帮助读者掌握从数据到业务价值的完整技能链。
595 0
|
8月前
|
机器学习/深度学习 运维 算法
从算法菜鸟到挖掘达人:数据挖掘的算法大冒险
从算法菜鸟到挖掘达人:数据挖掘的算法大冒险
283 18
|
7月前
|
机器学习/深度学习 数据采集 算法
数据挖掘:从数据堆里“淘金”,你的数据价值被挖掘了吗?
数据挖掘:从数据堆里“淘金”,你的数据价值被挖掘了吗?
400 12
|
消息中间件 数据挖掘 Kafka
Apache Kafka流处理实战:构建实时数据分析应用
【10月更文挑战第24天】在当今这个数据爆炸的时代,能够快速准确地处理实时数据变得尤为重要。无论是金融交易监控、网络行为分析还是物联网设备的数据收集,实时数据处理技术都是不可或缺的一部分。Apache Kafka作为一款高性能的消息队列系统,不仅支持传统的消息传递模式,还提供了强大的流处理能力,能够帮助开发者构建高效、可扩展的实时数据分析应用。
721 5
|
7月前
|
数据采集 机器学习/深度学习 算法
R语言数据挖掘:从“挖井”到“淘金”
R语言数据挖掘:从“挖井”到“淘金”
149 9
|
数据采集 数据可视化 数据挖掘
基于Python的数据分析与可视化实战
本文将引导读者通过Python进行数据分析和可视化,从基础的数据操作到高级的数据可视化技巧。我们将使用Pandas库处理数据,并利用Matplotlib和Seaborn库创建直观的图表。文章不仅提供代码示例,还将解释每个步骤的重要性和目的,帮助读者理解背后的逻辑。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供有价值的见解和技能。
590 0
|
10月前
|
SQL JSON 数据可视化
基于 DIFY 的自动化数据分析实战
本文介绍如何使用DIFY搭建数据分析自动化流程,实现从输入需求到查询数据库、LLM分析再到可视化输出的全流程。基于经典的employees数据集和DIFY云端环境,通过LLM-SQL解析、SQL执行、LLM数据分析及ECharts可视化等模块,高效完成数据分析任务。此方案适用于人力资源分析、薪酬管理等数据密集型业务,显著提升效率并降低成本。
13672 16
|
9月前
|
数据采集 传感器 算法
从数据中挖掘洞见:初探数据挖掘的艺术与科学
从数据中挖掘洞见:初探数据挖掘的艺术与科学
215 11
|
10月前
|
存储 分布式计算 大数据
基于阿里云大数据平台的实时数据湖构建与数据分析实战
在大数据时代,数据湖作为集中存储和处理海量数据的架构,成为企业数据管理的核心。阿里云提供包括MaxCompute、DataWorks、E-MapReduce等在内的完整大数据平台,支持从数据采集、存储、处理到分析的全流程。本文通过电商平台案例,展示如何基于阿里云构建实时数据湖,实现数据价值挖掘。平台优势包括全托管服务、高扩展性、丰富的生态集成和强大的数据分析工具。
|
SQL 数据采集 数据可视化
深入 Python 数据分析:高级技术与实战应用
本文系统地介绍了Python在高级数据分析中的应用,涵盖数据读取、预处理、探索及可视化等关键环节,并详细展示了聚类分析、PCA、时间序列分析等高级技术。通过实际案例,帮助读者掌握解决复杂问题的方法,提升数据分析技能。使用pandas、matplotlib、seaborn及sklearn等库,提供了丰富的代码示例,便于实践操作。
323 64