Spark mllib API- feature

本贴最后更新于 3527 天前,其中的信息可能已经斗转星移

spark 中大部分的向量转换采用训练(fit)-转化(transform)形式,因此会有对应的训练类和模型类。
该模块主要包括了,标准化、归一化、分词、特征选择

##pyspark.mllib.feature.Normalizer(p=2.0)
使用 Lp 范式对样本进行归一化。
若 1<=p<float('inf'),使用 sum(abs(vector)^p)^(1/p)范式。
若 p=float('inf'),使用 max(abs(vector))范式。

  • transform(vector)
    • 参数:vector - 需要正则化的 RDD
    • 返回: 正则化的向量 RDD

##pyspark.mllib.feature.StandardScaler(withMean=False, withStd=True)
使用训练集的列统计信息,通过修改均值和范围进行标准化

  • fit(dataset):StandardScalerModel
    计算均值和方差,并以模型保存,以便后续使用。相当于训练模型。

pyspark.mllib.feature.StandardScalerModel(java_model)

表示可以把特征转化为正态分布的 StandardScaler 模型

  • setWithMean(withMean)
    参数为 boolean,决定是否使用均值
  • setWithStd(withStd)
    参数为 boolean,决定是否使用 std
  • transform(vector)
    对特征进行标准变换

##pyspark.mllib.feature.HashingTF(numFeatures=1048576)
使用 hash 建立起 项-频度 映射。

  • numFeatures:向量维度
  • indexOf(term):返回指定项的索引
  • transform(document):将输入转化为项-频度向量

##pyspark.mllib.feature.IDF(minDocFreq=0)
IDF 为逆向文件频率,公式如下:

idf = log((m + 1) / (d(t) + 1))

其中 m 为文件总数,d(t)为出现项 t 的文件数。

  • 参数:minDocFreq
    通过 minDocFreq 参数,可以利用 IDF 过滤掉一些在文档中出现次数过少的词。若设置为 0,则返回 TF-IDF
  • 方法:fit(dataset)
    计算数据集的 IDF

##pyspark.mllib.feature.IDFModel(java_model)
IDF 模型

  • IDF():返回当前 IDF 向量
  • transform(x):将 TF 向量转化为 TF-IDF 向量

##pyspark.mllib.feature.Word2Vec

Word2Vec 创建了一个表示语料库中词语的的向量。算法首先从语料库中创建一个词汇表,然后创建对应到词汇表中单词的向量。在自然语言处理和机器学习算法中,该向量可以直接使用。

我们使用 skip-gram 模型实现,并且使用分层 softmax 方法来训练模型。

  • fit(data):使用 data 进行训练,计算向量
  • setLearningRate(learningRate):设置初始学习率
  • setMinCount(minCount):设置最少出现的 token 次数,默认 5
  • setNumIterations(numIterations):设置迭代次数,默认 1
  • setNumPartitions(numPartitions):设置分区个数,默认 1
  • setSeed(seed):设置随机种子
  • setVectorSize(vectorSize):设置向量维度,默认 100

##pyspark.mllib.feature.Word2VecModel(java_model)
Word2Vec fit 得到的模型

  • findSynonyms(word, num):找到指定 word 的 num 个同义词
  • getVectors():返回代表向量的单词表
  • transform(word):将单词转化为向量

pyspark.mllib.feature.ChiSqSelector(numTopFeatures)

创建一个卡方向量选择器,用于特征选择

  • 参数:numTopFeatures 保留的卡方较大的特征的数量。
  • fit(data):对 LabeledPoint 格式的 RDD 进行训练,返回 ChiSqSelectorModel,这个类将输入数据转化到降维的特征空间。

##pyspark.mllib.feature.ChiSqSelectorModel(java_model)
由 ChiSqSelector 训练得到的模型

  • transform(vector),对 RDD 进行转换,转化到降维的特征空间。

##pyspark.mllib.feature.ElementwiseProduct(scalingVector)
使用输入的 scalingVector 作为每一列的权值,对每一列进行扩展。

  • transform(vector):对向量进行 Hadamard 卷积。
  • Spark

    Spark 是 UC Berkeley AMP lab 所开源的类 Hadoop MapReduce 的通用并行框架。Spark 拥有 Hadoop MapReduce 所具有的优点;但不同于 MapReduce 的是 Job 中间输出结果可以保存在内存中,从而不再需要读写 HDFS,因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法。

    74 引用 • 46 回帖 • 563 关注
  • 数据挖掘
    17 引用 • 32 回帖 • 3 关注
  • 归一化
    1 引用 • 1 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • zempty

    感动ing 好久没有看到这么优质的文章!请容我小小的激动一下

