WO2016059787A1 - 情報処理装置、情報処理方法、及び、記録媒体 - Google Patents

情報処理装置、情報処理方法、及び、記録媒体 Download PDF

Info

Publication number
WO2016059787A1
WO2016059787A1 PCT/JP2015/005148 JP2015005148W WO2016059787A1 WO 2016059787 A1 WO2016059787 A1 WO 2016059787A1 JP 2015005148 W JP2015005148 W JP 2015005148W WO 2016059787 A1 WO2016059787 A1 WO 2016059787A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
grouping
group
node
unit
Prior art date
Application number
PCT/JP2015/005148
Other languages
English (en)
French (fr)
Inventor
祥治 西村
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to US15/517,735 priority Critical patent/US10482075B2/en
Priority to JP2016553969A priority patent/JP6624062B2/ja
Publication of WO2016059787A1 publication Critical patent/WO2016059787A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification

Definitions

  • the present invention relates to information retrieval, and more particularly, to an information processing apparatus, an information processing method, and a recording medium for grouping similar data.
  • data such as images or documents are evaluated based on the similarity of features of the data rather than evaluation based on matching of the data. Further, when classifying or summarizing such data, it is effective to collect data in which the degree of similarity between data is a predetermined value or more. Such processing is generally called grouping based on similarity (see, for example, Patent Document 1).
  • the information search device described in Patent Document 1 provides a function of grouping the results of a similar search (similar search from a user) input by a user into similar groups.
  • the information search device when grouping the similar search results received from the user, the information search device further performs a similar search (similar search with respect to the search results) for the similar search results received from the user. Then, the information search apparatus collects data having similarities equal to or higher than a predetermined threshold with respect to the search result into a group. The information retrieval apparatus performs grouping based on such an operation. At this time, the information search device executes a similarity search from search results having a high similarity among the similar search results from the user. Then, the information search apparatus groups search results whose similarity is equal to or greater than a predetermined threshold. However, the information search apparatus does not perform grouping on search results for which a similar search has already been performed.
  • Non-Patent Document 1 constructs a tree structure of data (hereinafter, simply referred to as “tree structure”) in consideration of the hierarchy of similarity between data.
  • the technique of Non-Patent Document 1 uses such a tree structure to realize high-speed similarity search.
  • the tree structure described in Non-Patent Document 1 is generally configured as follows. That is, the nodes constituting the tree structure store data.
  • Non-Patent Document 1 When a node includes data that exceeds the capacity of the node, the technique described in Non-Patent Document 1 selects representative data (representative data) from the data included in the node, and Is placed on the parent node of the node. At the same time, the technique described in Non-Patent Document 1 associates the upper limit of the similarity between the representative data and the data at the node with the edge between the parent node and the node. In the technique described in Non-Patent Document 1, the similarity value associated with the edge increases as the entire tree structure increases from the root node (root node) toward the leaf node (leaf node). , Maintain the tree structure. The technique described in Non-Patent Document 1 provides a data structure that focuses on the hierarchy of similarity as a tree structure. However, Non-Patent Document 1 does not disclose a grouping method.
  • Patent Document 1 discloses a technique related to grouping of similar search results from users. That is, the technique described in Patent Document 1 does not assume general data. Therefore, grouping in general data cannot be realized. For example, using the technique described in Patent Document 1, “group what types of images are in the database based on their similarity to the image database”. Such a query cannot be executed. As described above, Patent Document 1 has a problem in that data to be grouped is limited.
  • Non-Patent Document 1 does not disclose a grouping method.
  • Non-Patent Document 1 is combined with Patent Document 1, the limitation on data to be grouped cannot be solved.
  • Patent Document 1 takes a long time for calculation for grouping similar data. The reason is that the technique described in Patent Document 1 performs a similar search on each search result, and therefore it takes time of O (N 2 ) order in the grouping calculation.
  • O () is a notation that gives an approximate evaluation of a change in value, and is generally called “Landau symbol” or “O-symbol”.
  • N indicates the number of data items.
  • Patent Document 1 has a problem that it takes time for processing.
  • An object of the present invention is to solve the above-described problems, and to reduce the calculation time and to realize grouping based on data similarity without limiting the data to be processed, an information processing method, And providing a recording medium.
  • An information processing apparatus includes: a search unit that searches for tree-structured data whose elements are nodes including data; data included in a search target node of the search unit; and a lower node of the data Grouping determination means for determining whether to group using data and lower nodes based on the similarity associated with the edge between and a predetermined threshold, grouping as a result of the determination, Subtree grouping means for creating a group by grouping the determined data and lower nodes, and when the search target node is a leaf node, the search target leaf node is grouped to one or more The leaf node grouping means for creating a group and the data returned by the search by the search means in the backtrack to the higher-level node If the over-flop has not been decided, including a data merging means for merging the data to one of the groups of lower node of the data, and a group merging means for merging at least part of the group in the group.
  • a data processing method searches for tree-structured data having nodes including data as elements, and is associated with an edge between data included in the search target node and a node below the data. Based on the similarity and a predetermined threshold value, it is determined whether to group using data and lower nodes, and the data determined to be grouped as a result of the determination and the lower nodes are grouped. Group to create a group, and if the node to be searched is a leaf node, group the leaf nodes to be searched to create one or more groups, and the search returns in the backtrack to the higher nodes. If the group to which the data belongs is not determined, the data is merged into one of the lower nodes of the data, and at least the group To merge a group of parts.
  • a recording medium relates to a process of searching for tree-structured data whose elements are nodes including data, and association with an edge between the data included in the search target node and a lower node of the data
  • a process for determining whether to group using data and a lower node based on the obtained similarity and a predetermined threshold, and the data determined to be grouped as a result of the determination and the lower node To create a group, and when the search target node is a leaf node, group the search target leaf nodes to create one or more groups, and search If the group to which the data returned in the backtrack to the node belongs is not determined, the data is combined with one of the groups below the data.
  • a process of, readable records the program from a computer that includes a processing for merging at least part of the group in the group.
  • FIG. 1 is a block diagram showing an example of the configuration of the information processing apparatus according to the first embodiment of the present invention.
  • FIG. 2 is a flowchart illustrating an example of the operation of the information processing apparatus according to the first embodiment.
  • FIG. 3 is a diagram illustrating a tree structure used for explaining the operation of the first embodiment.
  • FIG. 4 is a diagram illustrating an example of grouping of subtrees.
  • FIG. 5 is a diagram illustrating an example of grouping leaf nodes.
  • FIG. 6 is a diagram illustrating an example of merging representative data.
  • FIG. 7 is a diagram illustrating an example of group merging.
  • FIG. 8 is a block diagram illustrating an example of the configuration of a modification of the information processing apparatus according to the first embodiment.
  • FIG. 9 is a block unit illustrating an exemplary configuration of a modification of the information processing apparatus according to the first embodiment.
  • FIG. 1 is a block diagram showing an example of the configuration of the information processing apparatus 10 according to the first embodiment of the present invention.
  • the direction of the arrow in the drawing shows an example, and does not limit the direction of the signal between the blocks.
  • the information processing apparatus 10 includes a data processing unit 100, a tree structure holding unit 110, a similarity holding unit 120, and an intermediate result holding unit 130.
  • holding means storage or storage.
  • the tree structure holding unit 110 holds data (hereinafter referred to as a tree structure) constructed as a tree structure that is a processing target of the information processing apparatus 10.
  • the tree structure includes nodes (eg, root nodes and leaf nodes) and edges.
  • Each node includes data (for example, representative data).
  • representative data is data representing a node in data included in the node.
  • the similarity holding unit 120 holds a similarity (for example, a similar radius) associated with (given) an edge.
  • the tree structure holding unit 110 and the similarity holding unit 120 may hold the data described above in advance before the operation in the data processing unit 100 described later.
  • the user of the information processing apparatus 10 may store the data in each holding unit prior to processing.
  • the intermediate result holding unit 130 holds a result (hereinafter referred to as “intermediate result”) generated based on grouping processing of each unit of the data processing unit 100 described later.
  • the data processing unit 100 searches for a tree structure held by the tree structure holding unit 110. Then, the data processing unit 100 uses the tree structure held by the tree structure holding unit 110, the received grouping threshold 140, which will be described later, and the similarity held by the similarity holding unit 120, to form a group of tree structures. Execute the conversion.
  • the data processing unit 100 causes the intermediate result holding unit 130 to hold the grouping processing result (intermediate result). Then, the data processing unit 100 outputs the intermediate result held by the intermediate result holding unit 130 as the grouping result 150 after the grouping process ends.
  • the data processing unit 100 includes a tree search unit 102, a grouping determination unit 103, a subtree grouping unit 104, a leaf node grouping unit 105, an inter-group merging unit 106, and a representative data merging unit 107. Including. Further, the data processing unit 100 includes a grouping threshold value receiving unit 101 and a grouping result output unit 108. Each configuration included in the data processing unit 100 uses data held in the tree structure holding unit 110, the similarity holding unit 120, and the intermediate result holding unit 130 as necessary. Each configuration causes the intermediate result holding unit 130 to hold data as necessary. In the following description, for the sake of convenience of explanation, each configuration may omit an operation for holding data in each holding unit and an operation for reading data.
  • the grouping threshold receiving unit 101 receives the grouping threshold 140 from an external device (not shown).
  • the grouping threshold value reception unit 101 may receive the grouping threshold value 140 from a device operated by the user.
  • the grouping threshold receiving unit 101 passes the grouping threshold 140 to the grouping determination unit 103.
  • the grouping threshold value reception unit 101 may transmit the grouping threshold value 140 in response to the request from the grouping determination unit 103.
  • the grouping threshold receiving unit 101 may store the grouping threshold 140 in a storage unit (not shown).
  • the grouping determination unit 103 may read the grouping threshold value 140 from the storage unit.
  • the tree search unit 102 follows the tree structure (tree) held in the tree structure holding unit 110 according to the structure. Then, the tree search unit 102 performs processing on each unit to be described later based on the node, data, or edge that is being traced, that is, the node, data, or edge that is being searched (hereinafter collectively referred to as “search target”). Ask.
  • the grouping determination unit 103 compares the similarity (for example, the similarity radius) associated with the edge of the tree structure (the search target edge) that the tree search unit 102 is currently tracking, and the grouping threshold 140. To do. The grouping determination unit 103 determines whether the node group associated with the search target edge can be grouped based on the comparison result. That is, the grouping threshold value 140 is a threshold value used for determining whether grouping is possible.
  • the subtree grouping unit 104 groups subtrees that can be grouped. That is, the subtree grouping unit 104 creates a group using a subtree that can be grouped.
  • the subtree that can be grouped is a subtree associated with an edge that the grouping determination unit 103 has determined to be a similarity degree equal to or greater than the grouping threshold 140.
  • the leaf node grouping unit 105 groups data in leaf nodes (leaf nodes). That is, the leaf node grouping unit 105 creates a group using the leaf node data.
  • the inter-group merging unit 106 merges the groups that can be merged into one group. That is, the inter-group merging unit 106 edits a group based on the created group.
  • the representative data merging unit 107 merges the representative data into the belonging group. That is, the representative data merging unit 107 edits the group based on the created group and the representative data.
  • the grouping result output unit 108 reads the intermediate result held in the intermediate result holding unit 130 and outputs it as a grouping result 150. For example, the grouping result output unit 108 transmits the grouping result 150 to a device operated by the user. Alternatively, the grouping result output unit 108 may display the grouping result 150 on a display device (not shown).
  • FIG. 2 is a flowchart showing an example of the operation of the information processing apparatus 10 according to the present embodiment.
  • the grouping threshold receiving unit 101 receives the grouping threshold 140.
  • the tree search unit 102 starts searching from the root node in the tree structure held in the tree structure holding unit 110 (step A201).
  • the tree search unit 102 determines whether or not the current node is a leaf node (step A202).
  • the tree search unit 102 determines whether there is uninspected representative data in the node (Step A203).
  • the tree search unit 102 selects one representative data from the uninspected representative data. Then, the tree search unit 102 requests the grouping determination unit 103 to perform processing.
  • the grouping determination unit 103 determines whether or not the similarity associated with the edge of the selected representative data is greater than or equal to the grouping threshold 140 by referring to the similarity held by the similarity holding unit 120 (inspection). (Step A204). The grouping determination unit 103 returns the determination result to the tree search unit 102.
  • the tree search unit 102 requests the subtree grouping unit 104 to perform processing based on the determination result.
  • the subtree grouping unit 104 groups representative data and data of nodes below the representative data (creates a group). Then, the subtree grouping unit 104 outputs the result (group information) to the intermediate result holding unit 130 (step A205). Then, the operation of the information processing apparatus 10 returns to Step A203.
  • a subtree including representative data and data of nodes below the representative data is referred to as “subtree below the representative data”.
  • the tree search unit 102 moves the search target to a child node ahead of the edge (Step A206). Then, the tree search unit 102 returns to Step A202 and repeats the same operation.
  • the tree search unit 102 requests the leaf node grouping unit 105 to perform processing.
  • the leaf node grouping unit 105 groups (creates a group) data in the leaf node.
  • the leaf node grouping unit 105 holds the result (group information) in the intermediate result holding unit 130 (step A207).
  • the leaf node grouping unit 105 groups the leaf nodes into one or a plurality of groups. That is, the leaf node grouping unit 105 creates one or a plurality of groups based on the grouping of leaf nodes.
  • the tree search unit 102 determines whether or not the current node (in this case, the leaf node) is a root node (root node) (step A208).
  • Step A208 If it is not the root node (No in Step A208), the search in the tree search unit 102 returns to the upper node (parent node) (backtrack) (Step A209).
  • the tree search unit 102 requests the representative data merging unit 107 to perform processing.
  • the representative data merging unit 107 merges the representative data into the group most suitable for the attribution of the representative data among the groups created by the nodes (subtrees) lower than the representative data (step A210). Details of this operation will be described later. If there is no belonging group, the representative data merging unit 107 creates a group based on the representative data.
  • the representative data merging unit 107 holds the processing result (group information) in the intermediate result holding unit 130. Then, the information processing apparatus 10 returns to step A203.
  • the tree search unit 102 requests the intergroup merging unit 106 to perform processing.
  • the group merging unit 106 merges the groups that can be merged into one group in the created grouping result 150 (step A211). Details of this operation will be described later.
  • the inter-group merging unit 106 causes the intermediate result holding unit 130 to hold the processing result.
  • step A208 the information processing apparatus 10 proceeds to step A208 and executes the operation already described.
  • the information processing apparatus 10 repeats the operation described above until the search target of the tree search unit 102 returns to the root node. If the tree search unit 102 determines that the node being searched is a root node (Yes in step A208), the tree search unit 102 requests the grouping result output unit 108 to perform processing. The grouping result output unit 108 outputs the grouping result 150 (step A211).
  • the information processing apparatus 10 ends the grouping operation.
  • the information processing apparatus 10 can obtain an effect that data grouping can be realized without restricting target data.
  • the information processing apparatus 10 does not require restrictions on data to be processed in its operation.
  • the information processing apparatus 10 can obtain an effect that the calculation time can be reduced and the grouping calculation can be executed.
  • the grouping determination unit 103 determines grouping, and each unit executes grouping processing as described below.
  • the subtree grouping unit 104 groups subtrees (representative data and data of nodes lower than the representative data) below the representative data whose similarity associated with the edge is the grouping threshold 140 or more.
  • the information processing apparatus 10 can eliminate processing at a node (child node) below the edge. This is the first reason.
  • the leaf node grouping unit 105 groups the leaf nodes.
  • the representative data merging unit 107 merges the representative data into an appropriate group.
  • the group merging unit 106 merges groups that can be merged in the group result.
  • a general information processing apparatus that searches a tree structure searches a sub-tree structure of at least a part of the tree structure a plurality of times.
  • the information processing apparatus 10 can realize the grouping operation based on a single tree structure search in the tree search unit 102. This is the second reason.
  • the calculation of grouping in the leaf node grouping unit 105 occurs when the search of the tree search unit 102 proceeds to the leaf node.
  • the leaf nodes to be calculated are some leaf nodes.
  • the calculation at the leaf node is calculation using data included in the leaf node. Therefore, the calculation amount for the leaf node in this embodiment is not a large calculation amount.
  • FIG. 3 is a diagram showing a tree structure of data used for explaining the operation of the first embodiment.
  • the tree structure shown in FIG. 3 is a hierarchical structure in which data is created based on similarity using, for example, the technique described in Non-Patent Document 1.
  • a rectangle shown in FIG. 3 indicates a node.
  • Each node (node A to node M) are representative data of n matter (e.g., representative data of the node A, from A 1 is A n) including.
  • all the nodes include n representative data, but this is an example. In the present embodiment, the number of data included in a node may be different for each node.
  • the edge is indicated by an arrow from the data of the parent node to the child node.
  • the tree structure holding unit 110 holds the tree structure shown in FIG. 3 in advance.
  • the similarity holding unit 120 holds the similarity shown in FIG. 3 in advance in association with the tree structure.
  • the tree structure holding method in the tree structure holding unit 110 of this embodiment is not particularly limited.
  • a node ID for example, A to M shown in FIG. 3
  • data belonging to the node, and data representing which sub-tree each data represents are represented in a tabular format, or A method of holding in an object format can be assumed.
  • the method for holding the similarity (for example, the similarity radius) in the similarity holding unit 120 of the present embodiment is not particularly limited. Since the similarity retention method depends on the tree structure retention method, it may be determined based on the tree structure. However, the tree structure holding method is a method in which an edge is associated with a similarity degree associated with the edge. As a method of holding similarity, for example, a method in which a node on the side of referring to a subtree holds similarity by associating with representative data, or a method in which a root node side of a subtree holds edges by associating similarity, is assumed. Alternatively, as a method of holding the similarity, an edge object that connects the representative data and the root node of the subtree holds the similarity in the inside, or the edge object holds the similarity in association with the edge ID. A method is conceivable.
  • the method for holding intermediate results in this embodiment is not particularly limited.
  • the intermediate result holding method is preferably a data structure like a stack. This is for the following reason.
  • a data structure such as a stack is a data structure in which the last input data is output first (LIFO: Last ⁇ ⁇ ⁇ In, First Out).
  • a data structure like a stack is hereinafter simply referred to as a “stack”. The amount of data stored in the stack is called the stack height.
  • the information processing apparatus 10 In extraction of group candidates to which representative data belongs and extraction of groups to be merged in inter-group merging, the information processing apparatus 10 generates an intermediate generated for a lower node of the target node (current node) It is necessary to extract the result (group information).
  • the intermediate result holding unit 130 holds an intermediate result using a data structure (LIFO) such as a stack
  • the information processing apparatus 10 checks the data stacked on the stack as a search for a tree structure in the above extraction. This is because extraction can be realized.
  • LIFO data structure
  • the information processing apparatus 10 receives the threshold ⁇ q as the grouping threshold 140. That is, the information processing apparatus 10 uses the threshold value ⁇ q as a reference for grouping data, and creates (extracts) a group including data having a similarity of the threshold value ⁇ q or more.
  • the operation of grouping data based on the search of the tree structure in the information processing apparatus 10 according to the present embodiment is generally the operation described below.
  • the tree search unit 102 starts searching for a tree structure from a root node (root node) (step A201).
  • the root node is node A.
  • Node A includes n representative data from A 1 to A n.
  • the tree search unit 102 determines whether or not the node A is a leaf node (leaf node) (step A202).
  • tree search unit 102 determines whether there is uninspected representative data (step A203).
  • tree searching unit 102 selects a representative data A 1 (Yes at step A203).
  • the grouping determination unit 103 compares the threshold ⁇ q with the similarity ⁇ 1 associated with the edge connecting the representative data A 1 and the node B including the representative data B 1 to B n (step S1). A204).
  • the tree search unit 102 sets the search target node as a child beyond the edge. Move to the node (in this case, node B) (step A206). In this case, the similarity relationship is assumed to be ⁇ 1 ⁇ q . Therefore, the tree search unit 102 sets the search target as the node B. Based on such an operation, the tree search unit 102 searches for an edge associated with a similarity of ⁇ q or more.
  • the subtree grouping unit 104 creates a subtree group (step A205).
  • FIG. 4 is a diagram showing an example of subtree grouping.
  • the similarity ⁇ 3 associated with the edge between the data C 1 of the node C and the node D is greater than or equal to a threshold ⁇ q ( ⁇ 3 ⁇ ⁇ q ).
  • the group determination section 103 determines similarity associated with this edge is equal to or greater than the threshold value [delta] q (Yes at step A204). That is, in this case, the underlying data in the data C 1, based on the data C 1, has more similarity threshold [delta] q.
  • the sub-tree grouping unit 104 a representative data C 1 or less subtrees of (Group 1 in Figure 4) group. Then, the subtree grouping unit 104 outputs the created group to the intermediate result holding unit 130 as an intermediate result (step A205).
  • the nodes included in the subtree below the representative data C 1 are grouped as a group 1. Therefore, the information processing apparatus 10 does not have to search for the representative data C 1 from the leaf node (and data included in the node). Therefore, the tree search unit 102 selects data C 2 ,..., C n which are the next representative data. Similarly, the grouping determination unit 103 determines whether there is an edge having a similarity equal to or greater than the threshold value ⁇ q.
  • the leaf node grouping unit 105 groups the leaf nodes ( Step A207).
  • FIG. 5 is a diagram illustrating an example of grouping leaf nodes.
  • the leaf node grouping unit 105 a leaf node (node G), so as to satisfy the threshold value [delta] q, for example, grouped into two groups (Group 2 and Group 3).
  • the processing of the leaf node grouping unit 105 is not particularly limited. However, in order to group the leaf nodes, the leaf node grouping unit 105 needs to examine the data of the leaf nodes in detail. Thus, for example, the leaf node grouping unit 105 may group leaf nodes using the method described in Patent Document 1.
  • the data to be grouped is a sufficiently small number of data suppressed by the capacity of the nodes. Therefore, even when the calculation amount of the leaf node grouping unit 105 requires an order of O (n 2 ) for the number n of cases, the total calculation amount of the information processing apparatus 10 does not become a large calculation amount, There is a calculation amount that can be processed at a sufficiently high speed.
  • the grouping process in the leaf node of the leaf node grouping unit 105 is not particularly limited. Various variations can be assumed for the grouping process of leaf nodes according to the present embodiment. For example, when the predetermined number of data is not included, the leaf node grouping unit 105 may not generate a group in the leaf node. Alternatively, the leaf node grouping unit 105 may exclude the leaf node from the grouping target when the leaf node does not include a predetermined number of data.
  • Tree searching unit 102 grouping subtree similarity corresponding to the above edge threshold [delta] q, or, after the grouping of the leaf nodes, performing backtracking to a higher node in the tree structure (step A209).
  • the representative data merging unit 107 merges representative data for which the group to which attribution belongs has not yet been determined. (Step A210). Further, the group merging unit 106 performs merging between groups (step A211).
  • FIG. 6 is a diagram illustrating an example of merging representative data. Referring to FIG. 6, described merging of representative data C n.
  • the representative data C n is representative of data in a node below the representative data C n . Therefore, the representative data merging unit 107, the representative data C n is in the group generated by the lower node from the representative data C n, to check whether attributable to any group.
  • the representative data merging unit 107 has a number corresponding to the stack height. By examining the group candidates, you can narrow down the group candidates. That is, the representative data merging unit 107 selects, as inspection candidates, groups up to the height stacked in the stack when the representative data is visited in the order of (first) in the search by the tree search unit 102. And it is sufficient.
  • the representative data merging unit 107 compares the similarity between the representative data of the candidate group and the representative data (C n ) to be grouped.
  • the representative data merging unit 107 may merge the group having the highest similarity and the representative data (C n ). However, the representative data merging unit 107 merges the representative data (C n ) into groups so that the similarity is equal to or greater than the threshold value ⁇ q .
  • the group that already exists when the tree search unit 102 visits in the order of travel is group 1.
  • the groups existing when visiting in the order of return are groups 1, 2, and 3. That is, the representative data merging unit 107, a group 2 composed of its difference, or group 3, it can be determined that the group generated by the lower node from the representative data C n. For this reason, the representative data merging unit 107 only needs to inspect which of the group 2 or the group 3 is more appropriate for the representative data C n .
  • FIG. 6 shows that the representative data C n has been merged into the group 3.
  • the above is not limited to the representative data merging unit 107 using the stacked data.
  • the representative data merging unit 107 may use data other than the stack structure.
  • the inter-group merging unit 106 can narrow down group candidates to be examined as to whether or not merging is possible in the merging between groups, as in the case of merging representative data. That is, the group merging unit 106 may select a group within the stack height when visiting nodes in the order of travel (first) in the tree search. The group merging unit 106 may select a merging method that matches the nature of the data to be merged as a merging method between groups. For example, the group merging unit 106 may simply merge groups when the similarity of the representative data between the groups is equal to or greater than the similarity that takes into account the similarity of each group.
  • FIG. 7 is a diagram showing an example of group merging.
  • the inter-group merging unit 106 compares these groups and checks whether or not merging is possible between the groups.
  • the example shown in FIG. 7 indicates that group 1 and group 2 are merged to generate group 1-2.
  • the above is not limited to the intergroup merging unit 106 using the stacked data.
  • the group merging unit 106 may use data other than the stack structure.
  • the operation timing of the inter-group merging unit 106 is not limited as long as it is before the operation of the grouping result output unit 108.
  • the group merging unit 106 may merge the groups after the tree search unit 102 returns to the root node.
  • the tree search unit 102 searches the tree structure until there is no unprocessed representative data of the root node (end).
  • the grouping result output unit 108 outputs the grouping result 150 (step A211).
  • the information processing apparatus 10 described above is configured as follows.
  • each component of the information processing apparatus 10 may be configured with a hardware circuit.
  • the information processing apparatus 10 may be configured using a plurality of apparatuses in which each component is connected via a network or a bus (hereinafter collectively referred to as “network or the like”).
  • FIG. 8 is a block diagram illustrating an example of the configuration of the information processing apparatus 11 according to a modification of the present embodiment.
  • the direction of the arrow in the drawing shows an example, and does not limit the direction of the signal between the blocks.
  • the information processing apparatus 11 includes a tree search unit 102, a grouping determination unit 103, a sub-tree grouping unit 104, a leaf node grouping unit 105, an inter-group merging unit 106, and a representative data merging unit 107.
  • Each configuration of the information processing apparatus 11 includes a grouping threshold value receiving unit 101, a tree structure holding unit 110, a similarity holding unit 120, and an intermediate result holding unit not shown in FIG. 130 is connected.
  • Each configuration of the information processing apparatus 11 operates in the same manner as each configuration of the information processing apparatus 10.
  • the grouping result output unit 108 may extract the grouping result 150 from the intermediate result holding unit 130 after the information processing apparatus 11 operates.
  • the information processing apparatus 11 configured in this way can obtain the same effects as the information processing apparatus 10.
  • each configuration of the information processing apparatus 11 operates in the same manner as the configuration of the information processing apparatus 10 and can perform grouping.
  • the information processing apparatus 11 is the minimum configuration of the embodiment of the present invention.
  • the information processing apparatus 10 may be configured by a single piece of hardware.
  • the information processing apparatus 10 may be realized as a computer device including a CPU (Central Processing Unit), a ROM (Read Only Memory), and a RAM (Random Access Memory).
  • the information processing apparatus 10 may be realized as a computer apparatus that further includes an input / output connection circuit (IOC: Input ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ / Output Circuit) and a network interface circuit (NIC: Network Interface Circuit).
  • IOC Input ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ / Output Circuit
  • NIC Network Interface Circuit
  • FIG. 9 is a block diagram illustrating an example of a configuration of an information processing apparatus 600 that is a second modification of the information processing apparatus 10.
  • the information processing apparatus 600 includes a CPU 610, a ROM 620, a RAM 630, an internal storage device 640, an IOC 650, and a NIC 680, and constitutes a computer device.
  • CPU 610 reads a program from ROM 620.
  • the CPU 610 controls the RAM 630, the internal storage device 640, the IOC 650, and the NIC 680 based on the read program.
  • the computer including the CPU 610 controls these configurations and realizes each function as each unit shown in FIG. 1 are a grouping threshold receiving unit 101, a tree searching unit 102, a grouping determining unit 103, a subtree grouping unit 104, a leaf node grouping unit 105, an intergroup merging unit 106, and a representative data merging unit 107. , And the grouping result output unit 108.
  • the CPU 610 may use the RAM 630 or the internal storage device 640 as a temporary storage of a program when realizing each function.
  • the CPU 610 may read the program included in the storage medium 700 storing the program so as to be readable by a computer using a storage medium reading device (not shown). Alternatively, the CPU 610 may receive a program from an external device (not shown) via the NIC 680, store the program in the RAM 630, and operate based on the stored program.
  • ROM 620 stores programs executed by CPU 610 and fixed data.
  • the ROM 620 is, for example, a P-ROM (Programmable-ROM) or a flash ROM.
  • the RAM 630 temporarily stores programs executed by the CPU 610 and data.
  • the RAM 630 is, for example, a D-RAM (Dynamic-RAM).
  • the internal storage device 640 stores data and programs stored in the information processing device 600 for a long period of time. Further, the internal storage device 640 may operate as a temporary storage device for the CPU 610.
  • the internal storage device 640 is, for example, a hard disk device, a magneto-optical disk device, an SSD (Solid State Drive), or a disk array device.
  • the internal storage device 640 operates as the tree structure holding unit 110, the similarity holding unit 120, and the intermediate result holding unit 130.
  • the ROM 620 and the internal storage device 640 are nonvolatile storage media.
  • the RAM 630 is a volatile storage medium.
  • the CPU 610 can operate based on a program stored in the ROM 620, the internal storage device 640, or the RAM 630. That is, the CPU 610 can operate using a nonvolatile storage medium or a volatile storage medium.
  • the IOC 650 mediates data between the CPU 610, the input device 660, and the display device 670.
  • the IOC 650 is, for example, an IO interface card or a USB (Universal Serial Bus) card.
  • the input device 660 is a device that receives an input instruction from an operator of the information processing apparatus 600.
  • the input device 660 is, for example, a keyboard, a mouse, or a touch panel.
  • the input device 660 may operate as the grouping threshold receiving unit 101.
  • the display device 670 is a device that displays information to the operator of the information processing apparatus 600.
  • the display device 670 is a liquid crystal display, for example.
  • the display device 670 may operate as the grouping result output unit 108.
  • the NIC 680 relays data exchange with an external device (not shown) via the network.
  • the NIC 680 is, for example, a LAN (Local Area Network) card.
  • the NIC 680 may operate as the grouping threshold receiving unit 101 or the grouping result output unit 108.
  • the information processing apparatus 600 configured in this way can obtain the same effects as the information processing apparatus 10.
  • the present invention can be applied to data summarization such as images, videos, and documents.
  • Information processing apparatus 11 Information processing apparatus 100 Data processing part 101 Grouping threshold receiving part 102 Tree search part 103 Grouping determination part 104 Subtree grouping part 105 Leaf node grouping part 106 Intergroup merging part 107 Representative data merging part 108 Group Grouping result output unit 110 tree structure holding unit 120 similarity holding unit 130 intermediate result holding unit 140 grouping threshold 150 grouping result 600 information processing device 610 CPU 620 ROM 630 RAM 640 Internal storage device 650 IOC 660 Input device 670 Display device 680 NIC 700 storage media

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 演算時間を削減して、類似度に基づくデータをグループ化するため、本発明の情報処理装置は、木構造のデータを探索する探索手段と、探索手段の探索対象のデータとデータの下位のノードとの間のエッジに関連付けられた類似度と、所定の閾値とを基に、データと下位のノードとを用いてグループ化するか否かを判定するグループ化判定手段と、判定の結果としてグループ化と判定されたデータと下位のノードとをグループ化するサブツリーグループ化手段と、探索対象のノードがリーフノードの場合に、検索対象のリーフノードをグループ化するリーフノードグループ化手段と、探索手段における探索が上位のノードへのバックトラックにおいて戻ったデータが帰属先のグループが決まっていない場合に、そのデータを下位のノードのグループに併合するデータ併合手段と、グループの少なくとも一部のグループを併合するグループ併合手段とを含む。

