
----------大数据挖掘和机器学习----------
文章平均质量分 67
小9
优秀是一种习惯
展开
-
hadoop编程(8)-MapReduce案例:次排序(Secondary Sort)详解
所谓次排序,是指在最终输出中key关联着一个排好序的value-list,例如这样的需求: /** * 按年份(月份)列出温度,温度升序排列<br> * 年-月 温度1,日期1 温度2,日期2 * 1990-1 -300,day:2 -200,day:1 */思路根据我们掌握的知识,我们知道在reduce之前,数据会按key进行归并,假设我们以年原创 2017-10-29 17:42:50 · 1158 阅读 · 0 评论 -
hadoop概念(1)-了解MapReduce
MapReduce是什么?MapReduce是一种编程范式,可以利用集群环境的成千上万台服务器实现强大的可伸缩性。MapReduce一次最早源于函数式编程,由Google在一篇名为“MapReduce:Simplified Data Processing on Large Clusters”的文章中率先提出。使用MapReduce范式时,重点是编写两个函数:map()过滤和聚集原创 2017-10-19 16:22:11 · 989 阅读 · 1 评论 -
Spark-shell初体验:WordCount
安装spark略运行spark-shell略代码val rdd1=sc.parallelize(List("hello","spark")) // 生成一个rddval rdd2=sc.parallelize(List("bye","spark"))// 第二个rdd// 映射集合为(单词,1)然后并集,然后按key做归约,最后写入文件rdd1.map(x=>原创 2018-01-04 23:28:11 · 528 阅读 · 0 评论 -
朴素贝叶斯(normal bayes)及其应用(MLIA第四章)
1. 概念简介贝叶斯(约1701-1761) Thomas Bayes,英国数学家。约1701年出生于伦敦,做过神甫。1742年成为英国皇家学会会员。1761年4月7日逝世。贝叶斯在数学方面主要研究概率论。他首先将归纳推理法用于概率论基础理论,并创立了贝叶斯统计理论,对于统计决策函数、统计推断、统计的估算等做出了贡献。贝叶斯定理也称贝叶斯推理,早在18世纪,英国学者贝叶斯(1702~176原创 2018-01-22 23:12:49 · 730 阅读 · 0 评论 -
Spark集成开发环境
Scala and INTELLIJ IDEA根据Scala官方文档指示安装INTELLIJ的Scala插件。然后就可以愉快地在INTELLIJ IDEA里面书写Scala代码了。其实本文所指spark集成开发环境就是scala开发环境。有了这个开发环境我们只需以下几步:添加spark依赖在项目下的build.sbt里面添加对spark的依赖: 注意最后一行nam原创 2018-01-05 18:13:23 · 807 阅读 · 0 评论 -
AdaBoost分类算法小结
基本思想:反复使用弱分类器,这是一个迭代过程。在上一次分类的基础上,基于上次分类的错误率和错分样本,调整当次迭代的参数以优化上次分类的结果……弱分类器——单层决策树单层决策树其实就是一个树桩,在学得一个树桩(buildStump)的算法中,要尝试每个维度,尝试每种步长,尝试每种正负划分,得到一个分类的估计,在所有分类估计中选择错误最少的来作为结果(即学习结果)。也就是单层的最优划分方式。原创 2018-01-24 13:57:00 · 1070 阅读 · 0 评论 -
概念收纳
凸凸集的定义为:其几何意义表示为:如果集合C中任意2个元素连线上的点也在集合C中,则C为凸集。其示意图如下所示:常见的凸集有: n维实数空间;一些范数约束形式的集合;仿射子空间;凸集的交集;n维半正定矩阵集;这些都可以通过凸集的定义去证明。凸函数的定义为:其几何意义表示为函数任意两点连线上的值大于对应自变量处的函数值,示意图如下: 凸函数的一阶充转载 2018-01-23 14:35:32 · 531 阅读 · 0 评论 -
对SVM的推导和编码实践(一)
线性模型对于线性可分的二分类数据集,我们总是可以写出:wTx+b" role="presentation" style="position: relative;">wTx+bwTx+bw^Tx+b这样的预测模型,其中w是各属性的权重,b是截距即线性回归中的w0" role="presentation" style="position: relative;">w0w0w_0在线性回归或逻原创 2018-01-23 01:20:38 · 587 阅读 · 0 评论 -
对SVM的推导和编码实践(二)SMO算法的推导
目标函数和约束条件(13)minα12∑i,j=1Nαiαjyiyj<xi,xj>−∑i=1Nαis.t.,∑i=1Nαiyi=00≤αi≤C" role="presentation">minα12∑i,j=1Nαi原创 2018-01-23 18:58:21 · 959 阅读 · 0 评论 -
对极大似然估计的理解
参数估计随机变量X属于某种分布,这样的分布是可以用概率函数表示出来的p(X=x)=f(x)p(X=x)=f(x)也就是说,要计算一个具体的x的概率,只需将x作为函数f的输入求值即可。常见的分布的概率函数有:两点分布:f(x)=px(1−p)(1−x)f(x)=p^x(1-p)^{(1-x)},p又是什么呢,这里很容易引起混淆,它是x=1的概率,注意f(x)并不等于1,它是x取某原创 2018-01-20 00:39:52 · 925 阅读 · 0 评论 -
拉格朗日乘子法(Lagrange multiplier)
问题提出已知函数z=f(x,y)z=f(x,y)(本文假设它是凸函数,三维空间想象成抛物体,局部极值就是全域唯一极值),现在要求minf(x,y)min f(x,y)只需求解方程组:⎧⎩⎨⎪⎪⎪⎪∂f∂x=0∂f∂y=0\left\{\begin{matrix}\frac{\partial f}{\partial x} =0 \\\\\frac{\partial f}{\pa原创 2018-01-03 14:51:34 · 6232 阅读 · 0 评论 -
逻辑回归(logistics regression)及其应用(MLIA第五章)
一、基本原理逻辑回归与线性回归Logistic Regression和Linear Regression的原理是相似的,按照我自己的理解,可以简单的描述为这样的过程:(1)找一个合适的预测函数(Andrew Ng的公开课中称为hypothesis),一般表示为h函数,该函数就是我们需要找的分类函数,它用来预测输入数据的判断结果。这个过程时非常关键的,需要对数据有一定的了解或分析,知原创 2018-01-19 19:05:17 · 647 阅读 · 0 评论 -
hive(1):安装与启动
hadoop先保留单机模式下载hive 1.2.2解压缩配置环境变量命令:hive,启动hive shellhadoop版本为2.6.5,报错:[ERROR] Terminal initialization failed; falling back to unsupportedjava.lang.IncompatibleClassChangeError: Found class jl...原创 2019-04-26 18:11:19 · 588 阅读 · 0 评论 -
hadoop概念(3)-MapReduce各个执行阶段及Shuffle过程详解
MapReduce各个执行阶段(1)MapReduce框架使用InputFormat模块做Map前的预处理,比如验证输入的格式是否符合输入定义;然后,将输入文件切分为逻辑上的多个InputSplit,InputSplit是MapReduce对文件进行处理和运算的输入单位,只是一个逻辑概念,每个InputSplit并没有对文件进行实际切割,只是记录了要处理的数据的位置和长度。(2)因为InputSpl原创 2017-10-21 16:51:30 · 10791 阅读 · 1 评论 -
hadoop概念(2)-MapReduce数据流
数据流术语Job一个完整的MapReduce作业称作job,它包括三部分: - 输入数据 - MapReduce程序 - 配置信息 Hadoop工作时会将job分成若干个task:map任务和reduce任务。 The tasks are scheduled using YARN and run on nodes in the cluster. If a task fails, i原创 2017-10-21 13:03:50 · 594 阅读 · 0 评论 -
SVD应用示例:图像压缩
SVD的另一个应用示例:图像压缩原创 2017-12-31 19:17:23 · 1653 阅读 · 0 评论 -
PCA、SVD应用示例:低维投影可视化
PCA和SVD做降维可视化的一个栗子原创 2017-12-31 17:43:05 · 1887 阅读 · 0 评论 -
奇异值分解(singular value decomposition)
特征值分解与PCA一个矩阵的特征值分解可以将矩阵分解为更加规则和简单的子矩阵A=PTΣPA=P^{T}\Sigma P ,而且这些子矩阵从不同侧面描述了原矩阵的主要特征,如P(特征向量做列向量的矩阵)描述了新投影方向,在这个方向上A表示的线性变换速度最快,而Σ\Sigma描述了对应方向上的伸缩速度。但是不是所有矩阵都可以轻易地如此分解,当且仅当A有满秩的线性无关的特征向量,才可以做这样的分解。不过,原创 2017-12-29 22:37:21 · 9193 阅读 · 0 评论 -
正交相似变换
线性空间的度量首先用Hα=[hij]n∗nH_{\alpha}=\left [h_{ij} \right ]_{n*n}来表示线性空间的度量,其中hij=G(αi,αj)h_{ij}=G(\alpha _{i},\alpha _{j}) , α\alpha 是空间中的一组基。 HαH_{\alpha}是一个对称矩阵。这样定义以后,有:对任意两个向量v1v_{1}和v2v_{2},v1=原创 2017-12-27 21:53:44 · 17877 阅读 · 0 评论 -
概率统计-描述性统计量
均值如果有一个包含 n 个值的样本 xi, 那么它们的均值 μ 就等于这些值的 总和除以值的数量, 即: μ=1n∑xi\mu = \frac{1}{n}\sum x_{i}方差均值是为了描述集中趋势, 而方差则是描述分散情况。 一组值的方差 等于: σ2=1n∑i(xi−μ)2\sigma ^{2}=\frac{1}{n}\sum_{i}\left ( x_{i}-\mu \right原创 2017-12-23 19:01:53 · 677 阅读 · 0 评论 -
hadoop编程(7)-MapReduce案例:使用TotalOrderPartitioner完成全局排序
上一章我们用自定义的分区器完成了数据的全局排序,这一章我们将利用hadoop框架提供的API完成同样的功能。主要参考《Hadoop权威指南》第九章。原创 2017-10-28 14:39:24 · 641 阅读 · 0 评论 -
hadoop编程(5)-MapReduce案例:通过MinimalMapReduce进一步了解MR的机制
Mapper和Reducer中编写映射和归约的逻辑,而对Job的配置影响着框架如果执行作业。首先我们来了解下Job类的setter方法及含义。Configuration of MapReduce types in the new APIJob setter methodsetInputFormatClass():输入的数据的格式,默认为TextInputFormat,决定着如何对原始数据切片,也决定原创 2017-10-22 22:40:26 · 410 阅读 · 0 评论 -
hadoop编程(6)-MapReduce案例:Partitioner应用实例——全局排序
默认的HashPartitioner是按hashcode来对key分区的,这会导致数值接近的key无规律散落在各桶中,从而无法做到全局有序。因此我们需要自定义分区器,让桶与桶之内的元素整体有序(桶0整体<桶1整体……<桶29整体)。具体实现在文中,为配合分区算法,我们事先需要求得最大和最小值(因为有负数)。本例实现方式的问题在于:关键值key的数值并非均匀分布在30个桶内,这将导致reduce任务不均衡,原创 2017-10-28 00:24:04 · 839 阅读 · 0 评论 -
hadoop编程(4)-MapReduce案例:求每一年的最高温度
本文以最简洁的方式还原《Hadoop权威指南》一书中第一个MapReduce程序,便于后续继续深入了解MapReduce的能力。原创 2017-10-22 16:13:04 · 3008 阅读 · 0 评论 -
hadoop编程(3)-MapReduce案例:文本去重
本文介绍一个MapReduce案例,对数据集的所有文本行进行去重,以加强对MapReduce-API和工作机制的理解。原创 2017-10-21 18:35:10 · 928 阅读 · 0 评论 -
hadoop编程(2)-准备编程和本地测试环境
作为开发人员,我们可以暂时忽略集群等部署环境,首要关注开发环境。本文介绍一种可在IDE上运行\调试MapReduce程序的方法,方便程序员尽快开始大数据编程。原创 2017-10-19 15:12:43 · 550 阅读 · 0 评论 -
hadoop编程(1)-单机环境、伪分布式环境配置
本文介绍Hadoop环境搭建和第一个MapReduce程序的运行。原创 2017-10-19 14:29:47 · 401 阅读 · 0 评论 -
hive(2):单机本地数据配置与第一个例子
show tables;show databases;配置:在hive.conf目录下新建hive-site.xml,输入如下内容:<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><property&g...原创 2019-04-26 19:09:18 · 539 阅读 · 0 评论