数据挖掘流程
1.数据挖掘流程

2.数据集选取与构造
根据任务的目的,选择数据集(公开现有),或者从实际中构造自己需要的数据,如通信数据一般采用抓包解析等采集方式,此外还有大量的社交、图像、音视频等。
3.数据预处理:
提高数据质量(准确性、完整性和一致性),包括数据清理、数据集成、数据规约和数据变换方法。

(1)数据清理
忽略元祖、人工填写缺失值、使用属性的中心度量填充、给定同一类所有样本的属性均值或中位数填充、最可能的值填充
(2)数据集成
实体识别、冗余和相关分析(卡方检验,相关系数,协方差等)
(3)数据归约
维规约(小波变换和主成分分析,最常用)、数量规约(较小的数据替代原始数据)、数据压缩(有损无损两种,尤其对于图像视频等多媒体常用)
(4)数据变换和数据离散化
数据变换:光滑,属性构造,聚集,规范化,离散化和概念分层。


4.数据转换
将上面处理后的数据转换为特征,这些特征要尽可能的准确的描述数据,并且使得机器学习算法达到最优。
“数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。” -----特征工程
5.数据建模
模型主要分为传统的数学模型,机器学习模型和深度神经网络模型,根据每种模型优缺点,以及全面考虑数据集本身的特性,选择适宜本任务的最佳模型,通常会选择几种合适的模型比较结果,在实际生产中往往简单的模型效果更好。
另外,还需要调整模型的参数,使得模型表现尽可能最优。主要方法有手动调优、网格搜索、随机搜索以及基于贝叶斯的参数调优方法。-----模型选择
6.结果分析和改进
分析的对象主要是模型的优缺点(或者叫模型的评估),对于模型性能的评估通常分为以下三步:
1. 对数据集进行划分,分为训练集和测试集两部分;
2. 对模型在测试集上面的泛化性能进行度量;
3. 基于测试集上面的泛化性能,依据假设检验来推广到全部数据集上面的泛化性能
性能度量方面,常用以下几种方法:
1. 错误率/精度(accuracy)
2. 准确率(查准率,precision)/召回率(查全率,recall)
3. P-R曲线,F1度量
4. ROC曲线/AUC(最常用)
5. 代价曲线
