1.局部向量

Mllib支持2种局部向量类型:密集向量(dense)和稀疏向量(sparse)。

密集向量由double类型的数组支持,而稀疏向量则由两个平行数组支持。

example:

向量(5.2,0.0,5.5)

密集向量表示:[5.2,0.0,5.5]

稀疏向量表示:(3,[0,2],[5.2,5.5])    # 3是向量(5.2,0.0,5.5)的长度,除去0值外,其他两个值的索引和值分别构成了数组[0,2]和数组[5.2,5.5]。

Vector是所有局部向量的基类,Dense-Vector和SparseVector都是Vector的具体实现。

import org.apache.spark.mllib.linalg.{Vector, Vectors}
// 创建一个dense vector (5.2, 0.0, 5.5).
val dv: Vector = Vectors.dense(5.2, 0.0, 5.5)
// 创建一个sparse vector (5.2, 0.0, 5.5)并且指定它的索引和值
val sv1: Vector = Vectors.sparse(3, Array(0, 2), Array(5.2, 5.5))
// 创建一个sparse vector (5.2, 0.0, 5.5)并且指定它的索引和值,通过指定非0的值,位置0是5.2,位置2是5.5
val sv2: Vector = Vectors.sparse(3, Seq((0, 5.2), (2, 5.5)))

  

Mllib数据类型(密集向量和稀疏向量)的更多相关文章

  1. spark-mllib 密集向量和稀疏向量

    spark-mllib 密集向量和稀疏向量 MLlib支持局部向量和矩阵存储在单台服务器,也支持存储于一个或者多个rdd的分布式矩阵 . 局部向量和局部矩阵是用作公共接口的最简单的数据模型. 基本的线 ...

  2. Spark Mllib里如何建立密集向量和稀疏向量(图文详解)

    不多说,直接上干货! 具体,见 Spark Mllib机器学习实战的第4章 Mllib基本数据类型和Mllib数理统计

  3. dense向量和稀疏向量sparse

    import org.apache.spark.mllib.linalg.Vectors object Test { def main(args: Array[String]) { val vd = ...

  4. Spark的mlib中的稠密向量和稀疏向量

    spark mlib中2种局部向量:denseVector(稠密向量)和sparseVector(稀疏向量) denseVector向量的生成方法:Vector.dense() sparseVecto ...

  5. spark 稠密向量和稀疏向量

    Spark mlib的本地向量有两种: DenseVctor   :稠密向量   其创建方式   Vector.dense(数据) SparseVector :稀疏向量   其创建方式有两种: 方法一 ...

  6. Spark MLlib数据类型

        MLlib支持几种数据类型:本地向量(local vectors),和存储在一个简单机器中的矩阵(matrices),以及由一个或多个RDDs组成的分布式矩阵. 1,本地向量(Local Ve ...

  7. scala 稀疏向量

    http://mocom.xmu.edu.cn/article/show/58481eb2e083c990247075a5/0/1 1. /创建一个标签为1.0(分类中可视为正样本)的稠密向量标注点 ...

  8. TF-IDF计算相似度为什么要对稀疏向量建立索引?

    TF-IDF的向量表示的稀疏问题 之前在看tf-idf代码时候思考了一个问题,不知道对于初学的大部分同学有没有这样一个疑惑,用tf-idf值构成的向量,维度可能跟词表的大小有关,那么对于一句话来说,这 ...

  9. 通过spark rdd 求取 特征的稀疏向量

    通过spark rdd 求取  特征的稀疏向量 spark 类标签的稀疏 特征向量 - bonelee - 博客园 http://www.cnblogs.com/bonelee/p/7814081.h ...

随机推荐

  1. SQL Server 限制IP登陆(登陆触发器运用)

    原文:SQL Server 限制IP登陆(登陆触发器运用) 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 补 ...

  2. Android零基础入门第71节:CardView简单实现卡片式布局

    还记得我们一共学过了多少UI控件了吗?都掌握的怎么样啊. 安卓中一些常用控件学习得差不多了,今天再来学习一个新的控件CardView,在实际开发中也有非常高的地位. 一.CardView简介 Card ...

  3. 比快更快——微软LightGBM

    LightGBM介绍 xgboost是一种优秀的boosting框架,但是在使用过程中,其训练耗时过长,内存占用比较大.微软在2016年推出了另外一种boosting框架--lightgbm,在不降低 ...

  4. Spring MVC的工作原理,我们来看看其源码实现

    前言 开心一刻 晚上陪老丈人吃饭,突然手机响了,我手贱按了免提……哥们:快出来喝酒!哥几个都在呢!我:今天不行,我现在陪老丈人吃饭呢.哥们:那你抓紧喝,我三杯白酒,把我岳父放倒了才出来的,你也快点.看 ...

  5. 制作Qt应用程序的插件(使用QtPlugin),对比DLL它是全平台通用的

    在Qt下,插件有两种形式,一种是用于QtCreator下,扩展IDE功能.另一种是用于扩展开发者的应用.本文要讲的是后者. 定义一个纯虚类作为插件接口 #include <QtPlugin> ...

  6. Z Order of Controls in Delphi VCL

    Get and set the Z Order of controls at runtime in Delphi VCL. If you are looking for a FireMonkey so ...

  7. VC++的Unicode编程

    本文来自:http://tech.ddvip.com/2007-03/117395585321221.html 一.什么是Unicode 先从ASCII说起,ASCII是用来表示英文字符的一种编码规范 ...

  8. 很多程序员都没搞明白的时间与时区知识 - 24时区/GMT/UTC/DST/CST/ISO8601

    全球24个时区的划分      相较于两地时间表,可以显示世界各时区时间和地名的世界时区表(World Time),就显得精密与复杂多了,通常世界时区表的表盘上会标示着全球24个时区的城市名称,但究竟 ...

  9. Spring源码解读之BeanFactoryPostProcessor的处理

    前言 前段时间旁听了某课堂两节Spring源码解析课,刚好最近自己又在重新学习中,便在这里记录一下学习所得.我之前写过一篇博文,是介绍BeanFactoryPostProcessor跟BeanPost ...

  10. SpringBoot 缓存注解 与EhCache的使用

    在SpringBoot工程中配置EhCache缓存 1.在src/main/resources下新建ehcache.xml文件 eternal=true //缓存永久有效,false相反 maxEle ...