10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

如何使大数据易于管理

  • 2017-01-08
  • 本文字数:2298 字

    阅读完需:约 8 分钟

现在的社会是一个高速发展的社会,科技发达,信息流通,人们之间的交流越来越密切,生活也越来越方便,大数据就是这个高科技时代的产物。

有人把数据比喻为蕴藏能量的煤矿。煤炭按照性质有焦煤、无烟煤、肥煤、贫煤等分类,而露天煤矿、深山煤矿的挖掘成本又不一样。与此类似,大数据并不在“大”,而在于“有用”。价值含量、挖掘成本比数量更为重要。对于很多行业而言,如何利用这些大规模数据是赢得竞争的关键。

大数据分析的困境

不过,“大数据”在经济发展中的巨大意义并不代表其能取代一切对于社会问题的理性思考,科学发展的逻辑不能被湮没在海量数据中。著名经济学家路德维希·冯·米塞斯曾提醒过:“就今日言,有很多人忙碌于资料之无益累积,以致对问题之说明与解决,丧失了其对特殊的经济意义的了解。”这确实是需要警惕的。

然而,分析大数据集可能会产生问题。首先,大数据是大规模的,有时太大,不能通过常用的分析工具有效地处理。

麻省理工学院 Andrew and Erna Viterbi 电气工程与计算机科学院的教授、人工智能实验室(CSAIL)的主任 Daniela Rus、博士后 Mikhail Volkov 和曾在 Rus 科研小组的博士后、以色列海法大学机器人大数据实验室主任 Dan Feldman 针对这个问题,提出了一个解决方案,将大数据变成可管理的数据。InfoQ 整理并分享出来,以飨读者。

大数据困境破解之道

处理大数据的一种方法是缩减它。如果您可以确定大数据的一个子集,用于保留大数据最重要的数学关系,那么就可以进行有用的分析,不然对整个大数据集来说将是非常耗时,不实用。

然而,用于提取这样的“核心集”的方法根据应用程序而有所不同。研究人员提出了一种提取可由大量常用数据分析工具使用的核心集的新技术,适合自然语言处理、推荐系统、天气预报、金融和神经科学等。

“这些都是在许多应用程序中使用的非常通用的算法,”Danilla Rus 表示,“它们是这么多问题的基础。通过为这些工具确定出一个巨大矩阵的核心集,人们就可以进行以前根本不可能的计算。”

例如,在他们的论文中,研究人员将他们的技术应用于矩阵(也就是表格),它将英语版维基百科上的每篇文章映射到网站上出现的每一个单词。这个矩阵,将有140 万篇文章和440 万列的单词。

维基百科的这个矩阵实在太大了,以至于不能使用低秩近似来进行分析,该算法可以识别自由格式文本的主题。但是一旦提取出来核心集,研究人员就能够使用低秩近似来提取维基百科上最常见的100 个主题的单词集群。例如,包含“服装”、“新娘”、“伴娘”和“婚礼”的集群表示婚礼的主题;包含“枪”、“开枪”、“卡住”、“手枪”和“枪击”的集群显示指定了枪击事件的主题。

让大数据可管理的思路

研究人员的核心集新技术对于一系列工具非常有用,如奇异值分解、主成分分析、潜在语义分析。但它们共同之处是缩减:它们采用具有大量的变量数据集,并且用更少的变量找到它们的近似值。

在这里,这些工具的作用与核心集类似。但是,核心集是特定应用程序,而dimension-reduction 工具是通用的。这种共性使它们的密集型计算比核心集更多:对于大型数据集的实际应用来说计算量过于庞大。

研究人员认为,他们的技术可以用于用例如从数百万变量中嗅出数据集:例如根据他们使用的词语对维基百科页面的描述——只有几千个单词。在这一点上,诸如广泛使用的主成分分析技术可以将变量的数量减少到几百个,甚至更少。

维基百科矩阵有440 万列,每列代表一个不同的单词。维基百科上的任何文章只会使用几千个不同的单词。所以在任何给定的行:这意味着在任何一篇文章,只有几千个矩阵插槽中的440 万将会有内容。在稀疏矩阵中,大多数值为零。

至关重要的是,这项新技术保留了稀疏性,这使得它的核心集更容易进行计算处理。如果它们涉及零的大量乘法和加法,计算将会变得更容易。

新的核心集技术使用所谓的合并和归约过程,它开始取数据集中的20 个数据点,并选择其中10 个作为满20 个数据点的最具代表性的点。然后它对另外20 个数据点执行相同的过程,合并这两个所减少的10 个数据点,形成新的20 个数据点的数据集,然后它进行另一个缩减的过程,从20 个下降到10 个。

