[机器学习spark]sparkmllib实现数据基本统计(代码片段)

发量不足 发量不足     2022-12-07     794

关键词:

👨‍🎓👨‍🎓博主:发量不足

📑📑本期更新内容:Spark MLlib基本统计

📑📑下篇文章预告:Spark MLlib的分类🔥🔥

简介:耐心,自信来源于你强大的思想和知识基础!!

目录

Spark MLlib基本统计

一.摘要统计

二.相关统计

三.分层抽样


Spark MLlib基本统计

MLlib提供了很多统计方法,包含摘要统计、相关统计、分层抽样、假设检验、随机数生成等统计方法,利用这些统计方法可帮助用户更好地对结果数据进行处理和分析

MLlib三个核心功能:

1.实用程序:统计方法,如描述性统计、卡方检验、线性代数、模型评估方法等
2.数据准备:特征提取、变换、分类特征的散列和一些自然语言处理方法
3.机器学习方法:实现了一些流行和高级的回归,分类和聚类算法

一.摘要统计

导包

import org.apache.spark.mllib.linalg.Vectors

import org.apache.spark.mllib.stat.MultivariateStatisticalSummary,Statistics

创建密集矩阵

val observations=sc.parallelize(Seq(Vectors.dense(1.0,10.0,100.0),Vectors.dense(2.0,20.0,200.0),Vectors.dense(3.0,30.0,300.0)))

 

计算列摘要统计信息

val sum:MultivariateStatisticalSummary=Statistics.colStats(observations)

打印平均值

打印方差

打印每列非零元素的个数

 

二.相关统计

相关系数是反应两个变量之间相关关系密切程度的统计指标,这也是统计学中常用的统计方式,MLlib提供了计算多个序列之间相关统计的方法,目前MLlib默认采用皮尔森相关系数计算方法。皮尔森相关系数也称皮尔森积矩相关系数,它是一种线性相关系数。

导包

 

创建序列

val seriesX:RDD[Double]=sc.parallelize(Array(1,2,3,3,5))

val seriesY:RDD[Double]=sc.parallelize(Array(11,22,33,33,555))

计算seX和seY的相关系数

val correlation:Double = Statistics.corr(seriesX,seriesY,"pearson")

打印数据

println(s"Correlation is : $correlation")

利用皮尔森方法计算密集矩阵相关系数

val data:RDD[Vector]=sc.parallelize(Seq(Vectors.dense(1.0,10.0,100.0),Vectors.dense(2.0,20.0,200.0),Vectors.dense(5.0,33.0,366.0)))

 

val corMx:Matrix = Statistics.corr(data,"pearson")

打印数据

println(corMx.toString)

 

三.分层抽样

分层抽样法也叫类型抽样法,它是先将总体样本按照某种特征分为若干次级(层),如何再从每一层内进行独立取样,组成一个样本的统计学计算方法。

创建键值对RDD

val data=sc.parallelize(Seq((1,'a'),(1,'b'),(2,'c'),(2,'d'),(2,'e'),(3,'f')))

设定抽样格式

val fra = Map(1->0.1,2->0.6,3->0.3)

 

从每层获取抽样样本

val app=data.sampleByKey(withReplacement=false,fractions=fra)

从每层获取精确样本

 

打印抽样样本

打印精确样本

 

学习笔记spark——sparkmllib应用——机器学习简介sparkmllib简介

一、机器学习简介1.1、机器学习概念机器学习就是让机器能像人一样有学习、理解、认识的能力。机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如何在经验学习中改善具体算法的性能。机... 查看详情

学习笔记spark——sparkmllib应用——机器学习简介sparkmllib简介

一、机器学习简介1.1、机器学习概念机器学习就是让机器能像人一样有学习、理解、认识的能力。机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如何在经验学习中改善具体算法的性能。机... 查看详情

spark入门实战系列--8.sparkmllib(上)--机器学习及sparkmllib简介

 Spark入门实战系列--8.SparkMLlib(上)--机器学习及SparkMLlib简介 1、机器学习概念1.1 机器学习的定义在维基百科上对机器学习提出以下几种定义:l“机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,... 查看详情

spark2.x机器学习视频教程

...实例进行解析实战,帮助大家真正从理论到实践全面掌握SparkMLlib分布式机器学习。通过该课程的学习同学们可以全面掌握SparkMLlib机器学习,进而能够在实际工作中进行ML的应用开发和定制开发。课程目录:第一章:Spark构建协同... 查看详情

[机器学习spark]sparkmllib机器学习

...f393;博主:发量不足📑📑本期更新内容:SparkMLlib机器学习算法库📑📑下篇文章预告:Spark机器学习库MLlib的概述💨💨简介:分享的是一个当代疫情在校封校的大学生学习笔记目录初始机器... 查看详情

