Python Data Science: Basic Concepts of Data Analysis

Learn the concepts of BI, DW, DM

Posted by Mengran on August 15, 2021

BI, DW & DM

Three Key Concepts:

  • BI, Business Intelligence 商业智能: 利用数据预测用户购物行为
  • DW, Data Warehouse 数据仓库: 积累的顾客的消费行为习惯会存储在数据仓库
  • DM, Data Mining 数据挖掘: 通过对个体进行消费行为分析总结出来的规律

BI - Business Intelligence

商业智能的英文是 Business Intelligence,缩写是 BI。

相比于数据仓库、数据挖掘,它是一个更大的概念。

商业智能可以说是基于数据仓库,经过了数据挖掘后,得到了商业价值的过程。

所以说数据仓库是个金矿,数据挖掘是炼金术,而商业报告则是黄金。

DW - Data Warenhouse

数据仓库的英文是 Data Warehouse,缩写是 DW。

它可以说是 BI 这个房子的地基,搭建好 DW 这个地基之后,才能进行分析使用,最后产生价值。

数据仓库可以说是数据库的升级概念。从逻辑上理解,数据库和数据仓库没有什么区别,都是通过数据库技术来存储数据的。

不过从数量上来讲,数据仓库的量更庞大,适用于数据挖掘和数据分析。

数据库可以理解是一项技术。数据仓库将原有的多个数据来源中的数据进行汇总、整理而得。

数据进入数据仓库前,必须消除数据中的不一致性,方便后续进行数据分析和挖掘。

DM - Data Mining

数据挖掘的英文是 Data Mining,缩写是 DM。

在商业智能 BI 中经常会使用到数据挖掘技术。

数据挖掘的核心包括分类、聚类、预测、关联分析等任务,通过这些炼金术,我们可以从数据仓库中得到宝藏,比如商业报告。

很多时候,企业老板总是以结果为导向,他们认为商业报告才是他们想要的,但是这也是需要经过地基 DW、搬运工 ETL、科学家 DM 等共同的努力才得到的。

MetaData vs Data Element

在数据仓库中,还有一类重要的数据是元数据,那么它和数据元有什么区别呢?

  • 元数据(MetaData):描述其它数据的数据,也称为“中介数据”。
  • 数据元(Data Element):就是最小数据单元。
  • 具体的信息就是数据元,加起来叫作元数据。

MetaData:

在图书这个元数据中,书名、作者、出版社就是数据元。你可以理解是最小的数据单元。

通过元数据,可以很方便地帮助我们管理数据仓库:

元数据最大的好处是使信息的描述和分类实现了结构化,让机器处理起来很方便。

元数据可以很方便地应用于数据仓库。比如数据仓库中有数据和数据之间的各种复杂关系,为了描述这些关系,元数据可以对数据仓库的数据进行定义,刻画数据的抽取和转换规则,存储与数据仓库主题有关的各种信息。而且整个数据仓库的运行都是基于元数据的,比如抽取调度数据、获取历史数据等。

Process of Data Mining

数据挖掘不是凭空产生的,它与数据库技术的发展分不开。

数据挖掘的一个英文解释叫 Knowledge Discovery in Database,简称 KDD,也就是数据库中的知识发现。

在数据挖掘中,有几个非常重要的任务,就是分类、聚类、预测和关联分析

Categorisation 分类

分类:通过训练集得到一个分类模型,然后用这个模型可以对其他数据进行分类。

一般来说数据可以划分为训练集和测试集:

  • 训练集是用来给机器做训练的,通常是人们整理好训练数据,以及这些数据对应的分类标识。如果测试集中,人们已经给出了测试结果,我们就可以用测试结果来做验证,从而了解分类器在测试环境下的表现。
  • 通过训练,机器就产生了自我分类的模型,然后机器就可以拿着这个分类模型,对测试集中的数据进行分类预测

Clustering 聚类

聚类就是将数据自动聚类成几个类别。

聚到一起的相似度大,不在一起的差异性大。我们往往利用聚类来做数据划分。

Difference between Categorisation and Clustering:

  • 分类是已知的类别,然后看样本属于哪个分类。
  • 聚类是不知道有哪些类别,按照样本的属性来进行聚类,实际上是一种降维方式。

Prediction 预测

通过当前和历史数据来预测未来趋势,它可以更好地帮助我们识别机遇和风险。

Correlation Analysis 关联分析

发现数据中的关联规则,它被广泛应用在购物篮分析,或事务数据分析中。

数据挖掘要怎么完成这些任务呢?它需要将数据库中的数据经过一系列的加工计算,最终得出有用的信息。

The Process of KDD:

  • Import Data 输入数据
  • Pre process data 数据预处理:将数据转化成我们想要的格式,然后我们再对数据进行挖掘,最后通过后处理得到我们想要的信息。包括特征选择,维规约,规范化,选择数据子集
  • Data Mining 数据挖掘
  • Post process data 数据后处理:将模型预测的结果进一步处理后,再导出。比如在二分类问题中,一般能得到的是 0~1 之间的概率值,此时把数据以 0.5 为界限进行四舍五入就可以实现后处理。包括模式过滤,可视化,模式表示

Data Pre-processing:

输入的数据通常是从不同渠道采集而来的,所以数据的格式以及质量是参差不齐的,所以我们需要对数据进行预处理。

数据预处理中,我们会对数据进行几个处理步骤:数据清洗,数据集成,以及数据变换

  • Data Cleaning 数据清洗:为了去除重复数据,去噪声(即干扰数据)以及填充缺失值。
  • Data Integration 数据集成:是将多个数据源中的数据存放在一个统一的数据存储中。
  • Data Conversion 数据变换:将数据转换成适合数据挖掘的形式。比如,通过归一化将属性数据按照比例缩放,这样就可以将数值落入一个特定的区间内,比如 0~1 之间。