即使该过程检查巨大数据集中的每个数据点,因为它每次只处理数据点的小集合,它仍然保持了很高的计算效率。在他们的论文中,研究人员证明,对于涉及一系列通用缩减工具的应用,他们提供的缩减方法提供了对完整数据集非常好的近似结果。

该方法取决于数据的几何解释,涉及称为超球面的概念,它是圆的多维模拟。任何一个多变量数据可以看做是多维空间中的一个点。以同样的方式,数字对(1,1)定义二维空间中的点:在X 轴上的点和Y 轴上的点——就是维基百科表中的一行,其440 万个数字,定义了一个440 万个圆的空间上每一个点。

研究人员的缩减算法从找到数据点子集的平均值开始——比如说20 个,那就要进行缩减。这也定义了高维空间中的点,称之为初始点。然后将20 个数据点中的每一个“投影”到以初始点为中心的超球面上。也就是说,算法在数据点方向上找到超球面上的唯一点。

该算法选择超球面上的20 个数据投影之一。然后选择最远离第一个的超球面上的投影。它找到两者之间的中点,然后选择距离中点最远的数据投影;然后它再找到这两点之间的中点,并选择距离它最远的数据投影; 如此循环。

研究人员能够证明通过这种方法选择的中点将非常快地收敛在超球面的中心。该方法将快速选择其平均值接近20 个初始点的点的子集。这使得它们特别合适核心集中的候选者。


感谢杜小芳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-01-08 18:001960
用户头像

发布了 376 篇内容, 共 205.0 次阅读, 收获喜欢 949 次。

关注

评论

发布
暂无评论
发现更多内容

HBase Compaction 原理与线上调优实践

vivo互联网技术

HBase 调优参数 Minor Compaction Compaction策略 Major Compaction

Golang微服务框架Kratos实现Thrift服务

Kratos 大乱炖 —— 整合其他Web框架:Gin、FastHttp、Hertz

golang gin Kratos

拥抱AIGC,他们有话说——百度李双龙:AIGC将赋能多个场域并惠及千行百业

百度Geek说

人工智能 百度 企业号 7 月 PK 榜 AICG

澜舟科技创始人兼CEO周明受邀出席“基础科学与人工智能论坛”

澜舟孟子开源社区

Java基础 日期和时间

java易二三

程序员 计算机 java 编程

fastposter v2.16.0 让海报开发更简单

物有本末

图片处理 海报生成器 海报生成

密集发布AI应用后,微软2023财报传递了什么信号|TE解读

TE智库

开发语音APP源码的小知识

山东布谷网络科技

app源码

初探webAssembly | 京东物流技术团队

京东科技开发者

前端 webassembly JavaScrip Blazor WebAssembly 企业号 7 月 PK 榜

Golang微服务框架kratos实现SignalR服务

golang SignalR Kratos

快速玩转 Llama2!阿里云机器学习 PAI 推出最佳实践(二)——全参数微调训练

阿里云大数据AI技术

人工智能

直播程序源码开发建设:洞察全局,数据统计与分析功能-山东布谷科技创作

山东布谷科技

软件开发 直播 源码搭建 程序源码 mac数据分析统计软件

澜舟科技CEO周明:不过度追求AGI,更看重大模型语言理解能力和应用落地性 | 1号位

澜舟孟子开源社区

Spring AOP 中,切点有多少种定义方式?

江南一点雨

Java spring

NineData已支持「最受欢迎数据库」PostgreSQL

NineData

postgresql 客户端 数据源 NineData 集成AI

印刷行业MES系统解决方案

万界星空科技

开源 MES系统 印刷

Golang微服务框架kratos实现Socket.IO服务

golang socket websocket Kratos

视觉套件专项活动!与飞桨技术专家一起提升技术实力,更多荣誉奖励等你领取

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

Java一维数组是什么,怎么用?

java易二三

Java 编程 程序员 数组 计算机

数仓现网案例丨超大结果集接收异常

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 7 月 PK 榜

3D建模和3D渲染是吃CPU还是显卡?以及专业图形显卡和游戏显卡的区别

Finovy Cloud

3D

JAVA和JVM运行原理是什么?

java易二三

Java 编程 JVM 计算机 程序猿

Golang微服务框架kratos实现SSE服务

golang websocket Kratos openai

Golang微服务框架Kratos实现GraphQL服务

golang graphql Kratos

用故事给予企业全面预算管理一个灵魂

智达方通

全面预算管理 企业全面预算管理 预算场景

Java程序员常用的日志框架有哪些?

java易二三

Java 编程 程序员 计算机

Java Web应用开发案例|使用AJAX实现省市区三级联动效果

TiAmo

Java Java web 开发实例

如何使大数据易于管理_大数据_刘志勇_InfoQ精选文章