Description

情報処理装置、情報処理方法、及び、記録媒体
 本発明は、情報の検索に関し、特に、類似するデータをグループ化する情報処理装置、情報処理方法、及び記録媒体に関する。
 画像又は文書といったデータは、データ同士の一致を基にした評価よりも、それらのデータが持つ特徴の類似度を基に評価される場合が多い。また、このようなデータを分類又は要約する場合、データ間の類似度が、所定の値以上となるデータをまとめる処理が、有効である。このような処理は、一般的に、類似度に基づくグループ化と呼ばれている(例えば、特許文献1を参照)。
 特許文献1に記載されている情報検索装置は、ユーザが入力した類似検索(ユーザからの類似検索)の結果を、さらに類似するグループにグループ化する機能を提供する。特許文献1において情報検索装置は、ユーザから受信した類似検索結果をグループ化する際、ユーザから受信した類似検索の結果について、さらに類似検索(検索結果に対する類似検索)を実行する。そして、情報検索装置は、検索結果に関して、所定の閾値以上の類似度を有するデータを、グループにまとめる。情報検索装置は、このような動作を基に、グループ化を実行する。この時、情報検索装置は、ユーザからの類似検索結果の中で、類似度が高い検索結果から類似検索を実行する。そして、情報検索装置は、類似度が所定の閾値以上になる検索結果をグループ化する。ただし、情報検索装置は、既に類似検索が実行されている検索結果について、グループ化を実行しない。
 また、類似検索を高速化するためのデータ構造が、提案されている(例えば、非特許文献1を参照)。非特許文献1に記載されている技術は、データ間の類似度の階層性を考慮して、データの木構造(以下、単に「木構造」と呼ぶ)を構築する。非特許文献1の技術は、このような木構造を用いて、類似検索の高速化を実現する。非特許文献1に記載されている木構造は、おおむね、次のように構成される。すなわち、木構造を構成するノードは、データを保存する。そして、あるノードが、ノードの容量を超えるデータを含む場合、非特許文献1に記載されている技術は、そのノードに含まれるデータの中から代表となるデータ(代表データ)を選び、代表データをそのノードの親ノードに配置する。それとともに、非特許文献1に記載されている技術は、親ノードとそのノードとの間のエッジに、代表データとそのノードにあるデータとの類似度の上限を関連付ける。そして、非特許文献1に記載されている技術は、木構造全体として、エッジに関連付けられた類似度の値が、根ノード(ルートノード)から葉ノード(リーフノード)に向かうに従って増加するように、木構造をメンテナンスする。非特許文献1に記載されている技術は、木構造として、類似度の階層性に着目したデータ構造を与える。ただし、非特許文献1は、グループ化の方法を開示していない。