spark学习10_1sparkmllib入门与相关资料索引(代码片段)

...文指南关于spark机器学习的知乎专栏Spark入门实战系列--8.SparkMLlib(上)--机器学习及SparkMLlib简介基本Kmeans算法介绍及其实现sparkMLlib概念1:相关系数(PPMCCorPCCorPearson‘sr皮尔森相关系数)andSpearman‘scorrelation(史匹曼等级相关系... 查看详情

大数据sparkmllib机器学习(代码片段)

目录1什么是SparkMLlib?2支持的数据类型2.1本地向量集2.1.1、密集型数据集2.1.2稀疏型数据集2.2向量标签2.3本地矩阵2.4分布式矩阵2.4.1行矩阵2.4.2行索引矩阵2.4.3坐标矩阵2.4.4分块矩阵3RDD、DataSet、Dataframe区别及转化1什么是SparkMLlib... 查看详情

[机器学习spark]sparkmllib分类

👨‍🎓👨‍🎓博主:发量不足📑📑本期更新内容:SparkMLlib分类🔥🔥📑📑下篇文章预告:Hadoop全分布部署🔥🔥🔥简介:耐心 查看详情

spark机器学习中ml和mllib中矩阵向量

1:SparkML与SparkMLLIB区别?SparkMLlib是面向RDD数据抽象的编程工具类库,现在已经逐渐不再被Spark团队支持,逐渐转向SparkML库,SparkML是面向DataFrame编程的。 2:SparkML与SparkMLLIB中矩阵、向量定义区别?这两个类库中的矩阵与向量... 查看详情

14.sparkmllib之快速入门(代码片段)

简介??MLlib是Spark提供提供机器学习的库,专为在集群上并行运行的情况而设计。MLlib包含很多机器学习算法,可在Spark支持的所有编程语言中使用。??MLlib设计理念是将数据以RDD的形式表示,然后在分布式数据集上调用各种算法。... 查看详情

学习参考《深度实践spark机器学习》pdf+吴茂贵

...习的技术、原理和核心组件,包括SparkML、SparkMLPipeline、SparkMLlib,以及如何构建一个Spark机器学习系统。第二部分(8~12章)主要以实例为主,讲解了SparkML的各种机器学习算法,包括推荐模型、分类模型、聚类模型、回归模型,以... 查看详情

sparkmllib介绍

SparkMLlib介绍Spark之所以在机器学习方面具有得天独厚的优势,有以下几点原因:(1)机器学习算法一般都有很多个步骤迭代计算的过程,机器学习的计算需要在多次迭代后获得足够小的误差或者足够收敛才会停止,迭代时如果... 查看详情

使用 Spark Streaming 和机器学习实时预测在线数据

...其分类为欺诈与否?随机森林分类器ML模型是使用Scala和SparkMLLib使用历史数据开发、训练和测试并持久化的。实时事务数据正在 查看详情

scalascala学习资料

...现-CSDN博客学习:java设计模式—分类-飞翔荷兰人-博客园SparkMLlib分类算法之决策树学习-DamonDr-博客园【SparkMllib】决策树,随机森林——预测森林植被类型-简书Spark入门实战系列--8.SparkMLlib(下)--机器学习库SparkML 查看详情

学习笔记spark——sparkmllib应用——sparkmllib应用(代码片段)

三、SparkMLlib应用3.1、SparkML线性模型数据准备基于SparkML的线性模型需要DataFrame类型的模型数据,DataFrame需要包含:一列标签列,一列由多个特征合并得到的特征列训练模型模型应用模型评估任务1:某专门面向年轻人制... 查看详情

学习笔记spark——sparkmllib应用——sparkmllib应用(代码片段)

三、SparkMLlib应用3.1、SparkML线性模型数据准备基于SparkML的线性模型需要DataFrame类型的模型数据,DataFrame需要包含:一列标签列,一列由多个特征合并得到的特征列训练模型模型应用模型评估任务1:某专门面向年轻人制... 查看详情

sparkmllib介绍

SparkMllib介绍MLLIB是Spark的机器学习库。提供了利用Spark构建大规模和易用性的机器学习平台,组件:五大特性:1-ML算法,包含-机器学习分类算法、聚类算法、属性降维算法、协同过滤算法2-特征化:特征抽取、... 查看详情

sparkmllib介绍

SparkMllib介绍MLLIB是Spark的机器学习库。提供了利用Spark构建大规模和易用性的机器学习平台,组件:五大特性:1-ML算法,包含-机器学习分类算法、聚类算法、属性降维算法、协同过滤算法2-特征化:特征抽取、... 查看详情