- 博客(47)
- 收藏
- 关注
原创 Spark 实战(四)
ALS是交替最小二乘法ALS是交替最小二乘的简称。在Spark MLlib中特指通过交替最小二乘法求解的协同推荐算法。它通过观察所有用户给产品打分,来推断每个用户的喜好并向用户推荐适合的产品。用户评分矩阵的每行代表一个用户,每列代表一个物品。我们认为用户评分矩阵是由用户特征矩阵U乘以物品特征矩阵V得到。即A = U*V。因此,如果知道了U、V就不难求得A。ALS假设打分矩阵A是近似低秩的,
2017-04-10 09:36:03
1388
1
原创 Boost标准库安装
一、前言 Boost库是一个可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一。 Boost库由C++标准委员会库工作组成员发起,其中有些内容有望成为下一代C++标准库内容。在C++社区中影响甚大,是不折不扣的“准”标准库。Boost由于其对跨平台的强调,对标准C++的强调,与编写平台无关。大部分boost库功能的使用只需包括相应头文件即可,少
2016-09-14 16:49:10
1776
原创 opencv安装教程
OpenCv是C++图像处理的重要工具,这个深度网络的项目都得借助OpenCv进行开发的。虽然网上已经有了很多关于OpenCv的配置教程,但出于教程完整性考虑,这里还是用专门的一篇博客来介绍OpenCv的具体配置方法。我们以OpenCv的最新版本为3.1.0版本为例介绍其配置方法。 一、OpenCv的下载安装 首先,给出OpenCv的官方下载地址:OpenCv下载。
2016-09-14 15:44:21
96023
10
原创 网址
http://binhua.info/machinelearning/%E6%A2%AF%E5%BA%A6%E4%B8%8B%E9%99%8D%E6%B7%B1%E5%85%A5%E6%B5%85%E5%87%BAhttp://www.tuicool.com/articles/ZbMBjmhttp://m.blog.csdn.net/article/details?id=5103933
2016-09-13 18:08:33
958
转载 深度网络之梯度下降算法
回归与梯度下降: 回归在数学上来说是给定一个点集,能够用一条曲线去拟合之,如果这个曲线是一条直线,那就被称为线性回归,如果曲线是一条二次曲线,就被称为二次回归,回归还有很多的变种,如locally weighted回归,logistic回归,等等,这个将在后面去讲。 用一个很简单的例子来说明回归,这个例子来自很多的地方,也在很多的open source的软件中看到,
2016-09-13 17:59:45
744
原创 BP神经网络后向传播算法
下图显示了三层神经网络的后向传播算法实现过程: 每个神经元有两个单元组成。一个是权重和输入信号。另一个是非线性单元,叫做激励函数。信号e是激励信号。y = f(e) 是非线性单元的输出,即是神经元的输出。 为了训练神经网络,我们需要训练数据。训练数据由输入信号(x1 and x2 )和期
2016-09-13 16:15:10
12234
4
原创 caffe源码剖析之Blob
#ifndef CAFFE_BLOB_HPP_#define CAFFE_BLOB_HPP_#include #include #include #include "caffe/common.hpp"#include "caffe/proto/caffe.pb.h"#include "caffe/syncedmem.hpp"const int kMaxBlobAxes = 3
2016-09-12 09:57:43
638
原创 卷积神经网络概念与原理
一、卷积神经网络的基本概念 受Hubel和Wiesel对猫视觉皮层电生理研究启发,有人提出卷积神经网络(CNN),Yann Lecun 最早将CNN用于手写数字识别并一直保持了其在该问题的霸主地位。近年来卷积神经网络在多个方向持续发力,在语音识别、人脸识别、通用物体识别、运动分析、自然语言处理甚至脑电波分析方面均有突破。 卷积神经网络与普通神经网络的区别在于,卷
2016-09-05 10:00:27
302674
20
转载 web前台技术之间的关系html,css,javascript
如果你是一个Web开发初学者,那么你难免会在网上搜索HTML, CSS, XML, JS(Javascript), DOM, XSL等等这些词的意思,然而,随着学习的深入。当你把他们搅在一起,你又糊涂了,你会不停的问,HTML是什么?CSS是什么?XML是什么?JS是什么?它们到底有什么用?无论是网络百科,还是一些IT专题网站,又或者一些牛人博客,他们都会告诉你,某个单一的东西是什么,这类文章很多
2016-08-17 16:00:31
684
原创 Struts2入门示例教程
回顾Struts2的使用过程,网上搜的教程多多少少都会有点问题,重新记录下创建过程,方便查阅。1、下载Struts2的jar包下载地址:http://archive.apache.org/dist/struts/binaries/我用的是struts-2.3.14-all.zip这个版本2、创建一个web project项目下面给出所有文件均创建完成后的工程
2016-07-28 12:49:04
439
1
原创 struts2的核心和工作原理
在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处?设计目标 Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式的好处就不在提了。技术优势 Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The Jav
2016-07-28 12:47:37
840
原创 数据分析系统Hive
Hive概述 Hive是由facebook开源,最初用于解决海量结构化的日志数据统计问题。其是构建在Hadoop之上的数据仓库。数据计算使用MR,数据存储使用HDFS。Hive 定义了一种类 SQL 查询语言——HQL。类似SQL,但不完全相同。通常用于进行离线数据处理(采用MapReduce)。可认为Hive是一个HQL-MR的语言翻译器。 上述代码是ma
2016-07-13 15:27:08
1040
原创 Hadoop数据收集与入库系统Flume与Sqoop
Hadoop提供了一个中央化的存储系统,其有利于进行集中式的数据分析与数据共享。 Hadoop对存储格式没有要求。可以存储用户访问日志、产品信息以及网页数据等数据。 常见的两种数据来源。一种是分散的数据源:机器产生的数据、用户访问日志以及用户购买日志。另一种是传统系统中的数据:传统关系型数据库(MySQL、Oracle)、磁盘阵列以及磁带。 Flume由
2016-07-12 20:09:29
8550
原创 Zookeeper基本原理与应用场景
Zookeeper是一个针对大型分布式系统的可靠协调系统。提供的功能包括:配置维护、名字服务、分布式同步、组服务等。目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。Zookeeper已经成为Hadoop生态系统中的基础组件。Zookeeper有如下特点: 最终一致性:为客户端展示同一视图,这是zookeeper最重要的功能。
2016-07-12 14:48:02
4737
原创 Hbase编程实践
Hbase 访问方式 Hbase 访问方式包括: (2)、Native Java API :最常规和高效的访问方式; (3)、HBase Shell : HBase的命令行工具,最简单的接口,适合HBase管理使 用; (4)、Thrift Gateway :利用Thrift序列化技术,支持
2016-07-06 21:29:57
3104
原创 Hbase的应用场景、原理及架构分析
HBase概述 HBase是一个构建在HDFS上的分布式列存储系统。HBase是Apache Hadoop生态系统中的重要 一员,主要用于海量结构化数据存储。从逻辑上讲,HBase将数据按照表、行和列进行存储。 如图所示,Hbase构建在HDFS之上,Hadoop之下。其内部管理的文件全部存储在HDFS中。与HDFS相比两者都具有良好的容错性
2016-07-06 20:17:54
1882
1
原创 MapReduce 2.0编程实践(涉及多语言编程)
Hadoop提供了三种编程方式:Java(最原始的方式、Hadoop Streaming(支持多语言)以及Hadoop Pipes(支持C/C++)。Java编程接口是所有编程方式的基础。不同的编程接口只是暴露给用户的形式不同而已,内部执行引擎是一样的。不同编程方式效率不同。 与Linux管道机制一致,通过标准输入输出实现进程间通信 。 几个举例:
2016-07-05 20:21:56
3892
1
原创 MapReduce 2.0应用场景、原理与基本架构
现介绍计算框架MapReduce。MapReduce一个应用场景是有大量文件,里面存储了单词, 且一个单词占一行 。执行任务是如何统计每个单词出现的次数? 类似应用场景有搜索引擎中,统计最流行的K个搜索词以及统计搜索词频率,帮助优化搜索词提示 。 MapReduce将作业的整个运行过程分为两个阶段 :Map阶段和Reduce阶段 Map阶段由一定数量的Map
2016-07-05 19:15:36
5133
原创 Yarn的原理与资源调度
本节,主要介绍yarn的基本原理以及资源调度。在hadoop1.0不能满足多系统集成的背景下孕育了yarn的产生。由于多分布式系统可以很好的集成,因此yarn的出现使得整个集群的运维成本大大降低。同时,yarn可以很好的利用集群资源,避免资源的浪费。除此之外,yarn的出现实现了集群的数据共享问题。不同的分布式计算框架可以实现数据的共享,比如hadoop的mapreduce输出可以作为storm的
2016-07-01 19:24:36
17758
原创 Hadoop生态系统概述
已经不是第一天接触hadoop了,但是系统的学习一直没有进行,为了能更快的成长,决定从今天开始系统的学习大数据。并做相关技术记录。ps:希望不要三分钟热度,半途而废。要为未来的战争时刻准备着...第一次接触hadoop是在清华大学网络研究院,并对此产生浓厚的兴趣。 以上都是题外话,下面开始切入正题,本系列文章打算以hadoop为起点,围绕其对hbase、hive、pig、sqoo
2016-07-01 16:12:43
4738
转载 Flink 原理与实现:内存管理
如今,大数据领域的开源框架(Hadoop,Spark,Storm)都使用的 JVM,当然也包括 Flink。基于 JVM 的数据分析引擎都需要面对将大量数据存到内存中,这就不得不面对 JVM 存在的几个问题:Java 对象存储密度低。一个只包含 boolean 属性的对象占用了16个字节内存:对象头占了8个,boolean 属性占了1个,对齐填充占了7个。而实际上只需要一个bit(1/8字
2016-06-02 23:22:35
1619
转载 Kafka图文详解
From Quorum to ISREvery write operation goes to all replicas, but only responsesfrom a majority quorum are necessary to commit the write.每一次写操作都分发到所有副本,只有大部分节点应答才能提交写缺点:随着副本数的增加,集群中需要ack的节点数
2016-06-02 22:57:55
365
转载 Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别 初接触Hadoop技术的朋友肯定会对它体系下寄生的个个开源项目糊涂了,我敢保证Hive,Pig,HBase这些开源技术会把你搞的有些糊涂,不要紧糊涂的不止你一个,如某个菜鸟的帖子的疑问,when to use Hbase and when to use Hive?....请教了^_^没关系
2016-05-31 23:25:47
412
转载 Hadoop Oozie 学习笔记(六) Hadoop Oozie概述
本博客属原创文章,转载请注明出处:http://guoyunsky.iteye.com/blog/1391975 网上中文资料有点少,我这里翻译下官网.对自己也是个梳理,希望对大家也有用. Oozie是一个工作流引擎服务器,用于运行Hadoop Map/Reduce和Pig 任务工作流.同时Oozie还是一个Java Web程序,
2016-05-31 23:19:05
439
转载 scribe、chukwa、kafka、flume日志系统对比
1. 背景介绍 许多公司的平台每天会产生大量的日志(一般为流式数据,如,搜索引擎的pv,查询等),处理这些日志需要特定的日志系统,一般而言,这些系统需要具有以下特征:(1) 构建应用系统和分析系统的桥梁,并将它们之间的关联解耦;(2) 支持近实时的在线分析系统和类似于Hadoop之类的离线分析系统;(3) 具有高可扩展性。即:当数据量增加时,可以通过增加
2016-05-31 22:19:35
477
转载 Avro总结(RPC/序列化)
Avro(读音类似于[ævrə])是Hadoop的一个子项目,由Hadoop的创始人Doug Cutting(也是Lucene,Nutch等项目的创始人,膜拜)牵头开发,当前最新版本1.3.3。Avro是一个数据序列化系统,设计用于支持大批量数据交换的应用。它的主要特点有:支持二进制序列化方式,可以便捷,快速地处理大量数据;动态语言友好,Avro提供的机制使动态语言可以方便地处理Avro数据。
2016-05-31 22:15:26
1325
转载 基于Flume的美团日志收集系统(二)改进和优化
问题导读:1.Flume的存在些什么问题?2.基于开源的Flume美团增加了哪些功能?3.Flume系统如何调优?在《基于Flume的美团日志收集系统(一)架构和设计》中,我们详述了基于Flume的美团日志收集系统的架构设计,以及为什么做这样的设计。在本节中,我们将会讲述在实际部署和使用过程中遇到的问题,对Flume的功能改进和对系统做的优化。1 Flume
2016-05-31 21:56:31
393
转载 基于Flume的美团日志收集系统(一)架构和设计
美团的日志收集系统负责美团的所有业务日志的收集,并分别给Hadoop平台提供离线数据和Storm平台提供实时数据流。美团的日志收集系统基于Flume设计和搭建而成。《基于Flume的美团日志收集系统》将分两部分给读者呈现美团日志收集系统的架构设计和实战经验。第一部分架构和设计,将主要着眼于日志收集系统整体的架构设计,以及为什么要做这样的设计。第二部分改进和优化,将主要着眼于
2016-05-31 21:51:50
279
转载 Hadoop数据传输工具:Sqoop
Apache Sqoop(SQL-to-Hadoop) 项目旨在协助 RDBMS 与 Hadoop 之间进行高效的大数据交流。用户可以在 Sqoop 的帮助下,轻松地把关系型数据库的数据导入到 Hadoop 与其相关的系统 (如HBase和Hive)中;同时也可以把数据从 Hadoop 系统里抽取并导出到关系型数据库里。除了这些主要的功能外,Sqoop 也提供了一些诸如查看数据库表等实用的小工具。
2016-05-31 21:17:34
561
转载 flume-ng+Kafka+Storm+HDFS 实时系统搭建
一直以来都想接触Storm实时计算这块的东西,最近在群里看到上海一哥们罗宝写的Flume+Kafka+Storm的实时日志流系统的搭建文档,自己也跟着整了一遍,之前罗宝的文章中有一些要注意点没提到的,以后一些写错的点,在这边我会做修正;内容应该说绝大部分引用罗宝的文章的,这里要谢谢罗宝兄弟,还有写这篇文章@晨色星空J2EE也给了我很大帮助,这里也谢谢@晨色星空J2EE之前在弄这
2016-05-29 18:19:57
409
转载 flume+kafka+storm+mysql架构设计
我重新整理的篇最新版的安装笔记:点击打开链接版本flume-ng1.6kafka2.10-0.8.2storm0.9.5大家可以看这篇文章中的架构图和数据流向图。但是安装部署请看最新版的。另外目前主要给银行做hadoop、spark、impala、storm项目,欢迎热爱技术的朋友加好友一起探讨大数据。序言前段时间学习了storm,最近刚开blog,就把这些资料放上
2016-05-29 18:01:00
718
转载 Hadoop 的 Oozie 工作流管理引擎的实际应用(二)
定义过程我们在此描述的工作流会实现汽车GPS探测数据的获取过程。我们每个小时都会以文件的形式把探测数据传递到指定的HDFS目录中[1],其中包含有这个小时之内的所有探测数据。探测数据的获取是每天针对一天内所有的24个文件完成的。如果文件的数量是24,那么获取过程就会启动。否则:过程的总体实现请见图1当天什么都不做对前一天——最多到7天,发送剩下的内容到探测数据提
2016-05-29 17:43:00
718
转载 Hadoop 的 Oozie 工作流管理引擎的实际应用(一)
Apache Oozie 是 Apache Hadoop 生态系统中的一个关键组件,它使得开发人员能够调度电子邮件通知方面的重复作业,或者调度使用 Java™、UNIX Shell、Apache Hive、Apache Pig 和 Apache Sqoop 等各种编程语言编写的重复作业。本文将介绍处理某些业务场景的框架的实际应用,还将谈论解决方案架构师、技术架构师、顾问、数据科学家、技术领导,以及
2016-05-29 17:39:46
1884
转载 hadoop框架详细分析
mapreduce是一种模式,一种什么模式呢?一种云计算的核心计算模式,一种分布式运算技术,也是简化的分布式编程模式,它主要用于解决问题的程序开发模型,也是开发人员拆解问题的方法。如下图所示,mapreduce模式的主要思想是将自动分割要执行的问题(例如程序)拆解成map(映射)和reduce(化简)的方式,流程图如下图1所示:在数据被分割后通过Map 函数的程序将
2016-05-29 17:28:46
451
转载 Hive和Hbase
1. 两者分别是什么? Apache Hive是一个构建在Hadoop基础设施之上的数据仓库。通过Hive可以使用HQL语言查询存放在HDFS上的数据。HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce. 虽然Hive提供了SQL查询功能,但是Hive不能够进行交互查询--因为它只能够在Haoop上批量的执行Hadoop。 Apache HBase是一种K
2016-05-29 17:26:52
285
转载 Storm和Spark 学习流式实时分布式计算的设计
0. 背景最近我在做流式实时分布式计算系统的架构设计,而正好又要参加CSDN博文大赛的决赛。本来想就写Spark源码分析的文章吧。但是又想毕竟是决赛,要拿出一些自己的干货出来,仅仅是源码分析貌似分量不够。因此,我将最近一直在做的系统架构的思路整理出来,形成此文。为什么要参考Storm和Spark,因为没有参照效果可能不会太好,尤其是对于Storm和Spark由了解的同学来说,可能通过对比,
2016-05-27 22:32:42
704
1
转载 Storm:流式处理框架
诞 生 在2011年Storm开源之前,由于Hadoop的火红,整个业界都在喋喋不休地谈论大数据。Hadoop的高吞吐,海量数据处理的能力使得人们可以方便地处理海量数据。但是,Hadoop的缺点也和它的优点同样鲜明——延迟大,响应缓慢,运维复杂。有需求也就有创造,在Hadoop基本奠定了大数据霸主地位的时候,很多的开源项目都是以弥补Hadoop的实时性为目标而被创造出来。而在这个节
2016-05-27 16:28:58
483
转载 流式大数据处理的三种框架:Storm,Spark和Samza
许多分布式计算系统都可以实时或接近实时地处理大数据流。本文将对三种Apache框架分别进行简单介绍,然后尝试快速、高度概述其异同。Apache Storm在Storm中,先要设计一个用于实时计算的图状结构,我们称之为拓扑(topology)。这个拓扑将会被提交给集群,由集群中的主控节点(master node)分发代码,将任务分配给工作节点(worker node)执行。一个拓
2016-05-27 15:42:59
688
转载 探索 OpenStack 之(16):计量模块 Ceilometer 介绍及优化
0. 背景0.1 为什么要有 Ceilometer?通常云,特别是公有云在计费方面有三个层次:计量 (Metering): 收集资源的使用数据,其数据信息主要包括:使用对象(what), 使用者(who), 使用时间(when)和 用量(how much)。计费 (Rating):将资源使用数据按照商务规则转化为可计费项目并计算费用结
2016-05-24 16:01:00
953
转载 Kafka+Storm+HDFS整合架构
在基于Hadoop平台的很多应用场景中,我们需要对数据进行离线和实时分析,离线分析可以很容易地借助于Hive来实现统计分析,但是对于实时的需求Hive就不合适了。实时应用场景可以使用Storm,它是一个实时处理系统,它为实时处理类应用提供了一个计算模型,可以很容易地进行编程处理。为了统一离线和实时计算,一般情况下,我们都希望将离线和实时计算的数据源的集合统一起来作为输入,然后将数据的流向分别经由实
2016-05-23 14:13:00
1016
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人