空间维度

你需要的不是实时数仓 | 你需要的是一款强大的OLAP数据库(上)

限于喜欢 提交于 2019-11-29 12:40:19
来源:大数据技术与架构 作者:王知无 大数据技术与架构 点击右侧关注,大数据开发领域最强公众号! 暴走大数据 点击右侧关注,暴走大数据! By 大数据技术与架构 场景描述: 今年有个现象,实时数仓的建设突然就被大家所关注。我个人在公众号也写过和转载过几篇关于实时数据仓库建设的文章和方案。 对于实时数仓的狂热追求大可不必如此。 关键词: 实时数仓 OLAP架构选型 声明:本文参考了阿里巴巴菜鸟网络,知乎,网易严选,美团的实时数仓设计的公开技术文章,感谢以上各位技术同学无私付出。参考链接在文末给出。 《大数据技术与架构》读者拥有本文的优先阅读权。 本文版权个人所有,未经作者本人允许不得转载。 阿里巴巴F4 · A band镇贴 前言 今年有个现象,实时数仓建设突然就被大家所关注。我个人在公众号也写过和转载过几篇关于实时数据仓库的文章和方案。 但是对于实时数仓的狂热追求大可不必如此。 首先,在技术上几乎没有难点,基于强大的开源中间件实现实时数据仓库的需求已经变得没有那么困难。其次,实时数仓的建设一定是伴随着业务的发展而发展,武断的认为Kappa架构一定是最好的实时数仓架构是不对的。实际情况中随着业务的发展数仓的架构变得没有那么非此即彼。 在整个实时数仓的建设中,OLAP数据库的选型直接制约实时数仓的可用性和功能性。本文从业内几个典型的数仓建设和发展情况入手,从架构

文献阅读报告 - Move, Attend and Predict

人走茶凉 提交于 2019-11-28 12:50:23
Citation Al-Molegi A , Martínez-Ballesté, Antoni, Jabreel M . Move, Attend and Predict: An Attention-based Neural Model for People’s Movement Prediction[J]. Pattern Recognition Letters, 2018:S016786551830182X. 概览 本文与之前所阅读的几篇轨迹预测文章不同,其采纳循环神经网络对小场景中轨迹预测的提升,将其运用于 更大时间跨度(最小为小时,由GPS、打卡机等设备采集)的地点变换预测 上。具体来说,定义 Move, Attend and Predict (MAP) 模型,模型的输入由(二维地址, 时间戳)构成,输出则为根据以往地址信息所预测的 下一个地址 ,模型由RNN编码器、注意力模型和预测模型三部分组成,总体来说结构比较简单,某些技术受限于期刊审核时间稍有滞后,但其在实验评估部分的方法留留给我了一些启示,稍后将在文章中给出。 HighLights 时间信息与注意力机制 :以往相关研究如STF-RNN网络将(地点独热值,时间点独热值)元组一并嵌入作为循环神经网络的输入。而MAP模型则采用另一种思路,引入注意力模型,使用RNN单独处理二维地址信息并保存输出

(转载)图像检索:基于内容的图像检索技术

Deadly 提交于 2019-11-28 12:28:21
图像检索:基于内容的图像检索技术 背景与意义 在Web2.0时代,尤其是随着Flickr、Facebook等社交网站的流行,图像、视频、音频、文本等异构数据每天都在以惊人的速度增长。例如, Facebook注册用户超过10亿,每月上传超过10亿的图片;Flickr图片社交网站2015年用户上传图片数目达 7.28亿 ,平均每天用户上传约200万的图片;中国最大的电子商务系统淘宝网的后端系统上保存着286亿多张图片。针对这些包含丰富视觉信息的海量图片,如何在这些浩瀚的图像库中方便、快速、准确地查询并检索到用户所需的或感兴趣的图像,成为多媒体信息检索领域研究的热点。基于内容的图像检索方法充分发挥了计算机长于处理重复任务的优势,将人们从需要耗费大量人力、物力和财力的人工标注中解放出来。经过十来来的发展,基于内容的图像检索技术已广泛应用于搜索引擎、电子商务、医学、纺织业、皮革业等生活的方方面面。 图像检索按描述图像内容方式的不同可以分为两类,一类是基于文本的图像检索(TBIR, Text Based Image Retrieval),另一类是基于内容的图像检索(CBIR, Content Based Image Retrieval)。 基于文本的图像检索方法始于上世纪70年代,它利用文本标注的方式对图像中的内容进行描述,从而为每幅图像形成描述这幅图像内容的关键词,比如图像中的物体、场景等

Kylin

