• Aucun résultat trouvé

Specialised vs Declarative Data Mining

N/A
N/A
Protected

Academic year: 2022

Partager "Specialised vs Declarative Data Mining"

Copied!
103
0
0

Texte intégral

(1)

Specialised vs

Declarative Data Mining

Software Testing Applications

Nadjib Lazaar, CNRS, University of Montpellier

Join works with: M. Maamar, Y. Lebbah, S. Loudni, C. Bessiere, et. al.

(2)

DATA MINING

2

(3)

DATA MINING

Data Mining (DM) or Knowledge Discovery in Databases (KDD) revolves around the investigation and creation of knowledge, processes, algorithms, and the mechanisms for retrieving potential knowledge from data collections.

(4)

DATA MINING

Data Mining (DM) or Knowledge Discovery in Databases (KDD) revolves around the investigation and creation of knowledge, processes, algorithms, and the mechanisms for retrieving potential knowledge from data collections.

Mining on:

Itemsets (Finding itemsets from a collection of transactions)

2

(5)

DATA MINING

Data Mining (DM) or Knowledge Discovery in Databases (KDD) revolves around the investigation and creation of knowledge, processes, algorithms, and the mechanisms for retrieving potential knowledge from data collections.

Mining on:

Itemsets (Finding itemsets from a collection of transactions)

Sequences (Finding subsequences from collection of sequences)

(6)

DATA MINING

Data Mining (DM) or Knowledge Discovery in Databases (KDD) revolves around the investigation and creation of knowledge, processes, algorithms, and the mechanisms for retrieving potential knowledge from data collections.

Mining on:

Itemsets (Finding itemsets from a collection of transactions)

Sequences (Finding subsequences from collection of sequences)

Graphs (Finding subgraphs from collection of graphs)

2

(7)

DATA MINING

Data Mining (DM) or Knowledge Discovery in Databases (KDD) revolves around the investigation and creation of knowledge, processes, algorithms, and the mechanisms for retrieving potential knowledge from data collections.

Mining on:

Itemsets (Finding itemsets from a collection of transactions)

Sequences (Finding subsequences from collection of sequences)

Graphs (Finding subgraphs from collection of graphs)

(8)

DATA MINING APPLICATIONS

3

(9)

DATA MINING APPLICATIONS

Market Basket Analysis [Agrawal93]

(10)

DATA MINING APPLICATIONS

Market Basket Analysis [Agrawal93]

Future Healthcare

Great potential to improve health systems [Obenshain04]

3

(11)

DATA MINING APPLICATIONS

Market Basket Analysis [Agrawal93]

Future Healthcare

Great potential to improve health systems [Obenshain04]

Education

Knowledge from data educational environments [Scheuer12]

(12)

DATA MINING APPLICATIONS

Market Basket Analysis [Agrawal93]

Future Healthcare

Great potential to improve health systems [Obenshain04]

Education

Knowledge from data educational environments [Scheuer12]

Fraud and Intrusion detection [Wang10] [Lee98]

3

(13)

DATA MINING APPLICATIONS

Market Basket Analysis [Agrawal93]

Future Healthcare

Great potential to improve health systems [Obenshain04]

Education

Knowledge from data educational environments [Scheuer12]

Fraud and Intrusion detection [Wang10] [Lee98]

Lie detection and Criminal Investigation [Chen04]

(14)

DATA MINING APPLICATIONS

Market Basket Analysis [Agrawal93]

Future Healthcare

Great potential to improve health systems [Obenshain04]

Education

Knowledge from data educational environments [Scheuer12]

Fraud and Intrusion detection [Wang10] [Lee98]

Lie detection and Criminal Investigation [Chen04]

Bio Informatics [Hoffman97]

3

(15)

DATA MINING APPLICATIONS

Market Basket Analysis [Agrawal93]

Future Healthcare

Great potential to improve health systems [Obenshain04]

Education

Knowledge from data educational environments [Scheuer12]

Fraud and Intrusion detection [Wang10] [Lee98]

Lie detection and Criminal Investigation [Chen04]

Bio Informatics [Hoffman97]

(16)

DATA MINING APPLICATIONS

4

Bio-

Informatics Marketing

Mining process

Inputs Outputs

- Custumers behavior - Frequent products - shopping basket

- Protein structure prediction - Cancer classification

- DNA sequencing - Classes of genes

Software Engineering

- Program comprehension

