- 博客(20)
- 资源 (8)
- 收藏
- 关注
翻译 朴素贝叶斯基础篇(四)
朴素贝叶斯算法是有监督的学习算法,解决的是分类问题,如客户是否流失、是否值得投资、信用等级评定等多分类问题。该算法的优点在于简单易懂、学习效率高、在某些领域的分类问题中能够与决策树、神经网络相媲美。但由于该算法以自变量之间的独立(条件特征独立)性和连续变量的正态性假设为前提,就会导致算法精度在某种程度上受影响。二 朴素贝叶斯理论 朴素贝叶斯是贝叶斯决策理论的一部分,所以在讲述朴素贝叶斯之前有...
2018-05-03 16:42:57
849
原创 简单k-近邻算法原理(三)
k近邻法(k-nearest neighbor, k-NN)是1967年由Cover T和Hart P提出的一种基本分类与回归方法。它的工作原理是:存在一个样本数据集合,也称作为训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一个数据与所属分类的对应关系。输入没有标签的新数据后,将新的数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本最相似数据(最近邻)的分类标签。一...
2018-05-02 10:29:43
444
原创 用python做数据分析pandas库介绍之两种数据结构Series和DataFrame
(1)SeriesSeries是一种类似与一维数组的对象,它由一组数据以及一组与之相关的数据便签(即索引)组成,仅由一组数据即可产生最简单的Series。例如:a=Series([9,-3,4,2])得到的结果为:0 91 -32 43 2系统会自动为Series数据创建整数索引,可通过Series的values和index属性获取其数组表示形式和索引对象 ...
2018-04-27 12:51:43
478
翻译 决策树基础篇原理介绍(二)
决策树构建 上篇文章也粗略提到过,构建决策树的算法有很多。篇幅原因,本篇文章只使用ID3算法构建决策树。ID3算法 ID3算法的核心是在决策树各个结点上对应信息增益准则选择特征,递归地构建决策树。具体方法是:从根结点(root node)开始,对结点计算所有可能的特征的信息增益,选择信息增益最大的特征作为结点的特征,由该特征的不同取值建立子节点;再对子结点递归地调用以上方法,构建决策树...
2018-04-25 17:32:53
375
翻译 决策树基础篇原理介绍(一)
决策树 决策树是什么?决策树(decision tree)是一种基本的分类与回归方法。举个通俗易懂的例子,如下图所示的流程图就是一个决策树,长方形代表判断模块(decision block),椭圆形成代表终止模块(terminating block),表示已经得出结论,可以终止运行。从判断模块引出的左右箭头称作为分支(branch),它可以达到另一个判断模块或者终止模块。我们还可以这样理解,...
2018-04-25 17:29:18
2182
转载 Spark性能优化的10大问题及其解决方案
问题1:reduce task数目不合适解决方案: 需要根据实际情况调整默认配置,调整方式是修改参数Spark.default.parallelism。通常的,reduce数目设置为core数目的2-3倍。数量太大,造成很多小任务,增加启动任务的开销;数目太小,任务运行缓慢。所以要合理修改reduce的task数目即Spark.default.parallelism
2017-03-24 10:56:56
484
转载 Spark性能优化:数据倾斜调优
前言 继《Spark性能优化:开发调优篇》和《Spark性能优化:资源调优篇》讲解了每个Spark开发人员都必须熟知的开发调优与资源调优之后,本文作为《Spark性能优化指南》的高级篇,将深入分析数据倾斜调优与shuffle调优,以解决更加棘手的性能问题。1.数据倾斜调优调优概述 有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此
2017-03-24 10:55:50
321
转载 Spark的性能调优(1)
下面这些关于Spark的性能调优项,有的是来自官方的,有的是来自别的的工程师,有的则是我自己总结的。基本概念和原则 首先,要搞清楚Spark的几个基本概念和原则,否则系统的性能调优无从谈起: 每一台host上面可以并行N个worker,每一个worker下面可以并行M个executor,task们会被分配到executor上面 去执行。Stage
2017-03-24 10:54:50
367
转载 『 Spark 』10. spark 应用程序性能优化|12 个优化方法
原文:http://litaotao.github.io/boost-Spark-application-performance本系列是综合了自己在学习spark过程中的理解记录 + 对参考文章中的一些理解 + 个人实践spark过程中的一些心得而来。写这样一个系列仅仅是为了梳理个人学习spark的笔记记录,所以一切以能够理解为主,没有必要的细节就不会记录了,而且文中有时候会出现英
2017-03-24 10:53:20
468
转载 sparkSQL1.1入门之九:sparkSQL之调优
spark是一个快速的内存计算框架;同时是一个并行运算的框架。在计算性能调优的时候,除了要考虑广为人知的木桶原理外,还要考虑 平行运算的 Amdahl定理。 木桶原理又称短板理论,其核心思想是:一只木桶盛水的多少,并不取决于桶壁上最高的那块木块,而是取决于桶壁上最短的那块。将这个理论应用到系统性能优化上,系统的最终性能取决于系统中性能表现最差的组件。例如,即使系统拥有充足的内存资
2017-03-24 10:52:29
365
转载 Spark性能优化:资源调优篇
在开发完Spark作业之后,就该为作业配置合适的资源了。Spark的资源参数,基本都可以在spark-submit命令中作为参数设置。很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置这些参数,最后就只能胡乱设置,甚至压根儿不设置。资源参数设置的不合理,可能会导致没有充分利用集群资源,作业运行会极其缓慢;或者设置的资源过大,队列没有足够的资源来提供,进而导致各种异常。总之,无论是哪
2017-03-24 10:51:37
252
转载 Spark性能优化:shuffle调优
shuffle调优调优概述 大多数Spark作业的性能主要就是消耗在了shuffle环节,因为该环节包含了大量的磁盘IO、序列化、网络数据传输等操作。因此,如果要让作业的性能更上一层楼,就有必要对shuffle过程进行调优。但是也必须提醒大家的是,影响一个Spark作业性能的因素,主要还是代码开发、资源参数以及数据倾斜,shuffle调优只能在整个Spark的性能调优中占
2017-03-24 10:50:53
238
转载 Apache Spark Jobs 性能调优(一)
当你开始编写 Apache Spark 代码或者浏览公开的 API 的时候,你会遇到各种各样术语,比如 transformation,action,RDD 等等。 了解到这些是编写 Spark 代码的基础。 同样,当你任务开始失败或者你需要透过web界面去了解自己的应用为何如此费时的时候,你需要去了解一些新的名词: job, stage, task。对于这些新术语的理解有助于编写良好 Spar
2017-03-24 10:49:50
276
转载 Apache Spark Jobs 性能调优(二)
在这篇文章中,首先完成在Part I 中提到的一些东西。作者将尽量覆盖到影响 Spark 程序性能的方方面面,你们将会了解到资源调优,或者如何配置 Spark 以压榨出集群每一分资源。然后我们将讲述调试并发度,这是job性能中最难也是最重要的参数。最后,你将了解到数据本身的表达形式,Spark 读取在磁盘的上的形式(主要是Apache Avro和 Apache Parquet)以及当数据需
2017-03-24 10:45:15
314
原创 Spark要点
Spark要点:内存计算,DAG;RDD:Resilient Distributed Dataset 弹性分布式数据集RDD可以基于工作集应用RDD特征:有很多partition(数据分片),并行度从上一个RDD继承;每个split(数据分片)对应一个函数function(),函数处理就是以任务方式运行;RDD依赖一组其他的RDD;对于key-value RD
2016-09-14 11:53:50
450
原创 Spark技术内幕:Executor分配详解
当用户应用new SparkContext后,集群就会为在Worker上分配executor,那么这个过程是什么呢?本文以Standalone的Cluster为例,详细的阐述这个过程。序列图如下:1. SparkContext创建TaskScheduler和DAG SchedulerSparkContext是用户应用和Spark集群的交换的主要接口,用户应用一般首先要创建它
2016-08-25 18:32:09
1360
原创 wordcount详解shuffle机制
最近在学习Hadoop,写过了一些小的程序,但是一直没弄明白mapreduce的实现原理。找了好多有关的博客和资料,他们都是从很底层的实现过程来讲解shuffle的,对于初学者来讲并不是适合学习的材料,因为那些概念都太抽象,再加上从单机到分布式的思维模式的转换,更加增加了学习的难度。所以,我一直想写一篇专门讲解shuffle或者说讲解mapreduce的博客,这篇博客不是给很专业的人看的,而是给初
2016-08-25 14:56:08
3046
原创 HDFS总结
本文以如下两个方面展开:HDFS的组成,HDFS的各组成的工作方式也就是HDFS的功能是怎样实现的 一、HDFS是什么HDFS(Hadoop Distributed File System),是Apache基金会下的项目Hadoop的一个主要组成部分。Hadoop的另一个主要组成部分是MapReduce,作者受到谷歌的论文GFS的启发而设计出的一个分布式文件存储系统。它和M
2016-08-25 14:50:22
772
原创 Spark源码系列(一)spark-submit提交作业过程
终于开始学习Spark的源码了,第一篇我打算讲一下Spark作业的提交过程。这个是Spark的App运行图,它通过一个Driver来和集群通信,集群负责作业的分配。今天我要讲的是如何创建这个Driver Program的过程。作业提交方法以及参数我们先看一下用Spark Submit提交的方法吧,下面是从官方上面摘抄的内容。# Run on a Spar
2015-07-24 12:13:51
2269
原创 hadoop 的MapReduce原理与心得!!!
mapreduce是hadoop的核心组成,是专门用于数据计算。主要掌握 map、reduce 函数的特点、如何写函数。我的开发环境是在eclipse,运行程序的时候经常会出现 java 内存不足的情况,需要修改ecplise的jdk使用自己安装的JDK就行。对于 Hadoop 的 map 函数和 reduce 函数,处理的数据是键值对,也就是说 map 函数接收的数据是键值对,两
2015-03-13 14:29:18
565
Python机器学习数据科学家的第一个小目标
2018-04-16
数据科学实战高清
2018-02-01
程序员的数学2
2018-02-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人