WO2022145089A1 - 情報処理装置、情報処理方法及び非一時的なコンピュータ可読媒体 - Google Patents

情報処理装置、情報処理方法及び非一時的なコンピュータ可読媒体 Download PDF

Info

Publication number
WO2022145089A1
WO2022145089A1 PCT/JP2021/031882 JP2021031882W WO2022145089A1 WO 2022145089 A1 WO2022145089 A1 WO 2022145089A1 JP 2021031882 W JP2021031882 W JP 2021031882W WO 2022145089 A1 WO2022145089 A1 WO 2022145089A1
Authority
WO
WIPO (PCT)
Prior art keywords
cluster
learning
score
learning result
clusters
Prior art date
Application number
PCT/JP2021/031882
Other languages
English (en)
French (fr)
Inventor
修 長谷川
洸輔 井加田
Original Assignee
Soinn株式会社
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 Soinn株式会社 filed Critical Soinn株式会社
Priority to JP2022572907A priority Critical patent/JP7511278B2/ja
Publication of WO2022145089A1 publication Critical patent/WO2022145089A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Definitions

  • the present invention relates to an information processing device, an information processing method and a program, for example, an information processing device, an information processing method and a program that learns an input distribution structure for an input vector and clusters the input distribution structure.
  • clustering methods that extract the input distribution structure of input data and classify it into classes from the input distribution structure have been researched and developed.
  • a well-known technique for example, the k-means method, is non-hierarchical clustering, which uses the average of clusters to create an arbitrary specified number of clusters.
  • the k-means clustering method is a popular clustering method that is a simple algorithm and has high calculation efficiency.
  • SOINN Self-Organizing Incremental Neural Network
  • Patent Documents 1 and 2 a method called a self-organizing neural network
  • SOINN can learn non-stationary inputs by autonomously managing the number of nodes, and has many advantages such as being able to extract an appropriate number of classes and topological structure even for classes with complicated distribution shapes.
  • SOINN for example, in pattern recognition, after learning a class of hiragana characters, it is possible to additionally learn a class of katakana characters.
  • FIG. 24 shows input data to be learned. In this input data, there are two portions in which the two-dimensional input vector is distributed in an arc shape.
  • FIG. 25 shows an example of a plurality of learning results generated by differences in the input order and parameters of the input vectors when the input data of FIG. 24 is learned by SOINN.
  • the present invention has been made in view of the above circumstances, and provides an information processing device, an information processing method, and a program capable of clustering that more accurately reflects the structure of input data while reducing human work.
  • the purpose is.
  • the information processing apparatus uses the same input vector in an information processing apparatus that learns an input distribution structure of a plurality of input vectors as a network structure including a plurality of nodes described by a multidimensional vector.
  • an information processing apparatus that learns an input distribution structure of a plurality of input vectors as a network structure including a plurality of nodes described by a multidimensional vector.
  • between two clusters selected one from each of the two learning results.
  • the distance matrix calculation unit that calculates the distance matrix indicating the distance between the node belonging to one cluster and the node belonging to the other cluster, and the minimum value of each column and each row for each distance matrix are acquired.
  • Each learning result based on the evaluation index calculation unit that calculates the evaluation index for each distance matrix based on the number of the acquired minimum values that satisfy the predetermined conditions, and the evaluation index calculated for all the distance matrices.
  • a score calculation unit that calculates a score indicating the degree of similarity to clusters of learning results other than the learning result of interest, and each cluster of each learning result calculated by the score calculation unit. It has a learning result selection unit that selects the final learning result from a plurality of learning results in the first term based on the score of.
  • the information processing device is the above-mentioned information processing device, and the score calculation unit is one from each of the two learning results based on the evaluation index calculated for all the distance matrices.
  • An evaluation index matrix composed of evaluation indexes for all combinations between two clusters selected one by one is generated, and based on the evaluation indexes included in the evaluation index matrix, one cluster included in the learning result is the other.
  • a score matrix indicating whether the learning results are similar to the clusters of the learning results is calculated, a score matrix including the scores for the clusters belonging to all the learning results is generated, and the learning result selection unit is based on the score matrix. It is desirable to select the final learning result from the learning results of.
  • the information processing apparatus is the above-mentioned information processing apparatus, and the evaluation index calculation unit obtains and obtains an average distance between nodes belonging to each of the two clusters. It is desirable to obtain the average value of the two average distances and calculate the evaluation index for each distance matrix based on the number of the minimum values of each column and each row of each distance matrix that are equal to or greater than the average value.
  • the information processing apparatus is the above-mentioned information processing apparatus, and the evaluation index is the minimum value of each column and each row of each distance matrix, which is equal to or higher than the average value. It is desirable that the number is divided by the total number of nodes belonging to the two clusters.
  • the information processing device is the above-mentioned information processing device, and the score calculation unit compares each evaluation index included in the evaluation index matrix with a threshold value, and scores based on the comparison result. It is desirable to calculate the total score of each cluster.
  • the information processing apparatus is the above-mentioned information processing apparatus, and the learning result selection unit acquires and acquires the minimum value among the total scores of the clusters belonging to each learning result. It is desirable to select the learning result corresponding to the maximum value among the minimum values.
  • the information processing apparatus is the above-mentioned information processing apparatus, and the learning result selection unit is based on the score matrix, and a plurality of non-overlapping clusters from the plurality of learning result clusters. It is desirable to select to select the final learning result composed of the selected clusters.
  • the information processing device is the above-mentioned information processing device, and the learning result selection unit obtains a learning result of one of the plurality of learning results based on the score matrix. It is desirable to select it as the final learning result.
  • the information processing apparatus is the above-mentioned information processing apparatus, and further has a deletion processing unit that performs a process of deleting a cluster from each learning result, and the deletion processing unit further includes each learning.
  • the score sorting units that sort the clusters belonging to the results in the order of the scores
  • the reference cluster selection unit that selects the cluster with the highest score as the reference cluster, and the clusters that have a lower score than the reference cluster from the sorted clusters.
  • the target cluster selection unit that selects the cluster with the highest score as the target cluster, the judgment value calculation unit that calculates the judgment value used for the cluster judgment based on the reference cluster and the target cluster, and the judgment value calculation unit based on the judgment value. It is desirable to have a cluster determination unit that selects the cluster to be deleted and a cluster deletion unit that deletes the cluster to be deleted.
  • the information processing apparatus is the above-mentioned information processing apparatus, and the distance matrix calculation unit has the number of rows of the reference cluster and the target cluster equal to the number of nodes of the reference cluster.
  • the distance matrix having the number of columns corresponding to the number of nodes of the target cluster is calculated, and the evaluation index calculation unit calculates the minimum value of each column and each row of the distance matrix calculated for the reference cluster and the target cluster.
  • the average distance between the nodes belonging to the reference cluster and the target cluster was obtained, the average value of the two average distances obtained was obtained, and the distance calculated for the reference cluster and the target cluster was calculated.
  • the first value which is the number of the minimum values in each row of the matrix that is equal to or greater than the mean value
  • the second value which is the number of the minimum values in each column of the distance matrix that are equal to or greater than the average value.
  • the value and the value are counted, and the determination value calculation unit divides the first value by the number of nodes of the reference cluster and the second value by the number of nodes of the reference cluster.
  • the cluster determination unit selects the target cluster as the deletion target cluster. It is desirable that the cluster deletion unit deletes the deletion target cluster.
  • the information processing apparatus is the above-mentioned information processing apparatus, and when the deletion processing unit deletes the deletion target cluster, or when the cluster determination unit deletes the first and second clusters.
  • the target cluster selection unit selects the cluster having the next lowest score after the target cluster as a new target cluster, and the deletion processing unit uses the reference. It is desirable to perform a process of deleting a cluster based on the cluster and the new target cluster.
  • the information processing apparatus is the above-mentioned information processing apparatus, and when there is no cluster having the next lowest score after the target cluster, the reference cluster selection unit may be a reference cluster other than the reference cluster. It is desirable that the cluster with the lowest score next to the reference cluster is selected as the new reference cluster, and the deletion processing unit deletes the cluster based on the new reference cluster.
  • the information processing apparatus is the above-mentioned information processing apparatus, and when there is no cluster having the lowest score next to the reference cluster, the deletion processing unit ends the process of deleting the cluster. It is desirable to do.
  • the information processing method is an information processing method for learning an input distribution structure of a plurality of input vectors as a network structure including a plurality of nodes described by a multidimensional vector, and is a distance matrix.
  • a distance matrix showing the distance between the node belonging to one cluster and the node belonging to the other cluster is calculated, and the evaluation index calculation unit calculates each distance matrix.
  • the minimum values of the columns and each row were acquired, the evaluation index for each distance matrix was calculated based on the number of the acquired minimum values that satisfied the predetermined conditions, and the score calculation unit calculated all the distance matrices. Based on the evaluation index, for each cluster of each learning result, a score indicating the degree of similarity to the cluster of other learning results other than the learning result of interest is calculated, and the learning result selection unit calculates the score.
  • the final learning result is selected from a plurality of learning results in the first semester based on the score of each cluster of each learning result calculated in the section.
  • the program according to the embodiment of the present invention is a program that causes a computer to execute a process of learning an input distribution structure of a plurality of input vectors as a network structure including a plurality of nodes described by a multidimensional vector.
  • a process of learning an input distribution structure of a plurality of input vectors as a network structure including a plurality of nodes described by a multidimensional vector.
  • two learning results contained in a plurality of learning results having different input distribution structures obtained as a result of learning the same input vector under different conditions one was selected from each of the two learning results.
  • the process of calculating the distance matrix showing the distance between the node belonging to one cluster and the node belonging to the other cluster, and getting the minimum value of each column and each row for each distance matrix.
  • the process of selecting the final learning result from the learning results of is performed by the computer.
  • an information processing device an information processing method and a program capable of clustering that more accurately reflects the structure of input data while reducing human work.
  • FIG. It is a figure which shows an example of the system configuration for realizing the information processing apparatus which concerns on Embodiment 1.
  • FIG. It is a figure which shows the distribution of the input vector in the input data. It is a figure which shows the learning result generated by the k-means method and SOINN using the input data of FIG. It is a figure which shows the example of 5 different learning results generated by the input order of the input vector, and the difference of a parameter when the same input data is trained. It is a figure which shows typically the basic structure of the information processing apparatus which concerns on Embodiment 1.
  • FIG. It is a figure which shows the structure of the information processing apparatus which concerns on Embodiment 1 in more detail.
  • FIG. It is a flowchart of the learning result selection operation of the information processing apparatus which concerns on Embodiment 1.
  • FIG. It is a figure which shows the example of the score matrix obtained from the five learning results shown in FIG. It is a figure which shows the example of four different learning results generated by the input order of the input vector, and the difference of a parameter when the input data of FIG. 2 is trained. It is a figure which shows typically the functional structure of the information processing apparatus which concerns on Embodiment 2.
  • FIG. It is a figure which shows the example of the score matrix obtained from the four learning results shown in FIG. It is a figure which shows the example which sorted the cluster based on the score matrix of FIG.
  • FIG. 24 It is a figure which shows the transition of the cluster deletion processing which concerns on Embodiment 2. It is a figure which shows the example of the score matrix after the cluster deletion. It is a figure which shows the final learning result including the cluster selected based on the score matrix of FIG. It is a figure which shows the example which learned only a part of clusters with respect to the input data shown in FIG. 24. It is a figure which shows the score matrix in the case of FIG. It is a figure which shows typically the structure of the information processing apparatus which concerns on Embodiment 3. FIG. It is a flowchart of the learning result deletion processing in the information processing apparatus which concerns on Embodiment 3. FIG. It is a figure which shows the example which sorted the cluster based on the score matrix of FIG.
  • FIG. 1 is a diagram showing an example of a system configuration for realizing the information processing apparatus according to the first embodiment.
  • the information processing device 100 can be realized by a computer 10 such as a dedicated computer or a personal computer (PC).
  • the number of computers does not have to be physically single, and may be multiple when performing distributed processing.
  • the computer 10 has a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, and a RAM (Random Access Memory) 13, which are connected to each other via a bus 14. There is.
  • the description of the OS software for operating the computer is omitted, it is assumed that the computer that constructs this information processing device also has it.
  • the input / output interface 15 is also connected to the bus 14.
  • the input / output interface 15 includes, for example, an input unit 16 including a keyboard, a mouse, and a sensor, a display including a CRT and an LCD, an output unit 17 including headphones and speakers, and a storage unit 18 including a hard disk.
  • a communication unit 19 composed of a modem, a terminal adapter, etc. is connected.
  • the CPU 11 executes various processes according to various programs stored in the ROM 12 or various programs loaded from the storage unit 18 into the RAM 13, and in the present embodiment, for example, processes each part of the information processing apparatus 100 described later. ..
  • a GPU Graphics Processing Unit
  • the GPU is suitable for applications in which routine processing is performed in parallel, and by applying it to learning processing or the like described later, it is possible to improve the processing speed as compared with the CPU 11.
  • the RAM 13 also appropriately stores data and the like necessary for the CPU 11 and the GPU to execute various processes.
  • the communication unit 19 performs communication processing via the Internet (not shown), transmits data provided by the CPU 11, and outputs data received from the communication partner to the CPU 11, RAM 13, and storage unit 18.
  • the storage unit 18 communicates with the CPU 11 and stores / erases information.
  • the communication unit 19 also performs communication processing of an analog signal or a digital signal with another device.
  • the input / output interface 15 also requires a computer program to which a drive 20 is connected as needed, and for example, a magnetic disk 20A, an optical disk 20B, a flexible disk 20C, a semiconductor memory 20D, or the like is appropriately mounted and read from them. It is installed in the storage unit 18 according to the above.
  • the information processing apparatus 100 has a node described by an n (n is an integer of 1 or more) dimensional vector, and the information of the node is stored in a storage unit such as a RAM 13.
  • the input data is input as an n-dimensional input vector.
  • the input vector is stored in a temporary storage unit (for example, RAM 13).
  • the information processing apparatus 100 is configured to select a learning result that appropriately reflects the structure of the input data by performing the following processing from a plurality of different learning results.
  • Each of the learning results is a clustering result composed of a plurality of nodes and information indicating the cluster to which each node belongs (for example, a cluster label), and is a neural network generated by, for example, the above-mentioned E-SOINN or LB-SOINN.
  • the input data may be clustered based on an unsupervised clustering method such as the k-means method, and some of the input data divided into clusters may be generated as nodes.
  • FIG. 2 shows the distribution of the input vector of the input data.
  • FIG. 3 shows the learning results generated by the k-means method and SOINN using the input data of FIG.
  • the input data is divided into four clusters and distributed, and three clusters are close to each other, and the boundary is obscured by noise.
  • this input data is trained by the k-means method and SOINN, it can be seen that similar four clusters can be detected, although the distribution of nodes in the training results is slightly different due to the difference in the methods.
  • FIG. 4 shows an example of five different learning results generated by the difference in the input order and parameters of the input vector when the same input data is learned.
  • the same input data as the input data shown in FIG. 24 was used.
  • the learning results 1 to 5 differ in the number and shape of the clusters.
  • the cluster 0 of the learning result 1 is close to the cluster 0 of the learning result 2 and the cluster 0 of the learning result 5, and is considered to be the same.
  • the frequency with which the cluster that the input data really has appears as a result is the input order, learning method and parameters. It is considered to be higher than the frequency at which noise-like clusters appear due to the influence of such factors. Therefore, it can be considered that an appropriate cluster can be determined based on the frequency of appearance of clusters considered to be the same in a plurality of learning results. In this embodiment, a process of selecting an appropriate learning result based on the appearance frequency of each cluster in a plurality of learning results will be described.
  • FIG. 5 schematically shows the basic configuration of the information processing apparatus 100 according to the first embodiment.
  • FIG. 6 shows in more detail the configuration of the information processing apparatus 100 according to the first embodiment.
  • FIG. 7 shows a flowchart of the learning result selection operation of the information processing apparatus 100 according to the first embodiment.
  • the information processing apparatus 100 has a distance matrix calculation unit 1, an evaluation index calculation unit 2, a score calculation unit 3, and a learning result selection unit 4.
  • the evaluation index calculation unit 2 has a calculation unit 2A and an evaluation index matrix generation unit 2B.
  • the score calculation unit 3 has a calculation unit 3A and a score matrix generation unit 3B.
  • Step S1 Distance matrix calculation The distance matrix calculation unit 1 calculates the distance matrix D based on the following steps S11 to S13.
  • Step S11 The distance matrix calculation unit 1 selects arbitrary two learning results SA and SB from a plurality of learning results (assuming two or more r pieces).
  • Step S12 The distance matrix calculation unit 1 selects any one cluster A from the p clusters CA1 to CAp included in the learning result SA. Any one cluster B is selected from the q clusters CB1 to CBq included in the learning result SB.
  • Step S13 The distance matrix calculation unit 1 is a combination of the nodes a1 to am (ai, 1 ⁇ i ⁇ m) included in the cluster A and the nodes b1 to bn (bj, 1 ⁇ j ⁇ n) included in the cluster B.
  • the distance daibj between the nodes is calculated for all, and the distance matrix D of m rows and n columns is calculated.
  • Step S2 Calculation of evaluation index
  • the calculation unit 2A of the evaluation index calculation unit 2 calculates the evaluation index based on the following steps S21 to S25.
  • Step S21 The calculation unit 2A acquires the minimum value min ai (that is, min a1 to min am ) for each row ( daib1 to daibn ) of the distance matrix D, and each column ( da1bj to dambj ) of the distance matrix D. ), The minimum value minb j (that is, min b1 to min bn ) is acquired.
  • Step S22 The calculation unit 2A calculates the average distance dmean between the nodes belonging to the same cluster. Since dmean is an average distance between nodes identified as the same cluster, it can be considered as an index that can be identified as a different cluster if it is equal to or more than this average value, and can be identified as the same cluster if it is shorter than this.
  • the mean can be described as follows, for example. In the equation [2], di is the minimum value of the distance between the node i and the node included in the cluster to which the node i belongs.
  • the mean of the equation [2] is an example, and may be defined as the following equation [3], for example.
  • the mean may be the larger value or the smaller value among the values represented by the following equations [4] and [5].
  • different d -means may be prepared and used properly for the minimum values min a1 to min am in each row and the minimum values min b1 to min bn in each column.
  • the mean calculated only by the cluster A may be used.
  • the mean calculated only by the cluster B may be used.
  • the learning result including a plurality of nodes has been described, but when the input data is learned by SOINN or the like, the learning result includes a plurality of nodes and a plurality of edges connecting the two nodes. Become. In this way, when edges exist between nodes, it is desirable to use the average length of edges belonging to the same cluster as the domain . Edges represent relationships between nodes, and edge lengths represent their similarities, so by using edges, the distance to nodes that happen to be in the vicinity due to the influence of noise can be calculated as mean . It can be prevented from being used.
  • the arithmetic mean (arithmetic mean) is used as the average length, but the present invention is not limited to this as long as the central tendency of the distance distribution between neighboring nodes can be shown numerically.
  • another mean index such as squared mean, synergistic mean, harmonic mean may be used as the mean length, or another statistical representative value such as median or mode may be used.
  • the "average distance" will be used as it includes the above-mentioned average index and statistical representative value in addition to the arithmetic mean.
  • Step S23 The calculation unit 2A counts the number NUMa of the minimum values min a1 to min am of each row having an average distance d mean or more, and has an average distance d mean or more among the minimum values min b1 to min bn of each column. The number of things NUMb is counted.
  • Step S24 The calculation unit 2A calculates the value obtained by dividing the sum of the acquired numbers NUMa and NUMb by the total number of nodes (m + n) of the clusters A and B as the evaluation index ES.
  • the number of nodes that are not close to each other between the two clusters is detected by counting the number of the acquired minimum values having an average value of dmean or more. Further, by dividing the number of nodes that are not approximated by the equation [8] by the total number of nodes in the two clusters, the ratio of the number of nodes that are not approximated to the total number of nodes is calculated. That is, the evaluation index ES is a value indicating the degree of dissimilarity, which indicates that the two clusters are not similar when the value is large and the two clusters are similar when the value is small. It can be said that there is.
  • the distance matrix calculation unit 1 includes any one of p clusters CA1 to CAp included in the learning result SA and any one of q clusters CB1 to CBq included in the learning result SB. Execute for all combinations of. Then, the calculation unit 2A calculates the evaluation index for all combinations of the two clusters.
  • Step S25 That is, the calculation unit 2A determines whether the evaluation index has been calculated for all the combinations of the two clusters. If the evaluation index has not been calculated for all the combinations of the two clusters, the process returns to step S12. Needless to say, when returning to step S12, two clusters are newly selected so as not to be the same as the combination of the two clusters already selected. When the evaluation index is calculated for all the combinations of the two clusters, the process proceeds to step S3.
  • Step S3 Evaluation index matrix generation
  • the evaluation index matrix generation unit 2B of the evaluation index calculation unit 2 generates the evaluation index matrix EM in p-row and q-column. That is, the row number of the evaluation exponential matrix EM indicates the number of the cluster included in the learning result SA, and the column number indicates the number of the cluster included in the learning result SB.
  • Step S4 Score calculation The calculation unit 3A of the score calculation unit 3 calculates the score based on the following steps S41 and S42.
  • Step S41 The calculation unit 3A compares each evaluation index included in the evaluation index matrix EM with the threshold value TH, and gives a high score to both clusters constituting the evaluation index ES equal to or less than the threshold value TH (for example, score +1). A low score (eg, score 0) is given to both clusters constituting the evaluation index ES larger than the threshold (not similar). Then, the total score of each cluster (CA1 to CAp) of the learning result SA is calculated. In other words, the total score given to each row (ES i1 , ..., SE iq ) of the evaluation exponential matrix EM is calculated for each row. The total score of (ES i1 , ..., SE iq ) is the score of the cluster CAi.
  • the total score of each cluster (CB1 to CBq) of the learning result SB is calculated.
  • the total score given to each column (ES 1j , ..., SE pj ) of the evaluation exponential matrix EM is calculated for each column.
  • the total score of (ES 1j , ..., SE pj ) is the score of the cluster CBj.
  • the score calculation method is not limited to this, for example, those having a threshold value of TH or less and having the lowest evaluation index ES in each row (most similar) and those having the lowest evaluation index ES in each column (most often). Applications such as adding a high score to (similar) may be added.
  • the above total score is calculated for all combinations of any two learning results selected from a plurality of learning results. That is, the distance matrix calculation unit 1 and the evaluation index calculation unit 2 perform the above-mentioned distance matrix calculation, evaluation index calculation, and evaluation index matrix generation for all combinations of any two learning results selected from the plurality of learning results. .. Then, the calculation unit 3A acquires the total score for each cluster of each learning result based on these calculation results.
  • Step S42 That is, the calculation unit 3A determines whether or not the score has been calculated for all the combinations of the two learning results. If the score has not been calculated for all the combinations of the two learning results, the process returns to step S11. Needless to say, when returning to step S11, two learning results are newly selected so as not to be the same as the combination of the two learning results already selected. When the score is calculated for all the combinations of the two learning results, the process proceeds to step S5.
  • Step S5 The score matrix generation unit 3B of the score calculation unit 3 generates an r-column score matrix SM having a cluster number as a row number, as shown in the following equation [10], based on the acquired total score.
  • the element S ij of the score matrix SM is the total score of the cluster i of the learning result j.
  • the total score of the cluster i of the learning result j calculated by the calculation unit 3A is totaled for all the combinations of the learning result j and all the other learning results.
  • there are some elements that do not exist in the score matrix SM for example, when the cluster i of the learning result j does not exist, the S ij is empty and does not participate in the calculation or the like.
  • FIG. 8 shows an example of a score matrix obtained from the five learning results shown in FIG.
  • the maximum number of clusters is 3, and for the sake of simplicity, the matrix components (scores) are shown in tabular form.
  • Step S6 Learning result selection
  • the learning result selection unit 4 selects the final learning result from a plurality of learning results (here, learning results 1 to 5) based on the following steps S61 and S62.
  • Step S61 The learning result selection unit 4 refers to the score matrix SM and acquires the minimum scores Smin1 to Sminr for each learning result.
  • Step S62 The learning result selection unit 4 selects the learning result having the maximum value among the acquired minimum scores Smin1 to Sminr as the final learning result to be adopted. In other words, the learning result selection unit 4 extracts the scores of the clusters that are least similar to the clusters included in the other learning results for each learning result, and then selects the learning results having the clusters that are most similar to the clusters. It is selected as the final learning result.
  • the learning result selection unit 4 selects the learning result 5 as the final learning result.
  • the number of clusters is two, which is the same as that of the input data, and it can be understood that the learning result 5 is suitable as a typical final learning result of the input data.
  • the minimum score will be the same for two or more learning results.
  • the final learning result may be selected based on any rule, for example, a learning result having the smallest number and a learning result having the largest number.
  • the scores of all the clusters may be totaled in each learning result having the same minimum score, and the scores may be compared to select the maximum learning result. This makes it possible to select a learning result having a relatively high score. It was
  • the learning result that takes the maximum value among the minimum scores included in each learning result is set as the final learning result, but the selection of the final learning result is not limited to this.
  • the scores of all clusters are totaled in each learning result, the learning results whose total score is equal to or higher than a predetermined value are selected, and the learning result which takes the maximum value among the minimum scores included in each selected learning result is obtained. It may be selected as the final learning result.
  • by setting a threshold value for the total score it is possible to select a learning result having a cluster with a relatively high score.
  • the final learning result may include clusters with relatively low scores
  • the scores of all the clusters are totaled in each learning result, and the learning result with the maximum total score is used as the final learning result. You may choose.
  • the clusters included in the final learning result may include those with a low score, but the clusters as a whole have a high score. Appropriate learning results can be obtained by the user selecting from these clusters as appropriate.
  • the equation [8] is shown as a specific example of the evaluation index ES of each cluster used by the evaluation index calculation unit 2, but the evaluation index ES is not limited to this example.
  • the evaluation index ES may be defined by the following equation [11].
  • the evaluation index ES may be defined as the degree of similarity as in the following equation [12].
  • the score calculation unit compares each evaluation index included in the evaluation index matrix EM with the threshold value, and constitutes an evaluation index ES equal to or higher than the threshold value (similar).
  • the evaluation index ES is not used.
  • the evaluation index ES can be defined in any way as long as the degree of approximation between clusters can be quantitatively shown.
  • Embodiment 2 In the second embodiment, a modified example of the learning result selection according to the first embodiment will be described.
  • the first embodiment a process of selecting an appropriate learning result based on the appearance frequency of each cluster in a plurality of learning results has been described. However, in some cases, the learning results may not be appropriate.
  • FIG. 9 shows an example of four different learning results generated by the difference in the input order and parameters of the input vector when the input data of FIG. 24 is learned. While the number of clusters of input data is two, all the learning results reflect the characteristics of the input data, but the number of clusters is three, and the result of appropriately expressing all the clusters is It turns out that there is no such thing.
  • a process of selecting an appropriate cluster and creating a learning result based on the appearance frequency of each cluster in a plurality of learning results will be described.
  • FIG. 10 schematically shows the configuration of the information processing apparatus 200 according to the second embodiment.
  • the information processing apparatus 200 has a configuration in which a deletion processing unit 7 is added to the information processing apparatus 100 according to the first embodiment.
  • the deletion processing unit 7 has a score sorting unit 71, a reference cluster selection unit 72, a target cluster selection unit 73, a determination value calculation unit 74, a cluster determination unit 75, and a cluster deletion unit 76, and has a distance matrix calculation unit 1 and an evaluation index. Both the calculation unit 2 perform the deletion processing of the duplicate cluster.
  • FIG. 11 shows a flowchart of the cluster deletion process in the information processing apparatus 200 according to the second embodiment.
  • the cluster deletion process step S7 is inserted between steps S5 and S6 in FIG. 7, and includes the following steps S701 to S713.
  • Step S701 The score sorting unit 71 sorts all clusters in the order of scores, for example, in descending order, based on the score matrix SM.
  • FIG. 12 shows an example of a score matrix obtained from the four learning results shown in FIG.
  • FIG. 13 shows an example of sorting clusters based on the score matrix of FIG.
  • Step S702 The reference cluster selection unit 72 selects the cluster with the highest score as the reference cluster.
  • Step S703 The target cluster selection unit 73 selects the cluster in the row one row below the reference cluster in the sorted order (FIG. 13) as the target cluster.
  • the reference cluster and the target cluster are selected so that the combination of the two clusters already selected is not the same.
  • Step S704 The distance matrix calculation unit 1 calculates the distance matrix D for the reference cluster (referred to as cluster A) and the target cluster (referred to as cluster B) in the same manner as in step S1.
  • Step S705 Similar to step S21, the evaluation index calculation unit 2 acquires the minimum value min ai (that is, min a1 to min am) for each row ( daib1 to daibn ) of the distance matrix D, and also obtains the minimum value min ai (that is, min a1 to min am ) of the distance matrix D. For each column (d a1bj to dambj ), the minimum value minb j (that is, min b1 to min bn ) is acquired.
  • Step S706 The evaluation index calculation unit 2 calculates the average distance dmean between the nodes belonging to the same cluster, as in step S22.
  • Step S707 Similar to step S23, the evaluation index calculation unit 2 counts the number NUMa of the minimum values min a1 to min am of each row having an average distance of dmean or more, and has the minimum values min b1 to min bn of each column. The number NUMb of those having an average distance of dmean or more is counted.
  • Step S708 The determination value calculation unit 74 divides the count number NUMa for each row by the number of nodes m of the cluster A to calculate the determination value RA indicating the ratio of the nodes in the cluster A that are not similar to the cluster B. Further, the determination value calculation unit 74 divides the count number NUMb for each column by the number n of the nodes of the cluster B to calculate the determination value RB indicating the ratio of the nodes in the cluster B that are not similar to the cluster A. ..
  • Step S709 The cluster determination unit 75 compares the determination values RA and RB with the predetermined threshold values THr, and when any of the determination values RA and RB is smaller than the predetermined threshold value THr, one of the clusters A and B is included in the other. Alternatively, it is determined that they match, and it is determined that the cluster B having a low score or the same score (that is, the target cluster) should be deleted.
  • Step S710 When the cluster determination unit 75 determines that the target cluster should be deleted, the cluster deletion unit 76 deletes the score of the target cluster having a low score from the score matrix SM. As will be described later, the deleted cluster cannot be selected as the final learning result.
  • the row corresponding to the deleted cluster is also deleted from the cluster sort (FIG. 13). That is, the deleted cluster is not selected as the reference cluster or the target cluster after the next processing. However, it can be used as the current target cluster for calculating the next target cluster in steps S711 and S712. That is, in the present embodiment, when it is described that "the cluster immediately below a certain cluster in the sorted order (FIG. 13) is selected", the row corresponding to the cluster deleted from the sorted order (FIG. 13) is deleted. It shall mean to select the next lower cluster in the order given.
  • Step S711 The target cluster selection unit 73 determines whether there is another cluster that can be selected as a new target cluster in the row one row below the current target cluster in the sorted order (FIG. 13).
  • Step S712 When it is determined in step S711 that there is another cluster that can be selected as a new target cluster, the target cluster selection unit 73 is one of the current target clusters in the other clusters (that is, in the sorted order (FIG. 13)). After selecting the cluster in the next row) as the new target cluster, the process returns to step S704.
  • Step S713 When it is determined in step S711 that there is no other cluster that can be selected as a new target cluster, the reference cluster selection unit 72 is placed in the row one row below the current reference cluster in the sorted order (FIG. 13). Determine if there are other clusters that remain undeleted and can be selected as new reference clusters. If it is determined that there is no cluster that can be selected as a new reference cluster, the cluster deletion process in step S7 is terminated.
  • Step S714 When it is determined in step S713 that there is a cluster that can be selected as a new reference cluster, the reference cluster selection unit 72 selects the cluster immediately below the current reference cluster in the sorted order (FIG. 13) as a new reference. After selecting as a cluster, the process returns to step S703.
  • step S7 The cluster deletion process in step S7 will be described with reference to specific examples based on the four learning results of FIG.
  • FIG. 14 shows a transition of the cluster deletion process according to the second embodiment.
  • step S7 the process is executed in descending order of the score between the reference cluster having the highest score and the target cluster. After that, the cluster with the highest score is selected as the reference cluster among the remaining remaining clusters, and the cycle in which processing is performed between the new reference cluster and the target cluster in descending order of score is the new reference cluster. Will be repeated until cannot be selected.
  • the cluster 0 of the learning result 1 having the highest score becomes the reference cluster, and the processing is executed with the other clusters. It is determined that the rows marked with * in the table of deletion transition 1 in FIG. 14 match cluster 0 of learning result 1, include cluster 0 of learning result 1, or are included in cluster 0 of learning result 1. Is to be done. Therefore, the * line is deleted.
  • Deletion transition 2 After the process shown in the deletion transition 1 is completed, the process shown in the deletion transition 2 is executed.
  • the deletion transition 2 of FIG. 14 the rows corresponding to the clusters deleted in the deletion transition 1 are excluded and displayed in the sorted order.
  • processing is executed between the cluster 1 of the learning result 3 having the highest score among the remaining clusters excluding the cluster 0 of the learning result 1 and the remaining clusters other than the cluster 0 of the learning result 1. Will be done. It is determined that the rows marked with * in the table of deletion transition 2 in FIG. 14 match the cluster 1 of the learning result 3, include the cluster 1 of the learning result 3, or are included in the cluster 1 of the learning result 3. It is a thing. Therefore, the * line is deleted.
  • FIG. 15 shows an example of the score matrix after deleting the cluster. The score of each cluster before the cluster deletion is the same as in FIG. 12, but here, the clusters marked with x are deleted by step S7.
  • Step S6 After the processing of step S7, only the clusters having no duplication are left.
  • the learning result selection unit 4 extracts only the clusters having a predetermined score threshold value or more from this and obtains the final learning result.
  • a predetermined score threshold value is 1, the cluster 0 of the learning result 1 and the cluster 1 of the learning result 3 are the final learning results.
  • the predetermined score threshold value is set to 1, but the present invention is not limited to this, and an appropriate value can be set. If the predetermined score threshold is set low, any cluster can be extracted, and if it is set high, only the clusters that appear frequently can be extracted.
  • FIG. 16 shows the final learning results including the clusters selected based on the score matrix of FIG. As shown in FIG. 16, it can be seen that the clusters appropriately represent the characteristics of the input data.
  • step S708 when either one of the determination values RA and RB is smaller than the predetermined threshold value THr in step S708, it is determined that one of the clusters A and B is included in the other, and the cluster B which is the target cluster is determined. It is determined that it should be deleted, and it is deleted. However, for example, it may be shown to the user as a dependent class along with the cluster as the final learning result.
  • Embodiment 3 In the third embodiment, an example in which the cluster deletion process of the second embodiment is further simplified and functioned as a learning result deletion process will be described.
  • FIG. 17 shows an example in which only a part of the clusters could be learned with respect to the input data shown in FIG. 24. Although the probability of the result shown in FIG. 17 is low, it may be obtained as a learning result. If the options include such inappropriate results in which learning has progressed only partially, the first embodiment may not function properly. For example, assuming a case where a plurality of learning results obtained by adding the result of FIG. 17 to the result of FIG. 4 are targeted, the score matrix at this time is shown in FIG.
  • the inappropriate learning result of FIG. 17 will be selected. Therefore, in the present embodiment, even if an inappropriate result that captures only a part of the characteristics of the input data is included, the inappropriate learning result is deleted and an appropriate learning result is obtained. The process to be selected will be described.
  • FIG. 19 schematically shows the configuration of the information processing apparatus 300 according to the third embodiment.
  • the information processing apparatus 300 has a configuration in which the deletion processing unit 7 of the information processing apparatus 200 according to the second embodiment is replaced with the deletion processing unit 8.
  • the deletion processing unit 8 has a configuration in which the cluster deletion unit 76 of the deletion processing unit 7 is replaced with the cluster exclusion unit 86, and the learning result deletion unit 87 is added. Since the other configurations of the deletion processing unit 8 are the same as those of the deletion processing unit 7, the description thereof will be omitted.
  • FIG. 20 shows a flowchart of the learning result deletion process in the information processing apparatus according to the third embodiment.
  • the learning result deletion processing step S8 is inserted between steps S5 and S6 in FIG. 7, and includes the following steps S801 to S817.
  • Steps S801 to S808 Since steps S801 to S808 are the same as steps S701 to S708 in FIG. 11, the description thereof will be omitted.
  • Step S809 The cluster determination unit 75 compares the determination values RA and RB with the predetermined threshold values THr, and determines whether or not any of the determination values RA and RB is smaller than the predetermined threshold value THr. When both the determination values RA and RB are equal to or higher than the predetermined threshold value THr, the cluster determination unit 75 determines that the cluster A and the cluster B are different clusters, and proceeds to step S811.
  • Step S810 When any of the determination values RA and RB is determined to be smaller than the predetermined threshold value THr in step S809, the cluster exclusion unit 86 includes or matches one of the clusters A and B in the other. As a result, cluster B with a low score or the same score (that is, the target cluster) is excluded from the calculation. Rows corresponding to clusters excluded from the calculation from the cluster sort are deleted and are not selected as the reference cluster or target cluster for the next processing. However, it can be used as the current target cluster for calculating the next target cluster in steps S811 and S812.
  • Steps S811 to S812 Since steps S811 to S812 are the same as steps S711 to S712 in FIG. 11, the description thereof will be omitted.
  • Step S813 The cluster determination unit 75 determines whether or not there is a learning result that does not hold a cluster common to the reference cluster.
  • the determination method is not limited to this, and for example, the determination value RA of the reference cluster, the determination value RB of each cluster (target cluster), and the threshold value THr2 different from the threshold value THr1 are compared and the determination value is compared.
  • the target cluster may be determined to be a common cluster. If there is no learning result that does not hold the reference cluster or the cluster common to the reference cluster, the cluster determination unit 75 assumes that there is no learning result to be deleted, and proceeds to step S815.
  • Step S814 When it is determined in step S813 that there is a learning result that does not hold the reference cluster or the cluster common to the reference cluster, the learning result deletion unit 87 considers that the learning result should be deleted and the learning result. To delete. After that, the process proceeds to step S815. In addition, the rows corresponding to all clusters held by the deleted learning results in the sorted order are excluded from the calculation.
  • Step S815 The reference cluster selection unit 72 determines whether there is another cluster that can be selected as a new reference cluster that remains without being deleted in the row immediately below the current reference cluster in the sorted order. .. If it is determined that there is no cluster that can be selected as a new reference cluster, the reference cluster selection unit 72 ends the process of step S8.
  • Step S816 When it is determined in step S815 that there is a cluster that can be selected as a new reference cluster, the reference cluster selection unit 72 determines that the score of the cluster in the row immediately below the current reference cluster in the sorted order is a predetermined score threshold value. It is determined whether or not it is THp or more. When the score of the cluster one row below the reference cluster is smaller than the predetermined score threshold THp, the reference cluster selection unit 72 ends the process of step S8.
  • Step S817 When it is determined in step S816 that there is a cluster that can be selected as a new reference cluster, the reference cluster selection unit 72 selects the cluster immediately below the current reference cluster in the sorted order as the new reference cluster. After that, the process returns to step S803.
  • step S8 The cluster deletion process in step S8 will be described by showing a specific example based on the six learning results obtained by adding the learning results of FIG. 17 to the five learning results of FIG.
  • the score matrix is shown in FIG. FIG. 21 shows an example of sorting clusters based on the score matrix of FIG.
  • FIG. 22 shows the transition of the cluster deletion process according to the third embodiment.
  • the two clusters are selected in descending order of the score for the clusters other than the clusters that have already been deleted, and the deletion process is repeated for the two selected clusters.
  • Deletion transition A the process is executed between the cluster 0 of the learning result 1 having the highest score and the other clusters.
  • the row marked with ** in the table of deletion transition 1 in FIG. 22 indicates the reference cluster, and in this case, the cluster 0 of the learning result 1 is the reference cluster.
  • Rows marked with * are clusters that match the reference cluster, contain the reference cluster, or are determined to be included in the reference cluster. Since there is no learning result to which ** or * is not given, neither learning result is deleted here.
  • the * row is excluded from the sorted table, it is excluded from the deletion processing options (that is, the options as the reference cluster and the target cluster).
  • Deletion transition B After the process shown in the deletion transition A is completed, the process shown in the deletion transition B is executed.
  • the rows corresponding to the clusters excluded from the calculation in the deletion transition A in the sorted order that is, the rows marked with * in the deletion transition A
  • the cluster 1 of the learning result 3 having the highest score among the clusters of the learning result 1 excluding the cluster 0 becomes the reference cluster, and the processing is executed with the remaining clusters other than the cluster 0 of the learning result 1. That is, the cluster 1 of the learning result 3 in the row marked with ** in the table of deletion transition B in FIG. 22 matches the reference cluster, and the row marked with * matches the reference cluster, includes the reference cluster, or is the reference.
  • Deletion transition C After the process shown in the deletion transition B is completed, the process shown in the deletion transition C is executed.
  • the rows corresponding to the clusters excluded from the calculation in the deletion transitions A and B in the sorted order that is, the rows marked with * in the deletion transitions A and B) are excluded and displayed. .. Since there is no unprocessed cluster combination in the state of deletion transition C, the learning result deletion processing ends here.
  • FIG. 23 shows an example of the score matrix after the learning result is deleted. It can be understood that the learning result 6 marked with x has been deleted by step S8.
  • Step S6 When the process of step S8 is completed for all the sorted clusters, the learning result selection unit 4 selects the final learning result based on the score matrix SM, as in the case of FIG. According to the score matrix of FIG. 23, it can be understood that the learning result selection unit 4 selects the learning result 5 as the final learning result, as in the first embodiment.
  • any distance scale such as Euclidean distance, cosine distance, Manhattan distance, and fractional distance can be applied as the distance scale between nodes.
  • Euclidean distance is used when the input data is low-dimensional
  • cosine distance, Manhattan distance and fractional distance are used when the input data is high-dimensional.
  • the present invention can be applied to a plurality of results obtained from various clustering methods, it is preferable to adapt to a plurality of results obtained by one method.
  • Each clustering method has different characteristics, and in the case of input data having a complicated structure, the difference in clustering results due to the characteristics may become large. By narrowing down the clustering method to one, the characteristic difference as the method of each result is eliminated, and the effect of the present invention can be further exhibited.
  • input vectors such as SOINN are sequentially input to form an input distribution structure of the input vector with a plurality of nodes. It is desirable to implement it for the result of the method of learning as a network structure in which a plurality of sides connecting two nodes are arranged. This is because the noise nodes can be suppressed by selecting the nodes based on the frequency, and the relationship between the nodes can be grasped by the edges. Therefore, the distance between the nodes and the similarity between the clusters, which are important in the present invention, can be more accurately determined. This is because it can be calculated.
  • the magnitude determination of the two values has been described, but this is merely an example, and the case where the two values are equal in the magnitude determination of the two values may be handled as necessary. That is, the determination of whether the first value is greater than or equal to the second value or less than the second value, and whether the first value is greater than or less than the second value or less than or equal to the second value. As for the determination of, any of them may be adopted as necessary. Determining whether the first value is less than or equal to the second value or greater than the second value, and whether the first value is less than the second value or greater than or equal to the second value. Any of these may be adopted. In other words, when the magnitude of two values is determined to obtain two determination results, the case where the two values are equal may be included in any of the two determination results as necessary.
  • Non-temporary computer-readable media include various types of tangible storage media. Examples of non-temporary computer-readable media include magnetic recording media (eg, flexible disks, magnetic tapes, hard disk drives), optomagnetic recording media (eg, optomagnetic disks), CD-ROMs (Read Only Memory), CD-Rs, etc.
  • the program may also be supplied to the computer by various types of temporary computer-readable media.
  • temporary computer readable media include electrical, optical, and electromagnetic waves.
  • the temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.
  • (Appendix 1) Obtained as a result of learning the same input vector under different conditions in an information processing apparatus that learns the input distribution structure of a plurality of input vectors as a network structure including a plurality of nodes described by a multidimensional vector. For all combinations of two learning results contained in multiple learning results with different input distribution structures, all combinations between the two clusters selected one from each of the two learning results belong to one cluster.
  • a distance matrix calculation unit that calculates a distance matrix indicating the distance between a node and a node belonging to the other cluster, and a predetermined minimum value among the acquired minimum values obtained by acquiring the minimum values of each column and each row for each distance matrix.
  • An information processing apparatus having a learning result selection unit that selects a final learning result from the results.
  • the score calculation unit is composed of evaluation indexes for all combinations between two clusters selected one from each of the two learning results based on the evaluation indexes calculated for all distance matrices.
  • the evaluation index matrix is generated, and the score indicating whether the cluster included in one learning result is similar to the cluster of other learning results is calculated based on the evaluation index included in the evaluation index matrix, and all learning is performed.
  • the evaluation index calculation unit obtains the average distance between the nodes belonging to each of the two clusters, obtains the average value of the obtained two average distances, and obtains the average value of each column and each row of each distance matrix.
  • the information processing apparatus according to Appendix 2 which calculates an evaluation index for each distance matrix based on the number of the minimum values that are equal to or greater than the average value.
  • the evaluation index is a value obtained by dividing the number of the minimum values of each column and each row of each distance matrix that are equal to or more than the average value by the total number of nodes belonging to the two clusters.
  • the learning result selection unit acquires the minimum value among the total scores of the clusters belonging to each learning result, and selects the learning result corresponding to the maximum value among the acquired minimum values, Appendix 5.
  • the learning result selection unit selects a plurality of non-overlapping clusters from the plurality of learning result clusters based on the score matrix, and selects the final learning result composed of the selected clusters.
  • the information processing apparatus according to any one of Supplementary Provisions 2 to 5.
  • the learning result selection unit is described in any one of the appendices 2 to 5, which selects one learning result from the plurality of learning results as the final learning result based on the score matrix.
  • Information processing equipment
  • the deletion processing unit further has a deletion processing unit that performs processing for deleting clusters from each learning result, and the deletion processing unit has a score sorting unit that sorts clusters belonging to each learning result in the order of the scores, and the score is
  • the reference cluster selection unit that selects the highest cluster as the reference cluster
  • the target cluster selection unit that selects the cluster with the highest score among the clusters with lower scores than the reference cluster from the sorted clusters as the target cluster, and the criteria.
  • a judgment value calculation unit that calculates a judgment value used to judge a cluster based on the cluster and the target cluster, a cluster judgment unit that selects a deletion target cluster based on the judgment value, and a cluster that deletes the deletion target cluster.
  • the information processing apparatus according to any one of Supplementary note 3 to 7, which has a deletion unit.
  • the distance matrix calculation unit calculates the distance matrix having the number of rows for the number of nodes of the reference cluster and the number of columns for the number of nodes of the target cluster for the reference cluster and the target cluster. Then, the evaluation index calculation unit acquires the minimum value of each column and each row of the distance matrix calculated for the reference cluster and the target cluster, and averages between the nodes belonging to the reference cluster and the target cluster. The target distance is obtained, the average value of the two average distances obtained is obtained, and the number of the minimum values in each row of the distance matrix calculated for the reference cluster and the target cluster is equal to or greater than the average value.
  • the first value and the second value which is the number of the minimum values in each column of the distance matrix that are equal to or greater than the average value, are counted, and the determination value calculation unit uses the first value.
  • the first value and the second value were divided by the number of nodes in the reference cluster to obtain a first determination value
  • the second value was divided by the number of nodes in the reference cluster to obtain a second determination value. If any of the first and second determination values is smaller than the second threshold value, the target cluster is selected as the deletion target cluster, and the cluster deletion unit deletes the deletion target cluster, according to Appendix 9.
  • Information processing equipment is selected as the deletion target cluster, and the cluster deletion unit deletes the deletion target cluster, according to Appendix 9.
  • the reference cluster selection unit selects a cluster having the next lowest score next to the reference cluster as a new reference cluster in addition to the reference cluster.
  • Appendix 14 Further has a deletion processing unit that performs a process of deleting a learning result selected from the plurality of learnings, and the deletion processing unit includes a score sorting unit that sorts clusters belonging to each learning result in the order of the scores.
  • the reference cluster selection unit that selects the cluster with the highest score as the reference cluster
  • the target cluster selection unit that selects the cluster with the highest score among the clusters with the lowest score from the sorted clusters as the target cluster.
  • a determination value calculation unit that calculates a determination value used for determining a cluster based on the reference cluster and the target cluster, a cluster determination unit that selects a cluster based on the determination value, and the determination unit.
  • the distance matrix calculation unit calculates the distance matrix having the number of rows for the number of nodes of the reference cluster and the number of columns for the number of nodes of the target cluster for the reference cluster and the target cluster. Then, the evaluation index calculation unit acquires the minimum value of each column and each row of the distance matrix calculated for the reference cluster and the target cluster, and averages between the nodes belonging to the reference cluster and the target cluster. The target distance is obtained, the average value of the two average distances obtained is obtained, and the number of the minimum values in each row of the distance matrix calculated for the reference cluster and the target cluster is equal to or greater than the average value.
  • the first value and the second value which is the number of the minimum values in each column of the distance matrix that are equal to or greater than the average value, are counted, and the determination value calculation unit uses the first value.
  • the first and second determination values are smaller than the second threshold value, the target cluster is a cluster different from the reference cluster, and the first and second determination values are the second threshold value. If it is larger than, it is determined that the target cluster is a cluster common to the reference cluster, and if it is determined that the target cluster is a cluster different from the reference cluster, the cluster exclusion unit is the target.
  • the information processing apparatus according to Appendix 14, wherein the cluster is excluded from the learning result to which the target cluster belongs.
  • the target cluster selection unit is the target cluster selection unit.
  • a cluster having the next lowest score after the target cluster is selected as a new target cluster, and the deletion processing unit performs a process of deleting the learning result based on the reference cluster and the new target cluster.
  • the learning result deletion unit deletes the learning result having no cluster common to the reference cluster from the plurality of learning results.
  • Appendix 20 An information processing method for learning an input distribution structure of a plurality of input vectors as a network structure including a plurality of nodes described by a multidimensional vector, wherein the distance matrix calculation unit uses the same input vector under different conditions. In all combinations of two learning results contained in multiple learning results having different input distribution structures obtained as a result of learning in, all combinations between two clusters selected one from each of the two learning results. For the combination, a distance matrix showing the distance between the node belonging to one cluster and the node belonging to the other cluster is calculated, and the evaluation index calculation unit acquires the minimum value of each column and each row for each distance matrix.
  • the evaluation index for each distance matrix is calculated based on the number of the acquired minimum values that satisfy a predetermined condition, and the score calculation unit calculates each learning result based on the evaluation index calculated for all the distance matrices. For each cluster, a score indicating the degree of similarity to the cluster of learning results other than the learning result of interest is calculated, and the learning result selection unit is each of the learning results calculated by the score calculation unit. An information processing method that selects the final learning result from multiple learning results in the previous term based on the score of the cluster.
  • Appendix 21 A program that causes a computer to execute a process of learning an input distribution structure of a plurality of input vectors as a network structure including a plurality of nodes described by a multidimensional vector, and learns the same input vector under different conditions. For all combinations of two learning results contained in a plurality of learning results having different input distribution structures obtained as a result of the above, for all combinations between two clusters selected one from each of the two learning results. , The process of calculating the distance matrix indicating the distance between the node belonging to one cluster and the node belonging to the other cluster, and the minimum value of each column and each row for each distance matrix is acquired, and the acquired minimum value is used.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

