Spark 实战
文章平均质量分 92
Spark Streaming 构建了流处理应用,帮助业务人员去实时分析用户行为,Spark SQL + Hive 搭建的公司级数仓,服务于所有业务部门,基于 Spark MLlib 来构建机器学习框架,配置化的开发框架让上百位算法工程师从繁重的数据处理、特征工程、样本工程中解脱
不二人生
刀光剑影江湖情,摧枯拉朽浪滔滔。功名利禄拂衣去,山高水远路迢迢。一个上得了厅堂下得了厨房、左手写诗右手写词的男人
展开
-
Spark MLlib 特征工程系列—特征提取Word2Vec
Word2Vec 是一种流行的词嵌入方法,用于将词语转换为低维的向量表示,这些向量能够捕捉词语之间的语义关系。:词向量的每个维度(即向量中的每个数字)通常不直接代表某个具体的语法或语义特征,而是从大规模语料中学习到的抽象特征。词向量的维度指的是用来表示每个词语的向量的长度,或者说是向量中包含的数值元素的个数。Word2Vec 的主要目标是生成单词的向量表示,而不是整个文本的向量表示。:如果词向量的维度是 100,那么每个词语都被表示为一个 100 维的实数向量,类似于一个包含 100 个数字的列表。原创 2024-08-16 09:48:55 · 360 阅读 · 0 评论 -
Spark MLlib 特征工程系列—特征提取FeatureHasher
FeatureHasher 是一种强大的工具,适合处理复杂、多样化的数据类型,特别是在大规模数据处理中。然而,它的哈希冲突问题和不可解释性也需要在使用时考虑到。通过灵活地设置特征大小(numFeatures)和选择适合的输入特征列,可以有效地将各种类型的数据映射为固定大小的特征向量。原创 2024-08-16 09:47:54 · 240 阅读 · 0 评论 -
Spark MLlib 特征工程系列—特征提取CountVectorizer
CountVectorizer的优点是,简单易用:易于理解和实现,适用于基本的文本分类任务。可解释性强:生成的特征向量中的每一维度对应词汇表中的一个词汇,易于解释。缺点是维度高:词汇表的大小可能很大,导致特征向量的维度非常高,可能需要处理大量的特征。稀疏矩阵:生成的特征向量通常是稀疏的,存储和计算上可能会浪费资源。无法捕捉词语顺序:CountVectorizer 只关注词的出现次数,忽略了词语的顺序和上下文信息。CountVectorizer 是一种将文本数据转换为特征向量的技术,通过统计词频来生成特征。原创 2024-08-15 15:55:39 · 835 阅读 · 0 评论 -
Spark MLlib 特征工程系列—特征提取 TF-IDF
TF-IDF 是文本分类、聚类、信息检索等任务中的一种常见特征提取方法。通过降低常见词汇的权重,TF-IDF 能够更有效地捕捉那些对文档区分度更高的词汇,从而提高模型的效果。IDF 是 TF-IDF 中的重要组成部分,用于调整词频,以减少常见词对文本分析任务的影响。在 Spark 中,可以结合 HashingTF 或 CountVectorizer 来计算 TF-IDF 特征,进而用于各种机器学习任务。原创 2024-08-15 15:53:33 · 1135 阅读 · 0 评论 -
Spark MLlib 特征工程系列—相关性计算
假设检验(hypothesis testing),又称统计假设检验,是一种统计方法用来判断样本与样本、样本与总体的差异是由抽样误差引起还是本质差别造成的统计推断方法,从而判断样本数据是否支持某个假设。显著性检验是假设检验中最常用的一种方法,也是一种最基本的统计推断形式,其基本原理是先对总体的特征做出某种假设,然后通过抽样研究的统计推理,对此假设应该被拒绝还是接受做出推断。计算两个数据序列之间的相关性是统计学中的一项常见操作。可用的度量是列的最大值、最小值、平均值、总和、方差、标准差和非零个数,以及总计数。原创 2024-08-15 15:51:42 · 718 阅读 · 0 评论 -
Spark MLlib Pipeline
简单地说,Pipeline 是一套基于 DataFrame 的高阶开发 API,它让开发者以一种高效的方式,更轻松地将多种算法组合成单个管道或工作流,来打造端到端的机器学习流水线。这么说可能比较抽象,我们不妨先来看看,Pipeline 都有哪些核心组件,它们又提供了哪些功能。Pipeline将多个s 和Estimators 链接在一起生成一个ML Pipeline。原创 2024-08-14 16:48:10 · 1544 阅读 · 0 评论 -
Spark MLlib 特征工程(下)
可以看到,随着特征工程的推进,模型在训练集上的预测误差越来越小,这说明模型的拟合能力越来越强,而这也就意味着,特征工程确实有助于模型性能的提升。原创 2024-08-14 16:45:52 · 1560 阅读 · 0 评论 -
Spark MLlib 特征工程(上)
特征选择的动机,在于提取与预测标的关联度更高的特征,从而精简模型尺寸、提升模型泛化能力。特征选择可以从两方面入手,业务出发的专家经验和基于数据的统计分析。归一化的目的,在于去掉不同特征之间量纲的影响,避免量纲不一致而导致的梯度下降震荡、模型收敛效率低下等问题。归一化的具体做法,是把不同特征都缩放到同一个值域。在这方面,Spark MLlib 提供了多种归一化方法供开发者选择。原创 2024-08-14 16:42:19 · 1611 阅读 · 0 评论 -
Spark MLlib 从房价预测”开始
这里的问题就是根据已有的历史数据,建立模型,来预测房价,因为这个例子中我们的问题其实已经很明显了,但是在一些大型项目中,我们一开始要做的事情其实是理清边界,从而确定问题,接下来根据问题来收集数据你需要掌握机器学习是怎样的一个计算过程。所谓机器学习(Machine Learning),它指的是这样一种计算过程。原创 2024-08-14 16:40:24 · 1506 阅读 · 0 评论 -
Spark MLlib数据结构—Vector和Matrix
对于多类分类,标签应该是从零开始的类索引:0、1、2,MLlib支持密集矩阵和稀疏矩阵,密集矩阵的全部值按列主顺序存储在单个double类型数组中,稀疏矩阵的非零条目值按列主顺序以压缩稀疏列(CSC)格式存储。MLlib支持存储在单台机器上的局部向量和矩阵,以及由一个或多个RDD支持的分布式矩阵。记住,MLlib中的本地矩阵是按列的主顺序存储的。是一个面向行的分布式矩阵,没有有意义的行索引,由 RDD 和它的行支持,其中每行都是一个局部向量。是一个没有有意义行索引的行式分布式矩阵,例如,特征向量的集合。原创 2024-08-14 16:38:30 · 1441 阅读 · 0 评论