特開2000-112988号公報
劉 健全、西村 祥治、荒木 拓也著、「類似度の階層関係に基づく木構造索引を用いた効率的な類似検索」、第5回データ工学と情報マネジメントに関するフォーラム(第11回日本データベース学会年次大会)、DEIM 2013、セッションA9:問い合せ処理、March 05, 2013
 特許文献1は、ユーザからの類似検索結果に対するグループ化に関する技術を開示している。つまり、特許文献1に記載されている技術は、一般的なデータを前提としていない。したがって、一般的なデータにおけるグループ化を実現することはできない。例えば、特許文献1に記載されている技術を使用して、「画像データベースに対して、そのデータベースの中にどのような種類の画像があるかを、その類似度に基づいてグループ化せよ」というようなクエリ(問い合わせ)を実行することはできない。このように、特許文献1は、グループ化の対象となるデータに制限があるという問題点があった。
 また、非特許文献1は、グループ化の方法を開示していない。
 そのため、特許文献1に非特許文献1を組み合わせても、グループ化の対象となるデータにおける制限を解決できない。
 さらに、特許文献1に記載されている技術は、類似するデータをグループ化するための演算に、大きな時間が掛かる。その理由は、特許文献1に記載されている技術は、各検索結果に対して類似検索を実行するので、グループ化の演算において、O(N)オーダーの時間が掛かるからである。ここで、「O()」は、値の変動のおおよその評価を与える記法であり、一般的に、「ランダウの記号」又は「O-記号」と呼ばれるものである。また、「N」は、データ件数を示す。このように、特許文献1には、処理に時間が掛かるという問題点があった。
 本発明の目的は、上記の問題点を解決し、処理対象のデータを制限しなくても、演算時間を削減して、データ類似度に基づくグループ化を実現できる情報処理装置、情報処理方法、及び、記録媒体を提供することにある。
 本発明の一形態における情報処理装置は、データを含むノードを要素とした木構造のデータを探索する探索手段と、探索手段の探索対象のノードに含まれるデータとそのデータの下位のノードとの間のエッジに関連付けられた類似度と、所定の閾値とを基に、データと下位のノードとを用いてグループ化するか否かを判定するグループ化判定手段と、判定の結果としてグループ化と判定されたデータと下位のノードとをグループ化して、グループを作成するサブツリーグループ化手段と、探索対象のノードがリーフノードの場合に、検索対象のリーフノードをグループ化して、1つ又は複数のグループを作成するリーフノードグループ化手段と、探索手段における探索が上位のノードへのバックトラックにおいて戻ったデータが帰属先のグループが決まっていない場合に、そのデータをそのデータの下位のノードのいずれかのグループに併合するデータ併合手段と、グループの少なくとも一部のグループを併合するグループ併合手段とを含む。
 本発明の一形態におけるデータ処理方法は、データを含むノードを要素とした木構造のデータを探索し、探索対象のノードに含まれるデータとそのデータの下位のノードとの間のエッジに関連付けられた類似度と、所定の閾値とを基に、データと下位のノードとを用いてグループ化するか否かを判定し、判定の結果としてグループ化と判定されたデータと下位のノードとをグループ化して、グループを作成し、探索対象のノードがリーフノードの場合に、検索対象のリーフノードをグループ化して、1つ又は複数のグループを作成し、探索が上位のノードへのバックトラックにおいて戻ったデータが帰属先のグループが決まっていない場合に、そのデータをそのデータの下位のノードのいずれかのグループに併合し、グループの少なくとも一部のグループを併合する。
 本発明の一形態における記録媒体は、データを含むノードを要素とした木構造のデータを探索する処理と、探索対象のノードに含まれるデータとそのデータの下位のノードとの間のエッジに関連付けられた類似度と、所定の閾値とを基に、データと下位のノードとを用いてグループ化するか否かを判定する処理と、判定の結果としてグループ化と判定されたデータと下位のノードとをグループ化して、グループを作成する処理と、探索対象のノードがリーフノードの場合に、検索対象のリーフノードをグループ化して、1つ又は複数のグループを作成する処理と、探索が上位のノードへのバックトラックにおいて戻ったデータが帰属先のグループが決まっていない場合に、そのデータをそのデータの下位のノードのいずれかのグループに併合する処理と、グループの少なくとも一部のグループを併合する処理とを含むプログラムをコンピュータから読み取り可能に記録する。
 本発明に基づけば、対象となるデータを制限しなくても、演算時間を削減して、類似度に基づくデータのグループ化を実行できるとの効果を奏することができる。