风流意气都作罢 提交于 2019-11-28 08:17:14
为什么需要Kylin? Hadoop帮助我们解决了海量数据的存储。 早期使用Hadoop的MapReduce计算模型,太慢了,只能做离线计算,无法做实时计算与迭代式计算。 Spark应运而生,并带动了Scala语言的发展,Spark的MapReduce计算模型比Hadoop的MapReduce计算模型性能提升了数十倍。 在现今的企业发展中,数据的增量是每日以百MB、G为单位的增长,面对如此之大的规模性数据增长,及运营成本、硬件成本、响应速度等各方面影响下,Spark也够呛。 在这种情况下,企业查询一般分为即席查询和定制查询。 即席查询: Hive、SparkSQL等OLAP引擎,虽然在一定程度上降低了数据分析的难度,但他们只用于即席查询的场景, 优点 就是用户根据自己的需求,自定义、灵活的选择查询条件,与普通查询最大的区别在于普通查询时根据应用定制的开发查询条件,但 随着数据量和计算复杂度的增长,响应数据无法得到保证 。 实时查询: 多数情况下是对用户的操作做出实时反应,Hive等查询引擎很难满足实时查询,一般只能对数据库中的数据进行提取计算,然后 将结果存入MySQL等关系型数据库 ,最后提供给用户进行查询,随着后面海量数据的递增, 这种方式的代价很大 。 Kylin不同于大规模并行处理的Hive等架构,Kylin是 预计算 的模式,我们提前定义好查询的维度

数据仓库

廉价感情. 提交于 2019-11-28 08:16:33
为什么需要数据仓库? 传统的数据库中,存放的数据都是一些定制性数据较多,表是二维的,一张表可以有很多字段,字段一字排开,对应的数据就一行一行写入表中,特点就是利用二维表表现多维关系。 但这种表现关系的上限和下限就定死了,比如QQ的用户信息,直接通过查询info表,对应的username、introduce等信息即可,而此时我想知道这个用户在哪个时间段购买了什么?修改信息的次数?诸如此类的指标时,就要重新设计数据库的表结构,因此无法满足我们的分析需求。 在产品脑图中可以很清晰的看到根据业务需求设计所需的字段,因此也导致 数据库是根据业务需求进行设计 。 那么有的会问,为什么一开始就不考虑好这个扩展性呢?为什么数据库一开始就不以数据仓库的形式设计? 首先数据仓库,从字面上理解就可以感受到这是一个很大的空间,而且存储的物品很杂,里面会存放酱油、沐浴露、洗发精等物品,而数据库是存放酱油、盐等厨房用品,洗浴又是一个数据库。 另外一个就是,国内互联网的发展,一开始大家都是做个软件出来,大家一起用,这个时候只要满足的了需求即可,现今不止是需求还有用户的体验等各种方面,需要根据这些分析指标做调整。 小结: 数据库是跟业务挂钩的,而数据库不可能装下一个公司的所有数据,因此数据库的设计通常是针对一个应用进行设计的。 数据仓库是依照分析需求、分析维度、分析指标进行设计的。 什么是数据仓库? 数据仓库

Python 数据科学-Numpy

谁说我不能喝 提交于 2019-11-28 04:50:48
NumPy Numpy :提供了一个在Python中做科学计算的基础库,重在数值计算,主要用于多维数组(矩阵)处理的库。用来存储和处理大型矩阵,比Python自身的嵌套列表结构要高效的多。本身是由C语言开发,是个很基础的扩展,Python其余的科学计算扩展大部分都是以此为基础。 高性能科学计算和数据分析的基础包 ndarray,多维数组(矩阵),具有矢量运算能力,快速、节省空间 矩阵运算,无需循环,可完成类似Matlab中的矢量运算 线性代数、随机数生成 使用以下语句导入 Numpy 库: import numpy as np NumPy 数组 创建数组 >>> a = np.array([1,2,3]) >>> b = np.array([(1.5,2,3), (4,5,6)], dtype = float) >>> c = np.array([[(1.5,2,3), (4,5,6)], [(3,2,1), (4,5,6)]], dtype = float) 初始化占位符 >>> np.zeros((3,4))# 创建值为0数组 >>> np.ones((2,3,4),dtype=np.int16)# 创建值为1数组 >>> d = np.arange(10,25,5)# 创建均匀间隔的数组(步进值) >>> np.linspace(0,2,9)# 创建均匀间隔的数组(样本数)

cs231N_课程笔记 (转)