距離行列算出部(1)は、複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、2つのクラスタのノード間の距離を示す距離行列を算出する。評価指数算出部(2)は、各距離行列の各列及び各行の最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出する。得点算出部(3)は、全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出する。学習結果選択部(4)は、得点算出部で算出された各学習結果の各クラスタの得点に基づいて、前期複数の学習結果から最終学習結果を選択する。

Description

情報処理装置、情報処理方法及び非一時的なコンピュータ可読媒体
 本発明は、情報処理装置、情報処理方法及びプログラムに関し、例えば入力ベクトルに対して入力分布構造を学習し、当該入力分布構造に対してクラスタリングする情報処理装置、情報処理方法及びプログラムに関する。
 入力データの入力分布構造を抽出し、その入力分布構造からクラスに分類するいわゆるクラスタリングと呼ばれる手法が多く研究、開発されている。例えばk平均法というよく知られている手法は、非階層のクラスタリングであり、クラスタの平均を用いて、任意の指定した数のクラスタを作成する。k平均法はシンプルなアルゴリズムであり、かつ計算効率が高い人気のクラスタリング手法である。
 また、自己組織化ニューラルネットワーク(SOINN:Self-Organizing Incremental Neural Network)と呼ばれる手法が提案されている(特許文献1及び2)。SOINNでは、ノード数を自律的に管理することにより非定常的な入力を学習することができ、複雑な分布形状を有するクラスに対しても適切なクラス数及び位相構造を抽出できるなど多くの利点を有する。SOINNの応用例として、例えばパターン認識においては、ひらがな文字のクラスを学習させた後に、カタカナ文字のクラスなどを追加的に学習させることができる。