図1は、本発明における第1の実施形態に係る情報処理装置の構成の一例を示すブロック図である。 図2は、第1の実施形態に係る情報処理装置の動作の一例を示す流れ図である。 図3は、第1の実施形態の動作の説明に用いる木構造を示す図である。 図4は、サブツリーのグループ化の一例を示す図である。 図5は、リーフノードのグループ化の一例を示す図である。 図6は、代表データの併合の一例を示す図である。 図7は、グループ間併合の一例を示す図である。 図8は、第1の実施形態の情報処理装置の変形例の構成の一例を示すブロック部である。 図9は、第1の実施形態の情報処理装置の変形例の構成の一例を示すブロック部である。
 次に、本発明の実施形態について図面を参照して説明する。
 各図面は、本発明の実施形態を説明するものである。ただし、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。
 <第1の実施形態>
 まず、第1の実施形態に係る情報処理装置10の構成について説明する。
 [構成の説明]
 図1は、本発明における第1の実施形態に係る情報処理装置10の構成の一例を示すブロック図である。ただし、図面中の矢印の方向は、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
 図1を参照すると、情報処理装置10は、データ処理部100と、木構造保持部110と、類似度保持部120と、中間結果保持部130とを含む。ここで、保持とは、記憶又は保存を意味する。
 木構造保持部110は、情報処理装置10の処理対象である木構造として構築されたデータ(以下、木構造と呼ぶ)を保持する。木構造は、ノード(例えば、ルートノード及びリーフノード)とエッジとを含む。なお、各ノードは、データ(例えば、代表データ)を含む。ここで、「代表データ」とは、ノードに含まれるデータにおいて、ノードを代表するデータである。
 類似度保持部120は、エッジに関連付けられた(付与された)類似度(例えば、類似半径)を保持する。
 木構造保持部110と類似度保持部120は、予め、後ほど説明するデータ処理部100における動作の前に、上記で説明したデータを保持すればよい。例えば、情報処理装置10のユーザが、処理に先立ち、上記データを各保持部に記憶させればよい。
 中間結果保持部130は、後ほど説明するデータ処理部100の各部のグループ化処理に基づいて生成される結果(以下、「中間結果」と呼ぶ)を保持する。
 データ処理部100は、木構造保持部110が保持する木構造を探索する。そして、データ処理部100は、木構造保持部110が保持する木構造と、後ほど説明する受信したグループ化閾値140と、類似度保持部120が保持する類似度とを用いて、木構造のグループ化を実行する。データ処理部100は、グループ化処理の結果(中間結果)を、中間結果保持部130に保持させる。そして、データ処理部100は、グループ化の処理の終了後、中間結果保持部130が保持する中間結果を、グループ化結果150として出力する。
 そのため、データ処理部100は、木探索部102と、グループ化判定部103と、サブツリーグループ化部104と、リーフノードグループ化部105と、グループ間併合部106と、代表データ併合部107とを含む。さらに、データ処理部100は、グループ化閾値受信部101と、グループ化結果出力部108とを含む。データ処理部100に含まれる各構成は、必要に応じて、木構造保持部110、類似度保持部120、及び中間結果保持部130に保持されたデータを用いる。また、各構成は、必要に応じて、中間結果保持部130にデータを保持させる。以下の説明では、説明の便宜のため、各構成が、各保持部にデータの保持させる動作及びデータを読み出す動作を省略する場合もある。
 グループ化閾値受信部101は、図示しない外部の装置からグループ化閾値140を受信する。例えば、グループ化閾値受信部101は、ユーザが操作する装置からグループ化閾値140を受信すればよい。グループ化閾値受信部101は、グループ化閾値140をグループ化判定部103に渡す。あるいは、グループ化閾値受信部101は、グループ化判定部103の要求に対して、グループ化閾値140を送信してもよい。あるいは、グループ化閾値受信部101は、図示しない記憶部にグループ化閾値140を記憶させてもよい。この場合、グループ化判定部103は、その記憶部からグループ化閾値140を読み出せばよい。このように、本実施形態は、グループ化閾値140を保存する構成に制限はない。
 木探索部102は、木構造保持部110に保持された木構造(ツリー)を、その構造に従って、たどる。そして、木探索部102は、現在たどっているノード、データ又はエッジつまり、探索中のノード、データ、又はエッジ(以下、まとめて「探索対象」と呼ぶ)を基に、後述する各部に処理を依頼する。
 グループ化判定部103は、木探索部102が現在たどっている木構造のエッジ(探索対象となっているエッジ)に関連付けられた類似度(例えば、類似半径)と、グループ化閾値140とを比較する。グループ化判定部103は、比較結果を基に、探索対象のエッジに関連付けられているノード群が、グループ化可能か否かを判定する。つまり、グループ化閾値140は、グループ化可能か否かの判定に用いられる閾値である。
 サブツリーグループ化部104は、グループ化が可能なサブツリーをグループ化する。つまり、サブツリーグループ化部104は、グループ化が可能なサブツリーを用いて、グループを作成する。ここで、グループ化が可能なサブツリーとは、グループ化判定部103がグループ化閾値140以上の類似度と判定したエッジに関連付けられたサブツリーである。
 リーフノードグループ化部105は、リーフノード(葉ノード)にあるデータをグループ化する。つまり、リーフノードグループ化部105は、リーフノードのデータを用いて、グループを作成する。
 グループ間併合部106は、併合可能なグループを、一つのグループに併合する。つまり、グループ間併合部106は、作成されたグループを基に、グループを編集する。
 代表データ併合部107は、代表データを、帰属するグループに併合する。つまり、代表データ併合部107は、作成されたグループと代表データとを基に、グループを編集する。
 グループ化結果出力部108は、中間結果保持部130に保持された中間結果を読み出し、グループ化結果150として出力する。例えば、グループ化結果出力部108は、ユーザが操作する装置にグループ化結果150を送信する。あるいは、グループ化結果出力部108は、図示しない表示機器に、グループ化結果150を表示してもよい。
 [動作の説明]
 次に、図面を参照して、本実施形態の動作について説明する。
 図2は、本実施形態に係る情報処理装置10の動作の一例を示す流れ図である。
 まず、グループ化閾値受信部101は、グループ化閾値140を受信する。
 そして、木探索部102は、木構造保持部110に保持されている木構造において、ルートノードから探索を開始する(ステップA201)。
 木探索部102は、現在のノードがリーフノードであるか否かを判定する(ステップA202)。
 リーフノードでない場合(ステップA202でNo)、木探索部102は、そのノードに、未検査の代表データがあるか否かを判定する(ステップA203)。
 未検査の代表データがある場合(ステップA203でYes)、木探索部102は、未検査の代表データの中から、代表データを1つ選ぶ。そして、木探索部102は、グループ化判定部103に処理を依頼する。
 グループ化判定部103は、類似度保持部120が保持する類似度を参照して、選択された代表データのエッジに関連付けられた類似度が、グループ化閾値140以上か否かを判定(検査)する(ステップA204)。グループ化判定部103は、判定結果を木探索部102に返す。
 代表データの類似度が、グループ化閾値140以上の場合(ステップA204でYes)、その代表データの下位にあるノードのデータは、その代表データからグループ化閾値140以上の類似度を持っている。そこで、木探索部102は、判定結果に基づき、サブツリーグループ化部104に処理を依頼する。サブツリーグループ化部104は、代表データと代表データの下位にあるノードのデータとを、グループ化する(グループを作成する)。そして、サブツリーグループ化部104は、その結果(グループの情報)を、中間結果保持部130に出力する(ステップA205)。そして、情報処理装置10の動作は、ステップA203に戻る。なお、代表データとその代表データの下位にあるノードのデータとを含むサブツリーを、「その代表データ以下のサブツリー」と呼ぶ。
 代表データの類似度が、グループ化閾値140より小さい場合(ステップA204でNo)、木探索部102は、探索対象を、そのエッジの先にある子ノードに移動する(ステップA206)。そして、木探索部102は、ステップA202に戻り、同様の動作を繰り返す。
 探索が、リーフノードまで達した場合(ステップA202でYes)、木探索部102は、リーフノードグループ化部105に処理を依頼する。リーフノードグループ化部105は、そのリーフノード内にあるデータをグループ化(グループを作成)する。そして、リーフノードグループ化部105は、その結果(グループの情報)を、中間結果保持部130に保持させる(ステップA207)。なお、リーフノードグループ化部105は、リーフノードを、1つ又は複数のグループにグループ化する。つまり、リーフノードグループ化部105は、リーフノードのグループ化に基づいて、1つ又は複数のグループを作成する。
 そして、木探索部102は、現在のノード(今の場合、リーフノード)が、ルートノード(根ノード)であるか否かを判定する(ステップA208)。
 ルートノードでない場合(ステップA208でNo)、木探索部102における探索は、上位ノード(親ノード)に戻る(バックトラック)(ステップA209)。
 木探索部102の探索が上位ノードに戻ってきたとき、そのノードの代表データは、どのグループにも属していない。そのため、木探索部102は、代表データ併合部107に処理を依頼する。代表データ併合部107は、その代表データより下位のノード(サブツリー)で作られたグループの中で、その代表データの帰属に最適なグループに、その代表データを併合する(ステップA210)。この動作の詳細は、後ほど説明する。なお、帰属するグループが存在しない場合、代表データ併合部107は、その代表データを基にグループを作成する。代表データ併合部107は、処理結果(グループの情報)を中間結果保持部130に保持させる。そして、情報処理装置10は、ステップA203に戻る。
 ノードの代表データをすべて検査し終わった場合(ステップA203でNo)、そのノードの下位のノードのグループ化の結果が作成された状態である。そこで、木探索部102は、グループ間併合部106に処理を依頼する。グループ間併合部106は、作成されたグループ化結果150の中で、併合できるグループを一つのグループに併合する(ステップA211)。この動作の詳細は、後ほど説明する。グループ間併合部106は、処理結果を中間結果保持部130に保持させる。
 その後、情報処理装置10は、ステップA208に進み、既に説明した動作を実行する。
 そして、情報処理装置10は、上記で説明した動作を、木探索部102の探索の対象がルートノードに戻るまで繰り返す。そして、木探索部102は、探索中のノードがルートノードであると判定すると(ステップA208でYes)、グループ化結果出力部108に処理を依頼する。グループ化結果出力部108は、グループ化結果150を出力する(ステップA211)。
 そして、情報処理装置10は、グループ化の動作を終了する。
 [効果の説明]
 次に、本実施の形態の効果について説明する。
 上記のとおり、本実施形態に係る情報処理装置10は、対象となるデータを制限しなくても、データのグループ化を実現できるとの効果を得ることができる。
 その理由は、上記のとおり、情報処理装置10が、その動作において、処理対象のデータにおける制限を必要としないためである。
 また、本実施形態に係る情報処理装置10は、演算時間を削減して、グループ化の演算を実行できるとの効果を得ることができる。
 その理由は、次のとおりである。
 木探索部102が探索したノードに対して、グループ化判定部103がグループ化と判定したノードについて、下記のように各部が、グループ化の処理を実行する。
 すなわち、サブツリーグループ化部104は、エッジに関連付けられた類似度がグループ化閾値140以上である代表データ以下のサブツリー(代表データと、その代表データの下位のノードのデータ)を、グループ化する。この場合、情報処理装置10は、そのエッジの下位のノード(子ノード)での処理を不要にすることができる。これが、第1の理由である。
 また、木探索部102の探索が、リーフノードに達した場合、リーフノードグループ化部105が、リーフノードをグループ化する。
 そして、上記のグループ化処理の後、木探索部102の探索が上位ノードの戻った(バックトラック)場合、代表データ併合部107が、適切なグループに代表データを併合する。
 そして、グループ間併合部106が、グループ結果の中で、併合できるグループを併合する。
 木構造の検索する一般的な情報処理装置は、木構造の少なくとも一部のサブツリー構造を、複数回探索する。
 一方、上記のように、情報処理装置10は、上記のグループ化の動作を、木探索部102における1回の木構造の探索を基に実現できる。これが、第2の理由である。
 なお、リーフノードグループ化部105におけるグループ化の計算は、木探索部102の探索がリーフノードまで進んだ場合に発生する。本実施形態において、上記のとおり、計算対象となるリーフノードは、一部のリーフノードである。また、リーフノードでの計算は、そのリーフノードに含まれるデータを用いた計算である。そのため、本実施形態におけるリーフノードに対する計算量は、大きな計算量とはならない。
 [詳細な動作の説明]
 次に、具体的な木構造を用いて、本実施形態の詳細な動作について説明する。
 まず、詳細な動作の説明に先立ち、動作の説明において用いる、木構造保持部110及び類似度保持部120が保持するデータについて説明する。
 図3は、第1の実施形態の動作の説明に用いるデータの木構造を示す図である。
 図3に示す木構造は、例えば、非特許文献1に記載された手法を用いて、データが類似度に基づいて作成された階層化構造である。
 図3に示す長方形は、ノードを示す。各ノード(ノードAないしノードM)は、n件の代表データ(例えば、ノードAの代表データは、AからAである)を含む。図3において、全てのノードは、n件の代表データを含んでいるが、これは、一例である。本実施形態において、ノードの含まれるデータの数は、ノード毎に異なっていてもよい。
 エッジは、親ノードのデータから子ノードに向かう矢印で示されている。エッジに関連づけられた類似度δ(x=1、…、12)は、親ノードのデータから類似度が類似度δ以上であるデータが、そのエッジより下位のノードにあることを示す。例えば、データAから出ている類似度δが関連付けられたエッジより下位のノードのデータ(図3では、B、…、B、C、…、C、…等)は、データAに対する類似度が、類似度δ以上である。
 以下の説明において、木構造保持部110は、予め、図3に示す木構造を保持しているとする。また、類似度保持部120は、予め、図3に示す類似度を木構造と関連付けて保持しているとする。
 本実施形態の木構造保持部110における木構造の保持方法は、特に制限はない。例えば、木構造の保持方法として、ノードID(例えば、図3に示すAからM)と、そのノードに属するデータ及び各データがどのサブツリーの代表であるかを表現するデータを、表形式、又はオブジェクト形式で保持する方法が想定できる。
 また、本実施形態の類似度保持部120における類似度(例えば、類似半径)の保持方法は、特に制限はない。類似度の保持方法は、木構造の保持方法に依存するため、木構造を基に決定されればよい。ただし、木構造の保持方法は、エッジとそのエッジに関連付けられた類似度とが関連付けられている方法である。類似度の保持方法として、例えば、サブツリーを参照させる側のノードが、代表データと関連付けて類似度を保持する方法、又は、サブツリーのルートノード側が、類似度を関連付けてエッジを保持する方法が、想定される。あるいは、類似度を保持する方法として、代表データとサブツリーのルートノード間をつなぐエッジオブジェクトが、その内部に類似度を保持する方法、又は、エッジオブジェクトが、エッジIDに関連付けて類似度を保持する方法などが、考えられる。
 また、本実施形態の中間結果の保持方法は、特に制限はない。ただし、中間結果の保持方法は、スタックのようなデータ構造が望ましい。これは、次のような理由のためである。ただし、スタックのようなデータ構造とは、最後に入力したデータが最初に出力されるデータ構造(LIFO:Last In, First Out)である。スタックのようなデータ構造を、以下、単に「スタック」と呼ぶ。また、スタックに蓄えられたデータの量を、スタックの高さと呼ぶ。
 代表データが帰属するグループの候補の抽出、及び、グループ間併合における併合させるグループの抽出において、情報処理装置10は、対象となるノード(現在のノード)の下位のノードに対して生成された中間結果(グループの情報)の取り出しが必要である。中間結果保持部130が、スタックのようなデータ構造(LIFO)を用いて中間結果を保持すると、情報処理装置10は、上記の抽出における木構造の探索として、スタックに積まれたデータを検査すれば、抽出を実現できるためである。
 なお、以下の説明において、各構成における、各情報の読み出し動作、及び、保持させる動作の説明は、適宜、省略する。また、以下の説明において、情報処理装置10は、グループ化閾値140として、閾値δを受信したとする。すなわち、情報処理装置10は、データのグループ化の基準として閾値δを用い、類似度が閾値δ以上のデータからなるグループを作成(抽出)する。
 次に、情報処理装置10の具体的な動作を説明する。
 本実施形態に係る情報処理装置10における木構造の探索を基にデータをグループ化する動作は、おおむね、次に説明する動作となる。
 まず、木探索部102は、ルートノード(根ノード)から、木構造の探索を開始する(ステップA201)。図3に示すように、今の場合、ルートノードは、ノードAである。ノードAは、AからAまでのn個の代表データを含む。
 木探索部102は、ノードAがリーフノード(葉ノード)か否かを判定する(ステップA202)。
 今の場合、ノードAは、リーフノードでないため(ステップA202でNo)、木探索部102は、未検査の代表データがあるか否かを判定する(ステップA203)。
 ここでは、未検査の代表データがある場合の一例として、木探索部102は、代表データAを選択したとする(ステップA203でYes)。
 次に、グループ化判定部103は、閾値δと、代表データAと代表データBからBを含むノードBとをつなぐエッジに関連付けられている類似度δとを比較する(ステップA204)。
 エッジに関連付けられた類似度(δ)が閾値δより小さい(δ<δ)場合(ステップA204でNo)、木探索部102は、探索対象のノードを、そのエッジの先の子ノード(今の場合、ノードB)に移動する(ステップA206)。今の場合、類似度の関係が、δ<δとする。そのため、木探索部102は、探索対象をノードBとする。このような動作を基に、木探索部102は、δ以上の類似度が関連付けられたエッジを探索する。
 一方、エッジに関連付けられた類似度(δ)が閾値δ以上(δ≧δ)場合(ステップA204でYes)、サブツリーグループ化部104は、サブツリーグループを作成する(ステップA205)。
 図4は、サブツリーのグループ化の一例を示す図である。
 図4に示すように、ノードCのデータCとノードDとの間のエッジに関連付けられた類似度δが、閾値δ以上(δ≧δ)とする。この場合、グループ化判定部103は、このエッジに関連付けられた類似度が閾値δ以上と判定する(ステップA204でYes)。つまり、この場合、データCの配下にあるデータは、データCを基準として、閾値δ以上の類似度を持っている。
 したがって、サブツリーグループ化部104は、代表データC以下のサブツリーを、グループ(図4のグループ1)化する。そして、サブツリーグループ化部104は、中間結果として、作成したグループを中間結果保持部130に出力する(ステップA205)。
 図4に示すように、代表データC以下のサブツリーに含まれるノードは、グループ1としてまとめられた。そのため、情報処理装置10は、代表データCよりリーフ側のノード(及びノードに含まれるデータ)を探索する必要はない。したがって、木探索部102は、次の代表データであるデータC,…、Cを選択する。そして、グループ化判定部103は、同様に、類似度が閾値δ以上のエッジがあるか否かを判定する。
 もし、グループ化判定部103が、閾値δ以上のエッジが見つからずに、木探索部102の探索が、リーフノードに到達した場合、リーフノードグループ化部105が、リーフノードをグループ化する(ステップA207)。
 図5は、リーフノードのグループ化の一例を示す図である。
 図5に示すように、木探索部102は、ノードGまで探索が進んだとする。そこで、リーフノードグループ化部105は、リーフノード(ノードG)を、閾値δを満たすように、例えば、2つのグループ(グループ2及びグループ3)にグループ化する。
 なお、リーフノードグループ化部105の処理は、特に制限はない。ただし、リーフノードをグループ化するためには、リーフノードグループ化部105は、リーフノードのデータを詳細に検討する必要がある。そこで、例えば、リーフノードグループ化部105は、特許文献1に記載された方法を用いて、リーフノードをグループ化してもよい。
 なお、リーフノードをグループ化する場合、グループ化の対象となるデータは、ノードの容量で抑えられた、十分に小さなデータ数である。そのため、リーフノードグループ化部105の計算量が、件数nに対してO(n)のオーダーが必要な場合でも、情報処理装置10の全体の計算量は、大きな計算量とはならず、十分に高速な処理が可能な計算量ある。
 また、リーフノードグループ化部105のリーフノード内のグループ化の処理は、特に制限はない。本実施形態に係るリーフノードのグループ化の処理に関して、様々なバリエーションが想定可能である。例えば、リーフノードグループ化部105は、所定のデータ数を含まない場合、そのリーフノードにおいて、グループを生成しなくてもよい。あるいは、リーフノードグループ化部105は、そのリーフノードが所定のデータ数を含まない場合、そのリーフノードをグループ化の対象から除外してもよい。
 木探索部102は、類似度が閾値δ以上のエッジに対応したサブツリーのグループ化、又は、リーフノードのグループ化の後、木構造における上位ノードへのバックトラックを実行する(ステップA209)。この木探索部102の探索のバックトラック動作において(帰りがけ順(の最後)に)、代表データを訪問するとき、代表データ併合部107は、まだ帰属先のグループが決まっていない代表データを併合する(ステップA210)。また、グループ間併合部106は、グループ間の併合を実行する(ステップA211)。
 図6は、代表データの併合の一例を示す図である。図6を参照して、代表データCの併合について説明する。
 代表データCは、代表データCの下位のノードにあるデータの代表である。そこで、代表データ併合部107は、代表データCが、代表データCより下位のノードで生成されたグループの中で、どのグループに帰属するかを検査する。
 なお、既に説明した通り、中間結果保持部130が、検査対象とするグループの候補(中間結果)をスタック構造で保持している場合、代表データ併合部107は、スタックの高さに相当する数のグループの候補を検査すれば、グループの候補を絞り込める。すなわち、代表データ併合部107は、検査の候補として、木探索部102の探索において、行きがけ順(の最初)に代表データを訪問したときのスタックに積まれた高さまでのグループを、検査の候補とすればよい。
 そして、代表データ併合部107は、候補となるグループの代表データと、グループ化する代表データ(C)との類似度を比較する。そして、代表データ併合部107は、最も高い類似度となるグループと代表データ(C)とを併合すればよい。ただし、代表データ併合部107は、類似度が閾値δ以上となるように、代表データ(C)をグループに併合する。
 図6に示す例では、木探索部102が行きがけ順で訪問した時に既に存在するグループは、グループ1である。また、帰りがけ順で訪問した時に存在するグループは、グループ1、2、及び3である。つまり、代表データ併合部107は、その差分となるグループ2、又はグループ3が、代表データCより下位のノードで生成されたグループであると判断できる。そのため、代表データ併合部107は、グループ2又はグループ3のどちらが、代表データCに対して、より適切かを検査すればよい。図6は、代表データCがグループ3に併合されたことを表している。
 ただし、上記は、代表データ併合部107が、スタックされたデータを用いることに限定するものではない。代表データ併合部107は、スタック構造以外のデータを用いてもよい。
 グループ間併合部106は、グループ間の併合において、代表データ併合と同様に、併合できるか否かを検討するグループの候補を、絞り込むことができる。すなわち、グループ間併合部106は、木の探索において、行きがけ順(最初)にノードを訪問した時のスタックの高さまでにあるグループを、併合の対象とすればよい。なお、グループ間併合部106は、グループ間の併合方法として、併合するデータの性質に合った併合方法を選択すればよい。例えば、グループ間併合部106は、単純に、各グループ間の代表データの類似度が、それぞれのグループの類似度を加味した類似度以上にある場合に、グループを併合してもよい。
 図7は、グループ間併合の一例を示す図である。
 図7に示すように、木探索部102が、CからCを含むノードを行きがけ順で訪問したときのグループは、1つもない。一方、木探索部102が帰りがけ順で訪問した時のグループは、グループ1、グループ2、及びグループ3である。そこで、グループ間併合部106は、これらのグループを比較し、グループ間で併合可能か否かを検査する。図7に示す例は、グループ1とグループ2が併合され、グループ1-2が生成されたことを示している。
 ただし、上記は、グループ間併合部106が、スタックされたデータを用いることに限定するものではない。グループ間併合部106は、スタック構造以外のデータを用いてもよい。また、グループ間併合部106の動作のタイミングは、グループ化結果出力部108の動作前なら、制限はない。例えば、グループ間併合部106は、木探索部102の探索がルートノードに戻った後、グループ間を併合してもよい。
 上記の動作を繰り返し、木探索部102は、ルートノードに戻ったときに、ルートノードの未処理の代表データがなくなる(終了)まで、木構造の探索を実行する。そして、木探索部102が、木構造の探索が終了すると、グループ化結果出力部108は、グループ化結果150を出力する(ステップA211)。
 <第1の変形例>
 以上の説明した情報処理装置10は、次のように構成される。
 例えば、情報処理装置10の各構成部は、ハードウェア回路で構成されても良い。
 また、情報処理装置10は、各構成部をネットワーク又はバスなど(以下、まとめて「ネットワークなど」と呼ぶ)を介して接続した複数の装置を用いて構成されても良い。
 図8は、本実施形態の変形例に係る情報処理装置11の構成の一例を示すブロック図である。ただし、図面中の矢印の方向は、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
 情報処理装置11は、木探索部102と、グループ化判定部103と、サブツリーグループ化部104と、リーフノードグループ化部105と、グループ間併合部106と、代表データ併合部107とを含む。情報処理装置11の各構成は、図示しないネットワークなどを介して、図8において図示されていないグループ化閾値受信部101と、木構造保持部110と、類似度保持部120と、中間結果保持部130と接続する。そして、情報処理装置11の各構成は、情報処理装置10の各構成と同様に動作する。なお、図示しないグループ化結果出力部108は、情報処理装置11の動作後、中間結果保持部130から、グループ化結果150を取り出せばよい。
 このように構成された情報処理装置11は、情報処理装置10と同様の効果を得ることができる。
 その理由は、上記のとおり、情報処理装置11の各構成が、情報処理装置10の構成と同様に動作し、グループ化を実行できるためである。
 なお、情報処理装置11は、本発明の実施形態の最小構成である。
 <第2の変形例>
 また、情報処理装置10は、複数の構成部を1つのハードウェアで構成されても良い。
 また、情報処理装置10は、CPU(Central Processing Unit)と、ROM(Read Only Memory)と、RAM(Random Access Memory)とを含むコンピュータ装置として実現されても良い。情報処理装置10は、上記構成に加え、さらに、入出力接続回路(IOC:Input / Output Circuit)と、ネットワークインターフェース回路(NIC:Network Interface Circuit)とを含むコンピュータ装置として実現されても良い。
 図9は、情報処理装置10の第2の変形例である情報処理装置600の構成の一例を示すブロック図である。
 情報処理装置600は、CPU610と、ROM620と、RAM630と、内部記憶装置640と、IOC650と、NIC680とを含み、コンピュータ装置を構成している。
 CPU610は、ROM620からプログラムを読み込む。そして、CPU610は、読み込んだプログラムに基づいて、RAM630と、内部記憶装置640と、IOC650と、NIC680とを制御する。
 そして、CPU610を含むコンピュータは、これらの構成を制御し、図1に示す各部としての各機能を実現する。図1に示す各部とは、グループ化閾値受信部101、木探索部102、グループ化判定部103、サブツリーグループ化部104、リーフノードグループ化部105、グループ間併合部106、代表データ併合部107、及びグループ化結果出力部108とである。
 CPU610は、各機能を実現する際に、RAM630又は内部記憶装置640を、プログラムの一時記憶として使用しても良い。
 また、CPU610は、コンピュータで読み取り可能にプログラムを記憶した記憶媒体700が含むプログラムを、図示しない記憶媒体読み取り装置を用いて読み込んでも良い。あるいは、CPU610は、NIC680を介して、図示しない外部の装置からプログラムを受け取り、RAM630に保存して、保存したプログラムを基に動作しても良い。
 ROM620は、CPU610が実行するプログラム及び固定的なデータを記憶する。ROM620は、例えば、P-ROM(Programmable-ROM)又はフラッシュROMである。
 RAM630は、CPU610が実行するプログラム及びデータを一時的に記憶する。RAM630は、例えば、D-RAM(Dynamic-RAM)である。
 内部記憶装置640は、情報処理装置600が長期的に保存するデータ及びプログラムを記憶する。また、内部記憶装置640は、CPU610の一時記憶装置として動作しても良い。内部記憶装置640は、例えば、ハードディスク装置、光磁気ディスク装置、SSD(Solid State Drive)又はディスクアレイ装置である。内部記憶装置640は、木構造保持部110、類似度保持部120、及び、中間結果保持部130として動作する。
 ここで、ROM620と内部記憶装置640は、不揮発性の記憶媒体である。一方、RAM630は、揮発性の記憶媒体である。そして、CPU610は、ROM620、内部記憶装置640、又は、RAM630に記憶されているプログラムを基に動作可能である。つまり、CPU610は、不揮発性記憶媒体又は揮発性記憶媒体を用いて動作可能である。
 IOC650は、CPU610と、入力機器660及び表示機器670とのデータを仲介する。IOC650は、例えば、IOインターフェースカード又はUSB(Universal Serial Bus)カードである。
 入力機器660は、情報処理装置600の操作者からの入力指示を受け取る機器である。入力機器660は、例えば、キーボード、マウス又はタッチパネルである。入力機器660は、グループ化閾値受信部101として動作してよい。
 表示機器670は、情報処理装置600の操作者に情報を表示する機器である。表示機器670は、例えば、液晶ディスプレイである。表示機器670は、グループ化結果出力部108として動作してよい。
 NIC680は、ネットワークを介した図示しない外部の装置とのデータのやり取りを中継する。NIC680は、例えば、LAN(Local Area Network)カードである。NIC680は、グループ化閾値受信部101又はグループ化結果出力部108として動作してもよい。
 このように構成された情報処理装置600は、情報処理装置10と同様の効果を得ることができる。
 その理由は、情報処理装置600のCPU610が、プログラムに基づいて、情報処理装置10と同様の機能を実現できるためである。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2014年10月14日に出願された日本出願特願2014-209936を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 本発明は、画像、映像、文書といったデータの要約の用途に適用できる。
 10 情報処理装置
 11 情報処理装置
 100 データ処理部
 101 グループ化閾値受信部
 102 木探索部
 103 グループ化判定部
 104 サブツリーグループ化部
 105 リーフノードグループ化部
 106 グループ間併合部
 107 代表データ併合部
 108 グループ化結果出力部
 110 木構造保持部
 120 類似度保持部
 130 中間結果保持部
 140 グループ化閾値
 150 グループ化結果
 600 情報処理装置
 610 CPU
 620 ROM
 630 RAM
 640 内部記憶装置
 650 IOC
 660 入力機器
 670 表示機器
 680 NIC
 700 記憶媒体

