Apache Spark 机器学习 数据源 2

文章介绍了Spark在机器学习中使用的数据源,包括Parquet的列式存储优势,图像数据源的结构信息如origin、height、width等,以及LIBSVM数据源的标签和特征集合结构。这些数据源丰富了Spark处理不同类型数据的能力。

数据源

数据源作为机器学习的数据输入,以供给Spark进行机器学习,Spark技术框架除了支持Parquet、CSV、JSON以及JDBC这些常用的数据源,还提供一些特殊数据源的支持,例如,图像或者LIBSVM。

Parquet数据源

该数据源是apache parquet技术框架提供的数据存储格式,是面向列式存储结构,其设计的目标是提供高效以及高性能的数据存储、数据获取、数据压缩以及数据编码。

图像数据源

图像数据源是用于从目录中加载图像,Spark技术框架使用ImageIO的类库加载压缩的图像(jpeg、png等等格式)进行合法的展示,其加载的数据框架(DataFrame)的数据结构类型(StructType)对应的列是image,该图像数据结构存储图像数据,其包含的图像属性如下所示:

  •  origin,字符类型(StringType),表示图像的文件路径

  • height,整数类型(IntegerType),表示图像的像素高度

  • width,整数类型(IntegerType),表示图像的像素宽度

  • nChannels,整数类型(IntegerType),表示图像的通道数量

  • mode,整数类型(IntegerType),表示图像的OpenCV的兼容性类型

  • data,二进制类型(BinaryType),表示图像的字节码序列,以OpenCV的兼容性顺序,大多数的情况下是行式的BGR格式

如上所示,是Spark的技术框架对应的ImageDataSource类从指定文件夹中加载图像列表,形成一个DataFrame类型数据集合。

LIBSVM数据源

提供加载libsvm类型数据源的支持,该类型数据源的数据框架(DataFrame)包括两列,label列包括double类型的标签列表,features列包括特征集合,其数据框架描述如下所示:

  •  label,double数据类型,表述数据集的标签的列

  • features,VectorUDT数据类型,表示特征数据集

如上所示,从指定文件夹中加载libsvm的数据源,并显示数据框架的列表,其中,LIBSVM是支持向量机的类库以及对应的数据集,应用于分类以及回归的机器学习领域。

(未完待续)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机科技研究员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值