WO2015069087A1 - 인식기 학습 방법 및 장치, 데이터 인식 방법 및 장치 - Google Patents

인식기 학습 방법 및 장치, 데이터 인식 방법 및 장치 Download PDF

Info

Publication number
WO2015069087A1
WO2015069087A1 PCT/KR2014/010789 KR2014010789W WO2015069087A1 WO 2015069087 A1 WO2015069087 A1 WO 2015069087A1 KR 2014010789 W KR2014010789 W KR 2014010789W WO 2015069087 A1 WO2015069087 A1 WO 2015069087A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
local
learning
information
cluster
Prior art date
Application number
PCT/KR2014/010789
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/030,520 priority Critical patent/US20160275415A1/en
Publication of WO2015069087A1 publication Critical patent/WO2015069087A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/048Fuzzy inferencing

Definitions

  • the description below relates to techniques for learning recognizers that recognize or classify data and techniques for recognizing or classifying data using learned recognizers.
  • a technique for detecting a target object from an input image sets a subwindow of various sizes and positions, and expresses a feature extracted from the subwindow as a feature vector.
  • the feature vector is applied to the learning classifier to detect whether or not the region of the sub-window is a target object.
  • a simple structure classifier finds similarity, such as distance between vectors such as Euclidian distance, or normalized correlation, and compares the distance or similarity between the vectors with a threshold to distinguish it from the target. do. More sophisticated classifiers include neural networks, Bayesian classifiers, Support Vector Machine (SVM) learning classifiers, and Adaboost learning classifiers.
  • SVM Support Vector Machine
  • the Adaboost Learning Classifier combines a weak classifier with fast weighting into a weighted sum to create a strong classifier with good classification capability.
  • An algorithm for detecting a target object is a weak classifier with fast weighting into a weighted sum.
  • a recognizer learning method includes selecting learning data to be learned; Clustering the selected training data based on a global shape parameter and generating a plurality of clusters; And classifying the training data included in the at least one cluster based on the local shape feature.
  • the global shape parameter is used to determine a global feature of the selected learning data
  • the local shape feature is used to determine a local feature of learning data included in the cluster. Can be.
  • a data recognition method includes reading input data to be recognized; Determining a cluster to which the input data belongs based on learned global form parameter information; And determining the class of the input data based on the determined cluster and learned local shape feature information.
  • a recognizer learning apparatus includes: a learning data selector configured to select learning data to be learned; A clustering unit clustering the selected learning data based on a global shape parameter and generating a plurality of clusters; And a learning data classification unit classifying the learning data included in the at least one cluster based on the local shape feature.
  • a data recognizing apparatus includes an input data reading unit configured to read input data; A cluster determination unit determining a cluster to which the input data belongs based on learned global form parameter information; And a class determination unit that determines a class of the input data based on the determined cluster and learned local shape feature information.
  • FIG. 1 is a diagram illustrating a detailed configuration of a recognizer learning apparatus according to an embodiment.
  • FIG. 2 is a diagram illustrating a detailed configuration of a data recognition apparatus according to an embodiment.
  • 3 to 4 are diagrams illustrating a distributed learning structure for learning a recognizer, according to an exemplary embodiment.
  • FIG. 5 is a flowchart illustrating a recognizer learning method according to an embodiment.
  • FIG. 6 is a flowchart illustrating a process of clustering training data according to an embodiment.
  • FIG. 7 is a flowchart illustrating a process of classifying learning data included in a cluster, according to an exemplary embodiment.
  • FIG. 10 is a diagram illustrating a memory structure of a global type parameter according to one embodiment.
  • FIG. 11 is a diagram illustrating an example of a local form feature according to one embodiment.
  • FIG. 12 is a flowchart illustrating a data recognition method according to an embodiment.
  • FIG. 13 is a flowchart illustrating a process of recognizing input data for global branches according to an embodiment.
  • FIG. 14 is a flowchart illustrating a process of recognizing input data for local sprigs according to an embodiment.
  • 15 illustrates an example of training data, according to an exemplary embodiment.
  • FIG. 16 illustrates an example of using information extracted from leaf nodes of local sprigs according to an embodiment.
  • the recognizer learning method according to an embodiment may be performed by the recognizer learning apparatus, and the data recognition method may be performed by the data recognition apparatus.
  • Like reference numerals in the drawings denote like elements.
  • FIG. 1 is a diagram illustrating a detailed configuration of a recognizer learning apparatus 100 according to an exemplary embodiment.
  • the recognizer learning apparatus 100 may include a learning data selecting unit 110, a clustering unit 120, and a learning data classifying unit 130.
  • the recognizer learning apparatus 100 may train the recognizer using training data.
  • the training data may include image data, voice data, text data, bio data, and the like.
  • the type of learning data is not limited to the kind of specific data.
  • the recognizer learning apparatus 100 may determine an optimal feature extraction method among a plurality of feature extraction methods.
  • the recognizer learning apparatus 100 may extract an optimal feature suitable for various situations using the determined feature extraction method.
  • the recognizer learning apparatus 100 may generate a recognizer having a reduced processing step and processing time by hierarchically configuring the recognizer.
  • the recognizer learning apparatus 100 may generate a hierarchical classification structure.
  • the recognizer learning apparatus 100 may improve the recognition rate of the recognizer by separating the learning data into a plurality of separate bundles or clusters using various features, and learning individual recognizers.
  • the recognizer learning apparatus 100 may generate a classification structure composed of global branches and local sprigs.
  • the recognizer learning apparatus 100 may cluster the learning data in the Global Branches at the top of the classification structure, and perform the Classification or Regression at the Local Sprigs at the bottom of the classification structure. have.
  • the recognizer may recognize a class or type of input data by using a classification structure. Clustering can reduce the depth of the entire classification structure and speed up the search. In the local sprigs of the classification structure, exhaustive training may be performed on a specific cluster.
  • a Global Branch may have a smaller number and depth of branches than a Local Sprig. Unsupervised Learning may be performed in the Global Branch, and Supervised Learning may be performed in the Local Sprig.
  • an optimal global shape parameter among heterogeneous global shape parameters may be determined, and in a local sprig, a local shape feature among heterogeneous local shape features may be determined.
  • decision bounds between data can be finer than in the global branch.
  • the recognizer learning apparatus 100 may improve the recognition rate and regression accuracy of the recognizer by configuring the top of the classification structure with a small number of global branches and ensemble a plurality of local sprigs at the bottom of the classification structure.
  • One global branch may be connected to a plurality of local sprigs.
  • the training data selector 110 may select training data for learning of the recognizer. For example, the training data selector 110 may randomly select the training data with an equal probability.
  • the clustering unit 120 may learn the global branches. For example, the clustering unit 120 may perform unsupervised learning that does not require ground-truth labeling.
  • the global branch may be composed of one or a plurality of trees.
  • the clustering unit 120 may cluster the selected training data based on the global shape parameter.
  • the global shape parameter can be used to determine the global characteristics of the selected training data.
  • the clustering unit 120 may generate clusters that are sets of learning data through clustering.
  • the clustering unit 120 may select a global shape parameter to be tested from heterogeneous global shape parameters. Thereafter, the clustering unit 120 may determine a parameter value for the training data by using the selected global shape parameter. The clustering unit 120 may determine a parameter value for the plurality of global type parameters.
  • the clustering unit 120 may normalize the determined plurality of parameter values.
  • the clustering unit 120 may normalize the size of the parameter values to uniformly adjust the scale of the parameter values. Thereafter, the clustering unit 120 may configure a parameter vector for each learning data.
  • the clustering unit 120 may randomly generate a threshold value and divide the parameter vectors into a plurality of data sets based on the generated threshold value.
  • the threshold may be generated as an arbitrary number.
  • the clustering unit 120 may determine an average and a standard deviation of the plurality of data sets, and determine the degree of separation between the data sets using the determined average and standard deviation information.
  • the degree of separation between data sets represents the degree of separation between the data sets.
  • the clustering unit 120 may determine whether the determined separation degree satisfies a preset condition, and store partition information according to the determination result. For example, when the degree of separation currently determined is the largest among the plurality of degrees of separation determined based on other global shape parameters, the clustering unit 120 may determine that the degree of separation satisfies a preset condition.
  • the partitioning information may include information about global type parameters used to generate the plurality of clusters and information about thresholds used to partition the parameter vector into a plurality of data sets.
  • the clustering unit 120 may proceed with learning about the lower nodes of the global branch, and when the learning of the global branches ends, the learning data classifying unit 130 may start learning about the local sprig.
  • the training data classifier 130 may learn local sprigs.
  • the training data classifier 130 may perform supervised learning that requires ground-truth labeling.
  • a local sprig may be configured in a plurality of tree shapes.
  • the training data classifier 130 may classify the training data included in the at least one cluster based on the local shape feature.
  • the local form feature may be used to determine a particular data set partitioned by Global Branches, or a local feature of the training data contained in the cluster.
  • the training data classifier 130 may randomly select the training data included in the cluster.
  • the training data classifier 130 may select a local shape feature to be tested among heterogeneous local shape features and determine a feature value.
  • the training data classifier 130 may determine a feature value for the plurality of local shape features.
  • the training data classifier 130 may normalize the determined feature values.
  • the training data classifier 130 may normalize the size of the feature values to uniformly adjust the scale of the feature values. Thereafter, the training data classifier 130 may configure a feature vector for each training data.
  • the training data classifier 130 randomly generates a threshold value and divides the feature vectors into a plurality of data sets based on the generated threshold value.
  • the threshold can be generated in any number.
  • the training data classifier 130 may determine information entropy for the plurality of divided data sets.
  • the training data classifier 130 may determine entropy in the distribution of the plurality of divided data sets.
  • the training data classifier 130 may determine whether the determined entropy satisfies a preset condition. For example, when the currently determined entropy is the smallest among the plurality of entropies determined based on other local shape features, the training data classifier 130 may determine that the entropy satisfies a preset condition.
  • the training data classifier 130 may store the partition information.
  • the partitioning information may include information about the local shape feature used to classify the learning data included in each cluster and information about the thresholds used to partition the feature vector into a plurality of data sets.
  • the training data classifier 130 may proceed with learning about the lower nodes of the local sprig.
  • the learning data classifier 130 may store information of the residual data partitioned so far in the leaf node of the local sprig.
  • the information stored in the leaf node may include probability information of a target class to be recognized, regression information of a value to be estimated, or index information of a direct link corresponding to data in Local Sprigs. have.
  • Information stored in the leaf node may be converted into various forms and stored in the leaf node.
  • FIG. 2 is a diagram illustrating a detailed configuration of the data recognition apparatus 200 according to an embodiment.
  • the data recognition apparatus 200 may include an input data reader 210, a cluster determiner 220, and a class determiner 230.
  • the data recognition apparatus 200 may recognize the input data based on the learned information.
  • the data recognition apparatus 200 may determine a class of input data using a classification structure composed of global branches and local sprigs.
  • the data recognition apparatus 200 may determine a cluster to which input data belongs in the global branch.
  • the data recognition apparatus 200 may determine a class of input data using individual recognizers corresponding to respective clusters.
  • the input data reader 210 may read input data to be recognized.
  • the cluster determiner 220 may determine a cluster to which the input data belongs based on the learned global shape parameter information.
  • the cluster determination unit 220 may read the global type parameter information stored in the top node of the global branches.
  • the cluster determination unit 220 may determine which cluster the input data belongs to based on the learned global shape information.
  • the global branch may be configured in one or a plurality of trees.
  • the cluster determiner 220 may determine a parameter value for the input data based on the learned global shape parameter information.
  • the cluster determiner 220 may determine a cluster corresponding to the determined parameter value using the stored threshold value information.
  • the cluster determination unit 220 may search a range to which a parameter value belongs in a range indicated by stored thresholds and visit a lower node of the global branch. If the visited lower node is a leaf node of the global branch, the cluster determination unit 220 may terminate the recognition process in the global branch. Thereafter, the class determiner 230 may start a recognition process for the local sprig.
  • the class determiner 230 may determine the class of the input data based on the cluster and the learned local shape feature information.
  • the class determiner 230 may read local type feature information stored in the top node of the individual Local Sprigs. In Local Sprigs of the classification structure, the class determiner 230 may recognize which class the input data is, or regress a result value using the learned local shape information.
  • the class determiner 230 may load at least one recognizer for classifying data included in the cluster.
  • the class determiner 230 may estimate the class of the input data based on the recognizer and the local type feature information.
  • the class determiner 230 may determine a feature value of the input data based on the local shape feature information, and estimate the class of the input data based on the determined feature value and a threshold stored in the recognizer.
  • the class determiner 230 may search a range to which a feature value belongs in a range indicated by stored thresholds and determine a lower node of a local sprig to visit. If the visited lower node is a leaf node of the local sprig, the class determination unit 230 may extract learned information from the leaf node of the local sprig.
  • the information stored in the leaf node may include probability information of a target class to be recognized, regression information of a value to be estimated, or index information of a direct link corresponding to data in Local Sprigs.
  • the class determiner 230 may repeat the same process for the plurality of individual Local Sprigs and then ensemble the information extracted from the plurality of leaf nodes.
  • the class determiner 230 may recognize a class or type of input data by using information extracted from leaf nodes.
  • FIG. 3 is a diagram illustrating a distributed learning structure for learning a recognizer, according to an exemplary embodiment.
  • the recognizer learning apparatus may train the recognizer according to the process illustrated in the distributed learning structure 300 of FIG. 3.
  • the recognizer learning apparatus may perform 320 non-supervised learning on the global branches using heterogeneous global shape parameters. have.
  • a plurality of clusters representing groups of learning data can be created.
  • the recognizer learning device can perform unsupervised learning of global branches in a standalone system.
  • the recognizer learning device may learn individual Local Sprigs for each of the clusters created.
  • the recognizer learning apparatus may perform supervised learning 330 on local sprigs using heterogeneous local shape features.
  • the recognizer learning device can perform supervised learning on local sprigs in a parallel and distributed system. As a result of the learning, a bush-like classification structure can be generated.
  • FIG. 4 illustrates a distributed learning structure 400 having a classification structure in the form of a shrub.
  • the distributed learning structure 400 generated as a learning result of the recognizer learning apparatus may be composed of Global Branches at the top and Local Sprigs at the bottom.
  • Global branches generally consist of a single tree or a plurality of trees. The number of branches branching from the parent node of the tree to the child node may be determined by any number.
  • the parameters of the global shape of the learning object may be extracted using the global shape parameters, and the extracted parameters may be learned.
  • Parameters for the global shape of the object to be learned may be extracted using a parameter extraction method that is insensitive to local variations and can be quickly calculated.
  • global shape parameters may include 3D center of gravity, 3D Elogation, Convexity, Skewness, and the like. More detailed information about the global type parameter will be described later with reference to FIGS. 8 to 9.
  • Local Sprigs can extract features of the local shape of the learning object and learn the extracted features using local shape features.
  • the feature of the local shape of the learning object may be extracted using a fine feature extraction method that can better distinguish local changes.
  • the local shape feature may include Modified Census Transform (MCT), Local Gradient Pattern (LGP), Local Binary Pattern (LBP), etc.
  • MCT Modified Census Transform
  • LGP Local Gradient Pattern
  • LBP Local Binary Pattern
  • the distributed learning structure 400 generated through the above process may be used to recognize a type or type of input data, or may be used to estimate a type of input data by regressing a value.
  • FIG. 5 is a flowchart illustrating a recognizer learning method according to an embodiment.
  • the recognizer learning apparatus may select training data for learning the recognizer. For example, the recognizer learning apparatus may randomly select the training data with an equal probability.
  • the recognizer learning device may cluster the selected learning data based on the global shape parameter.
  • the recognizer learning apparatus may generate clusters that are sets of training data through clustering.
  • the recognizer learning device may select a global shape parameter to test from among the plurality of global shape parameters.
  • the recognizer learning device may determine a parameter value for the training data using the selected global shape parameter.
  • the recognizer learning apparatus may determine a parameter value for the plurality of global type parameters.
  • the recognizer learning apparatus may determine the parameter vector for the training data using the determined parameter value.
  • the recognizer learning apparatus divides the parameter vector into a plurality of data sets, and determines whether the degree of separation between the divided data sets satisfies a preset condition. When the degree of separation satisfies a preset condition, the recognizer learning apparatus may store partition information used in the process of generating clusters.
  • the recognizer learning apparatus may classify the learning data included in the at least one cluster based on the local shape feature.
  • the recognizer learning apparatus may randomly select the learning data included in the cluster.
  • the recognizer learning apparatus may select a local shape feature to test from among a plurality of local shape features and determine a feature value.
  • the recognizer learning apparatus may determine a feature value for the plurality of local shape features.
  • the recognizer learning apparatus may normalize the magnitude of the feature values to equally scale the feature values. Thereafter, the recognizer learning apparatus may construct a feature vector for each individual learning data. The recognizer learning apparatus may divide the feature vectors into a plurality of data sets based on the threshold.
  • the recognizer learning apparatus may determine entropy for the plurality of divided data sets.
  • the recognizer learning apparatus may determine entropy in the distribution of the plurality of divided data sets.
  • the recognizer learning apparatus may determine whether entropy satisfies a preset condition.
  • the recognizer learning apparatus may store partition information when the entropy satisfies a preset condition.
  • the recognizer learning device may learn about sub-nodes of the local sprig. When reaching the leaf node of the local sprig, the recognizer learning apparatus may store information of the residual data partitioned so far in the leaf node of the local sprig.
  • the recognizer learning apparatus may generate the recognizer using the split information and the remaining data information obtained in each step.
  • FIG. 6 is a flowchart illustrating a process of clustering learning data according to an embodiment, and illustrates a learning process for global branches.
  • the recognizer learning apparatus may select training data to learn. For example, the recognizer learning apparatus may randomly select the training data with an equal probability.
  • the recognizer learning device may select a global shape parameter to test from the heterogeneous global shape parameters.
  • the recognizer learning device can then calculate parameter values for the training data using the selected global shape parameter. For example, the recognizer learning device selects a specific global shape parameter from among global shape parameters such as center of gravity, elongation, rectangularity, and convexity, and the parameter value of the training data for the selected global shape parameter. Can be calculated.
  • the recognizer learning apparatus may calculate a parameter value for the plurality of global shape parameters by performing the process of operation 610 a plurality of times. For example, the recognizer learning device may (1) calculate a parameter value for all of the heterogeneous global shape parameters, (2) calculate a parameter value only for arbitrarily selected global shape parameters, or (3) a user. Parameter values can only be calculated for global type parameters selected by.
  • the recognizer learning apparatus may normalize the plurality of parameter values calculated from operation 615.
  • the maximum and minimum ranges of parameter values calculated based on different global type parameters may be different.
  • the recognizer learning apparatus may normalize the magnitude of the parameter values to equally scale the parameter values.
  • the recognizer learning apparatus can then construct a parameter vector for each learning data.
  • the recognizer learning apparatus may randomly generate K-1 thresholds.
  • K represents an integer of 2 or more arbitrarily determined.
  • the recognizer learning apparatus may divide the parameter vectors into K data sets based on the K-1 thresholds.
  • the recognizer learning apparatus may calculate a mean and standard deviation for each of the K data sets.
  • the recognizer learning apparatus may calculate the degree of separation (or clustering strength) between the K data sets using the average and standard deviation information obtained from step 635.
  • the recognizer learning apparatus may determine whether the degree of separation satisfies a preset condition. For example, the recognizer learning apparatus may determine that the degree of separation satisfies a preset condition when the degree of separation currently calculated is the maximum value or the degree of separation is greater than the preset reference degree of separation.
  • the recognizer learning apparatus may use Gaussian Likelihood (D) as shown in Equation 1 as an objective function for calculating the degree of separation between two clusters.
  • D Gaussian Likelihood
  • equation (1) the average of k clusters Max Marginalize, standard deviation As the minimum is minimized, the Gaussian Likelihood (D) may increase, and as the Gaussian Likelihood (D) increases, the separation between the two clusters may increase. The greater the degree of separation between clusters or the higher the density of elements within each cluster, the greater the Gaussian Likelihood (D).
  • the recognizer learning apparatus may use the Imbalance characteristic (D) as shown in Equation 2 below to calculate the degree of separation between the two clusters. Based on the imbalance characteristic (D), it may be determined whether the number of data included in each cluster is evenly distributed among the clusters.
  • D Imbalance characteristic
  • Equation 2 the imbalance characteristic (D) decreases as the difference in the number of data S included in each cluster among k clusters decreases, and the separation between the two clusters increases as the imbalance characteristic (D) decreases. You can.
  • the recognizer learning apparatus may calculate the degree of separation using both Equations 1 and 2 together.
  • the recognizer learning apparatus may store the partition information when the degree of separation satisfies a preset condition.
  • the partitioning information may include information about the global form parameter used to generate the plurality of clusters and information about the K-1 thresholds used to partition the parameter vector into the plurality of data sets.
  • the recognizer learning apparatus may determine whether to end learning for the global branches. For example, the recognizer learning apparatus may include (1) when the amount of training data included in the cluster satisfies a preset condition, (2) when the separation degree calculated in step 640 satisfies a preset condition, or (3) If the level of the global branch exceeds the preset criteria, you can end the learning for the global branch. When the learning about the global branches ends, the recognizer learning device may start learning about the local sprig.
  • the recognizer learning apparatus may proceed with the learning of the lower nodes of the global branch.
  • the recognizer learning apparatus may perform the same processes of steps 605 to 660 for the lower nodes of the global branch.
  • FIG. 7 is a flowchart illustrating a process of classifying learning data included in a cluster, according to an exemplary embodiment, and illustrating a learning process for local sprigs performed after learning about a global branch is completed.
  • the recognizer learning apparatus may randomly select training data to learn.
  • the recognizer learning apparatus may randomly select the learning data included in the cluster with an equal probability.
  • the training data represents a specific data set divided by the global branches.
  • the recognizer learning apparatus may select a local shape feature to test from among the heterogeneous local shape features and calculate a feature value.
  • the recognizer learning apparatus may calculate a feature value for the plurality of local shape features by performing the process of operation 710 a plurality of times. For example, the recognizer learning apparatus may (1) calculate feature values for all of the heterogeneous local shape features, (2) calculate feature values only for randomly selected local shape features, or (3) by the user. The feature value can only be calculated for the selected local shape features.
  • the recognizer learning apparatus may normalize the plurality of feature values calculated from operation 715.
  • the maximum and minimum ranges of feature values calculated based on different local shape features may be different.
  • the recognizer learning apparatus may normalize the magnitude of the feature values to equally scale the feature values. Thereafter, the recognizer learning apparatus may construct a feature vector for each individual learning data.
  • the recognizer learning apparatus may randomly generate K ⁇ 1 thresholds.
  • K represents an integer of 2 or more arbitrarily determined.
  • the recognizer learning apparatus may divide the feature vectors into K data sets based on the K ⁇ 1 thresholds.
  • the recognizer learning apparatus may calculate information entropy for the divided K data sets.
  • the recognizer learning apparatus may calculate information entropy in the distribution of the divided K data sets. For example, the recognizer learning apparatus may determine information entropy for the divided K data sets using Equation 3 below.
  • D k represents data included in the k th data set
  • c i represents the i th class
  • E (D k ) represents the information entropy of the k th data group.
  • Equation 4 Information entropy E (D) for the entire data D may be determined using Equation 4 below.
  • D i represents data included in the i th data set
  • E (D i ) represents an information entropy of the i th data group.
  • the recognizer learning apparatus may determine whether the information entropy satisfies a preset condition. For example, the recognizer learning apparatus may determine that the information entropy satisfies the preset condition if the information entropy currently calculated is the minimum value or the information entropy is smaller than the preset reference information entropy. The lower the information entropy, the more clearly classify the training data in the local sprigs, and the higher the recognition rate of the recognizer.
  • the recognizer learning apparatus may store the partition information when the information entropy satisfies a preset condition.
  • the partitioning information may include information about the local form feature used to classify the learning data included in each cluster and information about the K-1 thresholds used to partition the feature vector into a plurality of data sets. Can be.
  • the recognizer learning apparatus may determine whether to end learning for the local sprigs. For example, the recognizer learning apparatus may perform (1) when the information entropy calculated in step 735 satisfies the preset condition, (2) the level of the local sprig exceeds the preset condition, or (3) the cluster. When the remaining data amount included in the satisfies a preset condition, the learning about the local sprig may be terminated.
  • the recognizer learning apparatus may proceed with learning about sub-nodes of the local sprig when the recognizer learning apparatus determines that the learning about the local sprig does not end.
  • the recognizer learning apparatus may perform the same processes of steps 705 to 755 for the lower nodes of the local sprig.
  • the recognizer learning apparatus may store information of the residual data partitioned up to now in the leaf node of the local sprig.
  • the information stored in the leaf node may include probability information of a target class to be recognized, regression information of a value to be estimated, or index information of a direct link corresponding to data in Local Sprigs.
  • Information stored in the leaf node may be converted into various forms and stored in the leaf node.
  • the global shape parameter represents a shape descriptor that can be distinguished only for a shape having a relatively large difference compared to a local shape feature.
  • Global type parameters are robust or invariant to local type changes. Thus, when clustering data, it may be useful to use global type parameters.
  • the recognizer learning device may use the global form parameter as a classifier used to cluster the data.
  • the global shape parameters may include 3D Center of gravity (g x , g y , g z ), 3D Elogation (XY Elogation, YX Elogation, ZX Elogation, XZ Elogation, ZY Elogation, YZ, as shown in FIG.
  • Shape parameters such as Elogation, 2D Rectangularity (Rectangularity), Convexity, Solidity, Profiles, Holes area ratio, or shape parameters such as Skewness and Kurtosis as shown in FIG. 9.
  • the parameter value for global type parameters can be determined as follows.
  • the center of gravity (g x , g y , g z ) in the x-axis, y-axis, and z-axis directions can be determined using Equation 5 below.
  • Width is the width of the shape
  • Height is the height of the shape
  • Depth is the depth of the shape.
  • the element of W is not equal to the element of L, and L is not zero.
  • W represents the width of the shape and L represents the height of the shape.
  • a S is a shape area and A R represents a bounding box area.
  • Skewness and Kurtosis which represent structural features, can be determined through the following process.
  • the recognizer learning apparatus may convert the input image 910 into a shape matrix 920, and determine the skewness parameter, or Kurtosis parameter 930, based on the shape matrix 920.
  • Skewness parameter sk can be determined using the following equation (8).
  • Kurtosis parameter k can be determined using the following equation (9).
  • Equations 8 and 9 m represents an average of the shape matrix, Represents the standard deviation of the shape matrix.
  • the global form parameter described above is merely an example, and the scope of the embodiments is not limited by the type of global form parameter described herein.
  • FIG. 10 is a diagram illustrating a memory structure 1000 of a global type parameter according to an embodiment.
  • the parameter value of the global type parameter may be calculated as a real value in one dimension.
  • the recognizer learning apparatus may calculate parameter values for the plurality of global type parameters and generate a multidimensional parameter vector based on the plurality of parameter values.
  • Individual data of the training data may have a parameter vector corresponding to each.
  • the memory structure 1000 of the global type parameter may include a Parameter Values Container that stores parameter values.
  • the parameter value container may store multidimensional parameter vectors corresponding to the plurality of global type parameters.
  • FIG. 11 is a diagram illustrating an example of a local form feature according to one embodiment.
  • Local shape features represent shape descriptors that are distinguishable even for shapes that have relatively small differences compared to global shape parameters. Thus, when classifying or regressing data, it may be useful to use local form features.
  • Localized features may include Modified Census Transform (MCT) 1110, Local Gradient Pattern (LGP) 1120, Local Binary Pattern (LBP) 1130, and the like.
  • MCT Modified Census Transform
  • LGP Local Gradient Pattern
  • LBP Local Binary Pattern
  • the MCT 1110 can be obtained by searching for brightness values within a 3x3 window and encoding the searched brightness values into 9 bits
  • the LGP 1120 searches for gradient values within a 3x3 window.
  • the LBP 1130 may be obtained by comparing a pixel value of its own pixel with that of a neighboring pixel using a 3x3 kernel and expressing the pixel value in a binary form, and then converting the binary information into a decimal number. .
  • FIG. 12 is a flowchart illustrating a data recognition method according to an embodiment.
  • the data recognition apparatus may read input data to be recognized.
  • the data recognition apparatus may determine a cluster to which the input data belongs based on the learned global shape parameter information.
  • the data recognition apparatus may determine a parameter value for the input data based on the learned global shape parameter information. Thereafter, the apparatus for recognizing data may determine a cluster corresponding to the determined parameter value by using the stored threshold information.
  • the data recognizing apparatus may search a range to which the parameter value belongs in a range indicated by stored thresholds and determine a lower node of a global branch to visit. By determining leaf nodes of the global branch, a cluster to which input data belongs may be determined.
  • the apparatus for recognizing data may determine a class of input data based on the determined cluster and learned local shape feature information.
  • the data recognition apparatus may load at least one recognizer for classifying data included in the determined cluster.
  • the data recognition apparatus may estimate a class of input data based on the recognizer and the local type feature information.
  • the data recognition device may determine the feature value of the input data based on the local form feature information.
  • the data recognition apparatus may estimate the class of the input data based on the determined feature value and the threshold stored in the recognizer.
  • the data recognition apparatus may determine the class of the input data by using the information stored in the leaf node of the local sprig.
  • the information stored in the leaf node of the local sprig may include probability information of a target class to be recognized, regression information of a value to be estimated, or index information of a direct link corresponding to data in the local sprigs.
  • the data recognition apparatus may output the determined class of input data as a recognition result.
  • FIG. 13 is a flowchart illustrating a process of recognizing input data for global branches according to an embodiment.
  • the data recognition apparatus may read input data to be recognized.
  • the data recognition apparatus may read the global type parameter information stored in the top node of the global branches.
  • the data recognition apparatus may calculate a parameter value for the input data based on the read global type parameter information.
  • the apparatus for recognizing data may search for a range to which the parameter value calculated in operation 1330 belongs based on the stored threshold information.
  • the apparatus for recognizing data may search a range to which the parameter value belongs in the range indicated by the K-1 threshold values stored therein, and determine a lower node of the global branch to visit.
  • the data recognition apparatus may visit a lower node of the global branch determined in operation 1340.
  • the data recognition apparatus may terminate the recognition process in the global branch and start the recognition process for the local sprig.
  • a cluster to which input data belongs may be determined.
  • the data recognition apparatus may perform the steps 1320 to 1360 with respect to the visited lower node.
  • Local sprigs may be composed of a plurality of individual local sprigs.
  • the data recognition apparatus may read input data to be recognized.
  • the data recognition apparatus may read local type feature information stored in the top node of the individual Local Sprigs.
  • the data recognition apparatus may calculate a feature value for the input data based on the read local form feature information.
  • the apparatus for recognizing data may search a range to which the feature value calculated in operation 1430 belongs based on the stored threshold information.
  • the apparatus for recognizing data may search a range to which the feature value belongs in the range indicated by the K-1 threshold values stored therein, and determine a lower node of the local sprig to visit.
  • the apparatus for recognizing data may visit a lower node of the local sprig determined in operation 1440.
  • the data recognition apparatus may perform the same processes of steps 1420 to 1460 for the visited lower node.
  • the data recognition apparatus may extract learned information from the leaf node of the local sprig.
  • the information stored in the leaf node of the local sprig may include probability information of a target class to be recognized, regression information of a value to be estimated, or index information of a direct link corresponding to data in the local sprigs.
  • the data recognizing apparatus may repeat the processes of steps 1410 to 1470 for the plurality of individual local sprigs, and then ensemble the information extracted from the plurality of leaf nodes.
  • the data recognition apparatus may recognize a class or type of input data based on information extracted from leaf nodes.
  • the probability P of each class c stored in the leaf nodes of Local Sprigs composed of S individual Local Sprigs may be determined using Equation 10 below.
  • 15 illustrates an example of training data, according to an exemplary embodiment.
  • FIG. 15 illustrates images representing various human postures as an example of the training data.
  • the recognizer learning apparatus may divide a large number of body posture images into a plurality of data sets or clusters through clustering using unsupervised learning.
  • FIG. 16 illustrates an example of using information extracted from leaf nodes of local sprigs according to an embodiment.
  • three-dimensional position information and orientation information of a skeleton may be extracted from leaf nodes of local sprigs.
  • the data recognition apparatus may estimate the human body posture using the 3D position information and the orientation information of the skeletons extracted from the leaf nodes of the local sprigs.
  • the information stored in the leaf nodes of the local sprigs can be converted into various forms and stored.
  • index information about an image number of a specific posture may be stored in a leaf node of local sprigs.
  • index information for a specific 3D volume number may be stored in leaf nodes of local sprigs.
  • the method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium.
  • the computer readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • the program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts.
  • Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks.
  • Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.
  • the hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Automation & Control Theory (AREA)
  • Fuzzy Systems (AREA)
  • Computational Linguistics (AREA)
  • Image Analysis (AREA)

Abstract

인식기 학습 방법 및 장치, 데이터 인식 방법 및 장치가 개시된다. 일실시예에 따른 인식기 학습 방법은 클러스터링을 통해 학습 데이터를 복수 개의 클러스터들로 생성할 수 있고, 생성된 클러스터들에 각각에 대한 인식기를 학습시킬 수 있다. 인식기 학습 방법은 전역적 형태 파라미터에 기초하여 학습 데이터를 클러스터링할 수 있고, 국부적 형태 특징에 기초하여 클러스터에 포함된 학습 데이터를 분류할 수 있다.

Description

인식기 학습 방법 및 장치, 데이터 인식 방법 및 장치
아래의 설명은 데이터를 인식 또는 분류하는 인식기를 학습시키는 기술 및 학습된 인식기를 이용하여 데이터를 인식 또는 분류하는 기술에 관한 것이다.
최근 다양한 영상 처리 분야에서 기계 학습의 중요성이 증대되고 있다. 입력 영상으로부터 특정 목표 대상을 검출하는 기술은, 컴퓨터 비전 응용 시스템에 적용된다. 일반적으로, 입력 영상으로부터 목표 대상을 검출하는 기술은, 다양한 크기와 위치의 부윈도우를 설정하고, 그 부윈도우로부터 추출된 특징을 특징 벡터로 표현한다. 그 특징 벡터를 학습 분류기에 적용하여 해당 부윈도우의 영역이 목표 대상인지 아닌지를 검출하는 방법이 이용된다.
간단한 구조의 분류기는 유클리디언 거리(Euclidian distance)와 같은 벡터 간 거리, 또는 정규화된 상관성(normalized correlation)과 같은 유사도를 구하고, 그 벡터 간 거리나 유사도를 문턱치와 비교하여 목표 대상과 아닌 것을 구분한다. 좀더 정교한 분류기로서 신경망이나 베이지안 분류기(Bayesian classifier), SVM(Support Vector Machine) 학습 분류기, 에이다부스트(Adaboost) 학습 분류기 등이 이용된다.
에이다부스트 학습 분류기는 계산이 빠른 약한 분류기(weak classifier)를 가중합(weighted sum)으로 조합하여 분류 능력이 좋은 강한 분류기(strong classifier)를 만드는 방법으로, 이 강한 분류기를 순차적으로 배치하여 빠른 속도로 목표 대상을 검출하는 알고리즘이다.
최근에는 다양한 상황에서도 패턴 인식이 가능하고, 수많은 학습 데이터를 빠르게 학습할 수 있는 기계 학습 방법이 요구되고 있다.
일실시예에 따른 인식기 학습 방법은, 학습할 학습 데이터를 선택하는 단계; 전역적 형태 파라미터에 기초하여 상기 선택된 학습 데이터를 클러스터링하고, 복수 개의 클러스터들을 생성하는 단계; 및 국부적 형태 특징에 기초하여 적어도 하나의 클러스터에 포함된 학습 데이터를 분류하는 단계를 포함할 수 있다.
일실시예에 따른 인식기 학습 방법에서, 상기 전역적 형태 파라미터는 상기 선택된 학습 데이터의 전역적인 특징을 결정하는데 이용되고, 상기 국부적 형태 특징은 상기 클러스터에 포함된 학습 데이터의 국부적인 특징을 결정하는데 이용될 수 있다.
일실시예에 따른 데이터 인식 방법은, 인식할 입력 데이터를 판독하는 단계; 학습된 전역적 형태 파라미터 정보에 기초하여 상기 입력 데이터가 속하는 클러스터를 결정하는 단계; 및 상기 결정된 클러스터 및 학습된 국부적 형태 특징 정보에 기초하여 상기 입력 데이터의 클래스를 결정하는 단계를 포함할 수 있다.
일실시예에 따른 인식기 학습 장치는, 학습할 학습 데이터를 선택하는 학습 데이터 선택부; 전역적 형태 파라미터에 기초하여 상기 선택된 학습 데이터를 클러스터링하고, 복수 개의 클러스터들을 생성하는 클러스터링부; 및 국부적 형태 특징에 기초하여 적어도 하나의 클러스터에 포함된 학습 데이터를 분류하는 학습 데이터 분류부를 포함할 수 있다.
일실시예에 따른 데이터 인식 장치는, 입력 데이터를 판독하는 입력 데이터 판독부; 학습된 전역적 형태 파라미터 정보에 기초하여 상기 입력 데이터가 속하는 클러스터를 결정하는 클러스터 결정부; 및 상기 결정된 클러스터 및 학습된 국부적 형태 특징 정보에 기초하여 상기 입력 데이터의 클래스를 결정하는 클래스 결정부를 포함할 수 있다.
도 1은 일실시예에 따른 인식기 학습 장치의 세부 구성을 도시한 도면이다.
도 2는 일실시예에 따른 데이터 인식 장치의 세부 구성을 도시한 도면이다.
도 3 내지 도 4는 일실시예에 따른 인식기 학습을 위한 분산 학습 구조를 도시한 도면이다.
도 5는 일실시예에 따른 인식기 학습 방법을 설명하기 위한 흐름도이다.
도 6은 일실시예에 따른 학습 데이터를 클러스터링하는 과정을 설명하기 위한 흐름도이다.
도 7은 일실시예에 따른 클러스터에 포함된 학습 데이터를 분류하는 과정을 설명하기 위한 흐름도이다.
도 8 내지 도 9는 일실시예에 따른 전역적 형태 파라미터의 일례를 도시한 도면이다.
도 10은 일실시예에 따른 전역적 형태 파라미터의 메모리 구조를 도시한 도면이다.
도 11은 일실시예에 따른 국부적 형태 특징의 일례를 도시한 도면이다.
도 12는 일실시예에 따른 데이터 인식 방법을 설명하기 위한 흐름도이다.
도 13은 일실시예에 따른 Global Branch들에 대한 입력 데이터를 인식하는 과정을 설명하기 위한 흐름도이다.
도 14는 일실시예에 따른 Local Sprig들에 대한 입력 데이터를 인식하는 과정을 설명하기 위한 흐름도이다.
도 15는 일실시예에 따른 학습 데이터의 일례를 도시한 도면이다.
도 16는 일실시예에 따른 Local Sprig들의 리프 노드에서 추출된 정보를 이용하는 일례를 도시한 도면이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 아래의 특정한 구조적 내지 기능적 설명들은 단지 발명의 실시예들을 설명하기 위한 목적으로 예시된 것으로, 발명의 범위가 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 안된다. 일실시예에 따른 인식기 학습 방법은 인식기 학습 장치에 의해 수행될 수 있으며, 데이터 인식 방법은 데이터 인식 장치에 의해 수행될 수 있다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 일실시예에 따른 인식기 학습 장치 (100)의 세부 구성을 도시한 도면이다.
도 1을 참조하면, 인식기 학습 장치 (100)는 학습 데이터 선택부 (110), 클러스터링부 (120), 및 학습 데이터 분류부 (130)를 포함할 수 있다.
인식기 학습 장치 (100)는 학습 데이터(training data)를 이용하여 인식기를 학습(training)시킬 수 있다. 예를 들어, 학습 데이터는 영상 데이터, 음성 데이터, 텍스트 데이터, 바이오 데이터 등을 포함할 수 있다. 학습 데이터의 종류는 특정 데이터의 종류에 한정되지는 않는다.
인식기 학습 장치 (100)는 다수의 특징 추출 방법들 중 최적의 특징 추출 방법을 결정할 수 있다. 인식기 학습 장치 (100)는 결정된 특징 추출 방법을 이용하여 다양한 상황에 적합한 최적의 특징을 추출할 수 있다.
인식기 학습 장치 (100)는 인식기를 계층적으로 구성함으로써 처리 단계 및 처리 시간이 줄어든 인식기를 생성할 수 있다. 인식기 학습 장치 (100)는 계층적인 분류 구조를 생성할 수 있다. 인식기 학습 장치 (100)는 다양한 특징들을 이용하여 학습 데이터를 복수 개의 분리된 묶음 또는 클러스터(cluster)들로 분리하고, 개별 인식기를 학습함으로써 인식기의 인식률을 개선시킬 수 있다.
인식기 학습 장치 (100)는 Global Branch들과 Local Sprig들로 구성된 분류 구조를 생성할 수 있다.
인식기 학습 장치 (100)는 분류 구조의 상단인 Global Branch들에서는 학습 데이터에 대해 클러스터링(clustering)을 수행하고, 분류 구조의 하단인 Local Sprig들에서는 인식(Classification) 또는 회귀(Regression)를 수행할 수 있다. 인식기는 분류 구조를 이용하여 입력 데이터의 클래스(class) 또는 종류를 인식할 수 있다. 클러스터링을 통해 전체 분류 구조의 깊이(depth)가 줄어들고 탐색 속도가 빨라질 수 있다. 분류 구조의 Local Sprig들에서는 특정 클러스터를 대상으로 심층 학습(Exhaustive Training)이 수행될 수 있다.
예를 들어, Global Branch는 Local Sprig보다 가지(branch)의 수 및 깊이가 작을 수 있다. Global Branch에서는 무감독 학습(Unsupervised Learning)이 수행되며, Local Sprig에서는 감독 학습(Supervised Learning)이 수행될 수 있다. Global Branch에서는 이종의 전역적 형태 파라미터들 중 최적의 전역적 형태 파라미터가 결정되고, Local Sprig에서는 이종의 국부적 형태 특징들 중 국부적 형태 특징이 결정될 수 있다. Local Sprig에서는 Global Branch에서보다 데이터들 간의 결정 바운드(decision bound)가 세밀(fine)할 수 있다.
인식기 학습 장치 (100)는 분류 구조의 상단을 적은 수의 Global Branch들로 구성하고, 분류 구조의 하단에서는 다수의 Local Sprig들을 앙상블(Ensemble)함으로써 인식기의 인식률 및 회귀 정확도를 개선시킬 수 있다. 하나의 Global Branch는 복수 개의 Local Sprig들로 연결될 수 있다.
학습 데이터 선택부 (110)는 인식기의 학습을 위한 학습 데이터를 선택할 수 있다. 예를 들어, 학습 데이터 선택부 (110)는 학습 데이터를 균등한 확률로 랜덤하게 선택할 수 있다.
클러스터링부 (120)는 Global Branch들을 학습할 수 있다. 예를 들어, 클러스터링부 (120)는 Ground-truth Labeling이 필요하지 않는 무감독 학습을 수행할 수 있다. Global Branch는 한 개 또는 복수 개의 트리(tree) 형태로 구성될 수 있다.
클러스터링부 (120)는 전역적 형태 파라미터에 기초하여 선택된 학습 데이터를 클러스터링할 수 있다. 전역적 형태 파라미터는 선택된 학습 데이터의 전역적인 특징을 결정하는데 이용될 수 있다. 클러스터링부 (120)는 클러스터링을 통해 학습 데이터의 집합인 클러스터들을 생성할 수 있다.
클러스터링부 (120)는 이종의 전역적 형태 파라미터들(Heterogeneous Global Shape Parameters) 중에서 테스트할 전역적 형태 파라미터를 선택할 수 있다. 그 후, 클러스터링부 (120)는 선택한 전역적 형태 파라미터를 이용하여 학습 데이터에 대한 파라미터 값을 결정할 수 있다. 클러스터링부 (120)는 복수 개의 전역적 형태 파라미터들에 대해 파라미터 값을 결정할 수 있다.
클러스터링부 (120)는 결정된 복수 개의 파라미터 값들을 정규화(Parameter Value Normalization)할 수 있다. 클러스터링부 (120)는 파라미터 값들의 스케일을 균등하게 조정하기 위해 파라미터 값들의 크기를 정규화할 수 있다. 그 후, 클러스터링부 (120)는 개별 학습 데이터마다 파라미터 벡터(Parameter Vector)를 구성할 수 있다. 클러스터링부 (120)는 임계값(threshold value)을 랜덤하게 생성하고, 생성된 임계값에 기초하여 파라미터 벡터들을 복수 개의 데이터 세트(data set)들로 분할할 수 있다. 임계값은 임의(arbitrary)의 개수로 생성될 수 있다.
클러스터링부 (120)는 복수 개의 데이터 세트들에 대해 평균 및 표준 편차를 결정하고, 결정된 평균 및 표준 편차 정보를 이용하여 데이터 세트들 간의 분리도를 결정할 수 있다. 데이터 세트들 간의 분리도는 데이터 세트들 간에 서로 분리된 정도를 나타낸다.
클러스터링부 (120)는 결정된 분리도가 미리 설정된 조건을 만족하는지 여부를 판단하고, 판단 결과에 따라 분할 정보를 저장할 수 있다. 예를 들어, 다른 전역적 형태 파라미터에 기초하여 결정된 복수의 분리도들 중 현재 결정된 분리도가 가장 큰 경우, 클러스터링부 (120)는 분리도가 미리 설정된 조건을 만족하는 것으로 결정할 수 있다. 분할 정보는 복수 개의 클러스터들을 생성하는데 이용된 전역적 형태 파라미터에 관한 정보 및 파라미터 벡터를 복수 개의 데이터 세트들로 분할하는데 이용된 임계값들에 관한 정보를 포함할 수 있다.
클러스터링부 (120)는 Global branch의 하위 노드들에 대한 학습을 진행할 수 있고, Global branch들에 대한 학습이 종료되는 경우에, 학습 데이터 분류부 (130)는 Local Sprig에 대한 학습을 시작할 수 있다.
학습 데이터 분류부 (130)는 Local Sprig들을 학습할 수 있다. 예를 들어, 학습 데이터 분류부 (130)는 Ground-truth Labeling이 필요한 감독 학습(Supervised Learning)을 수행할 수 있다. 예를 들어, Local Sprig은 복수 개의 트리 형태로 구성될 수 있다.
학습 데이터 분류부 (130)는 국부적 형태 특징에 기초하여 적어도 하나의 클러스터에 포함된 학습 데이터를 분류할 수 있다. 국부적 형태 특징은 Global Branch들에 의해 분할된 특정 데이터 세트, 또는 클러스터에 포함된 학습 데이터의 국부적인 특징을 결정하는데 이용될 수 있다.
학습 데이터 분류부 (130)는 클러스터에 포함된 학습 데이터를 랜덤하게 선택할 수 있다. 학습 데이터 분류부 (130)는 이종의 국부적 형태 특징(Heterogeneous Local Shape Feature)들 중에서 테스트할 국부적 형태 특징을 선택하고, 특징 값을 결정할 수 있다. 학습 데이터 분류부 (130)는 복수 개의 국부적 형태 특징들에 대해 특징 값을 결정할 수 있다.
학습 데이터 분류부 (130)는 결정된 복수 개의 특징 값들을 정규화(Feature Value Normalization)할 수 있다. 학습 데이터 분류부 (130)는 특징 값들의 스케일을 균등하게 조정하기 위해 특징 값들의 크기를 정규화할 수 있다. 그 후, 학습 데이터 분류부 (130)는 개별 학습 데이터마다 특징 벡터(Feature Vector)를 구성할 수 있다.
학습 데이터 분류부 (130)는 임계값을 랜덤하게 생성하고, 생성된 임계값에 기초하여 특징 벡터들을 복수 개의 데이터 세트들로 분할할 수 있다. 임계값은 임의의 개수로 생성될 수 있다.
학습 데이터 분류부 (130)는 분할된 복수 개의 데이터 세트들에 대한 정보 엔트로피(Information Entropy)를 결정할 수 있다. 학습 데이터 분류부 (130)는 분할된 복수 개 데이터 세트들의 분포에서 엔트로피를 결정할 수 있다.
학습 데이터 분류부 (130)는 결정된 엔트로피가 미리 설정된 조건을 만족하는지 여부를 판단할 수 있다. 예를 들어, 다른 국부적 형태 특징에 기초하여 결정된 복수의 엔트로피들 중 현재 결정된 엔트로피가 가장 작은 경우, 학습 데이터 분류부 (130)는 엔트로피가 미리 설정된 조건을 만족하는 것으로 결정할 수 있다.
학습 데이터 분류부 (130)는 엔트로피가 미리 설정된 조건을 만족하는 경우, 분할 정보를 저장할 수 있다. 분할 정보는 각각의 클러스터들에 포함된 학습 데이터들을 분류하는데 이용된 국부적 형태 특징에 관한 정보 및 특징 벡터를 복수 개의 데이터 세트들로 분할하는데 이용된 임계값들에 관한 정보를 포함할 수 있다.
학습 데이터 분류부 (130)는 Local Sprig의 하위 노드들에 대한 학습을 진행할 수 있다. Local Sprig의 리프 노드에 도달하는 경우, 학습 데이터 분류부 (130)는 현재까지 분할된 잔여 데이터의 정보를 Local Sprig의 리프 노드에 저장할 수 있다. 예를 들어, 리프 노드에 저장되는 정보는 인식하려는 대상 클래스의 확률 정보, 추정하려는 값의 회귀 정보, 또는 Local Sprig들 내의 데이터에 대응되는 다이렉트 링크(direct link)에 대한 인덱스 정보 등을 포함할 수 있다. 리프 노드에 저장되는 정보는 다양한 형태로 변환되어 리프 노드에 저장될 수 있다.
위와 같은 과정을 통해 깊이가 얕고, 처리 속도가 빠르며 인식률이 개선된 분류 구조가 생성될 수 있다.
도 2는 일실시예에 따른 데이터 인식 장치 (200)의 세부 구성을 도시한 도면이다.
도 2를 참조하면, 데이터 인식 장치 (200)는 입력 데이터 판독부 (210), 클러스터 결정부 (220), 및 클래스 결정부 (230)를 포함할 수 있다.
데이터 인식 장치 (200)는 학습된 정보에 기초하여 입력 데이터를 인식할 수 있다. 데이터 인식 장치 (200)는 Global Branch들과 Local Sprig들로 구성된 분류 구조를 이용하여 입력 데이터의 클래스를 결정할 수 있다. 데이터 인식 장치 (200)는 Global Branch에서 입력 데이터가 속하는 클러스터를 결정할 수 있다. Local Sprig에서 데이터 인식 장치 (200)는 각각의 클러스터들에 대응하는 개별 인식기들을 이용하여 입력 데이터의 클래스를 결정할 수 있다.
입력 데이터 판독부 (210)는 인식할 입력 데이터를 판독할 수 있다.
클러스터 결정부 (220)는 학습된 전역적 형태 파라미터 정보에 기초하여 입력 데이터가 속하는 클러스터를 결정할 수 있다. 클러스터 결정부 (220)는 Global Branch들의 최상위 노드에 저장되어 있는 전역적 형태 파라미터 정보를 판독할 수 있다. 분류 구조의 Global Branch에서, 클러스터 결정부 (220)는 학습된 전역적 형태 정보에 기초하여 입력 데이터가 어떤 클러스터에 속하는지를 결정할 수 있다. 예를 들어, Global Branch는 한 개 또는 복수 개의 트리 형태로 구성될 수 있다.
클러스터 결정부 (220)는 학습된 전역적 형태 파라미터 정보에 기초하여 입력 데이터에 대한 파라미터 값을 결정할 수 있다. 클러스터 결정부 (220)는 저장된 임계값 정보를 이용하여 결정된 파라미터 값에 대응되는 클러스터를 결정할 수 있다.
예를 들어, 클러스터 결정부 (220)는 저장되어 있는 임계값들이 나타내는 범위에서 파라미터 값이 속하는 범위를 탐색하고, Global Branch의 하위 노드를 방문할 수 있다. 방문한 하위 노드가 Global Branch의 리프 노드인 경우, 클러스터 결정부 (220)는 Global Branch에서의 인식 과정을 종료할 수 있다. 그 후, 클래스 결정부 (230)는 Local Sprig에 대한 인식 과정을 시작할 수 있다.
클래스 결정부 (230)는 클러스터 및 학습된 국부적 형태 특징 정보에 기초하여 입력 데이터의 클래스를 결정할 수 있다. 클래스 결정부 (230)는 개별 Local Sprig들의 최상위 노드에 저장되어 있는 국부적 형태 특징 정보를 판독할 수 있다. 분류 구조의 Local Sprig들에서, 클래스 결정부 (230)는 학습된 지역 형태 정보를 이용하여 입력 데이터가 어떤 클래스인지를 인식하거나, 또는 결과값을 회귀할 수 있다.
클래스 결정부 (230)는 클러스터에 포함된 데이터를 분류하기 위한 적어도 하나의 인식기를 로드(load)할 수 있다. 클래스 결정부 (230)는 인식기 및 국부적 형태 특징 정보에 기초하여 입력 데이터의 클래스를 추정할 수 있다. 클래스 결정부 (230)는 국부적 형태 특징 정보에 기초하여 입력 데이터의 특징 값을 결정하고, 결정된 특징 값과 인식기에 저장되어 있는 임계값에 기초하여 입력 데이터의 클래스를 추정할 수 있다.
예를 들어, 클래스 결정부 (230)는 저장되어 있는 임계값들이 나타내는 범위에서 특징 값이 속하는 범위를 탐색하고, 방문할 Local Sprig의 하위 노드를 결정할 수 있다. 방문한 하위 노드가 Local Sprig의 리프 노드인 경우, 클래스 결정부 (230)는 Local Sprig의 리프 노드로부터 학습된 정보를 추출할 수 있다. 리프 노드에 저장된 정보는 인식하려는 대상 클래스의 확률 정보, 추정하려는 값의 회귀 정보, 또는 Local Sprig들 내의 데이터에 대응되는 다이렉트 링크에 대한 인덱스 정보 등을 포함할 수 있다.
클래스 결정부 (230)는 복수 개의 개별 Local Sprig들에 대해서도 위와 동일한 과정을 반복 수행한 후, 복수 개의 리프 노드들로부터 추출된 정보를 앙상블할 수 있다. 클래스 결정부 (230)는 리프 노드들로부터 추출된 정보를 이용하여 입력 데이터의 클래스 또는 종류를 인식할 수 있다.
도 3은 일실시예에 따른 인식기 학습을 위한 분산 학습 구조를 도시한 도면이다.
일실시예에 따르면, 인식기 학습 장치는 도 3의 분산 학습 구조(300)에 도시된 과정에 따라 인식기를 학습시킬 수 있다. 다량의 학습 데이터(Massive Training Data, 310)가 입력되는 경우, 인식기 학습 장치는 이종의 전역적 형태 파라미터(Heterogeneous Global Shape Parameter)들을 이용하여 Global Branch들에 대한 무감독 학습을 수행(320)할 수 있다. Global Branch들에 대한 무감독 학습의 결과로서, 학습 데이터의 그룹을 나타내는 복수 개의 클러스터들이 생성될 수 있다. 인식기 학습 장치는 Global Branch들에 대한 무감독 학습을 독립형 시스템(Standalone System)에서 수행할 수 있다.
인식기 학습 장치는 생성된 각각의 클러스터들에 대해서 개별적인 Local Sprig들을 학습할 수 있다. 인식기 학습 장치는 이종의 국부적 형태 특징(Heterogeneous Local Shape Feature)들을 이용하여 Local Sprig들에 대한 감독 학습을 수행(330)할 수 있다. 인식기 학습 장치는 Local Sprig들에 대한 감독 학습을 병렬 및 분산형 시스템(Parallel & Distributed System)에서 수행할 수 있다. 학습 결과로서, 관목(bush) 형태의 분류 구조가 생성될 수 있다.
도 4는 관목 형태의 분류 구조를 가지는 분산 학습 구조(400)를 도시하고 있다.
인식기 학습 장치의 학습 결과로서 생성된 분산 학습 구조(400)는 상단인 Global Branch들과 하단인 Local Sprig들로 구성될 수 있다. Global Branch들은 일반적으로 단일 트리(tree)로 구성되거나 또는 복수 개의 트리로 구성될 수 있다. 트리의 부모 노드(parent node)에서 자식 노드(child node)로 분기하는 가지의 수는 임의의 수로 결정될 수 있다.
Global Branch들에서는 전역적 형태 파라미터를 이용하여 학습 대상의 전역 형태(global shape)에 대한 파라미터를 추출하고, 추출된 파라미터를 학습할 수 있다. 국부 변화(local variations)에 민감하지 않고(coarse), 빠르게 계산할 수 있는 파라미터 추출 방법을 이용하여 학습 대상의 전역 형태에 대한 파라미터가 추출될 수 있다. 예를 들어, 전역적 형태 파라미터에는 3D Center of gravity, 3D Elogation, Convexity, Skewness 등이 포함될 수 있다. 전역적 형태 파라미터에 관한 보다 자세한 내용은 도 8 내지 도 9에서 후술하도록 한다.
Local Sprig들에서는 국부적 형태 특징을 이용하여 학습 대상의 국부 형태(local shape)에 대한 특징을 추출하고, 추출된 특징을 학습할 수 있다. 국부 변화를 보다 잘 구분할 수 있는 정교한(fine) 특징 추출 방법을 이용하여 학습 대상의 국부 형태에 대한 특징이 추출될 수 있다. 예를 들어, 국부적 형태 특징에는 MCT(Modified Census Transform), (LGP(Local Gradient Pattern), LBP(Local Binary Pattern) 등이 포함될 수 있다. 전역적 형태 파라미터에 관한 보다 자세한 내용은 도 11에서 후술하도록 한다.
위와 같은 과정을 통해 생성된 분산 학습 구조(400)는 입력 데이터의 타입(type) 또는 종류를 인식하는데 이용되거나, 또는 값을 회귀하여 입력 데이터의 타입을 추정하는데 이용될 수 있다.
도 5는 일실시예에 따른 인식기 학습 방법을 설명하기 위한 흐름도이다.
단계(510)에서, 인식기 학습 장치는 인식기의 학습을 위한 학습 데이터를 선택할 수 있다. 예를 들어, 인식기 학습 장치는 학습 데이터를 균등한 확률로 랜덤하게 선택할 수 있다.
단계(520)에서, 인식기 학습 장치는 전역적 형태 파라미터에 기초하여 선택된 학습 데이터를 클러스터링할 수 있다. 인식기 학습 장치는 클러스터링을 통해 학습 데이터의 집합인 클러스터들을 생성할 수 있다. 인식기 학습 장치는 복수의 전역적 형태 파라미터들 중에서 테스트할 전역적 형태 파라미터를 선택할 수 있다. 인식기 학습 장치는 선택한 전역적 형태 파라미터를 이용하여 학습 데이터에 대한 파라미터 값을 결정할 수 있다. 인식기 학습 장치는 복수 개의 전역적 형태 파라미터들에 대해 파라미터 값을 결정할 수 있다.
인식기 학습 장치는 결정된 파라미터 값을 이용하여 학습 데이터에 대한 파라미터 벡터를 결정할 수 있다. 인식기 학습 장치는 파라미터 벡터를 복수 개의 데이터 세트들로 분할하고, 분할된 데이터 세트들 간의 분리도가 미리 설정된 조건을 만족하는지 여부를 판단할 수 있다. 인식기 학습 장치는 분리도가 미리 설정된 조건을 만족시키는 경우, 클러스터들을 생성하는 과정에서 이용된 분할 정보를 저장할 수 있다.
단계(530)에서, 인식기 학습 장치는 국부적 형태 특징에 기초하여 적어도 하나의 클러스터에 포함된 학습 데이터를 분류할 수 있다. 인식기 학습 장치는 클러스터에 포함된 학습 데이터를 랜덤하게 선택할 수 있다. 인식기 학습 장치는 복수의 국부적 형태 특징 들 중에서 테스트할 국부적 형태 특징을 선택하고, 특징 값을 결정할 수 있다. 인식기 학습 장치는 복수 개의 국부적 형태 특징들에 대해 특징 값을 결정할 수 있다.
인식기 학습 장치는 특징 값들의 스케일을 균등하게 조정하기 위해 특징 값들의 크기를 정규화할 수 있다. 그 후, 인식기 학습 장치는 개별 학습 데이터마다 특징 벡터를 구성할 수 있다. 인식기 학습 장치는 임계값에 기초하여 특징 벡터들을 복수 개의 데이터 세트들로 분할할 수 있다.
인식기 학습 장치는 분할된 복수 개의 데이터 세트들에 대한 엔트로피를 결정할 수 있다. 인식기 학습 장치는 분할된 복수 개 데이터 세트들의 분포에서 엔트로피를 결정할 수 있다.
인식기 학습 장치는 엔트로피가 미리 설정된 조건을 만족하는지 여부를 판단할 수 있다. 인식기 학습 장치는 엔트로피가 미리 설정된 조건을 만족하는 경우, 분할 정보를 저장할 수 있다. 인식기 학습 장치는 Local Sprig의 하위 노드들에 대한 학습을 진행할 수 있다. Local Sprig의 리프 노드에 도달하는 경우, 인식기 학습 장치는 현재까지 분할된 잔여 데이터의 정보를 Local Sprig의 리프 노드에 저장할 수 있다.
단계(540)에서, 인식기 학습 장치는 각각의 단계에서 획득된 분할 정보 및 잔여 데이터의 정보 등을 이용하여 인식기를 생성할 수 있다.
도 6은 일실시예에 따른 학습 데이터를 클러스터링하는 과정을 설명하기 위한 흐름도로서, Global Branch들에 대한 학습 과정을 나타내고 있다.
단계(605)에서, 인식기 학습 장치는 학습할 학습 데이터를 선택할 수 있다. 예를 들어, 인식기 학습 장치는 학습 데이터를 균등한 확률로 랜덤하게 선택할 수 있다.
단계(610)에서, 인식기 학습 장치는 이종의 전역적 형태 파라미터들중에서 테스트할 전역적 형태 파라미터를 선택할 수 있다. 그 후, 인식기 학습 장치는 선택한 전역적 형태 파라미터를 이용하여 학습 데이터에 대한 파라미터 값을 계산할 수 있다. 예를 들어, 인식기 학습 장치는 무게 중심(Center of gravity), Elongation, Rectangularity, Convexity 등의 전역적 형태 파라미터들 중 특정 전역적 형태 파라미터를 선택하고, 선택된 전역적 형태 파라미터에 대한 학습 데이터의 파라미터 값을 계산할 수 있다.
단계(615)에서, 인식기 학습 장치는 단계(610)의 과정을 복수 번 수행하여 복수 개의 전역적 형태 파라미터들에 대해 파라미터 값을 계산할 수 있다. 예를 들어, 인식기 학습 장치는 (1) 이종의 전역적 형태 파라미터들 전체에 대해 파라미터 값을 계산하거나, (2) 임의로 선택된 전역적 형태 파라미터들에 대해서만 파라미터 값을 계산하거나, 또는 (3) 사용자에 의해 선택된 전역적 형태 파라미터들에 대해서만 파라미터 값을 계산할 수 있다.
단계(620)에서, 인식기 학습 장치는 단계(615)로부터 계산된 복수 개의 파라미터 값들을 정규화할 수 있다. 서로 다른 전역적 형태 파라미터들에 기초하여 계산된 파라미터 값들의 최대 범위 및 최소 범위는 다를 수 있다. 인식기 학습 장치는 파라미터 값들의 스케일을 균등하게 조정하기 위해 파라미터 값들의 크기를 정규화할 수 있다. 그 후, 인식기 학습 장치는 개별 학습 데이터마다 파라미터 벡터를 구성할 수 있다.
단계(625)에서, 인식기 학습 장치는 K-1 개의 임계값을 랜덤하게 생성할 수 있다. 여기서, K는 임의로 결정된 2 이상의 정수를 나타낸다. 단계(630)에서, 인식기 학습 장치는 K-1 개의 임계값에 기초하여 파라미터 벡터들을 K 개의 데이터 세트들로 분할할 수 있다.
단계(635)에서, 인식기 학습 장치는 K 개의 데이터 세트들 각각에 대해 평균(mean) 및 표준 편차(standard deviation)을 계산할 수 있다.
단계(640)에서, 인식기 학습 장치는 단계(635)로부터 획득된 평균 및 표준 편차 정보를 이용하여 K 개의 데이터 세트들 간의 분리도(또는, 클러스터링 세기(clustering strength))를 계산할 수 있다. 단계(645)에서, 인식기 학습 장치는 분리도가 미리 설정된 조건을 만족하는지 여부를 판단할 수 있다. 예를 들어, 인식기 학습 장치는 현재 계산된 분리도가 최대치이거나, 또는 분리도가 미리 설정된 기준 분리도보다 더 큰 경우, 분리도가 미리 설정된 조건을 만족하는 것으로 결정할 수 있다.
일실시예에 따르면, 인식기 학습 장치는 두 클러스터들 간의 분리도를 계산하기 위한 목적 함수(objective function)로서, 다음의 수학식 1과 같은 Gaussian Likelihood (D)를 이용할 수 있다.
Figure PCTKR2014010789-appb-I000001
수학식 1에서, k 개의 클러스터들의 평균
Figure PCTKR2014010789-appb-I000002
가 Max Marginalize되고, 표준 편차
Figure PCTKR2014010789-appb-I000003
가 최소로 될수록 Gaussian Likelihood (D)가 커질 수 있고, Gaussian Likelihood (D)가 커질수록 두 클러스터들 간의 분리도는 증가할 수 있다. 클러스터들 간의 이격 정도가 클수록 또는 각각의 클러스터들 내에서 엘리먼트(element)의 밀집 정도가 높을수록 Gaussian Likelihood (D)가 커질 수 있다.
다른 실시예에 따르면, 인식기 학습 장치는 두 클러스터들 간의 분리도를 계산하기 위해 다음의 수학식 2와 같은 Imbalance 특성 (D)를 이용할 수 있다. Imbalance 특성 (D)에 기초하여 각각의 클러스터들에 포함된 데이터의 개수가 클러스터들 간에 균등하게 분포되었는지 여부가 결정될 수 있다.
Figure PCTKR2014010789-appb-I000004
수학식 2에서, k 개의 클러스터들 간에 각각의 클러스터에 포함된 데이터 수 S 의 차이가 줄어들수록 Imbalance 특성 (D)가 줄어들고, Imbalance 특성 (D)가 줄어들수록 두 클러스터들 간의 분리도가 증가하는 것으로 대응시킬 수 있다.
또 다른 실시예에 따르면, 인식기 학습 장치는 수학식 1 및 수학식 2 모두를 함께 이용하여 분리도를 계산할 수 있다.
단계(650)에서, 인식기 학습 장치는 분리도가 미리 설정된 조건을 만족하는 경우, 분할 정보를 저장할 수 있다. 분할 정보는 복수 개의 클러스터들을 생성하는데 이용된 전역적 형태 파라미터에 관한 정보 및 파라미터 벡터를 복수 개의 데이터 세트들로 분할하는데 이용된 K-1 개의 임계값들에 관한 정보를 포함할 수 있다.
단계(655)에서, 인식기 학습 장치는 Global branch들에 대한 학습을 종료할지 여부를 결정할 수 있다. 예를 들어, 인식기 학습 장치는 (1) 클러스터에 포함된 학습 데이터량이 미리 설정된 조건을 만족하는 경우, (2) 단계(640)에서 계산한 분리도가 미리 설정된 조건을 만족하는 경우, 또는 (3) Global branch의 레벨이 미리 설정된 기준을 초과하는 경우에 Global branch에 대한 학습을 종료할 수 있다. Global branch들에 대한 학습이 종료되는 경우, 인식기 학습 장치는 Local Sprig에 대한 학습을 시작할 수 있다.
단계(660)에서, 인식기 학습 장치는 Global branch에 대한 학습을 종료하지 않는 것으로 결정한 경우, Global branch의 하위 노드들에 대한 학습을 진행할 수 있다. 인식기 학습 장치는 Global branch의 하위 노드들에 대해서도 단계(605) 내지 단계(660)의 일련의 과정을 동일하게 수행할 수 있다.
도 7은 일실시예에 따른 클러스터에 포함된 학습 데이터를 분류하는 과정을 설명하기 위한 흐름도로서, Global Branch에 대한 학습이 완료된 이후에 수행되는 Local Sprig들에 대한 학습 과정을 나타내고 있다.
단계(705)에서, 인식기 학습 장치는 학습할 학습 데이터를 랜덤하게 선택할 수 있다. 예를 들어, 인식기 학습 장치는 클러스터에 포함된 학습 데이터를 균등한 확률로 랜덤하게 선택할 수 있다. 여기서, 학습 데이터는 Global Branch들에 의해 분할된 특정 데이터 세트를 나타낸다.
단계(710)에서, 인식기 학습 장치는 이종의 국부적 형태 특징들 중에서 테스트할 국부적 형태 특징을 선택하고, 특징 값을 계산할 수 있다.
단계(715)에서, 인식기 학습 장치는 단계(710)의 과정을 복수 번 수행하여 복수 개의 국부적 형태 특징들에 대해 특징 값을 계산할 수 있다. 예를 들어, 인식기 학습 장치는 (1) 이종의 국부적 형태 특징들 전체에 대해 특징 값을 계산하거나, (2) 임의로 선택된 국부적 형태 특징들에 대해서만 특징 값을 계산하거나, 또는 (3) 사용자에 의해 선택된 국부적 형태 특징들에 대해서만 특징 값을 계산할 수 있다.
단계(720)에서, 인식기 학습 장치는 단계(715)로부터 계산된 복수 개의 특징 값들을 정규화할 수 있다. 서로 다른 국부적 형태 특징들에 기초하여 계산된 특징 값들의 최대 범위 및 최소 범위는 다를 수 있다. 인식기 학습 장치는 특징 값들의 스케일을 균등하게 조정하기 위해 특징 값들의 크기를 정규화할 수 있다. 그 후, 인식기 학습 장치는 개별 학습 데이터마다 특징 벡터를 구성할 수 있다.
단계(725)에서, 인식기 학습 장치는 K-1 개의 임계값을 랜덤하게 생성할 수 있다. 여기서, K 는 임의로 결정된 2 이상의 정수를 나타낸다. 단계(730)에서, 인식기 학습 장치는 K-1 개의 임계값에 기초하여 특징 벡터들을 K 개의 데이터 세트들로 분할할 수 있다.
단계(735)에서, 인식기 학습 장치는 분할된 K 개의 데이터 세트들에 대한 정보 엔트로피를 계산할 수 있다. 인식기 학습 장치는 분할된 K 개 데이터 세트들의 분포에서 정보 엔트로피를 계산할 수 있다. 예를 들어, 인식기 학습 장치는 다음의 수학식 3을 이용하여 분할된 K 개의 데이터 세트들에 대한 정보 엔트로피를 결정할 수 있다.
Figure PCTKR2014010789-appb-I000005
여기서, Dk 는 k 번째 데이터 세트에 포함된 데이터를 나타내고, ci 는 i 번째 클래스를 나타낸다. E(Dk)는 k 번째 데이터 그룹이 정보 엔트로피를 나타낸다.
전체 데이터 D에 대한 정보 엔트로피 E(D)는 다음의 수학식 4를 이용하여 결정할 수 있다.
Figure PCTKR2014010789-appb-I000006
여기서, Di 는 i 번째 데이터 세트에 포함된 데이터를 나타내고, E(Di)는 i 번째 데이터 그룹이 정보 엔트로피를 나타낸다.
단계(740)에서, 인식기 학습 장치는 정보 엔트로피가 미리 설정된 조건을 만족하는지 여부를 판단할 수 있다. 예를 들어, 인식기 학습 장치는 현재 계산된 정보 엔트로피가 최소치이거나, 또는 정보 엔트로피가 미리 설정된 기준 정보 엔트로피보다 더 작은 경우, 정보 엔트로피가 미리 설정된 조건을 만족하는 것으로 결정할 수 있다. 정보 엔트로피가 낮을수록 Local Sprig들에서 학습 데이터를 더 명확하게 분류한다는 것을 나타내고, 인식기의 인식률이 높아진다는 것을 나타낸다.
단계(745)에서, 인식기 학습 장치는 정보 엔트로피가 미리 설정된 조건을 만족하는 경우, 분할 정보를 저장할 수 있다. 분할 정보는 각각의 클러스터들에 포함된 학습 데이터들을 분류하는데 이용된 국부적 형태 특징에 관한 정보 및 특징 벡터를 복수 개의 데이터 세트들로 분할하는데 이용된 K-1 개의 임계값들에 관한 정보를 포함할 수 있다.
단계(750)에서, 인식기 학습 장치는 Local Sprig들에 대한 학습을 종료할지 여부를 결정할 수 있다. 예를 들어, 인식기 학습 장치는 (1) 단계(735)에서 계산한 정보 엔트로피가 미리 설정된 조건을 만족하는 경우, (2) Local Sprig의 레벨이 미리 설정된 조건을 초과하는 경우, 또는 (3) 클러스터에 포함된 잔여 데이터량이 미리 설정된 조건을 만족하는 경우에 Local Sprig에 대한 학습을 종료할 수 있다.
단계(755)에서, 인식기 학습 장치는 인식기 학습 장치는 Local Sprig에 대한 학습을 종료하지 않는 것으로 결정한 경우Local Sprig의 하위 노드들에 대한 학습을 진행할 수 있다. 인식기 학습 장치는 Local Sprig의 하위 노드들에 대해서도 단계(705) 내지 단계(755)의 일련의 과정을 동일하게 수행할 수 있다.
단계(760)에서, 인식기 학습 장치는 Local Sprig의 리프 노드에 현재까지 분할된 잔여 데이터의 정보를 저장할 수 있다. 예를 들어, 리프 노드에 저장되는 정보는 인식하려는 대상 클래스의 확률 정보, 추정하려는 값의 회귀 정보, 또는 Local Sprig들 내의 데이터에 대응되는 다이렉트 링크에 대한 인덱스 정보 등을 포함할 수 있다. 리프 노드에 저장되는 정보는 다양한 형태로 변환되어 리프 노드에 저장될 수 있다.
도 8 내지 도 9는 일실시예에 따른 전역적 형태 파라미터의 일례를 도시한 도면이다.
전역적 형태 파라미터는 국부적 형태 특징에 비해 상대적으로 큰 차이를 가지는 형태에 대해서만 구분이 가능한 형태 디스크립터(shape descriptor)를 나타낸다. 전역적 형태 파라미터는 국부적인 형태의 변화에 강인(robust 또는 invariant)하다. 따라서, 데이터들을 클러스터링하는 경우, 전역적 형태 파라미터를 이용하는 것이 유용할 수 있다.
일반적으로, 전역적 형태 파라미터는 큰 차이를 가지는 형태만 구분하므로, 전역적 형태 파라미터를 이용했을 때의 연산 속도가 국부적 형태 특징을 이용했을 때의 연산 속도보다 빠르다. 인식기 학습 장치는 전역적 형태 파라미터를 데이터를 클러스터링하는데 이용되는 분류자(classifier)로 이용할 수 있다.
예를 들어, 전역적 형태 파라미터는 도 8에 도시된 것과 같은 3D Center of gravity (gx, gy, gz), 3D Elogation(XY Elogation, YX Elogation, ZX Elogation, XZ Elogation, ZY Elogation, YZ Elogation), 2D Rectangularity (Rectangularity), Convexity, Solidity, Profiles, Holes area ratio 등의 형태 파라미터, 또는 도 9에 도시된 것과 같은 Skewness, Kurtosis 등의 형태 파라미터를 포함할 수 있다. 예를 들어, 전역적 형태 파라미터들에 대한 파라미터 값은 다음과 같이 결정할 수 있다.
3D Center of gravity와 관련하여 x축, y축, z축 방향의 무게 중심 (gx, gy, gz)는 다음의 수학식 5를 이용하여 결정할 수 있다.
Figure PCTKR2014010789-appb-I000007
여기서, Width는 형태의 너비, Height는 형태의 높이, Depth는 형태의 깊이를 나타낸다.
3D Elogation 'Elo' 는 다음의 수학식 6을 이용하여 결정할 수 있다.
Figure PCTKR2014010789-appb-I000008
여기서, W={X, Y, Z}이고, L={X, Y, Z}이다. W의 엘리먼트는 L의 엘리먼트와 같지 않으며, L은 0이 아니다. W는 형태의 너비를 나타내고, L은 형태의 높이를 나타낸다.
2D Rectangularity는 다음의 수학식 7을 이용하여 결정할 수 있다.
Figure PCTKR2014010789-appb-I000009
여기서, AS는 형태 면적(shape area)이고, AR은 바운딩 박스의 면적(bounding box area)를 나타낸다.
구조적 특징(textural feature)을 나타내는 Skewness, Kurtosis는 다음의 과정을 통해 결정될 수 있다. 예를 들어, 인식기 학습 장치는 입력 이미지(910)를 형태 매트릭스(shape matrix, 920)로 변환하고, 형태 매트릭스(920)에 기초하여 Skewness 파라미터, 또는 Kurtosis 파라미터(930)를 결정할 수 있다. Skewness 파라미터 sk는 다음의 수학식 8을 이용하여 결정할 수 있다.
Figure PCTKR2014010789-appb-I000010
Kurtosis 파라미터 k는 다음의 수학식 9를 이용하여 결정할 수 있다.
Figure PCTKR2014010789-appb-I000011
수학식 8 및 수학식 9에서, m은 형태 매트릭스의 평균을 나타내고,
Figure PCTKR2014010789-appb-I000012
는 형태 매트릭스의 표준 편차를 나타낸다.
위에 기재된 전역적 형태 파라미터는 일례에 불과하면, 실시예들의 범위가 여기에 기재된 전역적 형태 파라미터의 종류에 의해 제한되는 것은 아니다.
도 10은 일실시예에 따른 전역적 형태 파라미터의 메모리 구조 (1000)를 도시한 도면이다.
전역적 형태 파라미터의 파라미터 값은 1차원의 실수 값(real value)으로 계산될 수 있다. 인식기 학습 장치는 복수 개의 전역적 형태 파라미터에 대한 파라미터 값을 계산하고, 복수의 파라미터 값들에 기초하여 다차원의 파라미터 벡터를 생성할 수 있다. 학습 데이터의 개별 데이터는 각각에 대응되는 파라미터 벡터를 가질 수 있다.
전역적 형태 파라미터의 메모리 구조 (1000)는 파라미터 값들을 저장하는 파라미터 값 컨테이너(Parameter Values Container)를 포함할 수 있다. 파라미터 값 컨테이너는 복수 개의 전역적 형태 파라미터들에 대응하는 다차원의 파라미터 벡터들을 저장할 수 있다.
도 11은 일실시예에 따른 국부적 형태 특징의 일례를 도시한 도면이다.
국부적 형태 특징은 전역적 형태 파라미터에 비해 상대적으로 작은 차이를 가지는 형태에 대해서도 구분이 가능한 형태 디스크립터를 나타낸다. 따라서, 데이터들을 분류 또는 회귀하는 경우, 국부적 형태 특징을 이용하는 것이 유용할 수 있다.
국부적 형태 특징에는 MCT(Modified Census Transform)(1110), LGP(Local Gradient Pattern)(1120), LBP(Local Binary Pattern)(1130) 등이 포함될 수 있다. 예를 들어, MCT(1110)는 3x3 윈도우 내의 밝기 값을 탐색하고, 탐색된 밝기 값을 9 비트로 인코딩하는 것을 통해 획득될 수 있고, LGP(1120)은 3x3 윈도우 내의 그래디언트(gradient) 값을 탐색하고, 탐색된 그래디언트 값을 8 비트로 인코딩하는 것에 의해 획득될 수 있다. 예를 들어, LBP(1130)은 3x3 커널을 이용하여 자신의 픽셀값과 이웃하는 픽셀의 픽셀값을 비교하여 바이너리 형태로 표현한 후, 바이너리 정보를 조합하여 십진수 숫자로 변환하는 것에 의해 획득될 수 있다.
위에 기재된 국부적 형태 특징은 일례에 불과하며, 실시예의 범위가 여기에 기재된 국부적 형태 특징의 종류에 의해 제한되는 것은 아니다.
도 12는 일실시예에 따른 데이터 인식 방법을 설명하기 위한 흐름도이다.
단계(1210)에서, 데이터 인식 장치는 인식할 입력 데이터를 판독할 수 있다.
단계(1220)에서, 데이터 인식 장치는 학습된 전역적 형태 파라미터 정보에 기초하여 입력 데이터가 속하는 클러스터를 결정할 수 있다. 데이터 인식 장치는 학습된 전역적 형태 파라미터 정보에 기초하여 입력 데이터에 대한 파라미터 값을 결정할 수 있다. 그 후, 데이터 인식 장치는 저장된 임계값 정보를 이용하여 결정된 파라미터 값에 대응되는 클러스터를 결정할 수 있다.
데이터 인식 장치는 저장되어 있는 임계값들이 나타내는 범위에서 파라미터 값이 속하는 범위를 탐색하고, 방문할 Global Branch의 하위 노드를 결정할 수 있다. Global Branch의 리프 노드가 결정되는 것에 의해 입력 데이터가 속하는 클러스터가 결정될 수 있다.
단계(1230)에서, 데이터 인식 장치는 결정된 클러스터 및 학습된 국부적 형태 특징 정보에 기초하여 입력 데이터의 클래스를 결정할 수 있다. 데이터 인식 장치는 결정된 클러스터에 포함된 데이터를 분류하기 위한 적어도 하나의 인식기를 로드할 수 있다. 데이터 인식 장치는 인식기 및 국부적 형태 특징 정보에 기초하여 입력 데이터의 클래스를 추정할 수 있다. 데이터 인식 장치는 국부적 형태 특징 정보에 기초하여 입력 데이터의 특징 값을 결정할 수 있다. 데이터 인식 장치는 결정된 특징 값과 인식기에 저장되어 있는 임계값에 기초하여 입력 데이터의 클래스를 추정할 수 있다. 데이터 인식 장치는 Local Sprig의 리프 노드에 저장되어 있는 정보를 이용하여 입력 데이터의 클래스를 결정할 수 있다. Local Sprig의 리프 노드에 저장된 정보는 인식하려는 대상 클래스의 확률 정보, 추정하려는 값의 회귀 정보, 또는 Local Sprig들 내의 데이터에 대응되는 다이렉트 링크에 대한 인덱스 정보 등을 포함할 수 있다.
단계(1240)에서, 데이터 인식 장치는 인식 결과로서, 결정된 입력 데이터의 클래스를 출력할 수 있다.
도 13은 일실시예에 따른 Global Branch들에 대한 입력 데이터를 인식하는 과정을 설명하기 위한 흐름도이다.
단계(1310)에서, 데이터 인식 장치는 인식할 입력 데이터를 판독할 수 있다.
단계(1320)에서, 데이터 인식 장치는 Global Branch들의 최상위 노드에 저장되어 있는 전역적 형태 파라미터 정보를 판독할 수 있다.
단계(1330)에서, 데이터 인식 장치는 판독된 전역적 형태 파라미터 정보에 기초하여 입력 데이터에 대한 파라미터 값을 계산할 수 있다.
단계(1340)에서, 데이터 인식 장치는 저장된 임계값 정보에 기초하여 단계(1330)에서 계산된 파라미터 값이 속하는 범위를 탐색할 수 있다. 데이터 인식 장치는 저장되어 있는 K-1 개의 임계값들이 나타내는 범위에서 파라미터 값이 속하는 범위를 탐색하고, 방문할 Global Branch의 하위 노드를 결정할 수 있다.
단계(1350)에서, 데이터 인식 장치는 단계(1340)에서 결정된 Global Branch의 하위 노드를 방문할 수 있다.
단계(1360)에서, 방문한 하위 노드가 Global Branch의 리프 노드인 경우, 데이터 인식 장치는 Global Branch에서의 인식 과정을 종료하고 Local Sprig에 대한 인식 과정을 시작할 수 있다. Global Branch의 리프 노드가 결정됨으로써 입력 데이터가 속하는 클러스터가 결정될 수 있다.
방문한 하위 노드가 Global Branch의 리프 노드가 아닌 경우, 데이터 인식 장치는 방문한 하위 노드에 대해 단계(1320) 내지 단계(1360)의 과정을 동일하게 수행할 수 있다.
도 14는 일실시예에 따른 Local Sprig들에 대한 입력 데이터를 인식하는 과정을 설명하기 위한 흐름도이다. Local Sprig들은 복수 개의 개별 Local Sprig들로 구성될 수 있다.
단계(1410)에서, 데이터 인식 장치는 인식할 입력 데이터를 판독할 수 있다.
단계(1420)에서, 데이터 인식 장치는 개별 Local Sprig들의 최상위 노드에 저장되어 있는 국부적 형태 특징 정보를 판독할 수 있다.
단계(1430)에서, 데이터 인식 장치는 판독된 국부적 형태 특징 정보에 기초하여 입력 데이터에 대한 특징 값을 계산할 수 있다.
단계(1440)에서, 데이터 인식 장치는 저장된 임계값 정보에 기초하여 단계(1430)에서 계산된 특징 값이 속하는 범위를 탐색할 수 있다. 데이터 인식 장치는 저장되어 있는 K-1 개의 임계값들이 나타내는 범위에서 특징 값이 속하는 범위를 탐색하고, 방문할 Local Sprig의 하위 노드를 결정할 수 있다.
단계(1450)에서, 데이터 인식 장치는 단계(1440)에서 결정된 Local Sprig의 하위 노드를 방문할 수 있다.
방문한 하위 노드가 Local Sprig의 리프 노드가 아닌 경우, 단계(1460)에서 데이터 인식 장치는 방문한 하위 노드에 대해 단계(1420) 내지 단계(1460)의 과정을 동일하게 수행할 수 있다.
방문한 하위 노드가 Local Sprig의 리프 노드인 경우, 단계(1470)에서, 데이터 인식 장치는 Local Sprig의 리프 노드로부터 학습된 정보를 추출할 수 있다. Local Sprig의 리프 노드에 저장된 정보는 인식하려는 대상 클래스의 확률 정보, 추정하려는 값의 회귀 정보, 또는 Local Sprig들 내의 데이터에 대응되는 다이렉트 링크에 대한 인덱스 정보 등을 포함할 수 있다.
단계(1480)에서, 데이터 인식 장치는 복수 개의 개별 Local Sprig들에 대해 단계(1410) 내지 단계(1470)의 과정을 반복 수행한 후, 복수 개의 리프 노드들로부터 추출된 정보를 앙상블할 수 있다. 데이터 인식 장치는 리프 노드들로부터 추출된 정보에 기초하여 입력 데이터의 클래스 또는 종류를 인식할 수 있다.
예를 들어, 입력 데이터 x의 클래스를 인식하는 경우, S 개의 개별 Local Sprig들로 구성된 Local Sprigs의 리프 노드에 저장되어 있는 각 클래스 c 의 확률 P는 다음의 수학식 10을 이용하여 결정할 수 있다.
Figure PCTKR2014010789-appb-I000013
Figure PCTKR2014010789-appb-I000014
도 15는 일실시예에 따른 학습 데이터의 일례를 도시한 도면이다.
도 15에는 학습 데이터의 일례로서, 다양한 인체 자세를 나타내는 영상이 도시되어 있다. 인식기 학습 장치는 다양하고 많은 수의 인체 자세 영상들을 무감독 학습을 이용한 클러스터링을 통해 복수 개의 데이터 세트 또는 클러스터들로 분할할 수 있다.
도 16는 일실시예에 따른 Local Sprig들의 리프 노드에서 추출된 정보를 이용하는 일례를 도시한 도면이다.
예를 들어, 인체 자세 영상의 경우, Local Sprig들의 리프 노드에서 뼈대의 3차원 위치 정보 및 방향 정보를 추출할 수 있다. 데이터 인식 장치는 Local Sprig들의 리프 노드에서 추출된 뼈대의 3차원 위치 정보 및 방향 정보를 이용하여 인체 자세를 추정할 수 있다.
Local Sprig들의 리프 노드에 저장되는 정보는 다양한 형태로 변환되어 저장될 수 있다. 예를 들어, Local Sprig들의 리프 노드에는 특정 자세의 영상 번호에 대한 인덱스 정보가 저장될 수 있다. 인체 3D 볼륨 정보의 경우, 특정 3D 볼륨의 번호에 대한 인덱스 정보가 Local Sprig들의 리프 노드에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 학습할 학습 데이터를 선택하는 단계;
    전역적 형태 파라미터에 기초하여 상기 선택된 학습 데이터를 클러스터링(clustering)하고, 복수 개의 클러스터(cluster)들을 생성하는 단계; 및
    국부적 형태 특징에 기초하여 적어도 하나의 클러스터에 포함된 학습 데이터를 분류하는 단계
    를 포함하는 인식기 학습 방법.
  2. 제1항에 있어서,
    상기 전역적 형태 파라미터는,
    상기 선택된 학습 데이터의 전역적인 특징을 결정하는데 이용되고,
    상기 국부적 형태 특징은,
    상기 클러스터에 포함된 학습 데이터의 국부적인 특징을 결정하는데 이용되는, 인식기 학습 방법.
  3. 제1항에 있어서,
    상기 복수 개의 클러스터들을 생성하는 단계는,
    전역적 형태 파라미터에 대한 파라미터 값을 결정하는 단계;
    상기 결정된 파라미터 값을 이용하여 학습 데이터에 대한 파라미터 벡터를 결정하는 단계;
    상기 파라미터 벡터를 복수 개의 데이터 세트들로 분할하는 단계;
    상기 분할된 데이터 세트들 간의 분리도가 미리 설정된 조건을 만족하는지 여부를 판단하는 단계; 및
    상기 분리도가 미리 설정된 조건을 만족하는 경우, 클러스터의 생성과 관련된 분할 정보를 저장하는 단계
    를 포함하는 인식기 학습 방법.
  4. 제3항에 있어서,
    상기 파라미터 벡터를 복수 개의 데이터 세트들로 분할하는 단계는,
    랜덤하게 결정된 임계값들에 기초하여 파라미터 벡터를 복수 개의 데이터 세트들로 분할하고,
    상기 임계값들은 임의의 개수로 생성되는, 인식기 학습 방법.
  5. 제3항에 있어서,
    상기 데이터 세트들 간의 분리도는,
    상기 데이터 세트들 각각의 평균 및 상기 데이터 세트들 각각의 표준 편차에 기초하여 결정되는, 인식기 학습 방법.
  6. 제3항에 있어서,
    상기 클러스터의 생성과 관련된 분할 정보는,
    상기 복수 개의 클러스터들을 생성하는데 이용된 전역적 형태 파라미터에 관한 정보 및 상기 파라미터 벡터를 복수 개의 데이터 세트들로 분할하는데 이용된 임계값에 관한 정보를 포함하는, 인식기 학습 방법.
  7. 제3항에 있어서,
    상기 분리도가 미리 설정된 조건을 만족하는지 여부를 판단하는 단계는,
    다른 전역적 형태 파라미터에 기초하여 결정된 복수의 분리도들 중 현재 결정된 분리도가 가장 큰 경우에 분리도가 미리 설정된 조건을 만족하는 것으로 결정하는, 인식기 학습 방법.
  8. 제1항에 있어서,
    상기 학습 데이터를 분류하는 단계는,
    국부적 형태 특징에 대한 특징 값을 결정하는 단계;
    상기 결정된 특징 값을 이용하여 학습 데이터에 대한 특징 벡터를 결정하는 단계;
    상기 특징 벡터를 복수 개의 데이터 세트들로 분할하는 단계;
    상기 분할된 데이터 세트들에 기초하여 결정된 엔트로피가 미리 설정된 조건을 만족하는지 여부를 판단하는 단계; 및
    상기 엔트로피가 미리 설정된 조건을 만족하는 경우, 클러스터에 포함된 학습 데이터의 분류와 관련된 분할 정보를 저장하는 단계
    를 포함하는 인식기 학습 방법.
  9. 제8항에 있어서,
    상기 특징 벡터를 복수 개의 데이터 세트들로 분할하는 단계는,
    랜덤하게 결정된 임계값들에 기초하여 특징 벡터를 복수 개의 데이터 세트들로 분할하고,
    상기 임계값들은 임의의 개수로 생성되는, 인식기 학습 방법.
  10. 제8항에 있어서,
    상기 클러스터에 포함된 학습 데이터의 분류와 관련된 분할 정보는,
    상기 클러스터에 포함된 학습 데이터를 분류하는데 이용된 국부적 형태 특징에 관한 정보 및 상기 특징 벡터를 복수 개의 데이터 세트들로 분할하는데 이용된 임계값에 관한 정보를 포함하는, 인식기 학습 방법.
  11. 제8항에 있어서,
    상기 엔트로피가 미리 설정된 조건을 만족하는지 여부를 판단하는 단계는,
    다른 국부적 형태 특징에 기초하여 결정된 복수의 엔트로피들 중 현재 결정된 엔트로피가 가장 작은 경우에 엔트로피가 미리 설정된 조건을 만족하는 것으로 결정하는, 인식기 학습 방법.
  12. 인식할 입력 데이터를 판독하는 단계;
    학습된 전역적 형태 파라미터 정보에 기초하여 상기 입력 데이터가 속하는 클러스터를 결정하는 단계; 및
    상기 결정된 클러스터 및 학습된 국부적 형태 특징 정보에 기초하여 상기 입력 데이터의 클래스를 결정하는 단계
    를 포함하는 데이터 인식 방법.
  13. 제12항에 있어서,
    상기 학습된 전역적 형태 파라미터 정보는,
    상기 입력 데이터의 전역적인 특징을 결정하는데 이용되고,
    상기 학습된 국부적 형태 특징 정보는,
    상기 입력 데이터의 국부적인 특징을 결정하는데 이용되는, 데이터 인식 방법.
  14. 제12항에 있어서,
    상기 입력 데이터가 속하는 클러스터를 결정하는 단계는,
    학습된 전역적 형태 파라미터 정보에 기초하여 상기 입력 데이터에 대한 파라미터 값을 결정하는 단계; 및
    저장된 임계값 정보를 이용하여 상기 결정된 파라미터 값에 대응되는 클러스터를 결정하는 단계
    를 포함하는 데이터 인식 방법.
  15. 제12항에 있어서,
    상기 입력 데이터의 클래스를 결정하는 단계는,
    상기 결정된 클러스터에 포함된 데이터를 분류하기 위한 적어도 하나의 인식기를 로드하는 단계; 및
    상기 인식기 및 상기 국부적 형태 특징 정보에 기초하여 상기 입력 데이터의 클래스를 추정하는 단계
    를 포함하는 데이터 인식 방법.
  16. 제15항에 있어서,
    상기 입력 데이터의 클래스를 추정하는 단계는,
    상기 국부적 형태 특징 정보에 기초하여 상기 입력 데이터의 특징 값을 결정하는 단계; 및
    상기 결정된 특징 값과 상기 인식기에 저장되어 있는 임계값 정보에 기초하여 상기 입력 데이터의 클래스를 추정하는 단계
    를 포함하는 데이터 인식 방법.
  17. 제1항 내지 제16항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
  18. 학습할 학습 데이터를 선택하는 학습 데이터 선택부;
    전역적 형태 파라미터에 기초하여 상기 선택된 학습 데이터를 클러스터링하고, 복수 개의 클러스터들을 생성하는 클러스터링부; 및
    국부적 형태 특징에 기초하여 적어도 하나의 클러스터에 포함된 학습 데이터를 분류하는 학습 데이터 분류부
    를 포함하는 인식기 학습 장치.
  19. 제18항에 있어서,
    상기 전역적 형태 파라미터는,
    상기 선택된 학습 데이터의 전역적인 특징을 결정하는데 이용되고,
    상기 국부적 형태 특징은,
    상기 클러스터에 포함된 학습 데이터의 국부적인 특징을 결정하는데 이용되는, 인식기 학습 장치.
  20. 입력 데이터를 판독하는 입력 데이터 판독부;
    학습된 전역적 형태 파라미터 정보에 기초하여 상기 입력 데이터가 속하는 클러스터를 결정하는 클러스터 결정부; 및
    상기 결정된 클러스터 및 학습된 국부적 형태 특징 정보에 기초하여 상기 입력 데이터의 클래스를 결정하는 클래스 결정부
    를 포함하는 데이터 인식 장치.
PCT/KR2014/010789 2013-11-11 2014-11-11 인식기 학습 방법 및 장치, 데이터 인식 방법 및 장치 WO2015069087A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/030,520 US20160275415A1 (en) 2013-11-11 2014-11-11 Reader learning method and device, data recognition method and device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2013-0136474 2013-11-11
KR1020130136474A KR102190484B1 (ko) 2013-11-11 2013-11-11 인식기 학습 방법 및 장치, 데이터 인식 방법 및 장치

Publications (1)

Publication Number Publication Date
WO2015069087A1 true WO2015069087A1 (ko) 2015-05-14

Family

ID=53041777

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2014/010789 WO2015069087A1 (ko) 2013-11-11 2014-11-11 인식기 학습 방법 및 장치, 데이터 인식 방법 및 장치

Country Status (3)

Country Link
US (1) US20160275415A1 (ko)
KR (1) KR102190484B1 (ko)
WO (1) WO2015069087A1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104751198B (zh) * 2013-12-27 2018-04-27 华为技术有限公司 图像中的目标物的识别方法及装置
KR102147361B1 (ko) * 2015-09-18 2020-08-24 삼성전자주식회사 객체 인식 장치 및 방법, 객체 인식 모델 학습 장치 및 방법
US10275684B2 (en) * 2015-11-04 2019-04-30 Samsung Electronics Co., Ltd. Authentication method and apparatus, and method and apparatus for training a recognizer
KR102450374B1 (ko) 2016-11-17 2022-10-04 삼성전자주식회사 데이터 인식 및 트레이닝 장치 및 방법
KR102481885B1 (ko) * 2017-09-08 2022-12-28 삼성전자주식회사 클래스 인식을 위한 뉴럴 네트워크 학습 방법 및 디바이스
KR102532748B1 (ko) 2017-09-08 2023-05-16 삼성전자주식회사 뉴럴 네트워크 학습 방법 및 장치
KR102260976B1 (ko) * 2017-10-30 2021-06-04 현대모비스 주식회사 객체 오인식 제거기 생성 장치 및 방법
KR102100204B1 (ko) * 2017-10-31 2020-04-13 삼성에스디에스 주식회사 기계 학습 기반의 분류 방법 및 그 장치
FR3074123A1 (fr) * 2018-05-29 2019-05-31 Continental Automotive France Evaluation d'un style de conduite d'un conducteur d'un vehicule routier en mouvement par apprentissage automatique
DE112018007776T5 (de) * 2018-07-31 2021-04-15 Mitsubishi Electric Corporation Informationsverarbeitungsvorrichtung, programm und informationsverarbeitungsverfahren
KR102124171B1 (ko) * 2018-10-01 2020-06-17 인하대학교 산학협력단 엔트로피 기반 신경망(Neural Networks) 가지치기 방법 및 시스템
KR102005874B1 (ko) * 2018-11-09 2019-10-01 박승준 인공신경망 기반 부동산 시장 분석 장치 및 방법
US11615303B2 (en) 2019-02-25 2023-03-28 Samsung Electronics Co., Ltd. Electronic device for classifying classes, electronic device for providing classification model for classifying classes, and method for operating the same
US11157813B1 (en) * 2020-04-24 2021-10-26 StradVision, Inc. Method and device for on-vehicle active learning to be used for training perception network of autonomous vehicle
WO2021220365A1 (ja) * 2020-04-27 2021-11-04 日本電気株式会社 画像分類装置、画像分類方法、およびプログラム
KR102422962B1 (ko) * 2021-07-26 2022-07-20 주식회사 크라우드웍스 다중 인공지능 모델의 연속 처리 구조에 기반한 이미지 자동 분류 및 처리 방법, 그리고 이를 실행시키기 위해 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07244714A (ja) * 1994-03-03 1995-09-19 Omron Corp 物体検出装置
JP2004536367A (ja) * 2001-01-23 2004-12-02 バイオウルフ テクノロジーズ エルエルスィー コンピュータ利用画像分析
KR20060063599A (ko) * 2004-12-07 2006-06-12 한국전자통신연구원 사용자 인식 시스템 및 그 방법
US20130294651A1 (en) * 2010-12-29 2013-11-07 Thomson Licensing System and method for gesture recognition

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8111923B2 (en) * 2008-08-14 2012-02-07 Xerox Corporation System and method for object class localization and semantic class based image segmentation
US8718380B2 (en) * 2011-02-14 2014-05-06 Mitsubishi Electric Research Laboratories, Inc. Representing object shapes using radial basis function support vector machine classification

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07244714A (ja) * 1994-03-03 1995-09-19 Omron Corp 物体検出装置
JP2004536367A (ja) * 2001-01-23 2004-12-02 バイオウルフ テクノロジーズ エルエルスィー コンピュータ利用画像分析
KR20060063599A (ko) * 2004-12-07 2006-06-12 한국전자통신연구원 사용자 인식 시스템 및 그 방법
US20130294651A1 (en) * 2010-12-29 2013-11-07 Thomson Licensing System and method for gesture recognition

Also Published As

Publication number Publication date
KR102190484B1 (ko) 2020-12-11
US20160275415A1 (en) 2016-09-22
KR20150054258A (ko) 2015-05-20

Similar Documents

Publication Publication Date Title
WO2015069087A1 (ko) 인식기 학습 방법 및 장치, 데이터 인식 방법 및 장치
WO2020159232A1 (en) Method, apparatus, electronic device and computer readable storage medium for image searching
US10002290B2 (en) Learning device and learning method for object detection
WO2019098449A1 (ko) 메트릭 학습 기반의 데이터 분류와 관련된 장치 및 그 방법
WO2011096651A2 (ko) 얼굴 식별 방법 및 그 장치
JP4777059B2 (ja) 画像検索装置および画像検索方法
WO2019031714A1 (ko) 객체를 인식하는 방법 및 장치
WO2015115681A1 (ko) 표정 동작사전을 이용한 표정인식 방법 및 장치
EP3735662A1 (en) Method of performing learning of deep neural network and apparatus thereof
WO2019059505A1 (ko) 객체를 인식하는 방법 및 장치
KR101917354B1 (ko) 모바일 환경 객체 신뢰도 평가와 학습을 통한 융합 객체 추적 시스템 및 방법
WO2014007586A1 (en) Apparatus and method for performing visual search
WO2023008884A1 (ko) 다중 인공지능 모델의 연속 처리 구조에 기반한 이미지 자동 분류 및 처리 방법, 그리고 이를 실행시키기 위해 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램
KR102261054B1 (ko) 카메라에 연결되는 고속 얼굴 인식 장치
WO2019050297A1 (ko) 뉴럴 네트워크 학습 방법 및 장치
WO2022240029A1 (ko) 반려동물 식별 시스템 및 그 방법
Han et al. Multilinear supervised neighborhood embedding of a local descriptor tensor for scene/object recognition
WO2020130260A1 (en) Mobile terminal and method of operating the same
WO2020080734A1 (ko) 얼굴 인식 방법 및 얼굴 인식 장치
WO2019245320A1 (ko) 이미지 센서와 복수의 지자기 센서를 융합하여 위치 보정하는 이동 로봇 장치 및 제어 방법
WO2023224430A1 (en) Method and apparatus for on-device personalised analysis using a machine learning model
WO2017099292A1 (ko) 물체-행동 관계 모델에 기반한 행동 인식 방법 및 그 장치
WO2023167530A1 (en) Method for classifying images using novel classes
WO2012053811A2 (ko) 텐서 보팅에 기반을 둔 컬러 클러스터링 시스템 및 그 방법
Marée et al. Decision trees and random subwindows for object recognition

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: 14859681

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15030520

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: 14859681

Country of ref document: EP

Kind code of ref document: A1