特開2008-217246号公報 特開2014-164396号公報
 しかしながら、上述のようなクラスタリング手法によって入力ベクトルを学習する場合、入力ベクトルの入力順序やパラメータの相違によって、得られる学習結果が異なってしまうことが見出された。このような異なる学習結果の例について説明する。図24に、学習対象となる入力データを示す。この入力データでは、2次元の入力ベクトルが円弧状に分布した部分が2つ存在している。図25に、図24の入力データをSOINNによって学習した場合に、入力ベクトルの入力順序やパラメータの相違によって生成された複数の学習結果の例を示す。
 図25では、同じ入力データを学習したにもかかわらず、学習条件の相違によって、8つの異なる学習結果が得られた。このように、複数の異なる学習結果が得られる場合には、異なる学習結果を人で比較し、適切な学習結果を選択するといった作業が必要であり、時間がかかり、非効率性につながっていた。
 本発明は、上記の事情に鑑みて成されたものであり、人による作業を軽減しつつ、入力データの構造をより正確に反映したクラスタリングができる情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
 本発明の一実施の形態にかかる情報処理装置は、複数の入力ベクトルの入力分布構造を、多次元ベクトルで記述される複数のノードを含むネットワーク構造として学習する情報処理装置において、同じ入力ベクトルを異なる条件で学習した結果得られた、異なる入力分布構造を有する複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、一方のクラスタに属するノードと他方のクラスタに属するノードとの間の距離を示す距離行列を算出する距離行列算出部と、各距離行列について各列及び各行の最小値を取得し、取得した前記最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出する評価指数算出部と、全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出する得点算出部と、前記得点算出部で算出された各学習結果の各クラスタの得点に基づいて、前期複数の学習結果から最終学習結果を選択する学習結果選択部と、を有するものである。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記得点算出部は、全ての距離行列について算出した評価指数に基づいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについての評価指数で構成される評価指数行列を生成し、前記評価指数行列に含まれる評価指数に基づいて、1つの学習結果に含まれるクラスタが他の学習結果のクラスタに似ているかを示す得点を算出し、全ての学習結果に属するクラスタについての得点を含む得点行列を生成し、前記学習結果選択部は、前記得点行列に基づいて、前記複数の学習結果から最終学習結果を選択することが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記評価指数算出部は、前記2つのクラスタのそれぞれに属するノード間の平均的距離を求め、求めた2つの平均的距離の平均値を求め、各距離行列の各列及び各行の前記最小値のうちで、前記平均値以上のものの個数に基づいて各距離行列にかかる評価指数を算出することが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記評価指数は、各距離行列の各列及び各行の前記最小値のうちで、前記平均値以上のものの個数を、前記2つのクラスタに属するノードの総数で除算した値であることが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記得点算出部は、評価指数行列に含まれる各評価指数を閾値と比較し、比較結果に基づいて得点を与え、各クラスタの合計得点を算出することが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記学習結果選択部は、各学習結果に属するクラスタの合計得点のうちで最小値を取得し、取得した最小値のうちで最大の値に対応する学習結果を選択することが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記学習結果選択部は、前記得点行列に基づいて、前記複数の学習結果のクラスタから複数の重複しないクラスタを選択して、選択したクラスタで構成される前記最終学習結果を選択することが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記学習結果選択部は、前記得点行列に基づいて、前記複数の学習結果のうちの1つの学習結果を前記最終学習結果として選択することが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、各学習結果からクラスタを削除する処理を行う削除処理部をさらに有し、前記削除処理部は、各学習結果に属するクラスタを前記得点の順にソートする得点ソート部と、前記得点が最も高いクラスタを基準クラスタとして選択する基準クラスタ選択部と、ソートされたクラスタから前記基準クラスタより得点が低いクラスタの中で最も得点が高いクラスタを対象クラスタとして選択する対象クラスタ選択部と、前記基準クラスタ及び前記対象クラスタに基づいてクラスタの判定に用いられる判定値を算出する判定値算出部と、前記判定値に基づいて削除対象クラスタを選択するクラスタ判定部と、前記削除対象クラスタを削除するクラスタ削除部と、を有することが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記距離行列算出部は、前記基準クラスタと前記対象クラスタとについて、前記基準クラスタのノード数分の行数と前記対象クラスタのノード数分の列数とを有する前記距離行列を算出し、前記評価指数算出部は、前記基準クラスタと前記対象クラスタとについて算出した前記距離行列の各列及び各行の最小値を取得し、前記基準クラスタ及び前記対象クラスタのそれぞれに属するノード間の平均的距離を求め、求めた2つの平均的距離の平均値を求め、前記基準クラスタと前記対象クラスタとについて算出した前記距離行列の各行の前記最小値のうちで前記平均値以上のものの個数である第1の値と、前記距離行列の各列の前記最小値のうちで前記平均値以上のものの個数である第2の値と、をカウントし、前記判定値算出部は、前記第1の値を前記基準クラスタのノード数で除算した第1の判定値と、前記第2の値を前記基準クラスタのノード数で除算した第2の判定値と、を算出し、前記クラスタ判定部は、前記第1及び第2の判定値のいずれかが第2の閾値よりも小さい場合、前記対象クラスタを削除対象クラスタとして選択し、前記クラスタ削除部は、前記削除対象クラスタを削除することが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記削除処理部が前記削除対象クラスタを削除した場合、又は、前記クラスタ判定部が前記第1及び第2の判定値が第2の閾値よりも大きいと判定した場合、前記対象クラスタ選択部は、前記対象クラスタの次に得点が低いクラスタを新たな対象クラスタとして選択し、前記削除処理部は、前記基準クラスタと、前記新たな対象クラスタと、に基づいてクラスタを削除する処理を行うことが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記対象クラスタの次に得点が低いクラスタが無い場合、前記基準クラスタ選択部は、前記基準クラスタ以外に、前記基準クラスタの次に得点が低いクラスタを新たな基準クラスタとして選択し、前記削除処理部は、前記新たな基準クラスタに基づいてクラスタを削除する処理を行うことが望ましい。
 本発明の一実施の形態にかかる情報処理装置は、上記の情報処理装置であって、前記基準クラスタの次に得点が低いクラスタが無い場合、前記削除処理部は、クラスタを削除する処理を終了することが望ましい。
 本発明の一実施の形態にかかる情報処理方法は、複数の入力ベクトルの入力分布構造を、多次元ベクトルで記述される複数のノードを含むネットワーク構造として学習する情報処理方法であって、距離行列算出部が、同じ入力ベクトルを異なる条件で学習した結果得られた、異なる入力分布構造を有する複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、一方のクラスタに属するノードと他方のクラスタに属するノードとの間の距離を示す距離行列を算出し、評価指数算出部が、各距離行列について各列及び各行の最小値を取得し、取得した前記最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出し、得点算出部が、全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出し、学習結果選択部が、前記得点算出部で算出された各学習結果の各クラスタの得点に基づいて、前期複数の学習結果から最終学習結果を選択するものである。
 本発明の一実施の形態にかかるプログラムは、複数の入力ベクトルの入力分布構造を、多次元ベクトルで記述される複数のノードを含むネットワーク構造として学習する処理をコンピュータに実行させるプログラムであって、同じ入力ベクトルを異なる条件で学習した結果得られた、異なる入力分布構造を有する複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、一方のクラスタに属するノードと他方のクラスタに属するノードとの間の距離を示す距離行列を算出する処理と、各距離行列について各列及び各行の最小値を取得し、取得した前記最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出する処理と、全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出する処理と、算出された各学習結果の各クラスタの前記得点に基づいて、前期複数の学習結果から最終学習結果を選択する処理と、をコンピュータに実行させるものである。
 本発明によれば、人による作業を軽減しつつ、入力データの構造をより正確に反映したクラスタリングができる情報処理装置、情報処理方法及びプログラムを提供することができる。
