首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对流数据计算直方图-在线直方图计算

对流数据计算直方图-在线直方图计算
EN

Stack Overflow用户
提问于 2011-06-17 20:26:31
回答 3查看 3.2K关注 0票数 9

我正在寻找一种算法,以生成一个直方图在大量的流数据,最大和最小是不知道提前,但标准差和平均值是在一个特定的范围。

我很欣赏你的想法。

干杯,

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-18 12:48:57

我只找到了一个解决方案。秒2.2的“基于流式并行决策树算法的在线直方图构建”一文。算法是由Hive项目中的NumericHistogram类实现的:

一个通用的、可重用的直方图类,支持部分聚合。该算法是改编自以下论文的启发式算法: Yael Ben-Haim和Elad Tom-Tov,"A streaming parallel decision tree algorithm",J. Machine Learning Research 11 (2010),pp.849-872。虽然没有近似保证,但在有足够的数据和大量(例如,20-80)直方图柱的情况下,它似乎工作得很好。

票数 5
EN

Stack Overflow用户

发布于 2011-06-17 23:34:53

标准差和均值对于直方图来说无关紧要。只需选择您的分辨率,并在其范围内绘制一个与您的命中率一样高的标尺。当然,随着分辨率的提高,这将变得更加昂贵。您可以尝试调整分辨率,方法是尝试将现有数据拟合到正常曲线(或您喜欢的任何模型)中,并找到标准差以选择合理的粒度。

编辑:第一次读错了。如果您知道近似标准差,则可以从一开始就为直方图组选择合理的大小。只需将每个新条目与您当前的最小和最大值进行比较,并相应地调整您的范围。

票数 1
EN

Stack Overflow用户

发布于 2014-11-13 00:20:17

我使用一个名为"GoHistogram“的包,它提供了两个流近似直方图(NumericHistogram和加权数值直方图)。它是用Golang (https://code.google.com)实现的。链接如下:

https://github.com/VividCortex/gohistogram

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6385700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档