- Fault localization/prediction - Execution traces

- Flow diagram - Source code

Aurora Project

(17)

DATA MINING APPLICATIONS

Bio-

Informatics Marketing

Mining process

Inputs Outputs

- Custumers behavior - Frequent products - shopping basket

- Protein structure prediction - Cancer classification

- DNA sequencing - Classes of genes

Software Engineering

- Program comprehension

- Fault localization/prediction - Execution traces

- Flow diagram - Source code

Aurora Project

(18)

DATA MINING APPLICATIONS

4

Bio-

Informatics Marketing

Mining process

Inputs Outputs

- Custumers behavior - Frequent products - shopping basket

- Protein structure prediction - Cancer classification

- DNA sequencing - Classes of genes

Software Engineering

- Program comprehension

- Fault localization/prediction - Execution traces

- Flow diagram - Source code

Aurora Project

(19)

DATA MINING APPLICATIONS

Bio-

Informatics Marketing

Mining process

Inputs Outputs

- Custumers behavior - Frequent products - shopping basket

- Protein structure prediction - Cancer classification

- DNA sequencing - Classes of genes

Software Engineering

- Program comprehension

- Fault localization/prediction - Execution traces

- Flow diagram - Source code

Aurora Project

(20)

FREQUENT ITEMSET MINING [Agrawal et al, 93]

5

(21)

FREQUENT ITEMSET MINING

Aims at finding regularities in datasets (e.g., shopping behavior of customers)

[Agrawal et al, 93]

(22)

FREQUENT ITEMSET MINING

Aims at finding regularities in datasets (e.g., shopping behavior of customers)

In market basket analysis:

Find sets of products that are frequently bought together [Agrawal et al, 93]

5

(23)

FREQUENT ITEMSET MINING

Aims at finding regularities in datasets (e.g., shopping behavior of customers)

In market basket analysis:

Find sets of products that are frequently bought together

Often found patterns are expressed as association rules, for example:

If a customer buys bread and wine, then she/he will probably also buy cheese.

[Agrawal et al, 93]

(24)

FREQUENT ITEMSET MINING (PROBLEM)

6

(25)

FREQUENT ITEMSET MINING (PROBLEM)

Aims at finding regularities in datasets (e.g., shopping behavior of customers)

(26)

FREQUENT ITEMSET MINING (PROBLEM)

6

Aims at finding regularities in datasets (e.g., shopping behavior of customers)

Given:

A set of items

A set of transactions overs the items

A minimum support

I = {i1, …, in}

T = {t1, …, tm} θ

(27)

FREQUENT ITEMSET MINING (PROBLEM)

Aims at finding regularities in datasets (e.g., shopping behavior of customers)

Given:

A set of items

A set of transactions overs the items

A minimum support

The need:

The set of itemset P s.t.:

I = {i1, …, in}

T = {t1, …, tm} θ

freq(P) θ

(28)

STANDARD ITEMSET MINING

7

(29)

STANDARD ITEMSET MINING

t1: B C E F G H

t2: A D G

t3: A C D H

t4: A E F

t5: B E F

t6: B E F G

(30)

STANDARD ITEMSET MINING

t1: B C E F G H

t2: A D G

t3: A C D H

t4: A E F

t5: B E F

t6: B E F G

7

(31)

STANDARD ITEMSET MINING

t1: B C E F G H

t2: A D G

t3: A C D H

t4: A E F

t5: B E F

t6: B E F G cover(BEF) = {t1, t5, t6}

(32)

STANDARD ITEMSET MINING

t1: B C E F G H

t2: A D G

t3: A C D H

t4: A E F

t5: B E F

t6: B E F G

freq(BEF) = 50 % cover(BEF) = {t1, t5, t6}

7

(33)

STANDARD ITEMSET MINING

t1: B C E F G H

t2: A D G

t3: A C D H

t4: A E F

t5: B E F

t6: B E F G

freq(BEF) = 50 % cover(BEF) = {t1, t5, t6}

Brute force enumeration is infeasible

128 items 1068 itemsets (atoms in the universe)

(34)

STANDARD ITEMSET MINING

t1: B C E F G H

t2: A D G

t3: A C D H

t4: A E F

t5: B E F

t6: B E F G

freq(BEF) = 50 % cover(BEF) = {t1, t5, t6}

Brute force enumeration is infeasible

128 items 1068 itemsets (atoms in the universe)

