Code Examples
A repository of 155 code examples for BeepBeep
Main Page
+
Packages
Packages
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
a
e
g
h
i
m
n
r
t
v
w
+
Functions
a
g
m
r
t
v
Variables
+
Files
File List
package-info.java
1
/*
2
BeepBeep, an event stream processor
3
Copyright (C) 2008-2017 Sylvain Hallé
4
5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU Lesser General Public License as published
7
by the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU Lesser General Public License for more details.
14
15
You should have received a copy of the GNU Lesser General Public License
16
along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
/**
20
* Extract trends and patterns from a set of input streams.
21
* <p>
22
* This is accomplished by an instance of Pat The Miner's
23
* <tt>SetMiningFunction</tt>. This function takes as its input a set of
24
* sequences, and returns a "trend" computed on these sequences. A trend
25
* can potentially be anything, such an average, a vector of features,
26
* a statistical distribution, etc.
27
* <p>
28
* Although Pat The Miner provides a few built-in functions (and the
29
* possibility for a user to create their own by extending
30
* <tt>SetMiningFunction</tt>), the <tt>ProcessorMiningFunction</tt> object
31
* simplifies the task of creating mining functions through the use of
32
* BeepBeep processors. The <tt>ProcessorMiningFunction</tt>
33
* takes as input as set of sequences,
34
* and produces as output a "pattern" object, representing a trend computed
35
* from the contents of the input sequences.
36
* <p>
37
* When created, the <tt>ProcessorMiningFunction</tt> is parameterized by two
38
* BeepBeep <tt>Processor</tt> objects:
39
* <table>
40
* <tr>
41
* <td><img src="./doc-files/mining/trenddistance/BetaProcessor.png" alt="Processor graph"></td>
42
* <td>This processor, called the <em>trend processor</em>, computes a trend
43
* from a single input sequence. The trend is taken as the last event output
44
* by β when being fed a sequence of events.</td>
45
* </tr>
46
* <tr>
47
* <td><img src="./doc-files/mining/extraction/AlphaProcessor.png" alt="Processor graph"></td>
48
* <td>This processor, called the <em>aggregation processor</em>, aggregates
49
* the trends computed by β from each input sequence into a single,
50
* "aggregated" trend. Its input is an array of values.
51
* </tr>
52
* </table>
53
* In addition, the computation of β's output on each input sequence can
54
* be done in parallel in different threads, if one supplies a properly
55
* configured {@link ThreadManager} to the function.
56
* <p>
57
* Depending on how these two parameters are instantiated, the
58
* <tt>ProcessorMiningFunction</tt> processor computes different things. The examples in
59
* this section show different ways of using the mining functions, an in
60
* particular the <tt>ProcessorMiningFunction</tt> object.
61
* @author Sylvain Hallé
62
*
63
*/
64
package
mining.extraction;
Source
src
mining
extraction
package-info.java
Generated by
1.8.13