大数据的特征
- 数据量大(Volume)。起始计量单位至少是PB(Petabyte)、EB(Exabyte)或ZB(Zettabyte)
- 数据种类多(Variety)。结构化数据、非结构化数据和半结构化数据以及文本、图像、音频、视频等不同来源数据
- 处理速度快(Velocity)。大数据的增长速度快,要求处理速度也快,以满足时效性要求
- 数据价值密度低(Value)。大量数据中只有一小部分是真正有价值
大数据预处理
- 数据清洗。移除重复、纠正/移除错误和不一致、补充缺失数据
- 数据集成。合并不同来源数据、解决数据源有冲突和不一致数据
- 数据转换。规范化/标准化数据,构建相同尺度数据;离散化数据,将连续变量转换为分类变量;创建新特征、选择重要特征和移除无关特征
- 数据规约。维度归约,减少数据集中的特征数量和计算量;数据抽样,获取代表性样本。
- 数据平滑。对于具有噪声的数据,使用平滑技术减少随机波动。
- 数据规范化。数据转换为标准形式,例如将所有特征缩放到[0, 1]或[-1, 1]的范围内。
有监督学习
模型从输入特征(也称为独立变量)x和相应的输出标签(也称为因变量或目标变量)y中学习映射关系
主要面向场景
- 分类问题。垃圾邮件检测、疾病诊断、客户细分、手写数字识别等
- 回归问题。房价预测、股票价格预测、天气预测、销售预测等。
无监督学习
模型从输入数据中自行发现数据的结构和特征
主要面向场景
- 聚类。将数据集中的样本划分成若干个簇,使得同一个簇内的样本相似度高,而不同簇之间的样本相似度低。
- 降维。减少数据的维度,同时尽可能保留原始数据的重要信息
- 异常值检测。识别数据集中的异常点或离群点,在信用卡欺诈检测、网络安全、工业缺陷检测等领域有广泛应用。
- 数据密度估计。分析输入数据的概率分布。
- 数据生成。分析数据特征,生成新的数据点。
- 关联规则发现。发现大型数据库中变量间的关联关系。
词频统计
将所有文本转换为统一的大小写(通常是小写),将文本分割成单词或词汇单元,去除文本中频繁出现但对分析帮助不大的词,计算每个单词在文本中出现的次数,将统计结果以列表、表格或图形(如词云)的形式展示
词频-逆文档频率
词频-逆文档频率(Term Frequency-Inverse Document Frequency,简称TF-IDF)是一种用于信息检索与文本挖掘的常用加权技术。它的主要思想是:如果某个词语在一篇文章中出现的频率高(即词频高),并且在其他文章中很少出现(即逆文档频率高),则认为这个词语具有很好的类别区分能力,对这篇文章的内容有很好的指示作用。
TF-IDF(t,d,D)=TF(t,d)×IDF(t,D)
其中:
- t 是词语。
- d 是文档。
- D 是文档集合。
- TF(t,d) 是词语 t 在文档 d 中的词频。
- IDF(t,D) 是词语 t 在文档集合 D 中的逆文档频率。
排序
距离计算
-
欧几里得距离(Euclidean Distance)
对于两个点 x(a1, a2,...an)和 y(b1,b2,...bi),欧几里得距离计算公式为:
d(x, y)=\sqrt{\sum_{i=1}^{n}(a_i-b_i)^2} -
曼哈顿距离(Manhattan Distance)
对于两个点 x(a1, a2,...an)和 y(b1,b2,...bi),曼哈顿距离计算公式为:
d(x, y)=\sum_{i=1}^{n}|a_i-b_i|
分类
模型通过学习训练数据的特征和对应的标签,来预测新数据点的类别。
聚类
将数据集中的样本划分成若干个簇,使得同一个簇内的样本相似度高,而不同簇之间的样本相似度低
-
K-means 算法
通过迭代地移动簇中心(质心)来最小化簇内样本与簇中心之间的距离的平方和 -
Canopy 算法
将数据划分成若干个重叠的子集,每个子集作为一个类簇,海量高维数据进行粗略聚类的一种方法 -
Graph Mining 最短路径
在图挖掘(Graph Mining)中,寻找最短路径是一个非常重要的任务,它可以帮助我们理解图结构中的连接性和距离特性。
常见降维技术
- SVD
奇异值分解(Singular Value Decomposition,简称SVD)是一种数学上的矩阵分解技术,任意一个m×n的实数矩阵A可以分解为三个特定矩阵的乘积:
A=UΣV^T
- U 是一个m×m的正交矩阵,其列向量称为左奇异向量
- Σ 是一个m×n的对角矩阵,对角线上的元素称为奇异值,且这些奇异值非负且按从大到小排列。
- V 是一个n×n的正交矩阵,其列向量称为右奇异向量
- V^T 表示V的转置矩阵
通常修改Σ(奇异值矩阵),将较小的奇异值设置为0,可以去除数据中的噪声和不重要的成分,从而实现数据的降维。
- t-SNE
t-SNE(t-Distributed Stochastic Neighbor Embedding)是一种非线性降维技术,特别适合于将高维数据集降维到二维或三维,以便进行可视化。
- 使用概率测量方法,计算原始高维空间中所有数据点之间的相似度
- 低维空间中,通过迭代优化,使这些数据点的相似度尽量与高维空间中的相似度一致
t-SNE创建了一个缩小的特征空间,相似的样本由附近的点建模,相似的样本被选中的可能性很高,而不同的点被选中的可能性极小。
变量关联
变量关联是统计学和机器学习中一个重要的概念,它涉及到分析不同变量之间的关系和相互影响。
- 相关性分析
- 皮尔逊相关系数(Pearson Correlation Coefficient):用于衡量两个连续变量之间的线性相关程度。其值范围从-1到1,其中1表示完全正相关,-1表示完全负相关,0表示无相关。
- 斯皮尔曼等级相关系数(Spearman's Rank Correlation Coefficient):用于衡量两个变量的等级(或排序)之间的相关性,适用于非正态分布的数据或顺序变量。
- 偏相关分析(Partial Correlation Analysis):用于评估两个变量之间的相关性,同时控制一个或多个其他变量的影响。
- 距离相关分析(Distance Correlation Analysis):基于距离的非参数相关性度量,可以评估两个高维数据集之间的相关性。
- 卡方检验(Chi-Square Test):用于评估两个分类变量之间的独立性,即它们是否相关。
- 协方差(Covariance):衡量两个变量的联合变异程度,其符号表示变量之间的相关方向(正或负)。
- 相关图(Correlation Matrix):显示数据集中所有变量之间的相关系数,便于快速识别哪些变量之间存在显著的相关性。
- 线性回归分析(Linear Regression Analysis):如果两个变量之间存在线性关系,可以使用线性回归模型来预测一个变量的值基于另一个变量的值
- PCA
主成分分析(Principal Component Analysis,简称PCA),通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,称为主成分。
- 先对数据进行标准化处理,使得每个变量的均值为0,标准差为1
- 如果数据已经中心化(均值为0),则计算协方差矩阵;如果数据未中心化,则计算相关系数矩阵。
- 对协方差矩阵或相关系数矩阵进行特征分解,得到特征值和对应的特征向量。
- 根据特征值的大小选择前几个最大的特征值对应的特征向量,将原始数据投影到选定的主成分上,形成新的特征空间。
- 因子分析
因子分析的核心思想是将一组观测变量解释为潜在因子和误差项的线性组合。潜在因子代表了观测变量背后的共同变异性,而误差项则代表了无法被潜在因子解释的特殊变异性。
- 因子分析对数据的质量和数量有一定要求,数据应尽可能是正态分布的。
- 因子分析的结果受到因子提取方法和因子旋转方法的影响,需要合理选择。
- 因子分析的结果需要结合专业知识进行解释,因子的命名和解释应具有实际意义
因子分析最初应用于教育心理学,现在其实际应用十分广泛,包括环境监测数据的分析、消费者习惯、市场服务调查、个性测试、形象调查、顾客行为分类、市场划分等多个领域
- 因果推断
因果推断是统计学和数据科学中的核心问题之一,它涉及推断一个变量(原因)对另一个变量(结果)的影响。
- 因果推断的一个关键特征是通过引入潜在结果框架去清晰地定义因果关系,利用随机化实验的思想作为有效识别因果关系的基础
数据过滤
数据过滤是数据处理中的一个重要步骤,它涉及使用特定条件或标准从大型数据集中筛选出最相关的信息
- 基于规则的条件过滤
于规则的条件过滤是一种数据预处理技术,它使用预定义的规则或条件来筛选数据。这种方法简单、直接,适用于多种场景,尤其是在数据清洗和特征工程中。
- 规则的精确性:确保规则能够准确反映业务需求和数据特性。
- 数据的完整性:过滤后的数据应保持完整性,避免过度过滤导致信息丢失。
- 规则的可维护性:随着业务发展,过滤规则可能需要调整,确保规则易于理解和维护。
- 性能考量:对于大规模数据集,过滤操作可能耗时较长,需要考虑性能优化
- 统计过滤
统计过滤是一种基于统计学原理的数据预处理技术,用于识别和处理异常值、离群点或噪声数据。
- 超出均值±3个标准差的数据点被认为是异常值
- 小于Q1-1.5_IQR或大于Q3+1.5_IQR的数据点被认为是异常值
- Z分数的绝对值大于某个阈值(如3)的数据点可以被视为异常值
- 基于模型的过滤
基于模型的过滤是一种数据预处理技术,它利用机器学习模型来识别和过滤异常值或不相关的数据点。
机器学习的过滤模型的优势在于它们可以利用数据中的信息,自动地学习和构建过滤和筛选的标准和方法,实现更高的精度和效果。
数据生成
数据生成是数据科学和机器学习中的一个关键环节,尤其在数据稀缺或需要扩充数据集以提高模型性能时。
-
数据增强
主要用于图像、文本和音频数据。例如,在图像处理中,可以通过旋转、缩放、裁剪、颜色变换等方法生成新的图像数据;在文本中,可以通过同义词替换、句子重组等方法增加数据多样性 -
合成数据生成
使用算法生成合成数据,例如使用生成对抗网络(GANs)生成图像或文本数据。合成数据可以帮助保护隐私,同时提供额外的训练样本。 -
数据插值
在连续数据集中,使用插值方法填充缺失值,如线性插值、多项式插值或样条插值 -
贝叶斯方法
在贝叶斯统计中,参数被视为随机变量,并使用先验分布来描述这些参数。通过收集新的数据,我们可以得到似然函数和后验分布。通过先验分布和似然函数,使用马尔可夫链蒙特卡洛(MCMC)方法生成后验分布的样本 -
基于模型
使用机器学习模型,如随机森林或梯度提升树,生成新数据。
决策树
决策树是一种简单直观的机器学习算法,用于分类和回归任务。
- 决策树由节点(Node)和边(Edge)组成,形似树状结构。每个内部节点代表一个特征上的测试,每条边代表测试的结果,每个叶节点(Leaf Node)代表一个预测结果。
- 根据所选特征和阈值,将数据分割成子集,每个子集被分配到左子树或右子树。
- 对每个子集递归地应用特征选择和数据分割,直到满足停止条件,如达到最大深度、节点中的样本数量小于阈值或纯度已经很高。
随机森林
随机森林(Random Forest)是一种集成学习方法,由多棵决策树构成,用于提高预测的准确性和鲁棒性