実施の形態1にかかる情報処理装置を実現するためのシステム構成の一例を示す図である。 入力データでの入力ベクトルの分布を示す図である。 図2の入力データを用いてk平均法及びSOINNで生成した学習結果を示す図である。 同じ入力データを学習した場合に、入力ベクトルの入力順序やパラメータの相違によって生成された5つの異なる学習結果の例を示す図である 実施の形態1にかかる情報処理装置の基本的構成を模式的に示す図である。 実施の形態1にかかる情報処理装置の構成をより詳細に示す図である。 実施の形態1にかかる情報処理装置の学習結果選択動作のフローチャートである。 図4に示した5つの学習結果から得られた得点行列の例を示す図である。 図2の入力データを学習した場合に、入力ベクトルの入力順序やパラメータの相違によって生成された4つの異なる学習結果の例を示す図である。 実施の形態2にかかる情報処理装置の機能構成を模式的に示す図である。 実施の形態2にかかる情報処理装置でのクラスタの削除処理のフローチャートである。 図8に示した4つの学習結果から得られた得点行列の例を示す図である。 図12の得点行列に基づいてクラスタをソートした例を示す図である。 実施の形態2にかかるクラスタ削除処理の推移を示す図である。 クラスタ削除後の得点行列の例を示す図である。 図14の得点行列に基づいて選択されたクラスタを含む最終学習結果を示す図である。 図24で示した入力データに対して一部のみのクラスタしか学習できなかった例を示す図である。 図16の場合の得点行列を示す図である。 実施の形態3にかかる情報処理装置の構成を模式的に示す図である。 実施の形態3にかかる情報処理装置での学習結果削除処理のフローチャートである。 図18の得点行列に基づいてクラスタをソートした例を示す図である。 実施の形態3にかかるクラスタ削除処理の推移を示す図である。 学習結果削除後の得点行列の例を示す図である。 学習対象となる入力データを示す図である。 図24の入力データをSOINNによって学習した場合に、入力ベクトルの入力順序やパラメータの相違によって生成された複数の学習結果の例を示す図である。
 以下、図面を参照して本発明の実施の形態について説明する。各図面においては、同一要素には同一の符号が付されており、必要に応じて重複説明は省略される。
 実施の形態1
 図1は、実施の形態1にかかる情報処理装置を実現するためのシステム構成の一例を示す図である。情報処理装置100は、専用コンピュータ、パーソナルコンピュータ(PC)などのコンピュータ10により実現可能である。但し、コンピュータは、物理的に単一である必要はなく、分散処理を実行する場合には、複数であってもよい。図1に示すように、コンピュータ10は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12及びRAM(Random Access Memory)13を有し、これらがバス14を介して相互に接続されている。尚、コンピュータを動作させるためのOSソフトなどは、説明を省略するが、この情報処理装置を構築するコンピュータも当然有しているものとする。
 バス14には、入出力インターフェイス15も接続されている。入出力インターフェイス15には、例えば、キーボード、マウス、センサなどよりなる入力部16、CRT、LCDなどよりなるディスプレイ、並びにヘッドフォンやスピーカなどよりなる出力部17、ハードディスクなどより構成される記憶部18、モデム、ターミナルアダプタなどより構成される通信部19などが接続されている。
 CPU11は、ROM12に記憶されている各種プログラム、又は記憶部18からRAM13にロードされた各種プログラムに従って各種の処理、本実施の形態においては、例えば後述する情報処理装置100の各部の処理を実行する。CPU11とは別にGPU(Graphics Processing Unit)を設け、CPU11と同様の処理を行わせてもよい。なお、GPUは、定型的な処理を並列的に行う用途に適しており、後述する学習処理などに適用することで、CPU11に比べて処理速度を向上させることも可能である。RAM13には又、CPU11及びGPUが各種の処理を実行する上において必要なデータなども適宜記憶される。
 通信部19は、例えば図示しないインターネットを介しての通信処理を行ったり、CPU11から提供されたデータを送信したり、通信相手から受信したデータをCPU11、RAM13、記憶部18に出力したりする。記憶部18はCPU11との間でやり取りし、情報の保存・消去を行う。通信部19は又、他の装置との間で、アナログ信号又はディジタル信号の通信処理を行う。
 入出力インターフェイス15はまた、必要に応じてドライブ20が接続され、例えば、磁気ディスク20A、光ディスク20B、フレキシブルディスク20C、又は半導体メモリ20Dなどが適宜装着され、それらから読み出されたコンピュータプログラムが必要に応じて記憶部18にインストールされる。
 続いて、本実施の形態にかかる情報処理装置100における各処理について説明する。情報処理装置100は、n(nは、1以上の整数)次元ベクトルで記述されるノードを有し、ノードの情報は、例えばRAM13などの記憶部に格納されている。
 入力データは、n次元の入力ベクトルとして入力される。例えば、入力ベクトルは一時記憶部(例えばRAM13)に格納される。
 以下、実施の形態1にかかる情報処理装置100について具体的に説明する。情報処理装置100は、複数の異なる学習結果から、以下に示す処理を行うことで、入力データの構造を適切に反映した学習結果を選択するものとして構成される。学習結果のそれぞれは、複数のノード及び各ノードが属するクラスタを示す情報(例えば、クラスタラベル)により構成されるクラスタリング結果であり、例えば上述のE-SOINNやLB-SOINNなどによって生成されるニューラルネットワークでもよいし、例えば、k平均法などの教師なしクラスタリング手法に基づいて入力データをクラスタリングし、クラスタに分割された入力データのいくつかをノードとして生成する等でもよい。図2に、入力データの入力ベクトルの分布を示す。図3に、図2の入力データを用いてk平均法及びSOINNで生成した学習結果を示す。図2の入力データは、入力データが4つのクラスタに分かれて分布しており、そのうち3つのクラスタが近接しており、ノイズによって境界が不明瞭になっている。この入力データをk平均法及びSOINNによって学習すると、手法の相違のため、学習結果におけるノードの分布が若干異なっているものの、同様な4つのクラスタの検出ができていることがわかる。
 図4に、同じ入力データを学習した場合に、入力ベクトルの入力順序やパラメータの相違によって生成された5つの異なる学習結果の例を示す。ここでは、図24で示した入力データと同じ入力データを用いた。図4に示すように、学習結果1~5は、クラスタの個数や形状が相違していることがわかる。
 また、図4に示すように、それぞれの学習結果は相違しているものの、異なる学習結果の間で同一と考えられるクラスタが存在していることがわかる。例えば、学習結果1のクラスタ0は、学習結果2のクラスタ0や学習結果5のクラスタ0に近似しており、同一と考えられる。入力順序、学習方法及びパラメータなどが異なっていたとしても、同じ入力データを学習している以上、入力データが真に有しているクラスタが結果として出現する頻度は、入力順序、学習方法及びパラメータなどの影響でノイズ的なクラスタが出現する頻度と比べて、高いと考えられる。よって、複数の学習結果において同一と考えられるクラスタが出現する頻度に基づいて、適切なクラスタを判断できると考え得る。本実施の形態では、複数の学習結果における各クラスタの出現頻度に基づいて適切な学習結果を選択する処理について説明する。
 以下、情報処理装置100の各構成要素と動作について、図5-7を参照して説明する。図5に、実施の形態1にかかる情報処理装置100の基本的構成を模式的に示す。図6に、実施の形態1にかかる情報処理装置100の構成をより詳細に示す。図7に、実施の形態1にかかる情報処理装置100の学習結果選択動作のフローチャートを示す。情報処理装置100は、距離行列算出部1、評価指数算出部2、得点算出部3及び学習結果選択部4を有する。評価指数算出部2は、算出部2A及び評価指数行列生成部2Bを有する。得点算出部3は、算出部3A及び得点行列生成部3Bを有する。