推荐标签 标签

  • Postman

    Postman 是一款简单好用的 HTTP API 调试工具。

    4 引用 • 3 回帖
  • 链滴

    链滴是一个记录生活的地方。

    记录生活,连接点滴

    203 引用 • 4024 回帖
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 350 关注
  • 创造

    你创造的作品可能会帮助到很多人,如果是开源项目的话就更赞了!

    194 引用 • 1034 回帖
  • wolai

    我来 wolai:不仅仅是未来的云端笔记!

    2 引用 • 14 回帖 • 6 关注
  • 倾城之链
    23 引用 • 66 回帖 • 189 关注
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    316 引用 • 547 回帖 • 4 关注
  • 运维

    互联网运维工作,以服务为中心,以稳定、安全、高效为三个基本点,确保公司的互联网业务能够 7×24 小时为用户提供高质量的服务。

    151 引用 • 257 回帖 • 1 关注
  • 反馈

    Communication channel for makers and users.

    120 引用 • 906 回帖 • 307 关注
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 193 关注
  • 分享

    有什么新发现就分享给大家吧!

    251 引用 • 1801 回帖 • 1 关注
  • App

    App(应用程序,Application 的缩写)一般指手机软件。

    91 引用 • 384 回帖
  • 域名

    域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。

    43 引用 • 208 回帖
  • 微信

    腾讯公司 2011 年 1 月 21 日推出的一款手机通讯软件。用户可以通过摇一摇、搜索号码、扫描二维码等添加好友和关注公众平台,同时可以将自己看到的精彩内容分享到微信朋友圈。

    135 引用 • 798 回帖 • 2 关注
  • Swift

    Swift 是苹果于 2014 年 WWDC(苹果开发者大会)发布的开发语言,可与 Objective-C 共同运行于 Mac OS 和 iOS 平台,用于搭建基于苹果平台的应用程序。

    34 引用 • 37 回帖 • 565 关注
  • Typecho

    Typecho 是一款博客程序,它在 GPLv2 许可证下发行,基于 PHP 构建,可以运行在各种平台上,支持多种数据库(MySQL、PostgreSQL、SQLite)。

    12 引用 • 67 回帖 • 436 关注
  • 微服务

    微服务架构是一种架构模式,它提倡将单一应用划分成一组小的服务。服务之间互相协调,互相配合,为用户提供最终价值。每个服务运行在独立的进程中。服务于服务之间才用轻量级的通信机制互相沟通。每个服务都围绕着具体业务构建,能够被独立的部署。

    97 引用 • 155 回帖
  • Sillot

    Insights(注意当前设置 master 为默认分支)

    汐洛彖夲肜矩阵(Sillot T☳Converbenk Matrix),致力于服务智慧新彖乄,具有彖乄驱动、极致优雅、开发者友好的特点。其中汐洛绞架(Sillot-Gibbet)基于自思源笔记(siyuan-note),前身是思源笔记汐洛版(更早是思源笔记汐洛分支),是智慧新录乄终端(多端融合,移动端优先)。

    主仓库地址:Hi-Windom/Sillot

    文档地址:sillot.db.sc.cn

    注意事项:

    1. ⚠️ 汐洛仍在早期开发阶段,尚不稳定
    2. ⚠️ 汐洛并非面向普通用户设计,使用前请了解风险
    3. ⚠️ 汐洛绞架基于思源笔记,开发者尽最大努力与思源笔记保持兼容,但无法实现 100% 兼容
    29 引用 • 25 回帖 • 152 关注
  • SSL

    SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输层对网络连接进行加密。

    70 引用 • 193 回帖 • 404 关注
  • jQuery

    jQuery 是一套跨浏览器的 JavaScript 库,强化 HTML 与 JavaScript 之间的操作。由 John Resig 在 2006 年 1 月的 BarCamp NYC 上释出第一个版本。全球约有 28% 的网站使用 jQuery,是非常受欢迎的 JavaScript 库。

    63 引用 • 134 回帖 • 736 关注
  • 心情

    心是产生任何想法的源泉,心本体会陷入到对自己本体不能理解的状态中,因为心能产生任何想法,不能分出对错,不能分出自己。

    59 引用 • 369 回帖 • 2 关注
  • Ubuntu

    Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。

    127 引用 • 169 回帖
  • V2Ray
    1 引用 • 15 回帖 • 4 关注
  • ActiveMQ

    ActiveMQ 是 Apache 旗下的一款开源消息总线系统,它完整实现了 JMS 规范,是一个企业级的消息中间件。

    19 引用 • 13 回帖 • 706 关注
  • jsoup

    jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。

    6 引用 • 1 回帖 • 517 关注
  • H2

    H2 是一个开源的嵌入式数据库引擎,采用 Java 语言编写,不受平台的限制,同时 H2 提供了一个十分方便的 web 控制台用于操作和管理数据库内容。H2 还提供兼容模式,可以兼容一些主流的数据库,因此采用 H2 作为开发期的数据库非常方便。

    11 引用 • 54 回帖 • 691 关注
  • 大疆创新

    深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。

    2 引用 • 14 回帖