Several specialised algorithms have been developed:

Apriori, Eclat, FP-Growth, LCM…

7

(35)

STANDARD ITEMSET MINING

t1: B C E F G H

t2: A D G

t3: A C D H

t4: A E F

t5: B E F

t6: B E F G

freq(BEF) = 50 % cover(BEF) = {t1, t5, t6}

Brute force enumeration is infeasible

128 items 1068 itemsets (atoms in the universe)

Several specialised algorithms have been developed:

Apriori, Eclat, FP-Growth, LCM…

Dealing with basic user’s constraints:

Frequency, Condensed representations (closedness, maximality,…), Size…

(36)

EXAMPLE

8

(37)

EXAMPLE

(2I, )

(38)

EXAMPLE

8

(2I, )

D

(39)

EXAMPLE

(2I, )

θ = 3 D

(40)

EXAMPLE

8

(2I, )

θ = 3 D

(41)

EXAMPLE

(2I, )

θ = 3 D

Maximal

(42)

EXAMPLE

9

(2I, )

θ = 3 D

M = {P 2 I| f req(P) ^ 8P 0 P : f req(P0) < } Maximal

(43)

EXAMPLE

(2I, )

θ = 3 D

(44)

EXAMPLE

10

(2I, )

θ = 3 D

(45)

EXAMPLE

(2I, )

θ = 3 D

Closedness

(46)

EXAMPLE

11

(2I, )

θ = 3 D

M = {P 2 I| f req(P) ^ 8P 0 P : f req(P0) < } Closedness

(47)

CONDENSED REPRESENTATION

(48)

CONDENSED REPRESENTATION

12

(49)

CONDENSED REPRESENTATION

(50)

CONDENSED REPRESENTATION

12

Dataset #Frequent #Closed #Maximal

Zoo-1 151 807 3 292 230

Mushroom 155 734 3 287 453

Lymph 9 967 402 46 802 5 191

Hepa;;s 27 . 107 1 827 264 189 205

(51)

SPECIALIZED VS DECLARATIVE DATA MINING

(52)

SPECIALIZED VS DECLARATIVE DATA MINING

dataset

13

(53)

SPECIALIZED VS DECLARATIVE DATA MINING

Basic user’s constraints

Query

dataset

(54)

SPECIALIZED VS DECLARATIVE DATA MINING

Specialised Miner

Basic user’s constraints

+

Query

dataset

13

(55)

SPECIALIZED VS DECLARATIVE DATA MINING

Specialised Miner

+

Patterns

Basic user’s constraints

Query

dataset

(56)

SPECIALIZED VS DECLARATIVE DATA MINING

Specialised Miner

+

Patterns

Basic user’s constraints

Query

dataset

13

Limitations: Dealing with sophisticated user’s constraints [Wojciechowski and Zakrzewicz, 02]

(57)

SPECIALIZED VS DECLARATIVE DATA MINING

Specialised Miner

+

Patterns

Basic user’s constraints

Query

dataset

Limitations: Dealing with sophisticated user’s constraints [Wojciechowski and Zakrzewicz, 02]

Sophisticated user’s constraints

(58)

SPECIALIZED VS DECLARATIVE DATA MINING

Specialised Miner

+

Patterns

Basic user’s constraints

Query

dataset

13

Limitations: Dealing with sophisticated user’s constraints [Wojciechowski and Zakrzewicz, 02]

Sophisticated user’s constraints

1

preprocessing

(59)

SPECIALIZED VS DECLARATIVE DATA MINING

Specialised Miner

+

Patterns

Basic user’s constraints

Query

dataset

Limitations: Dealing with sophisticated user’s constraints [Wojciechowski and Zakrzewicz, 02]

Sophisticated user’s constraints

1

preprocessing

2

post- processing

(60)

SPECIALIZED VS DECLARATIVE DATA MINING

Specialised Miner

+

Patterns

Basic user’s constraints

Query

dataset

13

Limitations: Dealing with sophisticated user’s constraints [Wojciechowski and Zakrzewicz, 02]

Sophisticated user’s constraints

1

preprocessing

2

post- processing

3 new algo

(61)

SPECIALIZED VS DECLARATIVE DATA MINING

Specialised Miner

+

Patterns

Basic user’s constraints

Query

dataset

Limitations: Dealing with sophisticated user’s constraints [Wojciechowski and Zakrzewicz, 02]