ステップS1:距離行列算出
 距離行列算出部1は、以下のステップS11~S13に基づいて、距離行列Dを算出する。
ステップS11
 距離行列算出部1は、複数の(2以上のr個とする)学習結果から、任意の2つの学習結果SA及びSBを選択する。
ステップS12
 距離行列算出部1は、学習結果SAに含まれるp個のクラスタCA1~CApから、任意の1つのクラスタAを選択する。学習結果SBに含まれるq個のクラスタCB1~CBqから、任意の1つのクラスタBを選択する。
ステップS13
 距離行列算出部1は、クラスタAに含まれるノードa1~am(ai、1≦i≦m)と、クラスタBに含まれるノードb1~bn(bj、1≦j≦n)と、の組み合わせの全てについてノード間の距離daibjを計算し、m行n列の距離行列Dを算出する。 
Figure JPOXMLDOC01-appb-M000001
ステップS2:評価指数算出
 評価指数算出部2の算出部2Aは、以下のステップS21~S25に基づいて、評価指数を算出する。
ステップS21
 算出部2Aは、距離行列Dの各行(daib1~daibn)について、最小値minai(すなわち、mina1~minam)を取得し、かつ、距離行列Dの各列(da1bj~dambj)について、最小値minb(すなわち、minb1~minbn)を取得する。
ステップS22
 算出部2Aは、同じクラスタに属するノード間の平均的な距離dmeanを算出する。dmeanは、同一クラスタと識別されているノード間の平均的な距離なので、この平均値以上であれば異なるクラスタと識別し、これより短ければ同一クラスタとして識別できる指標と考えることができる。dmeanは例えば以下のように記載できる。
Figure JPOXMLDOC01-appb-M000002
式[2]において、dはノードiとノードiの属するクラスタに含まれるノードとの距離の最小値である。
 なお、式[2]のdmeanは例であり、例えば以下の式[3]のように定義してもよい。
Figure JPOXMLDOC01-appb-M000003
 また、dmeanは、以下の式[4]及び[5]で示す値のうちで、大きな方の値としてもよいし、小さな方の値としてもよい。
Figure JPOXMLDOC01-appb-M000004
Figure JPOXMLDOC01-appb-M000005
 さらに、各行の最小値mina1~minamと各列の最小値minb1~minbnとで別々のdmeanを用意して、使い分けても良い。各行の最小値mina1~minamに対しては、例えば式[6]に示す様に、クラスタAのみで算出されたdmeanを使用してもよい。各列の最小値minb1~minbnに対しては、例えば式[7]に示す様に、クラスタBのみで算出されたdmeanを使用してもよい。
Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000007
  上述では、複数のノードを含む学習結果について説明したが、SOINNなどによって入力データを学習した場合には、学習結果は、複数のノードと2つのノード間を接続する複数の辺とを含むこととなる。このように、ノード間に辺が存在する場合は、同じクラスタに属する辺の平均長さをdmeanとして用いることが望ましい。辺はノード間の関係性を表し、辺長さはその類似性を表しているので、辺を用いることで、ノイズの影響でたまたま近傍に存在しているノードとの距離がdmeanの算出に用いられることを防止することができる。また、本実施の形態では、平均長さとして算術平均(相加平均)を使用したが、近傍ノード間の距離分布の中心的傾向を数値で示すことができればこれに限らない。例えば、2乗平均、相乗平均、調和平均など別の平均指標を平均長さとして使用してもよいし、中央値、最頻値など別の統計的な代表値を使用してもよい。以下では、算術平均の他に説明した平均指標や統計的な代表値を含むものとして、「平均的距離」を用いるものとする。
ステップS23
 算出部2Aは、各行の最小値mina1~minamのうちで平均的距離dmean以上のものの個数NUMaをカウントし、各列の最小値minb1~minbnのうちで平均的距離dmean以上のものの個数NUMbをカウントする。
ステップS24
 算出部2Aは、取得した個数NUMa及びNUMbの和を、クラスタA及びBのノード総数(m+n)で除算した値を、評価指数ESとして算出する。
Figure JPOXMLDOC01-appb-M000008
 ここでは、取得した最小値のうちで平均値dmean以上のものの個数を数えることで、2つのクラスタ間において近似していないノードの数を検出していると考えることができる。また、式[8]で近似していないノードの数を2つのクラスタのノードの総数で除算することで、ノード総数に対して近似していないノードの数の割合を算出している。つまり、評価指数ESは、大きな値を取る場合には2つのクラスタは類似しておらず、小さな値を取る場合には2つのクラスタは類似していることを示す、非類似度を表す値であるといえる。
 本実施の形態では、距離行列算出部1は、学習結果SAに含まれるp個のクラスタCA1~CApの任意の1つと、学習結果SBに含まれるq個のクラスタCB1~CBqの任意の1つとの全ての組み合わせについて実行する。そして、算出部2Aは、2つのクラスタの組み合わせの全てについて、評価指数の算出を行う。
ステップS25
 つまり、算出部2Aは、2つのクラスタの組み合わせの全てについて評価指数の算出を行ったかを判定する。2つのクラスタの組み合わせの全てについて評価指数の算出を行っていない場合には、ステップS12に戻る。なお、ステップS12に戻る場合には、既に選択された2つのクラスタの組み合わせと同じにならないように、新たに2つのクラスタを選択することは、言うまでもない。2つのクラスタの組み合わせの全てについて評価指数の算出を行った場合には、ステップS3へ進む。
ステップS3:評価指数行列生成
 全てのクラスタの組み合わせについて評価指数算出が終了したならば、評価指数算出部2の評価指数行列生成部2Bは、p行q列の評価指数行列EMを生成する。つまり、評価指数行列EMの行番号は学習結果SAに含まれるクラスタの番号を示し、列番号は学習結果SBに含まれるクラスタの番号を示している。
Figure JPOXMLDOC01-appb-M000009
ステップS4:得点算出
 得点算出部3の算出部3Aは、以下のステップS41及びS42に基づいて、得点を算出する。
ステップS41
 算出部3Aは、評価指数行列EMに含まれる各評価指数を閾値THと比較し、閾値TH以下(似ている)の評価指数ESを構成する両クラスタに高い得点を与え(例えば得点+1)、閾値よりも大きい(似ていない)の評価指数ESを構成する両クラスタに低い得点(例えば得点0)を与える。そして、学習結果SAの各クラスタ(CA1~CAp)の合計得点をそれぞれ算出する。換言すれば、評価指数行列EMの各行(ESi1,…,SEiq)に与えられた得点の合計を各行について算出する。(ESi1,…,SEiq)の得点の合計は、クラスタCAiの得点となる。また、学習結果SBの各クラスタ(CB1~CBq)の合計得点を各々算出する。換言すれば、評価指数行列EMの各列(ES1j,…,SEpj)に与えられた得点の合計を各列で各々算出する。(ES1j,…,SEpj)の得点の合計はクラスタCBjの得点となる。なお、得点算出の方法はこれに限らず、例えば閾値TH以下でかつ各行でもっとも評価指数ESが低いもの(最もよく似ているもの)や、各列でもっとも評価指数ESが低いもの(最もよく似ているもの)に高い得点を加えるなどの応用を加えてもよい。  
 本実施の形態では、複数の学習結果から選択した任意の2つの学習結果の全ての組み合わせについて、上記の合計得点の算出を行う。つまり、距離行列算出部1及び評価指数算出部2は、上述の距離行列算出、評価指数算出及び評価指数行列生成を、複数の学習結果から選択した任意の2つの学習結果の全ての組み合わせについて行う。そして、算出部3Aは、これらの計算結果に基づいて、各学習結果の各クラスタについて、合計得点を取得する。
ステップS42
 つまり、算出部3Aは、2つの学習結果の全ての組み合わせについて得点の算出を行ったかを判定する。2つの学習結果の全ての組み合わせについて得点の算出を行っていない場合には、ステップS11に戻る。なお、ステップS11に戻る場合には、既に選択された2つの学習結果の組み合わせと同じにならないように、新たに2つの学習結果を選択することは、言うまでもない。2つの学習結果の全ての組み合わせについて得点の算出を行った場合には、ステップS5へ進む。
ステップS5
 得点算出部3の得点行列生成部3Bは、取得した合計得点に基づいて、以下の式[10]に示すように、クラスタ番号を行番号とするr列の得点行列SMを生成する。ここで、得点行列SMの要素Sijは学習結果jのクラスタiにおける全合計得点である。具体的には、学習結果jとそのほか全ての学習結果との全ての組み合わせについて、算出部3Aが算出した学習結果jのクラスタiの合計得点を全て合計したものである。また、得点行列SMには存在しない要素もある。例えば、学習結果jのクラスタiは存在していない場合、Sijは空となっており、計算などに関与しない。 
Figure JPOXMLDOC01-appb-M000010
 ここで、得点行列SMの具体例について、5つの異なる学習結果が生成された場合について検討する。図8に、図4に示した5つの学習結果から得られた得点行列の例を示す。図8では、クラスタの最大数は3であり、簡略化のため、行列の成分(得点)を表形式で示している。
ステップS6:学習結果選択
 学習結果選択部4は、以下のステップS61及びS62に基づいて、複数の学習結果(ここでは、学習結果1~5)から、最終学習結果を選択する。
ステップS61
 学習結果選択部4は、得点行列SMを参照し、各学習結果について最小得点Smin1~Sminrを取得する。
