排序:
默认
按更新时间
按访问量

基于LR的新闻多分类(基于spark2.1.0, 附完整代码)

自从引进DataFrame之后,spark在ml方面,开始使用DataFrame作为RDD的上层封装,以屏蔽RDD层次的复杂操作,对应用开发者提供简单的DataFrame,以减少开发量。本文以最新的spark2.1.0版本为基础,构建从数据预处理、特征转换、模型训练、数据测试到模型评估的一整套处理...

2017-03-04 13:47:29

阅读数:6856

评论数:5

JUnit简单使用教程

JUnit简介 JUnit是由 Erich Gamma和Kent Beck编写的一个回归测试框架(regression testing framework)。JUnit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。 简单编...

2016-09-19 13:45:28

阅读数:614

评论数:0

Hadoop HA——namenode无法启动问题解决

 今天按照之前《Hadoop2.6.0 + zookeeper集群环境搭建 》一文重新搭建了Hadoop2.7.2+zookeeper的HA,实现namenode挂掉后可以自动切换,总体来说还算比较顺利。搭建完成后一切正常!但是!第二天重新启动集群的时候出现问题:两个namenode有一个始...

2016-09-03 23:30:56

阅读数:8759

评论数:2

[Spark2.0]ML 调优:模型选择和超参数调优

本节讲述如何使用MLlib提供的工具来对ML算法和Pipline进行调优。内建的交叉验证和其他工具允许用户在算法和Pipline中优化超参数。     模型选择(又名 超参数调优)         在ML中一个重要的任务就是模型选择,或者使用给定的数据为给定的任务寻找最适合的模型或参数。这也叫做 ...

2016-08-20 01:13:08

阅读数:4364

评论数:0

[Spark2.0]ML piplines管道模式

在本部分,我们将介绍ML Pipline的概念。ML Pipline提供了一整套建立在DataFrame上的高级API,它能帮助用户创建和调优实际机器学习管道。 Pipline的主要思想        Mllib标准化了机器学习算法的API,使得将多个算法融合到一个简单的管道或工作流更为简...

2016-08-17 23:26:57

阅读数:2924

评论数:0

[Spark2.0]Spark SQL, DataFrames 和Datasets指南

综述         Spark SQL是Spark提供的针对结构化数据处理的模块。不同于基本的Spark RDD API,SparkSQL提供的接口提供了更多的关于数据和计算执行的信息。在内部,SparkSQL使用这些额外信息完成额外的优化。这里有几种方式可以和SparkSQL相互操作,包括SQ...

2016-08-16 00:00:28

阅读数:6290

评论数:0

梯度下降法及其Python实现

梯度下降法(gradient descent),又名最速下降法(steepest descent)是求解无约束最优化问题最常用的方法,它是一种迭代方法,每一步主要的操作是求解目标函数的梯度向量,将当前位置的负梯度方向作为搜索方向(因为在该方向上目标函数下降最快,这也是最速下降法名称的由来)。 梯度...

2016-06-01 12:24:36

阅读数:31686

评论数:6

最小二乘法及其python实现

最小二乘法Least Square Method,做为分类回归算法的基础,有着悠久的历史(由马里·勒让德于1806年提出)。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其他...

2016-05-24 16:57:30

阅读数:31439

评论数:9

基于centos6.7的Ceph分布式文件系统安装指南

Ceph是加州大学Santa Cruz分校的Sage Weil(DreamHost的联合创始人)专为博士论文设计的新一代自由软件分布式文件系统。自2007年毕业之后,Sage开始全职投入到Ceph开 发之中,使其能适用于生产环境。Ceph的主要目标是设计成基于POSIX的没有单点故障的分布式文件系...

2016-05-13 14:46:33

阅读数:15516

评论数:2

【问题跟踪】KryoException: java.io.IOException: No space left on device

今天在对LDA进行不同参数训练模型,记录其avglogLikelihood和logPerplexity,以便判断模型训练是否收敛时,产生了一个令人极度崩溃的事儿:程序在辛辛苦苦跑了7.3h后...挂了!证据如下: 早上一来看这张图,好像跑完了,然后点进去看...然后就没有然后了 每次迭代都...

2016-04-15 10:35:46

阅读数:13088

评论数:4

基于spark mllib的LDA模型训练源码解析