Claims (7)

  1. データを含むノードを要素とした木構造のデータを探索する探索手段と、
     前記探索手段の探索対象のノードに含まれるデータとそのデータの下位のノードとの間のエッジに関連付けられた類似度と、所定の閾値とを基に、前記データと前記下位のノードとを用いてグループ化するか否かを判定するグループ化判定手段と、
     前記判定の結果としてグループ化と判定された前記データと前記下位のノードとをグループ化して、グループを作成するサブツリーグループ化手段と、
     前記探索対象のノードがリーフノードの場合に、前記検索対象のリーフノードをグループ化して、1つ又は複数のグループを作成するリーフノードグループ化手段と、
     前記探索手段における探索が上位のノードへのバックトラックにおいて戻ったデータが帰属先のグループが決まっていない場合に、そのデータをそのデータの下位のノードのいずれかのグループに併合するデータ併合手段と、
     前記グループの少なくとも一部のグループを併合するグループ併合手段と
     を含む情報処理装置。
  2. 前記木構造のデータに関連付けられる類似度を保持する類似度手段と、
     前記類似度の範囲が前記木構造の下位に行くほど大きな値となるように構築された木構造のデータを保持する木構造手段と、
     前記グループ化判定手段の判定に用いられる前記閾値を受信するグループ化閾値受信手段と、
     中間結果である前記作成又は併合されたグループを保持する中間結果保持手段と、
     グループ化結果として前記中間結果保持手段が保持するグループを出力するグループ化結果出力手段と
     を含む請求項1に記載の情報処理装置。
  3. 前記中間結果保持手段が、
     スタック構造を用いて前記中間結果を保持する
     請求項2に記載の情報処理装置。
  4. 前記代表データ併合手段又はグループ併合手段が、
     前記スタック構造に積まれたデータを用いて処理する
     請求項3に記載の情報処理装置
  5. 前記代表データ併合手段が、
     帰属するグループがない場合に、代表データを用いてグループを作成する
     請求項1ないし4のいずれか1項に記載の情報処理装置。
  6. データを含むノードを要素とした木構造のデータを探索し、
     探索対象のノードに含まれるデータとそのデータの下位のノードとの間のエッジに関連付けられた類似度と、所定の閾値とを基に、前記データと前記下位のノードとを用いてグループ化するか否かを判定し、
     前記判定の結果としてグループ化と判定された前記データと前記下位のノードとをグループ化して、グループを作成し、
     前記探索対象のノードがリーフノードの場合に、前記検索対象のリーフノードをグループ化して、1つ又は複数のグループを作成し、
     前記探索が上位のノードへのバックトラックにおいて戻ったデータが帰属先のグループが決まっていない場合に、そのデータをそのデータの下位のノードのいずれかのグループに併合し、
     前記グループの少なくとも一部のグループを併合する
     情報処理方法。
  7. データを含むノードを要素とした木構造のデータを探索する処理と、
     探索対象のノードに含まれるデータとそのデータの下位のノードとの間のエッジに関連付けられた類似度と、所定の閾値とを基に、前記データと前記下位のノードとを用いてグループ化するか否かを判定する処理と、
     前記判定の結果としてグループ化と判定された前記データと前記下位のノードとをグループ化して、グループを作成する処理と、
     前記探索対象のノードがリーフノードの場合に、前記検索対象のリーフノードをグループ化して、1つ又は複数のグループを作成する処理と、
     前記探索が上位のノードへのバックトラックにおいて戻ったデータが帰属先のグループが決まっていない場合に、そのデータをそのデータの下位のノードのいずれかのグループに併合する処理と、
     前記グループの少なくとも一部のグループを併合する処理と
     をコンピュータに実行させるプログラムをコンピュータから読み取り可能に記録する記録媒体。