ステップS62
 学習結果選択部4は、取得した最小得点Smin1~Sminrのうちで最大値を取る学習結果を、採用する最終学習結果として選択する。換言すれば、学習結果選択部4は、各学習結果について他の学習結果に含まれるクラスタに最も似通っていないクラスタの得点を抽出した後に、その中から一番似通っているクラスタを有する学習結果を最終学習結果として選択している。
 図8に示した得点行列では、学習結果1~5の最小得点はそれぞれ0、0、0、0及び2となっており、この内の最大の得点は2となる。よって、学習結果選択部4は、最終学習結果として、学習結果5を選択する。図4に示すとおり、学習結果5は、クラスタ数は入力データと同じ2つであり、入力データの代表的な最終学習結果として好適であることが理解できる。
 なお、2以上の学習結果において最小得点が同じ値となる場合も有りうる。この場合、例えば、番号が最小の学習結果、番号が最大の学習結果など、任意のルールに基づいて最終学習結果を選択してもよい。また、最小得点が同じ値となる各学習結果において全クラスタの得点を各々合計し、それらを比較して最大の学習結果を選択してもよい。これにより、比較的高い得点を有する学習結果を選択することができる。 
 以上、本構成によれば、同じ入力データを学習するにあたり、入力順序やパラメータの相違によって、複数の異なる学習結果(クラスタリング結果)が得られた場合に、適切な学習結果を自動的に選択することができる。
 これにより、人間によって学習結果を選択する作業を省略でき、作業時間の短縮を実現できる。また、人間による判断を排除することで、判断するものによって選択する学習結果がばらつくことを防ぐことも可能となる。
 本実施の形態では、各学習結果に含まれる最小得点のうちで最大値を取る学習結果を最終学習結果としたが、最終学習結果の選択はこれに限られない。例えば、各学習結果において全クラスタの得点を各々合計し、その合計得点が所定の値以上の学習結果を選択し、選択した各学習結果に含まれる最小得点のうちで最大値をとる学習結果を最終学習結果として選択してもよい。この場合には、合計得点に対して閾値を設けることで、比較的得点の高いクラスタを有する学習結果を選択することができる。また、最終学習結果に比較的得点の低いクラスタが含まれていてもよい場合には、各学習結果において全クラスタの得点を各々合計し、その合計得点が最大となる学習結果を最終学習結果として選択してもよい。この場合には、最終学習結果に含まれるクラスタには得点が低いものも含まれる可能性があるが、全体的には得点の高いクラスタとなっている。これらのクラスタからユーザーが適宜選択するなどすれば、適切な学習結果を得ることができる。
 本実施の形態では、評価指数算出部2が用いる各クラスタの評価指数ESの具体例として、式[8]を示したが、評価指数ESはこの例に限られない。例えば、評価指数ESは、以下の式[11]のように定義してもよい。
Figure JPOXMLDOC01-appb-M000011
 また、評価指数ESは、以下の式[12]のように、類似度として定義してもよい。
Figure JPOXMLDOC01-appb-M000012
評価指数ESとして類似度を用いる場合には、ステップS41において、得点算出部が、評価指数行列EMに含まれる各評価指数を閾値と比較し、閾値以上(似ている)の評価指数ESを構成する両クラスタに高い得点を与え(例えば得点+1)、閾値よりも小さい(似ていない)の評価指数ESを構成する両クラスタに低い得点(例えば得点0)を与えることで、評価指数ESとして非類似度を用いる場合と同様の処理が可能である。以上説明したように、評価指数ESは、クラスタ間の近似度合いを定量的に示すことができれば、いかように定義することも可能である。
 実施の形態2
 実施の形態2では、実施の形態1にかかる学習結果選択の変形例について説明する。実施の形態1では、複数の学習結果における各クラスタの出現頻度に基づいて適切な学習結果を選択する処理について説明した。しかしながら、場合によっては学習結果の中に適切なものが存在していないことがある。図9に、図24の入力データを学習した場合に、入力ベクトルの入力順序やパラメータの相違によって生成された4つの異なる学習結果の例を示す。入力データのクラスタ数が2つであるのに対し、どの学習結果も入力データの特徴を反映しているものの、クラスタ数は3つとなっており、全てのクラスタを適切に表現している結果ではないことが分かる。本実施の形態では、複数の学習結果における各クラスタの出現頻度に基づいて、適切なクラスタを選択して学習結果を作成する処理について説明する。
 図10に、実施の形態2にかかる情報処理装置200の構成を模式的に示す。情報処理装置200は、実施の形態1にかかる情報処理装置100に、削除処理部7を追加した構成を有する。削除処理部7は、得点ソート部71、基準クラスタ選択部72、対象クラスタ選択部73、判定値算出部74、クラスタ判定部75及びクラスタ削除部76を有し、距離行列算出部1及び評価指数算出部2ともに、重複クラスタの削除処理を行う。
 図11に、実施の形態2にかかる情報処理装置200でのクラスタの削除処理のフローチャートを示す。クラスタの削除処理ステップS7は、図7のステップS5とステップS6との間に挿入されるものであり、以下のステップS701~S713を含む。
ステップS701
 得点ソート部71は、得点行列SMに基づいて、得点順に、例えば降順で全クラスタをソートする。図12に、図9に示した4つの学習結果から得られた得点行列の例を示す。図13に、図12の得点行列に基づいてクラスタをソートした例を示す。
ステップS702
 基準クラスタ選択部72は、最も得点が高いクラスタを基準クラスタとして選択する。
ステップS703
 対象クラスタ選択部73は、ソートした順(図13)における基準クラスタの1つ下の行のクラスタを対象クラスタとして選択する。
 なお、既に選択された2つのクラスタの組み合わせと同じにならないように、基準クラスタと対象クラスタとが選択されることは、言うまでもない。
ステップS704
 距離行列算出部1は、ステップS1と同様に、基準クラスタ(クラスタAとする)及び対象クラスタ(クラスタBとする)について、距離行列Dを算出する。
ステップS705
 評価指数算出部2は、ステップS21と同様に、距離行列Dの各行(daib1~daibn)について、最小値minai(すなわち、mina1~minam)を取得し、かつ、距離行列Dの各列(da1bj~dambj)について、最小値minb(すなわち、minb1~minbn)を取得する。
ステップS706
 評価指数算出部2は、ステップS22と同様に、同じクラスタに属するノード間の平均的な距離dmeanを算出する。
ステップS707
 評価指数算出部2は、ステップS23と同様に、各行の最小値mina1~minamのうちで平均的距離dmean以上のものの個数NUMaをカウントし、各列の最小値minb1~minbnのうちで平均的距離dmean以上のものの個数NUMbをカウントする。
ステップS708
 判定値算出部74は、各行についてのカウント個数NUMaをクラスタAのノード数mで除算して、クラスタAの内クラスタBとは似ていないノードの割合を示す判定値RAを算出する。また、判定値算出部74は、各列についてのカウント個数NUMbをクラスタBのノード数nで除算して、クラスタBの内クラスタAとは似ていないノードの割合を示す判定値RBを算出する。
ステップS709
 クラスタ判定部75は、判定値RA及びRBを所定の閾値THrと比較し、判定値RA及びRBのいずれかが所定の閾値THrよりも小さい場合、クラスタA及びBの一方が他方に含まれる、又は、一致していると判定し、低得点又は同得点のクラスタB(すなわち、対象クラスタ)が削除されるべきものと判定する。
ステップS710
 クラスタ削除部76は、クラスタ判定部75において対象クラスタが削除されるべきものと判定された場合には、得点行列SMから低得点の対象クラスタの得点を削除する。後述するように、削除されたクラスタは最終学習結果として選ぶことができない。また、クラスタのソート(図13)からも、削除したクラスタに該当する行は削除される。つまり、削除したクラスタについては、次の処理以降では、基準クラスタや対象クラスタとして選択されることはない。ただし、ステップS711及びS712において次の対象クラスタを算出するための現在の対象クラスタとして用いることは可能である。すなわち、本実施の形態において「ソートした順(図13)においてあるクラスタの1つ下のクラスタを選択する」と記載する場合、ソートした順(図13)から削除したクラスタに該当する行が削除された順において、1つ下のクラスタを選択することを意味するものとする。
ステップS711
 対象クラスタ選択部73は、ソートした順(図13)における現在の対象クラスタの1つ下の行に、新たな対象クラスタとして選択可能な他のクラスタが存在するかを判定する。
ステップS712
 ステップS711において新たな対象クラスタとして選択可能な他のクラスタが存在すると判定された場合、対象クラスタ選択部73は、当該他のクラスタ(すなわち、ソートした順(図13)における現在の対象クラスタの1つ下の行のクラスタ)を新たな対象クラスタとして選択した後、処理をステップS704へ戻す。
ステップS713
 ステップS711において新たな対象クラスタとして選択可能な他のクラスタが存在しないと判定された場合、基準クラスタ選択部72は、ソートした順(図13)における現在の基準クラスタの1つ下の行に、削除されずに残存している、新たな基準クラスタとして選択可能な他のクラスタが存在するかを判定する。なお、新たな基準クラスタとして選択可能なクラスタが存在しないと判定した場合、ステップS7のクラスタ削除処理を終了する。
ステップS714
 ステップS713において新たな基準クラスタとして選択可能なクラスタが存在すると判定された場合、基準クラスタ選択部72は、ソートした順(図13)における現在の基準クラスタの1つ下のクラスタを、新たな基準クラスタとして選択した後、処理をステップS703へ戻す。
 以上のステップS7でのクラスタ削除処理について、図9の4つの学習結果に基づく具体例を示して説明する。図14に、実施の形態2にかかるクラスタ削除処理の推移を示す。
 ステップS7でのクラスタ削除処理においては、最も高い得点を有する基準クラスタと対象クラスタとの間で得点の高い順に処理が実行される。その後、次に残存するクラスタの中で得点の高いクラスタが基準クラスタとして選択され、新たな基準クラスタと対象クラスタとの間で、得点の高い順に処理が行われてゆくサイクルが、新たな基準クラスタが選択できなくなるまで繰り返されることとなる。
削除推移1
 まず、得点が最も高い学習結果1のクラスタ0が基準クラスタとなり、それ以外のクラスタとの間で処理が実行される。図14の削除推移1の表の*がついている行は、学習結果1のクラスタ0と一致している、学習結果1のクラスタ0を含む、又は、学習結果1のクラスタ0に含まれると判定されるものである。そのため*の行は削除される。
削除推移2
 削除推移1に示す処理の完了後、削除推移2に示す処理が実行される。図14の削除推移2では、ソートした順において削除推移1で削除されたクラスタに該当する行を除外して表示している。ここでは、残存するクラスタのなかで 学習結果1のクラスタ0を除いた内で得点が最も高い学習結果3のクラスタ1と、学習結果1のクラスタ0以外の残存するクラスタとの間で処理が実行される。図14の削除推移2の表の*がついている行は学習結果3のクラスタ1と一致している、学習結果3のクラスタ1を含む、又は、学習結果3のクラスタ1に含まれると判定されるものである。そのため*の行は削除される。
削除推移3
 削除推移2に示す処理の完了後、削除推移3に示す処理が実行される。図14の削除推移3では、ソートした順において削除推移1及び2で削除されたクラスタに該当する行を除外して表示している。削除推移3の状態では未処理のクラスタの組み合わせは存在しないので、ここでクラスタの削除処理を終了する。図15に、クラスタ削除後の得点行列の例を示す。クラスタ削除前の各クラスタの得点は図12と同様であるが、ここでは、ステップS7によって、×印が表示されているクラスタが削除されている。
ステップS6
 ステップS7の処理後、重複のないクラスタだけが残されている。学習結果選択部4は、ここから所定の得点閾値以上のクラスタのみを抽出して最終学習結果とする。図15において、例えば所定の得点閾値を1とすれば、学習結果1のクラスタ0と学習結果3のクラスタ1が最終学習結果となる。ここでは所定の得点閾値を1としたが、これに限らず、適切な値を設定できる。所定の得点閾値を低く設定するとどんなクラスタも抽出し、高くすれば、頻度が高く出現するクラスタのみを抽出できる。図16に、図15の得点行列に基づいて選択されたクラスタを含む最終学習結果を示す。図16に示される通り、入力データの特徴を適切に表現したクラスタになっていることが分かる。
 以上、本構成によれば、複数の学習結果間で共通するクラスタを削除することで、同様のクラスタを選択することなく得点の高いクラスタを全学習結果から選ぶことが可能となる。これにより、学習結果の中に適切なものがなくても適切なクラスタとなる結果を作ることができる。
 本実施の形態では、ステップS708で判定値RA及びRBのいずれか一方が所定の閾値THrよりも小さい場合、クラスタA及びBの一方が他方に含まれると判定し、対象クラスタであるクラスタBが削除されるべきものと判定し、削除したが、例えば、最終的な学習結果としてのクラスタに付随して、従属クラスとしてユーザーに示しなどしても良い。
 実施の形態3
 実施の形態3では、実施の形態2のクラスタ削除処理をより簡略化し、学習結果削除処理として機能させた例について説明する。学習の仕方によっては、入力データの部分的な特徴しか学習できない場合もあると想定し得る。図17に、図24で示した入力データに対して一部のみのクラスタしか学習できなかった例を示す。図17に示す結果になる確率は低いにしろ、学習結果として得られる可能性はある。このような部分的にしか学習が進まなかった不適切な結果が選択肢の中に含まれていると、実施の形態1では適切に機能しない場合がある。例えば、図4の結果に図17の結果を追加した複数の学習結果を対象とした場合について想定し、このときの得点行列を図18に示す。この場合、実施の形態1のステップS62の処理によって最終学習結果を選択すると、図17の不適切な学習結果が選択されてしまう。そこで、本実施の形態では、入力データに対して部分的にしか特徴を捉えていないような不適切な結果が含まれている場合でも、不適切な学習結果を削除し、適切な学習結果を選択する処理について説明する。
 図19に、実施の形態3にかかる情報処理装置300の構成を模式的に示す。情報処理装置300は、実施の形態2にかかる情報処理装置200の削除処理部7を削除処理部8に置換した構成を有する。削除処理部8は、削除処理部7のクラスタ削除部76をクラスタ除外部86に置換し、かつ、学習結果削除部87を追加した構成を有する。削除処理部8のその他の構成は削除処理部7と同様であるので、説明を省略する。
 図20に、実施の形態3にかかる情報処理装置での学習結果の削除処理のフローチャートを示す。学習結果の削除処理ステップS8は、図7のステップS5とステップS6との間に挿入されるものであり、以下のステップS801~S817を含む。
ステップS801~S808
 ステップS801~S808は、図11のステップS701~S708と同様であるので、説明を省略する。
ステップS809
 クラスタ判定部75は、判定値RA及びRBを所定の閾値THrと比較し、判定値RA及びRBのいずれかが所定の閾値THrよりも小さいか否かを判定する。判定値RA及びRBのいずれもが所定の閾値THr以上の場合、クラスタ判定部75は、クラスタAとクラスタBとは別のクラスタであるものと判定し、処理をステップS811へ進める。
ステップS810
 ステップS809において判定値RA及びRBのいずれかが所定の閾値THrよりも小さいと判定された場合、クラスタ除外部86は、クラスタA及びBの一方が他方に含まれる、又は、一致しているものとして、低得点又は同得点のクラスタB(すなわち、対象クラスタ)を計算から除外する。クラスタのソートから計算から除外されたクラスタに該当する行は削除され、次の処理の基準クラスタや対象クラスタとして選択されることはない。ただし、ステップS811及びS812において次の対象クラスタを算出するための現在の対象クラスタとして用いることは可能である。すなわち、本実施の形態において「ソートした順においてあるクラスタの1つ下のクラスタを選択する」と記載する場合、ソートした順から計算から除外したクラスタに該当する行が削除された順において、1つ下のクラスタを選択することを意味するものとする。
