Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/seiflotfy/count-min-log
Go implementation of Count-Min-Log
https://github.com/seiflotfy/count-min-log
Last synced: about 2 months ago
JSON representation
Go implementation of Count-Min-Log
- Host: GitHub
- URL: https://github.com/seiflotfy/count-min-log
- Owner: seiflotfy
- License: mit
- Created: 2015-08-16T22:31:36.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-02-12T13:09:21.000Z (over 7 years ago)
- Last Synced: 2024-01-31T04:05:57.183Z (5 months ago)
- Language: Go
- Homepage:
- Size: 34.2 KB
- Stars: 66
- Watchers: 4
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- awesome-go-cn - count-min-log - Min-Log sketch `算法(类似 Count-Min sketch 算法,但是使用的内存更少) (数据结构 / 标准 CLI)
- awesome-go-extra - count-min-log - Min-Log|57|5|0|2015-08-16T22:31:36Z|2017-02-12T13:09:21Z| (Generators / Miscellaneous Data Structures and Algorithms)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- fucking-awesome-go - :octocat: count-min-log - A Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). :star: 20 :fork_and_knife: 3 (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go-projects - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Standard CLI)
- awesome-go - count-min-log - Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). | - | - | - | (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - A Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go-with-framework - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go-cn - count-min-log - Min-log sketch的功能 : 使用近似计数器进行近似计数(类似Count-Min sketch,但使用更少内存)。 [![近三年未更新][Y]](https://github.com/seiflotfy/count-min-log) [![godoc][D]](https://godoc.org/github.com/seiflotfy/count-min-log) (数据结构与算法 / 杂项数据结构和算法)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- awesome-go-stars - count-min-log(stars: 66) - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - 执行Count-Min-Log草图:用近似计数器近似计数(与Count-Min草图类似,但使用较少的内存)。 (<span id="数据结构-data-structures">数据结构 Data Structures</span> / <span id="高级控制台用户界面-advanced-console-uis">高级控制台用户界面 Advanced Console UIs</span>)
- awesome-go. - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go-cn - count-min-log - Go 语言实现的 Count-Min-Log sketch 算法(类似 Count-Min sketch 算法,但是使用的内存更少). (数据结构 / 高级控制台界面)
- awesome-go-with-stars - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- repo-1316-awesome-go-cn - count-min-log - Min-log sketch的功能 : 使用近似计数器进行近似计数(类似Count-Min sketch,但使用更少内存)。 [![近三年未更新][Y]](https://github.com/seiflotfy/count-min-log) [![godoc][D]](https://godoc.org/github.com/seiflotfy/count-min-log) (数据结构与算法 / 杂项数据结构和算法)
- repo-1211-awesome-go-cn - count-min-log - Min-log sketch的功能 : 使用近似计数器进行近似计数(类似Count-Min sketch,但使用更少内存)。 [![近三年未更新][Y]](https://github.com/seiflotfy/count-min-log) [![godoc][D]](https://godoc.org/github.com/seiflotfy/count-min-log) (数据结构与算法 / 杂项数据结构和算法)
- awesome-Char - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-reader - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- Go-awesome - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- awesome-go-cn - count-min-log - Min-log sketch的功能 : 使用近似计数器进行近似计数(类似Count-Min sketch,但使用更少内存)。 [![近三年未更新][Y]](https://github.com/seiflotfy/count-min-log) [![godoc][D]](https://godoc.org/github.com/seiflotfy/count-min-log) (数据结构与算法 / 杂项数据结构和算法)
- awesome-go-cn - count-min-log - Min-Log草图:使用近似计数器进行近似计数(如使用Count-Min草图,但使用较少的内存)。 (Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory).) (数据结构 / Advanced Console UIs)
- awesome-go - count-min-log - A Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go-zh - count-min-log - Min-log sketch的功能 : 使用近似计数器进行近似计数(类似Count-Min sketch,但使用更少内存)。 [![近三年未更新][Y]](https://github.com/seiflotfy/count-min-log) [![godoc][D]](https://godoc.org/github.com/seiflotfy/count-min-log) (数据结构与算法 / 杂项数据结构和算法)
- awesome-go-handwritten - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - Go 語言實現的 Count-Min-Log sketch 算法(類似 Count-Min sketch 算法,但是使用的內存更少). (數據結構 / 高級控制台界面)
- awesome-go - count-min-log - Go implementation of Count-Min-Log - ★ 39 (Data Structures)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- awesome-go2 - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). - :arrow_down:2 - :star:23 (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go - count-min-log - A Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures / Advanced Console UIs)
- awesome-go-cn - count-min-log - Min-log sketch的功能 : 使用近似计数器进行近似计数(类似Count-Min sketch,但使用更少内存)。 ![最近一年没有更新][Yellow] (数据结构 / 高级控制台用户界面)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- awesome-go - count-min-log - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). (Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms)
- go-awesome-cn-star - count-min-log - Min-Log sketch `算法(类似 Count-Min sketch 算法,但是使用的内存更少)(55) (数据结构`go语言实现的数据结构与算法`)
README
# Count-Min-Log
[![GoDoc](https://godoc.org/github.com/seiflotfy/count-min-log?status.svg)](https://godoc.org/github.com/seiflotfy/count-min-log)[Count-Min-Log sketch: Approximately counting with approximate counters - Guillaume Pitel & Geoffroy Fouquier](http://iswag-symposium.org/2015/pdfs/shortpaper1.pdf)
TL;DR: Count-Min-Log Sketch for improved Average Relative Error on low frequency events
Count-Min Sketch is a widely adopted algorithm for approximate event counting in large scale processing. However, the original version of the Count-Min-Sketch (CMS) suffers of some deficiences, especially if one is interested in the low-frequency items, such as in text- mining related tasks. Several variants of CMS have been proposed to compensate for the high relative error for low-frequency events, but the proposed solutions tend to correct the errors instead of preventing them. In this paper, we propose the Count-Min-Log sketch, which uses logarithm-based, approximate counters instead of linear counters to improve the average relative error of CMS at constant memory footprint.
This version implements the 16 bit register version. Will add back the 8-bit version soon.
## Example Usage
```go
import cml...
sk, err := cml.NewDefaultSketch()
sk.IncreaseCount([]byte("scott pilgrim"))
...sk.Frequency([]byte("scott pilgrim")) // ==> 1
```