Sophisticated user’s constraints

1

preprocessing

2

post- processing

3 new algo

Need: Declarative way to deal with more complex queries

(62)

SPECIALIZED VS DECLARATIVE DATA MINING

+

Patterns

Basic user’s constraints

Query

dataset

14

Limitations: Dealing with sophisticated user’s constraints [Wojciechowski and Zakrzewicz, 02]

Sophisticated user’s constraints

1

preprocessing

2

post- processing

3 new algo

Need: Declarative way to deal with more complex queries

Declarative data Mining

CP model CP solver+

(63)

SPECIALIZED VS DECLARATIVE DATA MINING

+

Patterns

Basic user’s constraints

Query

dataset

Limitations: Dealing with sophisticated user’s constraints [Wojciechowski and Zakrzewicz, 02]

Sophisticated user’s constraints

1

preprocessing

2

post- processing

3 new algo

Need: Declarative way to deal with more complex queries CP model

CP solver+

(64)

SPECIALIZED VS DECLARATIVE DATA MINING

+

Patterns

Basic user’s constraints

Query

dataset

14

Limitations: Dealing with sophisticated user’s constraints [Wojciechowski and Zakrzewicz, 02]

Sophisticated user’s constraints

Need: Declarative way to deal with more complex queries

Declarative data Mining

CP model CP solver+

(65)

SPECIALISED VS DECLARATIVE DATA MINING

(66)

SPECIALISED VS DECLARATIVE DATA MINING

15

(67)

SPECIALISED VS DECLARATIVE DATA MINING

Specialised is the winner!

(68)

SPECIALISED VS DECLARATIVE DATA MINING

15

Specialised is the winner!

(69)

SPECIALISED VS DECLARATIVE DATA MINING

Specialised is the winner!

Declarative is the winner!

(70)

SPECIALISED VS DECLARATIVE DATA MINING

16

(71)

SPECIALISED VS DECLARATIVE DATA MINING

Preprocessing + Specialised step vs Declarative

(72)

SPECIALISED VS DECLARATIVE DATA MINING

17

(73)

SPECIALISED VS DECLARATIVE DATA MINING

Specialised + postprocessing vs Declarative

(74)

CONCLUSIONS (PART I)

18

(75)

CONCLUSIONS (PART I)

Specialised methods are suitable for:

Enumerating Patterns

Taking into account classic constraints (simple queries)

(76)

CONCLUSIONS (PART I)

Specialised methods are suitable for:

Enumerating Patterns

Taking into account classic constraints (simple queries)

Declarative methods are suitable for:

Taking into account user’s constraints (complex queries)

Iterative data mining process

18

(77)

CONCLUSIONS (PART I)

Specialised methods are suitable for:

Enumerating Patterns

Taking into account classic constraints (simple queries)

Declarative methods are suitable for:

Taking into account user’s constraints (complex queries)

Iterative data mining process

Time left?

(78)

FAULT LOCALISATION

19

(79)

FAULT LOCALISATION

The need: identify a subset of statements that are susceptible to explain a fault in a program

Precision <=> Efficiency

(80)

FAULT LOCALISATION

The need: identify a subset of statements that are susceptible to explain a fault in a program

Precision <=> Efficiency

Spectrum-based approaches: (ranking metrics - suspiciousness score)

Tarantula [Jones and Harrold 05]

Ochiai [Abreu et al. 07]

Jaccard [Abreu et al. 07]

19

(81)

FAULT LOCALISATION (MOTIVATIONS)

(82)

FAULT LOCALISATION (MOTIVATIONS)

Pros: Quick localisation

20

(83)

FAULT LOCALISATION (MOTIVATIONS)

Pros: Quick localisation

Cons: independent evaluation of each statement at the expense of accuracy

(84)

FAULT LOCALISATION (MOTIVATIONS)

21

(85)

FAULT LOCALISATION (MOTIVATIONS)

Test cases