PCT/JP2015/005148 2014-10-14 2015-10-09 情報処理装置、情報処理方法、及び、記録媒体 WO2016059787A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/517,735 US10482075B2 (en) 2014-10-14 2015-10-09 Information processing device, information processing method, and recording medium
JP2016553969A JP6624062B2 (ja) 2014-10-14 2015-10-09 情報処理装置、情報処理方法、及び、プログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014209936 2014-10-14
JP2014-209936 2014-10-14

Publications (1)

Publication Number Publication Date
WO2016059787A1 true WO2016059787A1 (ja) 2016-04-21

Family

ID=55746347

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/005148 WO2016059787A1 (ja) 2014-10-14 2015-10-09 情報処理装置、情報処理方法、及び、記録媒体

Country Status (3)

Country Link
US (1) US10482075B2 (ja)
JP (1) JP6624062B2 (ja)
WO (1) WO2016059787A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114281802A (zh) * 2021-12-27 2022-04-05 中国建设银行股份有限公司 一种数据处理方法及装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10148499B2 (en) * 2016-11-09 2018-12-04 Seagate Technology Llc Verifying distributed computing results via nodes configured according to a tree structure
CN112463857B (zh) * 2020-03-27 2023-07-25 谭凌 基于关系数据库支持回溯数据查询的数据处理方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010245983A (ja) * 2009-04-09 2010-10-28 Nippon Telegr & Teleph Corp <Ntt> 映像構造化装置,映像構造化方法および映像構造化プログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000112988A (ja) 1998-10-05 2000-04-21 Canon Inc 情報検索装置と情報検索方法、及び記憶媒体
US6741983B1 (en) * 1999-09-28 2004-05-25 John D. Birdwell Method of indexed storage and retrieval of multidimensional information
US7340674B2 (en) * 2002-12-16 2008-03-04 Xerox Corporation Method and apparatus for normalizing quoting styles in electronic mail messages
FI119160B (fi) * 2005-10-10 2008-08-15 Medicel Oy Tietokannan hallintajärjestelmä
US7752233B2 (en) * 2006-03-29 2010-07-06 Massachusetts Institute Of Technology Techniques for clustering a set of objects
US20080228699A1 (en) * 2007-03-16 2008-09-18 Expanse Networks, Inc. Creation of Attribute Combination Databases
US20100106713A1 (en) * 2008-10-28 2010-04-29 Andrea Esuli Method for performing efficient similarity search
JP4839424B2 (ja) * 2008-12-15 2011-12-21 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラムの解析を支援するための方法、並びにそのコンピュータ・プログラム及びコンピュータ・システム
CN101576932B (zh) * 2009-06-16 2012-07-04 阿里巴巴集团控股有限公司 近重复图片的计算机查找方法和装置
US8438184B1 (en) * 2012-07-30 2013-05-07 Adelphic, Inc. Uniquely identifying a network-connected entity
US9536065B2 (en) * 2013-08-23 2017-01-03 Morphotrust Usa, Llc System and method for identity management
US9407620B2 (en) * 2013-08-23 2016-08-02 Morphotrust Usa, Llc System and method for identity management

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010245983A (ja) * 2009-04-09 2010-10-28 Nippon Telegr & Teleph Corp <Ntt> 映像構造化装置,映像構造化方法および映像構造化プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JIANQUAN LIU ET AL.: "Ruijido no Kaiso Kankei ni Motozuku Kikozo Sakuin o Mochiita Koritsuteki na Ruiji Kensaku", DAI 5 KAI FORUM ON DATA ENGINEERING AND INFORMATION MANAGEMENT RONBUNSHU, 31 May 2013 (2013-05-31), pages 1 - 8 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114281802A (zh) * 2021-12-27 2022-04-05 中国建设银行股份有限公司 一种数据处理方法及装置
CN114281802B (zh) * 2021-12-27 2024-05-28 中国建设银行股份有限公司 一种数据处理方法及装置