一直想写一篇关于LDA模型训练的源代码走读,但是因为个人水平以及时间原因未能如愿,今天想起来就记录了一下源码走读过程。有什么解释的不太清楚或者错误的地方请大家指正。 LDA模型训练大致经过以下这些步骤: 输入数据(已转换为Vector)和参数设置根据LDA选择的算法初始化优化器迭代优化器获...

2016-04-13 17:14:16

阅读数:6995

评论数:5

基于spark mllib的LDA模型训练Scala代码实现

从事NLP算法工作也快一年了,主要时间花在了LDA上面,但是却一直没有好好整理一下,决心把到目前为止做的一些东西分享出来,如有疑问敬请指正。 在Github上建了一个自己的项目:CkoocNLP(去这个名字是想做一个NLP相关的技术的代码实现,不过目前上面还没有什么东西)。里面已经有基于spar...

2016-04-08 17:37:05

阅读数:5935

评论数:18

通俗理解LDA主题模型

声明:本文转载自July的CSDN博客,仅作为知识记录所用,原文链接:http://blog.csdn.net/v_july_v/article/details/41209515 0 前言     印象中,最开始听说“LDA”这个名词,是缘于rickjin在2013年3...

2016-04-08 17:05:10

阅读数:23327

评论数:3

spark1.6.0集群安装

1. 概述 本文是对spark1.6.0分布式集群的安装的一个详细说明,旨在帮助相关人员按照本说明能够快速搭建并使用spark集群。   2. 安装环境 本安装说明的示例环境部署如下: IP 外网IP hostname 备注 10.47.110...

2016-03-31 18:34:08

阅读数:1800

评论数:0

[Scala函数特性系列]——部分应用函数和柯里化

柯里化是指将原来接收两个参数的函数变成接收一个参数的函数的过程,新的函数返回一个以原有第二个参数作为参数的函数。是不是有种被绕晕了的感觉,先别急,先看一个示例:   结果:   这里可以看出,柯里化函数与多个参数的函数具有相同的功能,这中间有一个“应用部分函数”,或者叫“偏...

2016-02-22 17:23:00

阅读数:1813

评论数:0

[Scala函数特性系列]——高阶函数

带函数参数的函数由于是一个接受函数参数的函数,故被称为高阶函数,像之前讲到的map()函数就是高阶函数。如下例所示: 上述代码中,apply函数接受一个函数f作为参数,接受一个Int类型的参数,进行f(v)运算,在下面又给出了f具体的定义(layout函数)。   同样的,高阶函数也...

2016-02-21 21:25:57

阅读数:3829

评论数:0

[Scala函数特性系列]——作为值的函数和借贷模式

在scala中,函数是“头等公民”,几乎所有的操作都是以函数形式进行。同样的,能够在变量中存放函数(听上去很神奇吧)。示例如下: 本段代码将ceil函数赋值给fun变量,ceil后面的_表名这是一个函数,而不是碰巧忘记给它传参。   在scala中,不需要为每个函数命名,这种没有命名的函数叫做...

2016-02-21 17:04:51

阅读数:1182

评论数:0

[Scala函数特性系列]——使用可变参数

scala同java一样,在定义函数的时候支持接收可变长参数列表,即最后一个参数的可以被重复。示例代码如下:   结果: 在此代码中我们定义函数printInfo接收变长参数列表,其最后一个参数names可以根据实际情况进行传参(这里我们传了3个实参)。注意,函数可变参数只能是该函数的最后...

2016-02-19 17:12:55

阅读数:2759

评论数:0

[Scala函数特性系列]——使用命名参数

在正常的函数调用中,调用参数在调用函数中是按其定义时的参数顺序进行一一匹配。如果需要按不同的顺序传递参数,就要使用到scala的一种函数特性——命名参数。 命名参数使用方法很简单,即在调用函数时,指定参数名并进行赋值。示例代码如下:   结果:   从代码和结果中就可以看出使用命名参数的优...

2016-02-19 16:53:33

阅读数:624

评论数:0

[Scala函数特性系列]——按名称传递参数

通常情况下,函数的参数是传值参数;即参数的值在它被传递给函数之前被确定。但是,如果我们需要编写一个接收参数不希望马上计算,直到调用函数内的表达式才进行真正的计算的函数。对于这种情况,Scala提供按名称参数调用函数。 示例代码如下:   结果:   在代码中,如果定义函数的时候,传入参数不...

2016-02-19 16:32:36

阅读数:2783

评论数:1

提示
确定要删除当前文章?
取消 删除
关闭
关闭