Program : Character counter tc1 tc2 tc3 tc4 tc5 tc6 tc7 tc8 function count (char *s) {

int let, dig, other, i = 0;

char c;

e1: while (c = s[i++]) { 1 1 1 1 1 1 1 1

e2: if(’A’<=c && ’Z’>=c) 1 1 1 1 1 1 0 1

e3: let += 2; //- fault - 1 1 1 1 1 1 0 0

e4: else if ( ’a’<=c && ’z’>=c ) 1 1 1 1 1 0 0 1

e5: let += 1; 1 1 0 0 1 0 0 0

e6: else if ( ’0’<=c && ’9’>=c ) 1 1 1 1 0 0 0 1

e7: dig += 1; 0 1 0 1 0 0 0 0

e8: else if (isprint (c)) 1 0 1 0 0 0 0 1

e9: other += 1; 1 0 1 0 0 0 0 1

e10: printf("%d %d %d\n", let, dig, other);} 1 1 1 1 1 1 1 1

Passing/Failing F F F F F F P P

(86)

FAULT LOCALISATION (MOTIVATIONS)

21

Test cases

Program : Character counter tc1 tc2 tc3 tc4 tc5 tc6 tc7 tc8 function count (char *s) {

int let, dig, other, i = 0;

char c;

e1: while (c = s[i++]) { 1 1 1 1 1 1 1 1

e2: if(’A’<=c && ’Z’>=c) 1 1 1 1 1 1 0 1

e3: let += 2; //- fault - 1 1 1 1 1 1 0 0

e4: else if ( ’a’<=c && ’z’>=c ) 1 1 1 1 1 0 0 1

e5: let += 1; 1 1 0 0 1 0 0 0

e6: else if ( ’0’<=c && ’9’>=c ) 1 1 1 1 0 0 0 1

e7: dig += 1; 0 1 0 1 0 0 0 0

e8: else if (isprint (c)) 1 0 1 0 0 0 0 1

e9: other += 1; 1 0 1 0 0 0 0 1

e10: printf("%d %d %d\n", let, dig, other);} 1 1 1 1 1 1 1 1

Passing/Failing F F F F F F P P

(87)

FAULT LOCALISATION (MOTIVATIONS)

Test cases

Program : Character counter tc1 tc2 tc3 tc4 tc5 tc6 tc7 tc8 function count (char *s) {

int let, dig, other, i = 0;

char c;

e1: while (c = s[i++]) { 1 1 1 1 1 1 1 1

e2: if(’A’<=c && ’Z’>=c) 1 1 1 1 1 1 0 1

e3: let += 2; //- fault - 1 1 1 1 1 1 0 0

e4: else if ( ’a’<=c && ’z’>=c ) 1 1 1 1 1 0 0 1

e5: let += 1; 1 1 0 0 1 0 0 0

e6: else if ( ’0’<=c && ’9’>=c ) 1 1 1 1 0 0 0 1

e7: dig += 1; 0 1 0 1 0 0 0 0

e8: else if (isprint (c)) 1 0 1 0 0 0 0 1

e9: other += 1; 1 0 1 0 0 0 0 1

e10: printf("%d %d %d\n", let, dig, other);} 1 1 1 1 1 1 1 1

Passing/Failing F F F F F F P P

(88)

FAULT LOCALISATION (MOTIVATIONS)

22

(89)

FAULT LOCALISATION (MOTIVATIONS)

Pros: Quick localisation

(90)

FAULT LOCALISATION (MOTIVATIONS)

Pros: Quick localisation

Cons: independent evaluation of each statement at the expense of accuracy

22

(91)

FAULT LOCALISATION (MOTIVATIONS)

Pros: Quick localisation

Cons: independent evaluation of each statement at the expense of accuracy

Need: more finer-grained localisation, taking into account user’s constraints

(92)

FAULT LOCALISATION (MOTIVATIONS)

Pros: Quick localisation

Cons: independent evaluation of each statement at the expense of accuracy

Need: more finer-grained localisation, taking into account user’s constraints

How: Use of Declarative Data Mining

22

(93)

FAULT LOCALISATION (MOTIVATIONS)

Test cases

Program : Character counter tc1 tc2 tc3 tc4 tc5 tc6 tc7 tc8 function count (char *s) {

int let, dig, other, i = 0;

char c;

e1: while (c = s[i++]) { 1 1 1 1 1 1 1 1

e2: if(’A’<=c && ’Z’>=c) 1 1 1 1 1 1 0 1

e3: let += 2; //- fault - 1 1 1 1 1 1 0 0

e4: else if ( ’a’<=c && ’z’>=c ) 1 1 1 1 1 0 0 1

e5: let += 1; 1 1 0 0 1 0 0 0

e6: else if ( ’0’<=c && ’9’>=c ) 1 1 1 1 0 0 0 1

e7: dig += 1; 0 1 0 1 0 0 0 0

e8: else if (isprint (c)) 1 0 1 0 0 0 0 1

e9: other += 1; 1 0 1 0 0 0 0 1

e10: printf("%d %d %d\n", let, dig, other);} 1 1 1 1 1 1 1 1

Passing/Failing F F F F F F P P

(94)

FAULT LOCALISATION (MOTIVATIONS)

23

Test cases

Program : Character counter tc1 tc2 tc3 tc4 tc5 tc6 tc7 tc8 function count (char *s) {

int let, dig, other, i = 0;

char c;

e1: while (c = s[i++]) { 1 1 1 1 1 1 1 1

e2: if(’A’<=c && ’Z’>=c) 1 1 1 1 1 1 0 1

e3: let += 2; //- fault - 1 1 1 1 1 1 0 0

e4: else if ( ’a’<=c && ’z’>=c ) 1 1 1 1 1 0 0 1

e5: let += 1; 1 1 0 0 1 0 0 0

e6: else if ( ’0’<=c && ’9’>=c ) 1 1 1 1 0 0 0 1

e7: dig += 1; 0 1 0 1 0 0 0 0

e8: else if (isprint (c)) 1 0 1 0 0 0 0 1

e9: other += 1; 1 0 1 0 0 0 0 1

e10: printf("%d %d %d\n", let, dig, other);} 1 1 1 1 1 1 1 1

Passing/Failing F F F F F F P P

Fault localisation

=

Mining Task

(95)

PATTERN SUSPICIOUSNESS DEGREE (PSD)

(96)

PATTERN SUSPICIOUSNESS DEGREE (PSD)

PSD function. Given a pattern P of a program:

24

P SD(P ) = f req (P ) + |F AIL|P ASS| f req|+1+(P )

(97)

PATTERN SUSPICIOUSNESS DEGREE (PSD)

PSD function. Given a pattern P of a program:

PSD-dominance relation. Given two patterns Pi and Pj

P SD(P ) = f req (P ) + |F AIL|P ASS| f req|+1+(P )

Pi BP SD Pj , P SD(Pi) > P SD(Pj)

(98)

PATTERN SUSPICIOUSNESS DEGREE (PSD)

PSD function. Given a pattern P of a program:

PSD-dominance relation. Given two patterns Pi and Pj

Top-k suspicious patterns.

24

P SD(P ) = f req (P ) + |F AIL|P ASS| f req|+1+(P )

Pi BP SD Pj , P SD(Pi) > P SD(Pj)

top-k= {P | 6 9P1, . . . , Pk : 81 j k, Pj BP SD P }

(99)

FCP-MINER TOOL (SOME RESULTS)

(100)

CONCLUSIONS (PART II)

26

(101)

CONCLUSIONS (PART II)

Software Testing/Program comprehension tasks can be tackled using Data Mining

Trace analysis

Test suites mining

Source code mining

(102)

CONCLUSIONS (PART II)

Software Testing/Program comprehension tasks can be tackled using Data Mining

Trace analysis

Test suites mining

Source code mining

Think about using Declarative methods in Software Testing

26

(103)

CONCLUSIONS (PART II)

Software Testing/Program comprehension tasks can be tackled using Data Mining

Trace analysis

Test suites mining

Source code mining

Think about using Declarative methods in Software Testing

Références

Documents relatifs

The new field of Semantic Data Mining, which has emerged in the past few years, has suggested a possible solution to this problem: Domain knowledge can be derived from semantic

For example, for a statistical dataset on cities, Linked Open Data sources can provide relevant background knowledge such as population, climate, major companies, etc.. Having

G-SYNT will recognize groups of patterns, which can be considered as a consequence of a (yet not known) items of knowledge. This way requirement III) will be achieved... We

Integrate cultural data from different heterogeneous sources Use an adaptation of a neural language model for entity embedding Build numerical model that can serve to

Поскольку для набора данных BsmP1 общими параметрами, не зависящими от других, являются координаты и время, то будет крайне логичным объединять данные

Query-independent techniques, for example, were applied to represent temporal data, and query-dependent techniques are commonly used to represent continuous quantitative data

Furthermore, this book provides an overview on the main issues of data mining (including its classification, regression, clustering, association rules, trend detection, feature

inconsistency - the object contradicts the knowledge, so either it does not belong to the subject area or the knowledge is not reliable. Fifth, some results of the theory of