ステップS811~S812
 ステップS811~S812は、図11のステップS711~S712と同様であるので、説明を省略する。
ステップS813
 クラスタ判定部75は、基準クラスタと共通しているクラスタを保持していない学習結果が存在するか否かを判定する。ここでは、ステップS809における判定方法と同じ方法を用いて、各クラスタが基準クラスタと共通しているかを判断することができる。すなわち、本ステップでは、計算から除外されたクラスタを基準クラスタと共通しているクラスタと判断し、基準クラスタ又は基準クラスタと共通しているクラスタを保持していない学習結果を削除するものとして判定する。なお、判定方法はこれに限られるものではなく、例えば、基準クラスタの判定値RAと各クラスタ(対象クラスタ)の判定値RBと、閾値THr1とは異なる閾値THr2を使用して比較し、判定値RA及びRBの両方が閾値THr2よりも小さい場合に、対象クラスタを共通しているクラスタと判定してもよい。クラスタ判定部75は、基準クラスタ又は基準クラスタと共通しているクラスタを保持していない学習結果が存在しない場合には、削除すべき学習結果はないものとして、処理をステップS815へ進める。
ステップS814
 ステップS813において基準クラスタ又は基準クラスタと共通しているクラスタを保持していない学習結果が存在すると判定された場合、学習結果削除部87は、その学習結果は削除されるべきものとして、当該学習結果を削除する。その後、処理をステップS815へ進める。また、ソートした順における、削除された学習結果が保持する全クラスタに該当する行を計算から除外する。 
ステップS815
 基準クラスタ選択部72は、ソートした順における現在の基準クラスタの1つ下の行に、削除されずに残存している、新たな基準クラスタとして選択可能な他のクラスタが存在するかを判定する。新たな基準クラスタとして選択可能なクラスタが存在しないと判定した場合、基準クラスタ選択部72は、ステップS8の処理を終了する。
ステップS816
 ステップS815において新たな基準クラスタとして選択可能なクラスタが存在すると判定された場合、基準クラスタ選択部72は、ソートした順における現在の基準クラスタの1つ下の行のクラスタの得点が所定の得点閾値THp以上であるか否かを判定する。基準クラスタの一行下のクラスタの得点が所定の得点閾値THpよりも小さい場合、基準クラスタ選択部72は、ステップS8の処理を終了する。
ステップS817
 ステップS816において新たな基準クラスタとして選択可能なクラスタが存在すると判定された場合、基準クラスタ選択部72は、ソートした順における現在の基準クラスタの1つ下のクラスタを、新たな基準クラスタとして選択した後、処理をステップS803へ戻す。
 ステップS8でのクラスタ削除処理について、図4の5つの学習結果に図17の学習結果を加えた6つの学習結果に基づく具体例を示して説明する。得点行列は図18に示すものである。図21に、図18の得点行列に基づいてクラスタをソートした例を示す。
 図22に、実施の形態3にかかるクラスタ削除処理の推移を示す。ステップS8でのクラスタ削除処理においては、既に削除されたクラスタ以外について、得点の高い順に2つのクラスタを選択して、選択した2つのクラスタについて削除処理が繰り返されることとなる。
削除推移A
 まず、得点が最も高い学習結果1のクラスタ0と、それ以外のクラスタとの間で処理が実行される。図22の削除推移1の表の**がついている行は基準クラスタを示し、この場合には学習結果1のクラスタ0が基準クラスタである。*がついている行は、基準クラスタと一致している、基準クラスタを含む、又は、基準クラスタに含まれると判定されたクラスタである。**又は*が付与されていない学習結果は無いため、ここではいずれの学習結果も削除されない。また、*の行はソートした表からは除外されるので、削除処理の選択肢(つまり、基準クラスタや対象クラスタとしての選択肢)からは除外される。
削除推移B
 削除推移Aに示す処理の完了後、削除推移Bに示す処理が実行される。図22の削除推移Bでは、ソートした順において削除推移Aで計算から除外されたクラスタに該当する行(すなわち、削除推移Aにおいて*がついている行)を除外して表示している。ここでは、学習結果1のクラスタ0を除いた内で得点が最も高い学習結果3のクラスタ1が基準クラスタとなり、学習結果1のクラスタ0以外の残存するクラスタとの間で処理が実行される。つまり、図22の削除推移Bの表の**がついている行の学習結果3のクラスタ1が基準クラスタ、*がついている行が基準クラスタと一致している、基準クラスタを含む、又は、基準クラスタに含まれると判定されたクラスタである。学習結果6のいずれのクラスタも**又は*が付与されていないため、学習結果6は削除される。また、*の行はソートした表からは除外されるので、削除処理の選択肢(つまり、基準クラスタや対象クラスタとしての選択肢)からは除外される。
削除推移C
削除推移Bに示す処理の完了後、削除推移Cに示す処理が実行される。図22の削除推移Cでは、ソートした順において削除推移A及びBで計算から除外されたクラスタに該当する行(すなわち削除推移A及びBにおいて*がついている行)を除外して表示している。削除推移Cの状態では未処理のクラスタの組み合わせは存在しないので、ここで学習結果の削除処理を終了する。図23に、学習結果削除後の得点行列の例を示す。ステップS8によって、×印が付された学習結果6が削除されていることが理解できる。
ステップS6
 ソートした全てのクラスタについてステップS8の処理が終了した場合、学習結果選択部4は、図4の場合と同様に、得点行列SMに基づいて最終学習結果を選択する。図23の得点行列によれば、学習結果選択部4は、実施の形態1と同様に、学習結果5を最終学習結果として選択することが理解できる。
 以上、本構成によれば、複数の学習結果間で共通するクラスタを保持しない学習結果を削除することで、入力データに対して部分的にしか特徴を捉えていないような結果を排除し、適切な学習結果を選択することが可能となる。
その他の実施の形態
 なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、ノード間の距離を示す距離尺度についてであるが、ノード間の距離尺度としては、ユークリッド距離、コサイン距離、マンハッタン距離、フラクショナル距離など、任意の距離尺度を適用することができる。一般に、入力データが低次元である場合にユークリッド距離が用いられ、入力データが高次元である場合にコサイン距離、マンハッタン距離及びフラクショナル距離が用いられる。
 また、本発明は様々なクラスタリング手法から得られる複数の結果に対しても適応可能であるが、一つの手法による複数結果に対して適応する方が望ましい。クラスタリング手法には各々特性に違いがあり、構造が複雑な入力データの場合は、特性によるクラスタリング結果の違いが大きくなる場合がある。クラスタリング手法を一つに絞ることにより各結果の手法としての特性差がなくなり、より本発明の効果を発揮できる。
 なお、本発明はk平均法などの一般的なクラスタリング手法の結果に対して有効であるが、SOINNなどに代表される、入力ベクトルを順次入力して入力ベクトルの入力分布構造を複数のノード及び2つのノード間を接続する複数の辺が配置されるネットワーク構造として学習する手法の結果に対して実施することが望ましい。これは、ノードを頻度に基づいて淘汰することでノイズのノードを抑制でき、さらに辺によってノードの関連性も把握できるため、本発明で重要なノード間の距離、クラスタ間の類似性をより的確に算出できるためである。
 上述の実施の形態において、2つの値の大小判定について説明したが、これは例示に過ぎず、2つの値の大小判定において2つの値が等しい場合については、必要に応じて取り扱ってもよい。すなわち、第1の値が第2の値以上であるか又は第2の値よりも小さいかの判定と、第1の値が第2の値よりも大きいか又は第2の値以下であるかの判定とについては、必要に応じていずれを採用してもよい。第1の値が第2の値以下であるか又は第2の値よりも大きいかの判定と、第1の値が第2の値よりも小さいか又は第2の値以上であるかの判定については、いずれを採用してもよい。換言すれば、2つの値の大小判定を行って2つの判定結果を得る場合、2つの値が等しい場合については、必要に応じて2つの判定結果のいずれに含めてもよい。
 上述の実施の形態では、本発明を主にハードウェアの構成として説明したが、これに限定されるものではなく、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
 上記の実施の形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
 (付記1)複数の入力ベクトルの入力分布構造を、多次元ベクトルで記述される複数のノードを含むネットワーク構造として学習する情報処理装置において、同じ入力ベクトルを異なる条件で学習した結果得られた、異なる入力分布構造を有する複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、一方のクラスタに属するノードと他方のクラスタに属するノードとの間の距離を示す距離行列を算出する距離行列算出部と、各距離行列について各列及び各行の最小値を取得し、取得した前記最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出する評価指数算出部と、全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出する得点算出部と、前記得点算出部で算出された各学習結果の各クラスタの得点に基づいて、前期複数の学習結果から最終学習結果を選択する学習結果選択部と、を有する、情報処理装置。
 (付記2)前記得点算出部は、全ての距離行列について算出した評価指数に基づいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについての評価指数で構成される評価指数行列を生成し、前記評価指数行列に含まれる評価指数に基づいて、1つの学習結果に含まれるクラスタが他の学習結果のクラスタに似ているかを示す得点を算出し、全ての学習結果に属するクラスタについての得点を含む得点行列を生成し、前記学習結果選択部は、前記得点行列に基づいて、前記複数の学習結果から最終学習結果を選択する、付記1に記載の情報処理装置。
 (付記3)前記評価指数算出部は、前記2つのクラスタのそれぞれに属するノード間の平均的距離を求め、求めた2つの平均的距離の平均値を求め、各距離行列の各列及び各行の前記最小値のうちで、前記平均値以上のものの個数に基づいて各距離行列にかかる評価指数を算出する、付記2に記載の情報処理装置。
 (付記4)前記評価指数は、各距離行列の各列及び各行の前記最小値のうちで、前記平均値以上のものの個数を、前記2つのクラスタに属するノードの総数で除算した値である、付記3に記載の情報処理装置。
 (付記5)前記得点算出部は、評価指数行列に含まれる各評価指数を閾値と比較し、比較結果に基づいて得点を与え、各クラスタの合計得点を算出する、付記2又は3に記載の情報処理装置。
 (付記6)前記学習結果選択部は、各学習結果に属するクラスタの合計得点のうちで最小値を取得し、取得した最小値のうちで最大の値に対応する学習結果を選択する、付記5に記載の情報処理装置。
 (付記7)前記学習結果選択部は、前記得点行列に基づいて、前記複数の学習結果のクラスタから複数の重複しないクラスタを選択して、選択したクラスタで構成される前記最終学習結果を選択する、付記2乃至5のいずれか一つに記載の情報処理装置。
 (付記8)前記学習結果選択部は、前記得点行列に基づいて、前記複数の学習結果のうちの1つの学習結果を前記最終学習結果として選択する、付記2乃至5のいずれか一つに記載の情報処理装置。
 (付記9)各学習結果からクラスタを削除する処理を行う削除処理部をさらに有し、前記削除処理部は、各学習結果に属するクラスタを前記得点の順にソートする得点ソート部と、前記得点が最も高いクラスタを基準クラスタとして選択する基準クラスタ選択部と、ソートされたクラスタから前記基準クラスタより得点が低いクラスタの中で最も得点が高いクラスタを対象クラスタとして選択する対象クラスタ選択部と、前記基準クラスタ及び前記対象クラスタに基づいてクラスタの判定に用いられる判定値を算出する判定値算出部と、前記判定値に基づいて削除対象クラスタを選択するクラスタ判定部と、前記削除対象クラスタを削除するクラスタ削除部と、を有する、付記3乃至7のいずれか一つに記載の情報処理装置。
 (付記10)前記距離行列算出部は、前記基準クラスタと前記対象クラスタとについて、前記基準クラスタのノード数分の行数と前記対象クラスタのノード数分の列数とを有する前記距離行列を算出し、前記評価指数算出部は、前記基準クラスタと前記対象クラスタとについて算出した前記距離行列の各列及び各行の最小値を取得し、前記基準クラスタ及び前記対象クラスタのそれぞれに属するノード間の平均的距離を求め、求めた2つの平均的距離の平均値を求め、前記基準クラスタと前記対象クラスタとについて算出した前記距離行列の各行の前記最小値のうちで前記平均値以上のものの個数である第1の値と、前記距離行列の各列の前記最小値のうちで前記平均値以上のものの個数である第2の値と、をカウントし、前記判定値算出部は、前記第1の値を前記基準クラスタのノード数で除算した第1の判定値と、前記第2の値を前記基準クラスタのノード数で除算した第2の判定値と、を算出し、前記クラスタ判定部は、前記第1及び第2の判定値のいずれかが第2の閾値よりも小さい場合、前記対象クラスタを削除対象クラスタとして選択し、前記クラスタ削除部は、前記削除対象クラスタを削除する、付記9に記載の情報処理装置。
 (付記11)前記削除処理部が前記削除対象クラスタを削除した場合、又は、前記クラスタ判定部が前記第1及び第2の判定値が第2の閾値よりも大きいと判定した場合、前記対象クラスタ選択部は、前記対象クラスタの次に得点が低いクラスタを新たな対象クラスタとして選択し、前記削除処理部は、前記基準クラスタと、前記新たな対象クラスタと、に基づいてクラスタを削除する処理を行う、付記10に記載の情報処理装置。
 (付記12)前記対象クラスタの次に得点が低いクラスタが無い場合、前記基準クラスタ選択部は、前記基準クラスタ以外に、前記基準クラスタの次に得点が低いクラスタを新たな基準クラスタとして選択し、前記削除処理部は、前記新たな基準クラスタに基づいてクラスタを削除する処理を行う、付記11に記載の情報処理装置。
 (付記13)前記基準クラスタの次に得点が低いクラスタが無い場合、前記削除処理部は、クラスタを削除する処理を終了する、付記12に記載の情報処理装置。
 (付記14)前記複数の学習から選択した学習結果を削除する処理を行う削除処理部をさらに有し、前記削除処理部は、各学習結果に属するクラスタを前記得点の順にソートする得点ソート部と、前記得点が最も高いクラスタを基準クラスタとして選択する基準クラスタ選択部と、ソートされたクラスタから前記基準クラスタより得点が低いクラスタの中で最も得点が高いクラスタを対象クラスタとして選択する対象クラスタ選択部と、前記基準クラスタ及び前記対象クラスタに基づいてクラスタの判定に用いられる判定値を算出する判定値算出部と、前記判定値に基づいてクラスタの判別を行う選択するクラスタ判定部と、前記判別の結果に基づいてクラスタを除外する処理を行うクラスタ除外部と、前記基準クラスタと共通するクラスタを有しない学習結果を削除する学習結果削除部と、を有する、付記3乃至7のいずれか一つに記載の情報処理装置。
 (付記15)前記距離行列算出部は、前記基準クラスタと前記対象クラスタとについて、前記基準クラスタのノード数分の行数と前記対象クラスタのノード数分の列数とを有する前記距離行列を算出し、前記評価指数算出部は、前記基準クラスタと前記対象クラスタとについて算出した前記距離行列の各列及び各行の最小値を取得し、前記基準クラスタ及び前記対象クラスタのそれぞれに属するノード間の平均的距離を求め、求めた2つの平均的距離の平均値を求め、前記基準クラスタと前記対象クラスタとについて算出した前記距離行列の各行の前記最小値のうちで前記平均値以上のものの個数である第1の値と、前記距離行列の各列の前記最小値のうちで前記平均値以上のものの個数である第2の値と、をカウントし、前記判定値算出部は、前記第1の値を前記基準クラスタのノード数で除算した第1の判定値と、前記第2の値を前記基準クラスタのノード数で除算した第2の判定値と、を算出し、前記クラスタ判定部は、前記第1及び第2の判定値のいずれかが第2の閾値よりも小さい場合に前記対象クラスタは前記基準クラスタとは異なるクラスタであり、前記第1及び第2の判定値が前記第2の閾値よりも大きい場合に前記対象クラスタは前記基準クラスタと共通するクラスタであるものと判定し、前記対象クラスタは前記基準クラスタとは異なるクラスタであると判定された場合、前記クラスタ除外部は、前記対象クラスタを、前記対象クラスタが属する学習結果から除外する、付記14に記載の情報処理装置。
 (付記16)前記クラスタ除外部が前記対象クラスタを除外した場合、又は、前記クラスタ判定部が前記対象クラスタは前記基準クラスタと共通するクラスタであると判定した場合、前記対象クラスタ選択部は、前記対象クラスタの次に得点が低いクラスタを新たな対象クラスタとして選択し、前記削除処理部は、前記基準クラスタと、前記新たな対象クラスタと、に基づいて学習結果を削除する処理を行う、付記15に記載の情報処理装置。
 (付記17)前記対象クラスタの次に得点が低いクラスタが無い場合、前記学習結果削除部は、前記複数の学習結果から前記基準クラスタと共通するクラスタを有しない学習結果を削除する、付記16に記載の情報処理装置。
 (付記18)前記学習結果削除部が前記学習結果を削除した場合、又は、前記対象クラスタの次に得点が低いクラスタが無く、かつ、前記基準クラスタと共通するクラスタを有しないクラスタが無い場合、前記基準クラスタ選択部は、前記基準クラスタ以外に、前記基準クラスタの次に得点が低いクラスタの得点が所定値よりも大きい場合、当該クラスタを新たな基準クラスタとして選択し、前記削除処理部は、前記新たな基準クラスタに基づいて学習結果を削除する処理を行う、付記16に記載の情報処理装置。
 (付記19)前記基準クラスタの次に得点が低いクラスタの得点が前記所定値よりも小さい場合、又は、前記基準クラスタの次に得点が低いクラスタが無い場合、前記削除処理部は、学習結果を削除する処理を終了する、付記18に記載の情報処理装置。
 (付記20)複数の入力ベクトルの入力分布構造を、多次元ベクトルで記述される複数のノードを含むネットワーク構造として学習する情報処理方法であって、距離行列算出部が、同じ入力ベクトルを異なる条件で学習した結果得られた、異なる入力分布構造を有する複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、一方のクラスタに属するノードと他方のクラスタに属するノードとの間の距離を示す距離行列を算出し、評価指数算出部が、各距離行列について各列及び各行の最小値を取得し、取得した前記最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出し、得点算出部が、全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出し、学習結果選択部が、前記得点算出部で算出された各学習結果の各クラスタの得点に基づいて、前期複数の学習結果から最終学習結果を選択する、情報処理方法。
 (付記21)複数の入力ベクトルの入力分布構造を、多次元ベクトルで記述される複数のノードを含むネットワーク構造として学習する処理をコンピュータに実行させるプログラムであって、同じ入力ベクトルを異なる条件で学習した結果得られた、異なる入力分布構造を有する複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、一方のクラスタに属するノードと他方のクラスタに属するノードとの間の距離を示す距離行列を算出する処理と、各距離行列について各列及び各行の最小値を取得し、取得した前記最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出する処理と、全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出する処理と、算出された各学習結果の各クラスタの前記得点に基づいて、前期複数の学習結果から最終学習結果を選択する処理と、をコンピュータに実行させる、プログラム。
 以上、実施の形態を参照して本願発明を説明したが、本願発明は上記によって限定されるものではない。本願発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2020年12月28日に出願された日本出願特願2020-218716を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 1 距離行列算出部
 2 評価指数算出部
 2A 算出部
 2B 評価指数行列生成部
 3 得点算出部
 3A 算出部
 3B 得点行列生成部
 4 学習結果選択部
 7、8 削除処理部
 10 コンピュータ
 11 CPU
 12 ROM
 13 RAM
 14 バス
 15 入出力インターフェイス
 16 入力部
 17 出力部
 18 記憶部
 19 通信部
 20 ドライブ
 20A 磁気ディスク
 20B 光ディスク
 20C フレキシブルディスク
 20D 半導体メモリ
 71 得点ソート部
 72 基準クラスタ選択部
 73 対象クラスタ選択部
 74 判定値算出部
 75 クラスタ判定部
 76 クラスタ削除部
 86 クラスタ削除部
 87 学習結果削除部
 100、200、300 情報処理装置

