自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

bitcarmanlee的博客

https://github.com/bitcarmanlee/easy-algorithm-interview-and-practice 同步更新,欢迎star

  • 博客(13)
  • 收藏
  • 关注

原创 hadoop SequenceFile详解

1. 什么是SequenceFile1.1.sequenceFile文件是Hadoop用来存储二进制形式的[Key,Value]对而设计的一种平面文件(Flat File)。 1.2.可以把SequenceFile当做是一个容器,把所有的文件打包到SequenceFile类中可以高效的对小文件进行存储和处理。 1.3.SequenceFile文件并不按照其存储的Key进行排序存储,Sequenc

2017-09-27 11:46:20 13833 1

原创 spark aggregate函数详解

aggregate算是spark中比较常用的一个函数,理解起来会比较费劲一些,现在通过几个详细的例子带大家来着重理解一下aggregate的用法。1.先看看aggregate的函数签名在spark的源码中,可以看到aggregate函数的签名如下:def aggregate[U: ClassTag](zeroValue: U)(seqOp: (U, T) => U, combOp: (U, U) =

2017-09-25 18:53:39 14489 1

转载 DOT + graphviz 轻松画图神器

本人是个不会画图的屌丝,一方面是因为需要画图的地方很少,另一方面也是因为即使需要画图,也都是很简单的几个框几个圈几条线,所以就用word之类的原始工具直接上了,结果往往是痛苦的经历换来搓搓的一张图,而且图很难修改,遇到需求变更时往往牵一发而动全身,所以每次听说画图,总有背后一凉的感觉。最近经同事介绍,了解了一下DOT和graphviz,一看到这东西就感觉遇到了真爱,简单的几行代码,轻松搞定画图,不用

2017-09-20 09:49:32 14196 1

原创 missing arguments for method toArray in trait Collection

spark 任务中有如下一段代码: .combineByKey((v: String) => { val map = new util.TreeMap[String, String]() val (timestamp, phone) = (v.split("\t")(1), v.split("\t")(0))

2017-09-19 17:00:20 1125

原创 scala for循环

1.与yield配合生成一个新的序列for循环与yield配合,可以生成一个新的序列。看个简单的例子:val res = for(i <- 1 to 8 if i%2 == 0) yield iprintln(res)最后的输出结果为:Vector(2, 4, 6, 8)2.生成一个递减的序列如果我们想要实现int i=10;i>=0;i--的功能,可以这样:for(i <- 10 to 0 by

2017-09-19 16:29:14 1099

转载 函数成了一等公民

函数式编程是这几年很受欢迎的一个话题,即使你是一个刚刚踏入职场的新人,如果在面试时能有意无意地透露出你懂那么一点点函数式编程,也会让你的面试官眼前一亮。然而函数式编程并不是一个新的概念,它的源头可以追溯到计算机尚未发明之前。本文将带领大家回顾一下函数式编程的历史,并使用 Scala 语言为大家讲解函数式编程的基本概念。1.函数式编程的历史有机会看到这篇文章的读者,大概都会知道阿兰·图灵(Alan T

2017-09-19 09:54:18 1582

原创 scala中的柯里化函数

1.什么是柯里化函数在scala相关的教程与参考文档里,经常会看到柯里化函数这个词。但是对于具体什么是柯里化函数,柯里化函数又有什么作用,其实可能很多同学都会有些疑惑。今天就跟大家来掰扯掰扯柯里化函数(Curry)。首先看两个简单的函数: def add(x: Int, y: Int) = x + y def addCurry(x: Int)(y: Int) = x + y以上两个函数实

2017-09-15 18:36:31 4253

原创 sklearn 中GBDT的损失函数

1.分类模型分类模型的损失函数包括有”deviance”和指数损失函数”exponential”,默认为对数损失函数。 相关参考链接: 1.损失函数 http://www.csuldw.com/2016/03/26/2016-03-26-loss-function/ 2.Adaboost与指数损失 http://breezedeus.github.io/2015/07/12/breezedeu

2017-09-09 21:33:03 6844 1

原创 spark生成DataFrame

1.为什么要有DataFrameSpark中的RDD叫做分布式弹性数据集。RDD是一个粗粒度的分布式计算,用函数声明式的api就能完成分布式的计算,比如wordcount,在mapreduce要写比较冗长的代码,而在Spark中可以用一行代码搞定。 既然RDD这么简单方便,为什么还要搞出一个DataFrame来呢?DataFrame是借鉴了R与pandas众DataFrame的思想,是业界处理标准

2017-09-07 18:28:17 1953

转载 Spark2.1特征处理:提取/转换/选择

1.Feature Extractors(特征提取)1.1 TF-IDF词频(Term Frequency)- 逆向文档频率(Inverse Document Frequency) 是一种特征矢量化方法,广泛应用于文本挖掘,用以评估某一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。定义:t 表示由一个单词,d 表示一个文档,D 表示多个文档构成的语料库(corpus),词频 TF(t,d

2017-09-06 17:43:17 4489

转载 GBDT实战

1.GBDT介绍GBDT(Gradient Boosting Decision Tree) 或者称为MART(Multiple Additive Regression Tree),也可叫GBRT(Gradient Boosting Regression Tree),是一种基于回归决策树的Boosting集成算法。从名字很容易看出,GBDT是由决策树(Decision Tree)与梯度提升(Gradi

2017-09-05 21:56:18 4585

原创 anaconda升级sklearn版本

调用sklearn的model_selection时,发现sklearn中没有model_selection的模块。经过检查,发现anaconda中的sklearn版本太低,为0.17版本。于是,开始了sklearn的升级之旅。1.查看原有版本首先使用conda list命令,查看一下现有的版本: 果不其然,版本是0.17.1,版本太低,果断开始升级。2.升级到最新版本使用conda update

2017-09-05 21:18:15 44058 8

转载 深度学习最全优化方法总结比较(SGD,Adagrad,Adadelta,Adam,Adamax,Nadam)

原文链接地址:http://blog.csdn.net/u012759136/article/details/52302426本文仅对一些常见的优化方法进行直观介绍和简单的比较,各种优化方法的详细内容及公式只好去认真啃论文了,在此我就不赘述了。1.SGD此处的SGD指mini-batch gradient descent,关于batch gradient descent, stochastic gr

2017-09-03 20:40:35 2096

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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