Periodic neighborhood pattern detection device, periodic neighborhood pattern detection program, and periodic neighborhood pattern detection method
The system detects periodic neighborhood patterns by considering spatial and temporal characteristics, addressing the limitation of existing models and offering valuable pollution exposure insights.
Patent Information
- Application Number
- JP2021047837
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-03-22
- Publication Date
- 2025-11-26
- Estimated Expiration
- 2041-03-22
AI Technical Summary
Existing periodic pattern models fail to consider spatial characteristics of items, limiting the detection of periodic neighborhood patterns where multiple items are close to each other in a coordinate system.
A system that includes a processor and memory, which extracts patterns from items with coordinate information, determines maximum distance and periodic support, and detects periodic neighborhood patterns by considering relative periodic support and inter-occurrence times.
Enables the detection of periodic neighborhood patterns, providing useful information for environmental and health policy formulation by identifying locations with regular exposure to pollution.
Smart Images

Figure 0007776064000020 
Figure 0007776064000021 
Figure 0007776064000022
Abstract
Description
[Technical Field]
[0001] The present invention relates to a periodic neighborhood pattern detection device, a periodic neighborhood pattern detection program, and a periodic neighborhood pattern detection method. [Background technology]
[0002] Mining periodic patterns is an important model in data mining that has many real-world applications. It discovers all patterns occurring at regular intervals in data. A classic use case is market basket analysis, analyzing how regularly a set of items is purchased by customers. An example of a periodic pattern is a pattern of bat and ball combinations that 5% of customers purchase at least once every hour. The predicted behavior of customer purchases can be useful to users in product recommendations and inventory management. [Prior art documents] [Non-patent literature]
[0003] [Non-Patent Document 1] R. Uday Kiran; C. Saideep; Koji Zettsu; Masashi Toyoda; Masaru Kitsuregawa; P. Krishna Reddy, : Discovering Partial Periodic Spatial Patterns in Spatiotemporal Databases, 9-12 Dec. 2019, 2019 IEEE International Conference on Big Data (Big Data) [Non-patent document 2] Kiran, RU, Shang, H., Toyoda, M., Kitsuregawa, M.: Discovering partial periodic itemsets in temporal databases. In: SSDBM. pp. 30:1{30:6 (2017) [Non-patent document 3] Gowtham Atluri, Anuj Karpatne, Vipin Kumar, : Spatio-Temporal Data Mining: A Survey of Problems and Methods, ACM Computing Surveys, Vol. 1, No. 1, Article. Publication date: November 2017. [Non-patent document 4] Nikos Mamoulis, Huiping Cao, George Kolliso, Marios Hadjieleftheriou, Yufei Tao, David W. Cheung, : Mining, indexing, and querying historical spatiotemporal data, Proceedings of the Tenth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Seattle, Washington, USA, August 22-25, 2004 Summary of the Invention [Problem to be solved by the invention]
[0004] However, the widespread adoption and successful industrial application of periodic pattern models for finding periodic patterns has the following problem: the basic model of periodic patterns considers the temporal occurrence information of items in data, but does not consider the spatial characteristics of items in data. As a result, the periodic pattern model cannot discover interesting periodic patterns of multiple items that are close to each other in a coordinate system (hereinafter referred to as periodic neighborhood patterns).
[0005] Therefore, an object of a first aspect of the present embodiment is to provide a periodic neighborhood pattern detection device, a periodic neighborhood pattern detection program, and a periodic neighborhood pattern detection method for detecting a periodic neighborhood pattern. [Means for solving the problem]
[0006] A first aspect of the present embodiment is a system including a processor and a memory accessed by the processor, wherein the processor: extracting patterns including specific items, which are items having predetermined attributes for each timestamp, from a plurality of items each having coordinate information, and generating a time database in which the timestamps are associated with patterns including the specific items; From a plurality of patterns to be determined including all combinations of a plurality of specific items in the time database, (1) determining whether the maximum distance between specific items in the pattern to be determined is equal to or less than a reference distance; (2) determining whether the periodic support of the pattern to be determined is equal to or greater than a reference periodic support value; (3) A relative periodic support determination is made as to whether the relative periodic support of the pattern to be determined is equal to or greater than a reference relative periodic support value. performing a process to detect periodic neighborhood patterns that satisfy the the periodic support is the number of short inter-occurrence times equal to or less than a reference inter-occurrence time among the inter-occurrence times between adjacent timestamps at which the pattern to be determined occurs in the temporal database, or the number of short inter-occurrence times normalized by the number of occurrence times between adjacent timestamps in the temporal database; The relative periodic support is the number of short inter-occurrence times normalized by the minimum number of occurrences in the temporal database of items included in the pattern being determined. [Effects of the Invention]
[0007] According to the first aspect, a periodic neighborhood pattern can be detected. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 illustrates an example of the configuration of a periodic neighborhood pattern detection device. [Figure 2] FIG. 4 is a flowchart illustrating an outline of processing of a PNP detection model in the present embodiment. [Figure 3] FIG. 3 is a flowchart showing the process of step S4 in FIG. 2. [Figure 4] FIG. 4 is a flowchart showing the process of step S14 in FIG. 3. [Figure 5] 10 is a diagram showing a specific example and formula of the spatial database SD and the neighborhood items Nij. FIG. [Figure 6] FIG. 10 is a diagram showing a specific example of the time database TDB of Table_3. [Figure 7] FIG. 10 is a diagram showing a specific example of an inter-occurrence time. [Figure 8] FIG. 8 is a diagram showing an example in which all combinations of items a, b, c, d, e, f, and g in the temporal database TDB of FIG. 7 are sorted in descending order of the number of items. [Figure 9] FIG. 4 is a diagram showing a specific example of process S10 in FIG. 3. [Figure 10] FIG. 10 is a diagram showing an example of an enumeration tree of item patterns (patterns to be determined) in the time database TDB_1. [Figure 11] 1 shows an example of the distribution and three classes of data generated by a real-world application. DETAILED DESCRIPTION OF THE INVENTION
[0009] This embodiment is a model for detecting periodic neighborhood patterns (hereinafter referred to as PNPs) present in a spatio-temporal database. Before describing the model for detecting PNPs, we will explain an application that motivates finding PNPs in a spatio-temporal database.
[0010] Air pollution is a major factor in many cardiorespiratory problems experienced by people living in Japan. To address air pollution, the Ministry of the Environment has launched the Atmospheric Environmental Regional Observation System (AEROS). This system consists of multiple air pollution measurement sensors located throughout Japan. The data generated by these sensors is a spatiotemporal database. PNPs generated from this spatiotemporal database provide useful information about locations or areas where people are regularly exposed to unhealthy levels of pollution. This information can be very useful to ecologists when formulating environmental and public health policies. In general, data generated by sensors and other devices in IoT devices naturally exists as a spatiotemporal database. In this embodiment, we detect combination patterns of interesting items in such a database by taking into account both the spatial and temporal characteristics of the sensors (hereinafter referred to as items).
[0011] 1 is a diagram showing an example configuration of a periodic neighborhood pattern detection device. The PNP detection device 1 is a supercomputer, server, personal computer, tablet terminal, smartphone, or the like. The PNP detection device 1 has a processor 10, a main memory 12, an external interface 14, storage 20, and a bus 16 connecting them. The external interface 14 is connectable to a plurality of items 32, such as IoT sensors, that transmit measurement data to the PNP detection device 1, and a plurality of client terminals 30 that request PNP detection from the PNP detection device 1.
[0012] The storage 20 stores a PNP detection program 21 and a spatio-temporal database 22. The spatio-temporal database 22 includes, for example, a spatial database (Spatial DB) 23 and a temporal database (Temporal DB) 25. The storage may also store a neighbors database (Neighbors DB) 24. These databases will be described in detail later.
[0013] [Outline of PNP detection model] 2 is a flowchart showing the general processing of the PNP detection model in this embodiment. The PNP detection model is a processor 10 that executes a PNP detection program 21. The processor 10 executes the PNP detection program 21 and generates a spatiotemporal database 22 from a database 26 (S1 to S3). The database 26 is, for example, data measured by a plurality of air pollution measurement sensors located throughout Japan, and the measurement data has, as attribute information, location information of the sensor that made the measurement and information about the time of measurement. Hereinafter, sensors will be referred to as items.
[0014] First, the processor generates a spatial database (SD), which is one of the spatio-temporal databases 22, from the database 26 (S1). The spatial database SD has position information for each item (sensor). A specific example of the spatial database (Table_1) will be described later. Furthermore, the processor generates the spatial database SD for a certain item i jand the neighboring items Ni that have correspondence with neighboring items whose positions (coordinates) are close to each other. j A specific example (Table_2) will be given later.
[0015] Next, the processor extracts from the database 26 all transactions that contain items that have detected a predetermined value for each timestamp, and generates a temporal database (TDB) (S3). Here, an item that has detected a predetermined value, such as a dangerous contamination value, is referred to as a specific item that has reached a predetermined state or has a predetermined attribute. A specific example of a temporal database (Table 3) will be described later.
[0016] The processor then detects, from specific items in the temporal database TDB, pattern X, which is a combination of items that meets the following conditions: This detected pattern X is a periodic neighborhood pattern. The conditions are as follows:
[0017]
number
[0018] Condition (1) is that the periodic support of the pattern is greater than or equal to a criterion value minPS. Here, support represents frequency or relative frequency. Condition (2) is that the relative periodic support of the pattern is greater than or equal to a criterion value minRPS. Periodic support and relative periodic support will be explained in detail later. Condition (3) is that the maximum distance between any pair of items in the pattern is less than or equal to the criterion distance maxDist. In other words, all items in the pattern are located near each other.
[0019] The terms used in FIG. 2 will be explained below, and then the periodic neighborhood pattern detection model of this embodiment will be described in detail.
[0020] [Spatial database SD, nearby items Nij , Time Database TDB] Next, the spatial database SD, the neighboring items NB, and the time database TDB will be explained. j 10A and 10B are diagrams showing specific examples and formulas of the above.
[0021] Definition 1: A spatial database First, let I be a geometric or spatial collection of items.
[0022]
number
[0023] The following Pi j , an item i that is an element of a set I of items. j Let be the set of coordinates of
[0024]
number
[0025] This spatial database SD contains items and their associated spatial information (item i) as follows: j , coordinate Pi j ) is a set of
[0026]
number
[0027] The above idea of a spatial database SD allows us to understand that items may be of geometric form such as points, lines, and polygons.
[0028] S = {abcdefg} is a set of sensors (items) that measure air pollution on the Earth's surface. The spatial database of these items is shown in Table_1.
[0029] Definition 2: A neighborhood distance function Given a distance function Dist(), two items i of elements of set I are similar if the following holds: p , i q are said to be neighbors of each other.
[0030]
number
[0031] In this case, maxDist is a user-specified maximum distance threshold. Dist() is a distance function that has the commutative property. Examples of distance functions with this property are the Euclidean distance and the Geodic distance functions. j Item i of element i j Let be the set of all neighboring items of
[0032] If Euclidean distance is the distance function mentioned above, then the distance between items a and c is Dist(a,c) = 1.414. If a user-specified threshold is maxDist = 1.5, then items a and c are neighbors of each other since Dist(a,c) = < maxDist. Similarly, items d and e are neighbors of item a. Therefore, Na = {cde}. A list of neighboring items for each item in Table_1 is shown in Table_2 in Figure 5.
[0033] Definition 3: Neighborhood pattern Let X be a subset of an itemset I, and let it be a pattern. If X contains k items, it is called a k-pattern. A pattern X in the spatial database SD is called a neighborhood pattern if the maximum distance between any pair of items in X is less than or equal to a user-specified threshold, maxDist. That is, X is a neighborhood pattern if the following is true:
[0034]
number
[0035] The set of items a and c, i.e., ac, is a pattern, and this pattern contains two items. Therefore, it is a two-pattern. Pattern ac is called a neighborhood pattern because its distance is less than or equal to maxDist. Conversely, abc, which is a proper subset of ac, is not a neighborhood pattern because the maximum value of the distances between three pairs of items (distance between ab, distance between ac, distance between bc) is greater than maxDist.
[0036] Definition 4: A temporal database 6 is a diagram showing a specific example of the time database TDB of Table_3. The time database TDB stores transaction ID t tid and a set of transactions with timestamp ts and item pattern Y. tid is as follows:
[0037]
number
[0038] And the temporal database TDB is a set of transactions ordered by timestamp ts as follows:
[0039]
number
[0040] A hypothetical temporal database generated by the sensors (items) in Table_1 is shown in Table_3. The first transaction in this table provides information that stations a, c, and d recorded dangerous amounts of air pollution at each timestamp. Similar information is generated for the remaining transactions in Table_3. The size of the temporal database is m = |TDB| = 14.
[0041] Definition 5: The support of pattern X If pattern X is included in pattern Y as follows (X=subset including Y), then pattern X is included in transaction t tid The timestamp of this transaction is ts X tid Let's say.
[0042]
number
[0043] The following TS X Let be the set of all timestamps at which pattern X occurs (appears) in the database.
[0044]
number
[0045] The support of pattern X in the TDB is denoted as sup(X), which represents the number of transactions that contain pattern X in the TDB. That is, sup(X) = |TS X | The support of X is also expressed as a percentage of the data size, i.e., sup(X) = |TS X |*100 / |TDB|.
[0046] In Table_3, the neighborhood pattern ac appears in transactions with timestamps 1, 3, 4, 12, 13, 15, and 16. Therefore, TS ac = {1, 3, 4, 12, 13, 15, 16} The support of ac is sup(ac) = |TS X |=7 In Table_3, TSa, TSc, TSac, sup(a), sup(c), and sup(ac) are as follows:
[0047]
number
[0048] Definition 6: A periodic occurrence of a pattern X Below is the TS X Any two consecutive timestamps in
[0049]
number
[0050] These ts x k and ts x j The time difference between the occurrence of pattern X is called an inter-arrival time of X, and X That is, it is as follows: iat X = ts x k -ts x j Let the following be the set of all inter-occurrence times of pattern X in the TDB:
[0051]
number
[0052] A pattern X is said to be periodic if its inter-occurrence time is less than or equal to a user-specified maximum inter-occurrence time (maxIAT).
[0053]
number
[0054] This will be explained using a specific example. Figure 7 shows a specific example of inter-occurrence time. In the spatial pattern ac, transactions with timestamps ts of 1 and 3 appeared consecutively. The time difference between these two timestamps is the inter-occurrence time of ac. In other words, iat ac 1=3 - 1=2 iat ac 2=4 - 3=1 iat ac 3= 12 - 4= 8 iat ac 4 = 13 - 12 = 1 iat ac 5 = 15 - 13 = 2 iat ac 6 = 16 - 15 = 1 Therefore, the set of all inter-occurrence times of ac in Table_3 is: IAT ac = {2, 1, 8, 1, 2, 1} In the above, if the user-specified maxITA = 2, then iat ac 1, iat ac 2, iat ac 4, iat ac 5, iat ac 6 is considered to be the periodic occurrence (appearance) of ac in the data. ac Since 3 is not less than the user-specified maxITA, iat ac 3 is not considered to be a periodic occurrence of ac in the data.
[0055] Definition 7: Periodic-support of pattern X The following IIAT X Let be the set of all inter-occurrence times (short inter-occurrence times) with values less than or equal to maxIAT.
[0056]
number
[0057] The above is iat X k IAT satisfying =<maxIAT X element iat of X k If there exists an element iat of short inter-arrival time IIAT X element iat of X it means that it is the following.
[0058] And the periodic support of pattern X is denoted as PS(X) below.
[0059]
Number
[0060] Here, |TDB| - 1 is the maximum number of inter-arrival times of a certain pattern included in the time database TDB. For example, in the example shown in FIG. 7, since IIAT ac = {2, 1, 1, 2, 1}, |IIAT ac | = 5, |TDB| = 13, and PS(ac) = 5 or 5 / 13 = 0.385 (38.5%) as follows.
[0061]
Number
[0062] The periodic support of pattern X is difficult to identify in real-world applications if it is not normalized. When the periodic support is normalized, it is divided by (database size - 1). That is, the normalized periodic support is the number |IIAT of short inter-arrival times of pattern X with respect to the number of inter-arrival times (|TDB| - 1) of all transactions in the time database XHowever, if the support (number of occurrences) sup(X) of pattern X is several times smaller than the time database size |TDB|, the normalized periodic support is not useful. In other words, it does not satisfy the null invariance property. Therefore, the inventors have proposed a method to measure the periodic support of pattern X, |IIAT X We normalize,|,by the number of inter-occurrence times of the items, and call this measure,relative cyclical support,as follows.
[0063] Definition 8: Relative Periodic-support of pattern X (RPS(X)) The relative cyclical support RPS(X) of pattern X is:
[0064]
number
[0065] Here, the denominator indicates the total number of inter-occurrence times of the least frequent item in pattern X. If pattern X is a pattern of items a and c, the denominator is the number of inter-occurrence times of the least frequent (least frequent) items, a and c.
[0066] In the specific example of FIG. 7, the RPS(ac) of patterns a and c is as follows:
[0067]
number
[0068] Since the relative periodic support measure normalizes the periodic support of a pattern by the number of items, such a measure can help users effectively detect both frequent and rare items. Furthermore, this measure satisfies the null-invariant property, which means that null transactions, which are transactions that do not contain the target pattern, do not change the interestingness of the pattern in the database. For example, RPS(ac) will remain the same even if someone maliciously adds millions of fake transactions that do not contain the pattern ac.
[0069] Definition 9: Periodic neighborhood pattern X (PNP) A neighborhood pattern X is called a periodic neighborhood pattern if it satisfies the following: PS(X) >= minPS and RPS(X) >= minRPS where minPS and minRPS are the user-specified minimum periodic support and minimum relative periodic support. In the periodic support PS(X), the minPS constraint can be used to filter out noisy patterns (or patterns with very few periodic occurrences) in the data.
[0070] To illustrate this concrete example, if a user-specified minPS is minPS = 2.8% (i.e., the pattern must occur periodically at least twice within the temporal database) and minRPS = 60% (i.e., the pattern must occur at least 60% of the times the least frequently occurring item in the pattern occurs), then pattern ac is called a periodic neighborhood pattern because PS(ac) >= minPS and RPS(ac) >= minRPS. This pattern ac provides useful information that people living near sensors a and c are periodically exposed to high levels of air pollution. As such, such information may be very useful to users, such as environmentalists and policy makers, for formulating appropriate policies to reduce air pollution.
[0071] PS(X) >= minPS is the number of inter-transaction times shorter than maxIAT of pattern X relative to the number of inter-transaction times of all transactions in the database (|TDB|-1). X RPS(X) >= minRPS is the ratio of | to the number of short inter-occurrence times relative to the support of the least frequent item in the pattern. X | ratio and detects patterns containing frequent and rare items in a database.
[0072] Given a set of items I, a spatial database SD, a temporal database TDB, a maximum inter-occurrence time maxIAT, a minimum periodic support minPS, a minimum relative periodic support minRPS, and a maximum distance maxDist, a periodic neighborhood pattern PNP can be detected by finding all patterns in the temporal database TDB that satisfy the following three constraints: (i) The distance between all items in the pattern is less than or equal to maxDist. (ii) The periodic support PS of the pattern is greater than or equal to minPS. (iii) The relative periodic support RPS of the pattern is greater than or equal to minRPS.
[0073] The PNPs generated by the model of this embodiment satisfy the null invariance property and the convertible anti-monotonic property, which are described in the following non-patent literature: Pei, J., Han, J.: Can we push more constraints into frequent pattern mining? In: SIGKDD. pp. 350-354 (2000) Tan, P.N., Kumar, V., Srivastava, J.: Selecting the right interestingness measure for association patterns. In: SIGKDD. pp. 32{41 (2002) Also, the time interval between pattern occurrences is the percentage with respect to the difference ts max - ts min between the maximum timestamp ts max and the minimum timestamp ts min .
[0074] Having described various terms above, next, the periodic neighborhood pattern detection model of the present embodiment will be described in detail. Already, the outline of the periodic neighborhood pattern detection model has been described in FIG. 2. The processor 10 in FIG. 1 executes the periodic neighborhood pattern (PNP) mining (detection) program 21 to detect the periodic neighborhood patterns in the spatio-temporal database 22. The processor that executes the PNP detection program is the periodic neighborhood pattern detection model.
[0075] FIG. 3 is a diagram showing a flowchart of the process of process S4 in FIG. 2. The processor, which is the PNP detection model, (1) scans the time database TDB, sorts all the items in the TDB in descending order of the support sup(item) of the items, (2) deletes the items whose periodic support PS(item) of the items is PS(item) < minPS from the items in the time database, (3) generates an enumeration tree of the combination patterns of the remaining items (S10).
[0076] FIG. 8 is a diagram showing an example in which all combinations of items a, b, c, d, e, f, and g in the temporal database TDB of FIG. 7 are sorted in descending order of the number of items. In the temporal database TDB, a pattern of sensors (items) that measured air pollution at a predetermined concentration or higher is included in each transaction. FIG. 8 shows all combinations of elements (items) of set I of items a, b, c, d, e, f, and g included in this pattern, sorted in descending order of the number of elements. In this case, the number of patterns is 2 n -1 (n is the number of items). Therefore, the number of patterns to be judged in the process S4 for detecting PNPs increases, and the efficiency of the PNP detection process decreases.
[0077] Fig. 9 is a diagram showing a specific example of process S10 in Fig. 3. The processor (1) scans the time database TDB, sorts all items in the TDB in descending order of item support sup(item), and generates a management table 40 of item support sup(item) and periodic support PS(item) (S10(1)). In the management table 40, items I in the time database TDB are sorted in descending order of support sup(item), Sup.
[0078] Therefore, the processor determines whether (2) the periodic support PS(item) of the item is PS(item) <minPS item The item is deleted from the items in the time database (S10(2)). If minPS item If minPS(item) is set to 2, items f and g are deleted. Items with low periodic support PS(item) do not satisfy the constraint (ii) above and are not judged as PNP. Therefore, deleting these items at this point can significantly reduce the number of patterns to be judged. For example, if minPS item =< minPS(X) (denormalized).
[0079] This pre-determined PS (item) <minPS item By performing pre-judgment only n times (number of items), the number of patterns to be judged can be reduced by 2. n -1 to 2m In the example of Figure 8, the number of items is reduced from 6 to 4, so the number of patterns to be judged is reduced to 2. 6 -1=64 to 2 4 Reduced to -1=16.
[0080] The processor then processes the pattern of each transaction into the remaining items. ascending order The processor then virtually generates a time database TDB_1 sorted by the time ascending order Then, an enumeration tree of patterns is generated with the items sorted as follows (S10(3)).
[0081] 10 is a diagram showing an example of an enumeration tree of item patterns (patterns to be determined) in the temporal database TDB_1. The enumeration tree of patterns to be determined has a null node with no items as the root node, and nodes e, b, c, d, and a as its child nodes, which are patterns of one item, and nodes eb, ec, ed, ea, bc, bd, ba, cd, ca, and da as its child nodes, which are patterns of two items, and nodes ebc... as its child nodes, which are patterns of three items, and nodes ebca,... as its child nodes, which are patterns of four items, and nodes ebcda,... as its child nodes, which are patterns of five items. As mentioned above, ascending order An enumeration tree of the patterns to be judged is generated.
[0082] The PNP detection model scans the nodes of the enumeration tree depth-first and determines whether the item pattern at each node satisfies the three PNP constraints (S11 in Figure 3). The depth-first scanning order is null node, e, eb, ebc, ebcd, ebcda, ebca... In other words, the processor prioritizes patterns that combine items with fewer sup(item)s to determine PNP.
[0083] The PNP detection model performs the following steps for the pattern X of the node to be determined: (i) determine whether it is a neighborhood pattern (S13), (ii) determine whether the periodic support PS(X) is equal to or greater than the reference value minPS, and (iii) determine whether the relative periodic support RPS(X) is equal to or greater than the reference value minRPS (S14). If all three of these determinations are true (YES in S13 and S14), the PNP detection model determines that the pattern X of the node to be determined is a PNP (S15). If any of these three determinations is false (NO in S13, NO in S14), the PNP detection model does not determine that the pattern X of the node to be determined is a PNP.
[0084] The PNP detection model extracts the pattern X of the next node to be determined as follows: (1) If both S13 and S14 are YES, extract the pattern X of the next node based on the depth-first algorithm. (2) If either S13 or S14 is NO, the process of proceeding to the next node based on the depth-first algorithm is stopped, and pattern X of the node next to the parent node of the node that has already been determined is extracted. The reason why the depth-first search can be stopped is as follows. For determination S13, if the number of items in the pattern to be determined increases, the maximum inter-item distance will not decrease. For determination S14, if the number of items in the pattern to be determined increases, the number of short inter-occurrence times |IIAT X | never increases. Also, the denominator of PS(X) (|TDB|-1) and the denominator of RPS(X) (sup(e) for patterns containing e) are both constant. The above property that allows the search to stop is called the convertible ant-monotonic property.
[0085] According to (2) above, it is not necessary to judge whether the patterns of all nodes in the enumeration tree are PNP or not, so the PNP detection process can be performed efficiently. Furthermore, according to (2), the search for the PNP detection process can be completed quickly. The reasons for this are as follows.
[0086] For example, for a pattern in a tree whose root node is the node of item e, the cyclic support PS(X) and relative cyclic support RPS(X) are as follows: PS(X) = |IIAT X | or |IIAT X | / (|TDB|-1) RPS(X)=|IIAT X | / (sup(e)-1) As mentioned above, the denominators of both are constant. Also, in the depth-first algorithm, items with fewer sup(items) are prioritized to increase the number of pattern items. Therefore, the numerator |IIAT X decreases as the number of items increases, and decreases fastest initially, resulting in early termination of searches within a subtree with an item as its root node.
[0087] 4 is a diagram showing a flowchart of the process S14 in FIG. 3. The processor, which is a PNP detection model, calculates a set IAT of times iat (inter-occurrence times iat) between timestamps ts of consecutive transactions tid containing pattern X in the time database TDB. X Next, the processor generates an inter-occurrence time iat that is less than maxIAT among the elements iat of the inter-occurrence time set IATX (S21). X X Only IITA X Generate a set of short inter-occurrence times.
[0088] Figure 7 shows the inter-occurrence time set IAT of transactions containing pattern ac. ac and short inter-occurrence time set IIAT ac In this case, maxIAT = 2.
[0089] Therefore, the processor selects a short inter-occurrence time set IITA X Number of |IITA XThe ratio of | to the maximum number of inter-occurrence times ita in the time database TDB (|TDB|-1) is calculated as the periodic support PS(X) of the pattern X (S23). Alternatively, PS(X) = |IITA X Furthermore, the processor may be configured to set a short inter-occurrence time set IITA X Number of |IITA X | to the minimum value of the occurrence count of all items in pattern X (min(all sup(item))) is calculated as the relative periodic support RPS(X) of pattern X (S24).
[0090] Figure 7 shows the formulas for the periodic support PS(X) and relative periodic support RPS(X) of pattern X, and specific examples of PS(ac) and RPS(ac) of pattern ac. As mentioned above, the periodic support PS(X) is the shortest inter-occurrence time set IITA for the total number of transactions in the time database TDB. X On the other hand, the relative periodic support RPS(X) is the ratio of the number of elements in the short inter-occurrence time set to the minimum number of occurrences of items in pattern X.
[0091] The processor then determines whether the periodic support PS(X) is equal to or greater than the reference value minPS and whether the relative periodic support RPS(X) is equal to or greater than the reference value minRPS (S25). In the example of Figure 7, when minPS = 2 and minRPS = 60%, the periodic support PS(ac) = 5 and the relative periodic support RPS(ac) = 71.4%, so the processor determines that the pattern ac satisfies the two conditions. As a result, the processor detects the pattern ac as a periodic neighborhood pattern.
[0092] [PS(X) >= minPS, RPS(X) >= minRPS] Figure 11 shows an example of the distribution of data generated by a real-world application and three classes. The vertical axis shows the support for an item, and the horizontal axis shows the number of items sorted based on their support.
[0093] Data generated by real-world applications has an exponential distribution of item support, as shown in Figure 11. Thus, items in a real-world database can be roughly categorized into three classes: frequent items, rare items, and infrequent / noisy items. Figure 11 shows the distribution and classification of items in a fictitious or imaginary application. The classification of frequent, rare, and infrequent / noisy items is subjective, depending on the user and the application.
[0094] In many real-world applications, users are interested in finding knowledge about frequent and rare items. However, finding knowledge about rare items is very difficult because they only occur a small number of times in the database. The goal of relative periodicity support is to discover knowledge about frequent and rare items.
[0095] The cyclical support measure is absolute because it determines the interest of a pattern without considering the support of the items. This measure states that higher cyclical support is more interesting than patterns with relatively low cyclical support. Thus, this measure favors items that are frequent. Because cyclical patterns often have low cyclical support values, this cyclical support measure often prunes (excludes) cyclical patterns that contain rare items.
[0096] Example 1: In the temporal database TDB shown in Figures 6 and 7, item a is a frequent item, while item c is a rare item. The periodic support PS(ac) of pattern ac is 5 / 19 = 26%. The periodic support indicates that pattern ac is an uninteresting pattern because its periodic support PS(ac) is less than 50%. The periodic support measure is problematic because it does not consider the number of items supported within the pattern.
[0097] The relative periodic support measure in this embodiment determines the interestingness of a pattern by taking into account the number of items supported in the pattern. If a pattern contains only frequent items, the relative periodic support measure ensures that the pattern will have high periodic support. If a pattern contains rare items, the relative periodic support measure ensures that the pattern will have relatively low periodic support.
[0098] In the temporal database Table_3 in Figure 6, the top two frequent items a and d have support sup(a) = 11 and sup(d) = 9. If minRPS = 60%, the pattern a can be a periodic neighborhood pattern PNP if: PS(ad) / (sup(d)-1) >= 60 / 100 Therefore, the periodic support PS(ad) is: PS(ad) >= 60*(sup(d)-1) / 100 = (60*8) / 100 = 4.8 On the other hand, item e has low frequency sup(e) = 4. Pattern ae can be PNP if: PS(ae) / (sup(e)-1) >= 60 / 100 Therefore, the periodic support PS(ae) is: PS(ae) >= 60*(sup(e)-1) / 100 = (60*3) / 100 = 2 Thus, the measure of relative periodic support ensures that patterns containing frequent items should occur more periodically in the data, while patterns containing rare items may occur less periodically in the data.
[0099] Example 2: If an item occurs n times, there are n-1 inter-occurrence times. In the temporal database TDB shown in Figures 6 and 7, item a occurs 11 times. This means that item a has 10 inter-occurrence times. Similarly, item c occurs 8 times in TDB, resulting in 7 inter-occurrence times. The maximum number of times both items a and c can occur in TDB is minimum(11,8) = 8. This means that the maximum number of inter-occurrence times that can exist in pattern ac is 8 - 1 = 7. In terms of relative periodic support, out of the 7 inter-occurrence times for item c, item a periodically occurs with item c for 5 inter-occurrence times. If all inter-occurrence times are short inter-occurrence times, the relative periodic support for pattern ac is 5 / 7 = 71.4%, which is 71.4% of the inter-occurrence times. This means that item a periodically occurs with item c in the temporal database. Therefore, pattern ac is a pattern of interest to the user.
[0100] The cyclical support measure considers all transactions in the temporal database to determine whether a pattern is interesting, whereas the relative cyclical support measure considers only transactions that contain any of the items in the pattern to determine whether a pattern is interesting. Relative cyclical support does not consider transactions that do not contain any items in the pattern (null transactions). Hence, it is called the null-invariant property and is very useful in real-world applications.
[0101] In process S14 of FIG. 3, the processor, which is a PNP detection model, determines whether PS(X)>=minPS and RPS(X)>=minPS(X). The former means that the number or percentage of short inter-occurrence times of pattern X is equal to or greater than minPS, eliminating noise-like patterns with a small number of short inter-occurrence times. Meanwhile, the latter is the ratio of the number of short inter-occurrence times of pattern X to the number of occurrences of the least frequent item. The number of occurrences of the least frequent item of pattern X, which is the denominator of RPS(X), corresponds to the maximum possible number of short inter-occurrence times of pattern X. Therefore, RPS(X) indicates the ratio of the actual number of inter-occurrence times to the maximum possible number of short inter-occurrence times of pattern X.
[0102] For a given pattern X, there exists a pattern X that does not satisfy PS(X) >= minPS, but satisfies RPS(X) >= minPS(X). This pattern contains very infrequent, noise-like items. Therefore, even if RPS(X) >= minPS(X) is satisfied, this pattern X is uninteresting. A pattern that satisfies both PS(X) >= minPS and RPS(X) >= minPS(X) is an interesting pattern. RPS(X) >= minPS(X) is used to filter out uninteresting patterns that contain frequently occurring items with low periodic support.
[0103] [Other examples of spatiotemporal databases] In the above embodiment, a spatiotemporal database of a sensor that measures dangerous values of air pollution has been described as an example. Another example is a spatiotemporal database of a sensor that periodically identifies areas with low rainfall and drought conditions. The PNP detection model can also be applied to a spatiotemporal database of a sensor that detects pollen levels, a sensor that detects the number of people outside, and so on.
[0104] As described above, according to this embodiment, the PNP detection model detects, as an interesting periodic neighborhood pattern (PNP) in the spatio-temporal database, a pattern that satisfies all of the following: the maximum distance of all item pairs in the pattern is equal to or greater than a reference distance, the periodic support of the pattern is equal to or greater than a reference periodic support value, and the relative periodic support of the pattern is equal to or greater than a reference relative periodic support value. This makes it possible to detect combinations of items that are located nearby and periodically enter a specific state with a high frequency. [Explanation of symbols]
[0105] SD: Spatial Database Dist: Neighborhood distance function X: Pattern, Neighborhood Pattern TDB: Time Database |TDB|: Number of transactions in the time database TS X : A set of timestamps for pattern X iat, IAT: Inter-occurrence time sup(X): support (frequency) of pattern X IAT X : A set of inter-occurrence times iat of pattern X |IAT X |: The number of inter-occurrence times of the set of inter-occurrence times iat of pattern X |IIAT X |: The number of short inter-occurrence times in the set of inter-occurrence times iat (short inter-occurrence times) less than maxIAT of pattern X PS(X): Periodic support of pattern X, |IIAT X |or|IIAT X | / (|TDB|-1) RPS(X): Relative Periodic Support of Pattern X, |IIAT X | / (min sup(item) of items in X) PNP: Periodic Neighborhood Pattern
Claims
1. a processor; a memory accessed by the processor; the processor: extracting patterns including specific items, which are items having predetermined attributes for each timestamp, from a plurality of items each having coordinate information, and generating a time database in which the timestamps are associated with patterns including the specific items; From a plurality of patterns to be determined including all combinations of a plurality of specific items in the time database, (1) The pattern to be judged is a neighboring pattern in which the maximum distance between specific items in the pattern to be judged is equal to or less than a reference distance; (2) the periodic support of the pattern to be determined is equal to or greater than a reference periodic support; (3) the relative periodic support of the pattern to be judged is equal to or greater than a reference relative periodic support; and performing a process to detect periodic neighborhood patterns that satisfy the periodic support is the number of inter-occurrence times between adjacent timestamps at which the pattern to be determined occurs in the temporal database that are equal to or less than a reference inter-occurrence time, or the number of inter-occurrence times that are equal to or less than the reference inter-occurrence time normalized by the number of occurrence times between adjacent timestamps in the temporal database; A periodic neighborhood pattern detection device, wherein the relative periodic support is the number of inter-occurrence times less than the reference inter-occurrence time normalized by the number of inter-occurrence times of a specific item that has occurred the smallest number of times in the temporal database among the specific items included in the pattern to be determined.
2. The process of detecting the periodic neighborhood pattern includes: generating an enumeration tree having the plurality of patterns to be determined from the specific items in the time database, the enumeration tree having a null root node and a plurality of child nodes in which the number of the specific items increases in a depth direction; searching for patterns to be determined in a plurality of child nodes of the enumeration tree from the root node using a depth-first algorithm to determine whether or not the patterns are periodic neighborhood patterns; 2. The periodic neighborhood pattern detection device according to claim 1, wherein once it is determined that the pattern to be determined is not the periodic neighborhood pattern, the search for the next child node of the child node is stopped, and a determination is made as to whether the pattern to be determined of the next node of the parent node of the child node is the periodic neighborhood pattern.
3. The processor further includes, in the process of detecting the periodic neighborhood pattern, generating a reduced time database by removing from the specific items in the time database those specific items whose cyclic support is less than a second reference cyclic support; 3. The apparatus for detecting periodic neighborhood patterns according to claim 2, wherein an enumeration tree is generated having a plurality of patterns to be determined having the specific items remaining in the reduced temporal database in an order sorted in ascending order of support in the temporal database for the specific items remaining in the reduced temporal database.
4. extracting patterns including specific items, which are items having predetermined attributes for each timestamp, from a plurality of items each having coordinate information, and generating a time database in which the timestamps are associated with patterns including the specific items; From a plurality of patterns to be determined including all combinations of a plurality of specific items in the time database, (1) The pattern to be judged is a neighboring pattern in which the maximum distance between specific items in the pattern to be judged is equal to or less than a reference distance; (2) the periodic support of the pattern to be determined is equal to or greater than a reference periodic support; (3) the relative periodic support of the pattern to be judged is equal to or greater than a reference relative periodic support; detecting a periodic neighborhood pattern satisfying the periodic support is the number of inter-occurrence times between adjacent timestamps at which the pattern to be determined occurs in the temporal database that are equal to or less than a reference inter-occurrence time, or the number of inter-occurrence times that are equal to or less than the reference inter-occurrence time normalized by the number of occurrence times between adjacent timestamps in the temporal database; A periodic neighborhood pattern detection program, wherein the relative periodic support is the number of inter-occurrence times that are less than the reference inter-occurrence time, normalized by the number of inter-occurrence times of a specific item that has occurred the smallest number of times in the time database among the specific items included in the pattern to be determined.
5. extracting patterns including specific items, which are items having predetermined attributes for each timestamp, from a plurality of items each having coordinate information, and generating a time database in which the timestamps are associated with patterns including the specific items; From a plurality of patterns to be determined including all combinations of a plurality of specific items in the time database, (1) The pattern to be judged is a neighboring pattern in which the maximum distance between specific items in the pattern to be judged is equal to or less than a reference distance; (2) the periodic support of the pattern to be determined is equal to or greater than a reference periodic support; (3) the relative periodic support of the pattern to be judged is equal to or greater than a reference relative periodic support; detecting a periodic neighborhood pattern satisfying the periodic support is the number of inter-occurrence times between adjacent timestamps at which the pattern to be determined occurs in the temporal database that are equal to or less than a reference inter-occurrence time, or the number of inter-occurrence times that are equal to or less than the reference inter-occurrence time normalized by the number of occurrence times between adjacent timestamps in the temporal database; A periodic neighborhood pattern detection method, wherein the relative periodic support is the number of inter-occurrence times less than the reference inter-occurrence time normalized by the number of inter-occurrence times of a specific item that has occurred the smallest number of times in the temporal database among the specific items included in the pattern to be determined.
Citation Information
Patent Citations
Method for distinguishing partial cyclic pattern in event sequence and corresponding event subsequence
JP2002024741A
Pattern database generating method for model-base control system using target value search
JP2011014139A
Data analysis system and method thereof
JP2011123652A