Claims (15)

  1.  複数の入力ベクトルの入力分布構造を、多次元ベクトルで記述される複数のノードを含むネットワーク構造として学習する情報処理装置において、
     同じ入力ベクトルを異なる条件で学習した結果得られた、異なる入力分布構造を有する複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、一方のクラスタに属するノードと他方のクラスタに属するノードとの間の距離を示す距離行列を算出する距離行列算出部と、
     各距離行列について各列及び各行の最小値を取得し、取得した前記最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出する評価指数算出部と、
     全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出する得点算出部と、
     前記得点算出部で算出された各学習結果の各クラスタの得点に基づいて、前期複数の学習結果から最終学習結果を選択する学習結果選択部と、を備える、
     情報処理装置。
  2.  前記得点算出部は、
      全ての距離行列について算出した評価指数に基づいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについての評価指数で構成される評価指数行列を生成し、
      前記評価指数行列に含まれる評価指数に基づいて、1つの学習結果に含まれるクラスタが他の学習結果のクラスタに似ているかを示す得点を算出し、
      全ての学習結果に属するクラスタについての得点を含む得点行列を生成し、
     前記学習結果選択部は、前記得点行列に基づいて、前記複数の学習結果から最終学習結果を選択する、
     請求項1に記載の情報処理装置。
  3.  前記評価指数算出部は、
     前記2つのクラスタのそれぞれに属するノード間の平均的距離を求め、求めた2つの平均的距離の平均値を求め、
     各距離行列の各列及び各行の前記最小値のうちで、前記平均値以上のものの個数に基づいて各距離行列にかかる評価指数を算出する、
     請求項2に記載の情報処理装置。
  4.  前記評価指数は、各距離行列の各列及び各行の前記最小値のうちで、前記平均値以上のものの個数を、前記2つのクラスタに属するノードの総数で除算した値である、
     請求項3に記載の情報処理装置。
  5.  前記得点算出部は、評価指数行列に含まれる各評価指数を閾値と比較し、比較結果に基づいて得点を与え、各クラスタの合計得点を算出する、
     請求項2又は3に記載の情報処理装置。
  6.  前記学習結果選択部は、各学習結果に属するクラスタの合計得点のうちで最小値を取得し、取得した最小値のうちで最大の値に対応する学習結果を選択する、
     請求項5に記載の情報処理装置。
  7.  前記学習結果選択部は、前記得点行列に基づいて、前記複数の学習結果のクラスタから複数の重複しないクラスタを選択して、選択したクラスタで構成される前記最終学習結果を選択する、
     請求項2乃至5のいずれか一項に記載の情報処理装置。
  8.  前記学習結果選択部は、前記得点行列に基づいて、前記複数の学習結果のうちの1つの学習結果を前記最終学習結果として選択する、
     請求項2乃至5のいずれか一項に記載の情報処理装置。
  9.  各学習結果からクラスタを削除する処理を行う削除処理部をさらに備え、
     前記削除処理部は、
      各学習結果に属するクラスタを前記得点の順にソートする得点ソート部と、
      前記得点が最も高いクラスタを基準クラスタとして選択する基準クラスタ選択部と、
      ソートされたクラスタから前記基準クラスタより得点が低いクラスタの中で最も得点が高いクラスタを対象クラスタとして選択する対象クラスタ選択部と、
      前記基準クラスタ及び前記対象クラスタに基づいてクラスタの判定に用いられる判定値を算出する判定値算出部と、
      前記判定値に基づいて削除対象クラスタを選択するクラスタ判定部と、
      前記削除対象クラスタを削除するクラスタ削除部と、を備える、
     請求項3乃至7のいずれか一項に記載の情報処理装置。
  10.  前記距離行列算出部は、前記基準クラスタと前記対象クラスタとについて、前記基準クラスタのノード数分の行数と前記対象クラスタのノード数分の列数とを有する前記距離行列を算出し、
     前記評価指数算出部は、
      前記基準クラスタと前記対象クラスタとについて算出した前記距離行列の各列及び各行の最小値を取得し、 
      前記基準クラスタ及び前記対象クラスタのそれぞれに属するノード間の平均的距離を求め、求めた2つの平均的距離の平均値を求め、
      前記基準クラスタと前記対象クラスタとについて算出した前記距離行列の各行の前記最小値のうちで前記平均値以上のものの個数である第1の値と、前記距離行列の各列の前記最小値のうちで前記平均値以上のものの個数である第2の値と、をカウントし、
     前記判定値算出部は、前記第1の値を前記基準クラスタのノード数で除算した第1の判定値と、前記第2の値を前記基準クラスタのノード数で除算した第2の判定値と、を算出し、
     前記クラスタ判定部は、前記第1及び第2の判定値のいずれかが第2の閾値よりも小さい場合、前記対象クラスタを削除対象クラスタとして選択し、
     前記クラスタ削除部は、前記削除対象クラスタを削除する、
     請求項9に記載の情報処理装置。
  11.  前記削除処理部が前記削除対象クラスタを削除した場合、又は、前記クラスタ判定部が前記第1及び第2の判定値が第2の閾値よりも大きいと判定した場合、
     前記対象クラスタ選択部は、前記対象クラスタの次に得点が低いクラスタを新たな対象クラスタとして選択し、
     前記削除処理部は、前記基準クラスタと、前記新たな対象クラスタと、に基づいてクラスタを削除する処理を行う、
     請求項10に記載の情報処理装置。
  12.  前記対象クラスタの次に得点が低いクラスタが無い場合、前記基準クラスタ選択部は、前記基準クラスタ以外に、前記基準クラスタの次に得点が低いクラスタを新たな基準クラスタとして選択し、
     前記削除処理部は、前記新たな基準クラスタに基づいてクラスタを削除する処理を行う、
     請求項11に記載の情報処理装置。
  13.  前記基準クラスタの次に得点が低いクラスタが無い場合、前記削除処理部は、クラスタを削除する処理を終了する、
     請求項12に記載の情報処理装置。
  14.  複数の入力ベクトルの入力分布構造を、多次元ベクトルで記述される複数のノードを含むネットワーク構造として学習する情報処理方法であって、
     距離行列算出部が、同じ入力ベクトルを異なる条件で学習した結果得られた、異なる入力分布構造を有する複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、一方のクラスタに属するノードと他方のクラスタに属するノードとの間の距離を示す距離行列を算出し、
     評価指数算出部が、各距離行列について各列及び各行の最小値を取得し、取得した前記最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出し、
     得点算出部が、全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出し、
     学習結果選択部が、前記得点算出部で算出された各学習結果の各クラスタの得点に基づいて、前期複数の学習結果から最終学習結果を選択する、
     情報処理方法。
  15.  複数の入力ベクトルの入力分布構造を、多次元ベクトルで記述される複数のノードを含むネットワーク構造として学習する処理をコンピュータに実行させるプログラムであって、
     同じ入力ベクトルを異なる条件で学習した結果得られた、異なる入力分布構造を有する複数の学習結果に含まれる2つの学習結果の全ての組み合わせにおいて、2つの学習結果のそれぞれから1つずつ選択した2つのクラスタ間の全ての組み合わせについて、一方のクラスタに属するノードと他方のクラスタに属するノードとの間の距離を示す距離行列を算出する処理と、
     各距離行列について各列及び各行の最小値を取得し、取得した前記最小値のうちで所定条件を満たすものの個数に基づいて各距離行列にかかる評価指数を算出する処理と、
     全ての距離行列について算出した評価指数に基づいて、各学習結果の各クラスタについて、注目している学習結果以外の他の学習結果のクラスタと類似している度合いを示す得点を算出する処理と、
     算出された各学習結果の各クラスタの前記得点に基づいて、前期複数の学習結果から最終学習結果を選択する処理と、をコンピュータに実行させる、
     プログラムが格納された非一時的なコンピュータ可読媒体。
PCT/JP2021/031882 2020-12-28 2021-08-31 情報処理装置、情報処理方法及び非一時的なコンピュータ可読媒体 WO2022145089A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022572907A JP7511278B2 (ja) 2020-12-28 2021-08-31 情報処理装置、情報処理方法及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020218716 2020-12-28
JP2020-218716 2020-12-28

Publications (1)

Publication Number Publication Date
WO2022145089A1 true WO2022145089A1 (ja) 2022-07-07

Family

ID=82259180

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/031882 WO2022145089A1 (ja) 2020-12-28 2021-08-31 情報処理装置、情報処理方法及び非一時的なコンピュータ可読媒体

Country Status (1)

Country Link
WO (1) WO2022145089A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014164396A (ja) * 2013-02-22 2014-09-08 Tokyo Institute Of Technology 情報処理装置、情報処理方法及びプログラム
JP2019128610A (ja) * 2018-01-19 2019-08-01 富士通株式会社 学習プログラム、学習方法および学習装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014164396A (ja) * 2013-02-22 2014-09-08 Tokyo Institute Of Technology 情報処理装置、情報処理方法及びプログラム
JP2019128610A (ja) * 2018-01-19 2019-08-01 富士通株式会社 学習プログラム、学習方法および学習装置

Also Published As

Publication number Publication date
JPWO2022145089A1 (ja) 2022-07-07

Similar Documents

Publication Publication Date Title
Kaoungku et al. The silhouette width criterion for clustering and association mining to select image features
Goyal et al. A comprehensive approach to operation sequence similarity based part family formation in the reconfigurable manufacturing system
Hassanat Two-point-based binary search trees for accelerating big data classification using KNN
Song et al. A hybrid evolutionary computation approach with its application for optimizing text document clustering
CN110046634B (zh) 聚类结果的解释方法和装置
Ren et al. K-means clustering algorithm based on coefficient of variation
Yang et al. A shapelet learning method for time series classification
JP2001117947A (ja) 高次元データを分類するための方法及びそれにより形成される分類木並びにコンピュータシステム
Mathivanan et al. Analysis of k-means clustering algorithm: A case study using large scale e-commerce products
Taghva et al. Effects of similarity metrics on document clustering
Chavan et al. Mini batch K-Means clustering on large dataset
Sabahi et al. An unsupervised learning based method for content-based image retrieval using hopfield neural network
Mathivanan et al. A comparative study on dimensionality reduction between principal component analysis and k-means clustering
Baena-García et al. TF-SIDF: Term frequency, sketched inverse document frequency
Yi̇ği̇t et al. A new feature selection method for text categorization based on information gain and particle swarm optimization
Pham et al. Technique for selecting examples in inductive learning
Haripriya et al. Multi label prediction using association rule generation and simple k-means
WO2022145089A1 (ja) 情報処理装置、情報処理方法及び非一時的なコンピュータ可読媒体
CN111832645A (zh) 基于离散型乌鸦差分协同搜索算法的分类数据特征选择方法
JP7511278B2 (ja) 情報処理装置、情報処理方法及びプログラム
Bahrami et al. Automatic image annotation using an evolutionary algorithm (IAGA)
Weng et al. A multiclass classification model for stock news based on structured data
Moon et al. Active learning with partially featured data
Nayak et al. A modified differential evolution-based fuzzy multi-objective approach for clustering
Ali et al. A k nearest neighbours classifiers ensemble based on extended neighbourhood rule and features subsets

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022572907

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21914950

Country of ref document: EP

Kind code of ref document: A1