Also Published As

Publication number Publication date
US20170329809A1 (en) 2017-11-16
JP6624062B2 (ja) 2019-12-25
JPWO2016059787A1 (ja) 2017-07-27
US10482075B2 (en) 2019-11-19

Similar Documents

Publication Publication Date Title
US20200356901A1 (en) Target variable distribution-based acceptance of machine learning test data sets
CN111324784B (zh) 一种字符串处理方法及装置
US8559731B2 (en) Personalized tag ranking
US9317613B2 (en) Large scale entity-specific resource classification
JP6332264B2 (ja) 類似データ検索装置、類似データ検索方法、及びプログラム
Yagoubi et al. Massively distributed time series indexing and querying
CN108804458B (zh) 一种爬虫网页采集方法和装置
JP6065844B2 (ja) インデックス走査装置及びインデックス走査方法
JP5825122B2 (ja) 生成プログラム、生成方法、および生成システム
US20150058352A1 (en) Thin database indexing
JP2015508543A (ja) 店舗訪問データを処理すること
US9830344B2 (en) Evaluation of nodes
US20190179823A1 (en) Extreme value computation
JP6624062B2 (ja) 情報処理装置、情報処理方法、及び、プログラム
CN103778217A (zh) 基于当前网页列表进行推荐的方法和系统
US10147095B2 (en) Chain understanding in search
JP6338618B2 (ja) 生成装置、生成方法、及び生成プログラム
WO2020136790A1 (ja) エッジシステム、情報処理方法及び情報処理プログラム
JP5224537B2 (ja) 局所性検知可能ハッシュの構築装置、類似近傍検索処理装置及びプログラム
US9292553B2 (en) Queries for thin database indexing
CN109948018B (zh) 一种Web结构化数据快速提取方法及系统
CN114911826A (zh) 一种关联数据检索方法和系统
US11244015B1 (en) Projecting queries into a content item embedding space
US10372694B2 (en) Structured information differentiation in naming
CN109710833B (zh) 用于确定内容节点的方法与设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15850959

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016553969

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15517735

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15850959

Country of ref document: EP

Kind code of ref document: A1