本秂侑毒 提交于 2019-11-28 00:03:14
本文转载自:https://zhuanlan.zhihu.com/p/21560667?refer=intelligentunit 译者注:本文智能单元首发,译自斯坦福CS231n课程笔记Neural Nets notes 2,课程教师Andrej Karpathy授权翻译。本篇教程由杜客翻译完成,堃堃进行校对修改。译文含公式和代码,建议PC端阅读。 原文如下 内容列表: 设置数据和模型 数据预处理 权重初始化 批量归一化(Batch Normalization) 正则化(L2/L1/Maxnorm/Dropout) 损失函数 小结 设置数据和模型 在上一节中介绍了神经元的模型,它在计算内积后进行非线性激活函数计算,神经网络将这些神经元组织成各个层。这些做法共同定义了评分函数(score function)的新形式,该形式是从前面线性分类章节中的简单线性映射发展而来的。具体来说,神经网络就是进行了一系列的线性映射与非线性激活函数交织的运算。本节将讨论更多的算法设计选项,比如数据预处理,权重初始化和损失函数。 数据预处理 关于数据预处理我们有3个常用的符号,数据矩阵X,假设其尺寸是[N x D](N是数据样本的数量,D是数据的维度)。 均值减法(Mean subtraction)是预处理最常用的形式。它对数据中每个独立特征减去平均值

tensorflow识别MNIST数据集

只谈情不闲聊 提交于 2019-11-27 21:51:48
目录 数据准备 1、引入MNIST数据集 2、保存前30条数据的原始图片 一、softmax实现单神经元模型 1、初始化变量 2、向前传播以及损失函数 3、向后传播以及优化参数 4、开始训练 5、评估模型 补充 二、两层卷积网络分类 1、初始化变量 2、预定义函数 3、卷积层 4、全连接层 5、定义交叉熵损失以及测试的准确率 6、开始训练 总结 数据准备 简单的说,MNIST就是一组最基础的数据集,M代表Modified,NIST代表国家标准和技术研究所,包括从0~9的训练数字的图片,这个分类问题是机器学习最简单和最广泛使用的测试之一。 1、引入MNIST数据集 from tensorflow.examples.tutorials.mnist import input_data # 从MNIST_data/中读取MNIST数据。这条语句在数据不存在时,会自动执行下载 mnist = input_data.read_data_sets("MNIST_data/", one_hot=True) # 查看训练数据的大小 print(mnist.train.images.shape) # (55000, 784) print(mnist.train.labels.shape) # (55000, 10) # 查看验证数据的大小 print(mnist.validation.images

【论文笔记】Non-local Neural Networks

回眸只為那壹抹淺笑 提交于 2019-11-27 14:45:52
Paper: https://arxiv.org/abs/1711.07971v1 Author:Xiaolong Wang, Ross Girshick, Abhinav Gupta, Kaiming He (CMU, FAIR) 0.简述 convolution和recurrent都是对局部区域进行的操作,所以它们是典型的local operations。受计算机视觉中经典的非局部均值(non-local means)的启发,本文提出一种non-local operations用于捕获长距离依赖(long-range dependencies),即如何建立图像上两个有一定距离的像素之间的联系,如何建立视频里两帧的联系,如何建立一段话中不同词的联系等。 non-local operations在计算某个位置的响应时,是考虑所有位置features的加权——所有位置可以是空间的,时间的,时空的。这个结构可以被插入到很多计算机视觉结构中,在视频分类的任务上,non-local模型在Kinetics和Charades上都达到了最好的结果。在图像识别的任务上,non-local模型提高了COCO上物体检测/物体分割/姿态估计等任务的结果。 1. Non-local Neural Networks 1.1 定义 按照非局部均值的定义,我们定义在深度神经网络中的non-local操作如下:

金融大数据信用评分模型解析

荒凉一梦 提交于 2019-11-27 09:24:50
传统个人征信的分析维度包括: 1 )个人基本数据,如年龄、性别、职业、收入、婚姻状况、工作年限、 工作状况等; 2) 信贷情况,主要是信贷和信用卡相关数据; 3)公共数据,包括税务、工商、法院、电信、水电煤气等部门的数据; 4) 个人信用报告查询记录。 如今随着 大数据 时代的到来和发展,可用于评估人们的数据越来越丰富,如电商的交易数据、社交类数据(强社交关系如何转化为信用资产)、网络行为数据等, 来自互联网的数据将帮助金融机构更充分地了解客户。 (一) 侧重电商: 芝麻信用 以芝麻信用所构建的信用体系来看,芝麻信用分根据当前采集的个人用户信息进行加工、整理、计算后得出的信用评分,分值范围是 350 到 950,分值越高代表信用水平越好,较高的芝麻分可以帮助个人获得更高效、更优质的服务。 芝麻分综合考虑了个人用户的信用历史、行为偏好、履约能力、身份特质、人脉关系五个维度的信息,其中来自淘宝、支付宝等“阿里系”的数据占 30-40%。 1) 信用历史: 过往信用账户还款记录及信用账户历史。目前这一块内容大多来自支付宝,特别是支付宝转账和用支付宝还信用卡的历史。 2) 行为偏好: 在购物、缴费、转账、理财等活动中的偏好及稳定性。比如一个人每天打游戏 10 小时,那么就会被认为是无所事事;如果一个人经常买纸尿裤,那这个人便被认为已为人父母,相对更有责任心。 3) 履约能力: