JP6334455B2 - Clustering apparatus, method, and program - Google Patents
Clustering apparatus, method, and program Download PDFInfo
- Publication number
- JP6334455B2 JP6334455B2 JP2015088617A JP2015088617A JP6334455B2 JP 6334455 B2 JP6334455 B2 JP 6334455B2 JP 2015088617 A JP2015088617 A JP 2015088617A JP 2015088617 A JP2015088617 A JP 2015088617A JP 6334455 B2 JP6334455 B2 JP 6334455B2
- Authority
- JP
- Japan
- Prior art keywords
- cluster
- degree
- update
- data points
- unit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、クラスタリング装置、方法、及びプログラムに係り、特に、データ点の複数のクラスタへの帰属度を決定するクラスタリング装置、方法、及びプログラムに関する。 The present invention relates to a clustering apparatus, method, and program, and more particularly, to a clustering apparatus, method, and program for determining the degree of attribution of a data point to a plurality of clusters.
図12に示すように、分類対象である複数のデータ点の各々を、複数のクラスタに帰属度によって分類する際に、クラスタ帰属度の更新とクラスタ中心の更新とを交互に行うことにより最適化し、クラスタの各々について、複数のデータを分類し、クラスタ帰属度を出力する。 As shown in FIG. 12, when classifying each of a plurality of data points to be classified into a plurality of clusters according to the degree of belonging, optimization is performed by alternately updating the cluster belonging degree and updating the cluster center. For each of the clusters, a plurality of data is classified and the cluster membership is output.
クラスタ帰属度更新は、図13に示すように、複数のデータ点の各々について、複数のクラスタとの距離とソフト化パラメータを元に、複数のクラスタへの帰属度を更新する。 As shown in FIG. 13, in the cluster membership update, the membership to a plurality of clusters is updated for each of a plurality of data points based on the distance to the plurality of clusters and the softening parameter.
クラスタ中心の更新処理は、各データ点の位置と、各データ点の各クラスタへの帰属度を元に、各クラスタ中心を再設定する。そして、上記のクラスタ帰属度の更新処理と、クラスタ中心の更新処理とを収束するまで交互に最適化する。 In the cluster center update process, each cluster center is reset based on the position of each data point and the degree of attribution of each data point to each cluster. The cluster membership update process and the cluster center update process are alternately optimized until convergence.
従来は、各データ点について、所属するクラスタを各々1つに限定するLloyd法(非特許文献1)に対して、各クラスタへの帰属度を0〜1の連続値で持たせることで拡張を行ったFCM法(非特許文献2)が用いられている。 Conventionally, with respect to each data point, the Lloyd method (Non-patent Document 1) that limits the number of clusters to one to each cluster is extended by giving the degree of belonging to each cluster as a continuous value from 0 to 1. The performed FCM method (Non-patent Document 2) is used.
しかし、クラスタ帰属度更新処理における距離計算のコストは、データ数N、クラスタ数C、及びデータ次元数Dに比例する。 However, the cost of distance calculation in the cluster membership degree update process is proportional to the number of data N, the number of clusters C, and the number of data dimensions D.
そのため、データ数、クラスタ数、及びデータ次元数が多ければ多いほど、結果の出力までに多大な計算量、すなわち、計算時間を要するという問題がある。 Therefore, there is a problem that the larger the number of data, the number of clusters, and the number of data dimensions, the greater the amount of calculation, that is, the calculation time, is required until the result is output.
本発明では、上記問題点を解決するために成されたものであり、データ点の数及びクラスタの数が大きな値であっても、複数のデータ点を高速にクラスタリングすることができるクラスタリング装置、方法、及びプログラムを提供することを目的とする。 The present invention has been made to solve the above problems, and a clustering device capable of clustering a plurality of data points at high speed even if the number of data points and the number of clusters are large values, It is an object to provide a method and a program.
上記目的を達成するために、第1の発明のクラスタリング装置は、複数のデータ点を複数のクラスタにクラスタリングするクラスタリング装置であって、前記複数のデータ点の各々について、前記データ点の位置と前記複数のクラスタの各々の中心位置との距離を計算し、前記計算された距離の各々と、予め定められたソフト化パラメータとに基づいて、前記データ点の各クラスタへの帰属度を決定するクラスタ帰属度更新部と、前記複数のクラスタの各々について、前記複数のデータ点のすべての位置と、前記クラスタ帰属度更新部により算出された前記複数のデータ点の各々の前記クラスタの各々への帰属度と、前記ソフト化パラメータに基づいて、前記クラスタの中心位置を更新し、更新前と更新後の前記クラスタの中心位置の移動距離を計算し、前記複数のデータ点の各々について、前記複数のクラスタのすべての中心位置の移動距離と、前記データ点の各クラスタへの帰属度と、前記ソフト化パラメータとを用いて算出される関数値に基づいて、前記データ点についての前記クラスタ帰属度更新部により各クラスタへの帰属度を決定する処理を行う頻度を決定するクラスタ中心更新部と、予め定められた収束条件を満たすまで、前記クラスタ帰属度更新部による決定と、前記クラスタ中心更新部による決定とを繰り返す収束判定部と、を含み、前記クラスタ帰属度更新部は、前記複数のデータ点の各々について、前記クラスタ中心更新部によって前記データ点について決定された前記頻度に基づいて、前記複数のクラスタの各々への帰属度を更新するか否かを判定し、前記複数のクラスタの各々への帰属度を更新すると判定された前記データ点の各々について、前記データ点の位置と前記複数のクラスタの各々の中心位置との距離を計算し、前記計算された距離の各々と、前記ソフト化パラメータとに基づいて、前記データ点の各クラスタへの帰属度を決定する。 To achieve the above object, a clustering device of a first invention is a clustering device for clustering a plurality of data points into a plurality of clusters, and for each of the plurality of data points, the position of the data point and the data point A cluster that calculates a distance from the center position of each of a plurality of clusters, and determines the degree of belonging to each cluster of the data points based on each of the calculated distances and a predetermined softening parameter For each of the plurality of clusters, all positions of the plurality of data points, and attribution of each of the plurality of data points calculated by the cluster membership degree updating unit to each of the clusters And the center position of the cluster is updated based on the softening parameter and the distance of movement of the center position of the cluster before and after the update. For each of the plurality of data points, using the movement distance of all the central positions of the plurality of clusters, the degree of attribution of the data points to each cluster, and the softening parameter. Based on the function value, the cluster center update unit for determining the frequency of performing the process of determining the degree of membership to each cluster by the cluster membership level update unit for the data point, until a predetermined convergence condition is satisfied, A convergence determination unit that repeats the determination by the cluster membership degree updating unit and the determination by the cluster center updating unit, wherein the cluster membership level updating unit includes the cluster center updating unit for each of the plurality of data points. Whether to update the degree of belonging to each of the plurality of clusters based on the frequency determined for the data point by For each of the data points determined to update the degree of belonging to each of a plurality of clusters, calculate the distance between the position of the data point and the center position of each of the plurality of clusters, The degree of belonging to each cluster of the data points is determined based on each and the softening parameter.
第2の発明のクラスタリング方法は、クラスタ帰属度更新部と、クラスタ中心更新部と、収束判定部と、を含む、複数のデータ点を複数のクラスタにクラスタリングするクラスタリング装置における、クラスタリング方法であって、前記クラスタ帰属度更新部は、前記複数のデータ点の各々について、前記データ点の位置と前記複数のクラスタの各々の中心位置との距離を計算し、前記計算された距離の各々と、予め定められたソフト化パラメータとに基づいて、前記データ点の各クラスタへの帰属度を決定し、前記クラスタ中心更新部は、前記複数のクラスタの各々について、前記複数のデータ点のすべての位置と、前記クラスタ帰属度更新部により算出された前記複数のデータ点の各々の前記クラスタの各々への帰属度と、前記ソフト化パラメータに基づいて、前記クラスタの中心位置を更新し、更新前と更新後の前記クラスタの中心位置の移動距離を計算し、前記複数のデータ点の各々について、前記複数のクラスタのすべての中心位置の移動距離と、前記データ点の各クラスタへの帰属度と、前記ソフト化パラメータとを用いて算出される関数値に基づいて、前記データ点についての前記クラスタ帰属度更新部により各クラスタへの帰属度を決定する処理を行う頻度を決定し、前記収束判定部は、予め定められた収束条件を満たすまで、前記クラスタ帰属度更新部による決定と、前記クラスタ中心更新部による決定とを繰り返す、ことを含み、前記クラスタ帰属度更新部が前記データ点の各クラスタへの帰属度を決定することでは、前記複数のデータ点の各々について、前記クラスタ中心更新部によって前記データ点について決定された前記頻度に基づいて、前記複数のクラスタの各々への帰属度を更新するか否かを判定し、前記複数のクラスタの各々への帰属度を更新すると判定された前記データ点の各々について、前記データ点の位置と前記複数のクラスタの各々の中心位置との距離を計算し、前記計算された距離の各々と、前記ソフト化パラメータとに基づいて、前記データ点の各クラスタへの帰属度を決定する。 A clustering method according to a second invention is a clustering method in a clustering apparatus for clustering a plurality of data points into a plurality of clusters, including a cluster membership degree updating unit, a cluster center updating unit, and a convergence determining unit. The cluster membership degree updating unit calculates, for each of the plurality of data points, a distance between the position of the data point and the center position of each of the plurality of clusters, and each of the calculated distances, And determining a degree of belonging to each cluster of the data points based on the determined softening parameters, the cluster center update unit, for each of the plurality of clusters, all the positions of the plurality of data points and The degree of attribution of each of the plurality of data points calculated by the cluster membership degree updating unit to each of the clusters, and the softwareization Based on the parameters, the center position of the cluster is updated, the movement distance of the center position of the cluster before and after the update is calculated, and for each of the plurality of data points, all the center positions of the plurality of clusters are calculated. Based on a function value calculated using the moving distance of the data point, the degree of attribution of the data point to each cluster, and the softening parameter, the cluster membership degree update unit for the data point assigns each cluster to the cluster. Determining the frequency of performing the process of determining the degree of attribution, the convergence determination unit repeats the determination by the cluster membership degree update unit and the determination by the cluster center update unit until a predetermined convergence condition is satisfied, The cluster membership degree updating unit determines the degree of membership of each of the data points with respect to each of the plurality of data points. Based on the frequency determined for the data point by the cluster center updating unit, it is determined whether to update the degree of belonging to each of the plurality of clusters, and update the degree of belonging to each of the plurality of clusters. Then, for each of the determined data points, a distance between the position of the data point and the center position of each of the plurality of clusters is calculated, and based on each of the calculated distances and the softening parameter The degree of attribution of each data point to each cluster is determined.
第1及び第2の発明によれば、クラスタ帰属度更新部により、前記複数のデータ点の各々について、前記クラスタ中心更新部によって前記データ点について決定された前記頻度に基づいて、前記複数のクラスタの各々への帰属度を更新するか否かを判定し、前記複数のクラスタの各々への帰属度を更新すると判定された前記データ点の各々について、前記データ点の位置と前記複数のクラスタの各々の中心位置との距離を計算し、前記計算された距離の各々と、前記ソフト化パラメータとに基づいて、前記データ点の各クラスタへの帰属度を決定し、クラスタ中心更新部は、前記複数のクラスタの各々について、前記複数のデータ点のすべての位置と、前記クラスタ帰属度更新部により算出された前記複数のデータ点の各々の前記クラスタの各々への帰属度と、前記ソフト化パラメータに基づいて、前記クラスタの中心位置を更新し、更新前と更新後の前記クラスタの中心位置の移動距離を計算し、前記複数のデータ点の各々について、前記複数のクラスタのすべての中心位置の移動距離と、前記データ点の各クラスタへの帰属度と、前記ソフト化パラメータとを用いて算出される関数値に基づいて、前記データ点についての前記クラスタ帰属度更新部により各クラスタへの帰属度を決定する処理を行う頻度を決定し、収束判定部は、予め定められた収束条件を満たすまで、前記クラスタ帰属度更新部による決定と、前記クラスタ中心更新部による決定とを繰り返す。 According to the first and second inventions, for each of the plurality of data points, the plurality of clusters based on the frequency determined for the data point by the cluster center updating unit by the cluster membership degree updating unit. Whether to update the degree of belonging to each of the plurality of clusters, and for each of the data points determined to update the degree of belonging to each of the plurality of clusters, the position of the data points and the plurality of clusters A distance to each center position is calculated, and based on each of the calculated distances and the softening parameter, a degree of belonging to each cluster of the data points is determined, and a cluster center update unit includes For each of the plurality of clusters, all the positions of the plurality of data points and the cluster of each of the plurality of data points calculated by the cluster membership degree update unit. Update the center position of the cluster based on the degree of membership and the softening parameter, calculate the movement distance of the center position of the cluster before and after the update, and for each of the plurality of data points , Based on a function value calculated using the movement distance of all the center positions of the plurality of clusters, the degree of belonging to each cluster of the data point, and the softening parameter, the data point for the data point The frequency of performing the process of determining the degree of belonging to each cluster is determined by the cluster membership degree updating unit, and the convergence determination unit determines the cluster membership degree updating unit until the convergence condition is satisfied, and the cluster The determination by the center update unit is repeated.
このように、複数のデータ点の各々について、データ点の各クラスタへの帰属度を決定し、複数のクラスタの各々について、各データ点の位置と、前記クラスタ帰属度更新部により算出された各データ点の各クラスタへの帰属度に基づいて、クラスタの中心位置を更新し、更新前と更新後の複数のクラスタの中心位置の移動距離を各々計算し、複数のデータ点の各々について、計算された複数のクラスタへの帰属度と、計算された複数のクラスタ中心の移動距離とを用いて算出される関数値に基づいて、前記複数のデータ点についての前記クラスタ帰属度更新部により各クラスタへの帰属度を更新する処理を行う頻度を決定し、予め定められた収束条件を満たすまで、クラスタ帰属度更新部による決定と、クラスタ中心更新部による決定とを繰り返すことにより、データ点の数及びクラスタの数が大きな値であっても、複数のデータ点を高速にクラスタリングすることができる。 In this way, for each of the plurality of data points, the degree of belonging to each cluster of the data points is determined, and for each of the plurality of clusters, the position of each data point and each calculated by the cluster membership degree updating unit Based on the degree of attribution of each data point to each cluster, the center position of the cluster is updated, and the movement distances of the center positions of the plurality of clusters before and after the update are calculated. Each cluster by the cluster membership level updating unit for the plurality of data points based on a function value calculated using the calculated degrees of membership to the plurality of clusters and the calculated movement distances of the plurality of cluster centers. The frequency of performing the process of updating the degree of membership in the cluster is determined, and the determination by the cluster membership degree updating unit and the determination by the cluster center updating unit are performed until a predetermined convergence condition is satisfied. Be returned by Ri, the number of the number and cluster of data points is a large value, it is possible to cluster multiple data points at high speed.
また、第1の発明において、前記クラスタ帰属度更新部は、データ点xiの係数をkiとし、前記データ点xiの前記決定する処理を行う頻度を Further, in the first invention, the cluster membership degree updating unit sets the coefficient of the data point x i as k i, and sets the frequency of performing the determination processing of the data point x i.
とし、前記複数のクラスタのすべての中心位置の移動距離と、前記データ点xiの各クラスタへの帰属度と、前記ソフト化パラメータとを用いて算出された関数値を分母とし、予め定められた値を分子とした比率が And, to a moving distance of all of the center position of the plurality of clusters, and degree of belonging to each cluster of the data points x i, the denominator of the calculated function values using said softening parameter, predefined The ratio of the calculated value as the numerator
以上、かつ前記クラスタ帰属度更新部の処理回数tの値が As described above, the value of the processing count t of the cluster membership degree update unit is
に対して余剰を持たない場合には、前記kiをki+1と更新し、前記比率が If you do not have a surplus with respect to the said k i is updated as k i +1, the ratio
以上であって、かつ、 That's it, and
未満の場合には、前記kiをki−γと更新し、前記比率が、 If less than, update k i to k i −γ and the ratio is
以上であって、かつ、 That's it, and
未満の場合には、前記kiを更新しないことにより、前記データ点xiについての前記頻度を決定してもよい。 If not, the frequency for the data point x i may be determined by not updating the k i .
また、本発明のプログラムは、コンピュータを、上記のクラスタリング装置を構成する各部として機能させるためのプログラムである。 Moreover, the program of this invention is a program for functioning a computer as each part which comprises said clustering apparatus.
以上説明したように、本発明のクラスタリング装置、方法、及びプログラムによれば、複数のデータ点の各々について、データ点の各クラスタへの帰属度を決定し、複数のクラスタの各々について、各データ点の位置と、前記クラスタ帰属度更新部により算出された各データ点の各クラスタへの帰属度に基づいて、クラスタの中心位置を更新し、更新前と更新後の複数のクラスタの中心位置の移動距離を各々計算し、複数のデータ点の各々について、計算された複数のクラスタへの帰属度と、計算された複数のクラスタ中心の移動距離とを用いて算出される関数値に基づいて、前記複数のデータ点についての前記クラスタ帰属度更新部により各クラスタへの帰属度を更新する処理を行う頻度を決定し、予め定められた収束条件を満たすまで、クラスタ帰属度更新部による決定と、クラスタ中心更新部による決定とを繰り返すことにより、データ点の数及びクラスタの数が大きな値であっても、複数のデータ点を高速にクラスタリングすることができる。 As described above, according to the clustering apparatus, method, and program of the present invention, the degree of belonging to each cluster of data points is determined for each of a plurality of data points, and each data for each of the plurality of clusters is determined. Based on the position of the point and the degree of membership of each data point calculated by the cluster membership degree updating unit, the center position of the cluster is updated, and the center positions of the plurality of clusters before and after the update are updated. Based on the function value calculated using the calculated degree of belonging to the plurality of clusters and the calculated movement distance of the plurality of cluster centers for each of the plurality of data points. Determine the frequency of performing the process of updating the degree of belonging to each cluster by the cluster degree of update for the plurality of data points, until a predetermined convergence condition is satisfied, A decision by the raster membership updating unit, by repeating the determination by cluster center updating unit, the number of the number and cluster of data points is a large value, it is possible to cluster multiple data points at high speed.
以下、図面を参照して本発明の実施形態を詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
<本実施形態の原理>
データ点の各クラスタへの帰属度を更新する処理において、距離計算のコストを削減する方法は、(1)アルゴリズムが収束するまでの周期数を削減する方法、(2)距離計算1回あたりの計算コストを削減する方法、及び(3)1周期あたりの距離計算の回数を削減するという方法がある。なお、本実施形態においては上記(3)の方法を用いる。
<Principle of this embodiment>
In the process of updating the degree of belonging to each cluster of data points, the method for reducing the cost of distance calculation is as follows: (1) a method for reducing the number of periods until the algorithm converges, and (2) a distance calculation per time. There are a method for reducing the calculation cost and (3) a method for reducing the number of distance calculations per cycle. In the present embodiment, the method (3) is used.
本実施形態においては、図1〜3に示すように、各データと各クラスタ中心間の距離計算回数の削減と、複数クラスタへの帰属の許容を同時に実現することを目標としている。そのため、本実施形態においては、各クラスタ中心の移動距離と、該当クラスタへの各データの帰属度に応じて、クラスタ帰属度が変わるかどうかの判定頻度を調整し、アルゴリズムの効率化を図っている。 In the present embodiment, as shown in FIGS. 1 to 3, the goal is to simultaneously reduce the number of distance calculations between each data and the center of each cluster and allow the attribution to multiple clusters. Therefore, in the present embodiment, the efficiency of the algorithm is improved by adjusting the determination frequency of whether or not the cluster membership degree changes according to the movement distance of each cluster center and the attribution degree of each data to the corresponding cluster. Yes.
具体的には、データ点xiの各々について設定されている更新頻度(階層的時間刻み)Δtiに基づいて、各データ点xiについて各クラスタへの帰属度判定を行う。なお、更新頻度Δtiは、下記(1)式に示すように、データ点xiの各クラスタへの帰属度と、各クラスタ中心の1周期前からの移動距離によって算出される関数値fi,t(p,u)に応じた更新頻度である。クラスタ数はCであるとする。 Specifically, based on the update frequency (hierarchical time step) Delta] t i which is set for each data point x i, performs assignment determination for each cluster for each data point x i. The update frequency Δt i is a function value f i calculated from the degree of attribution of the data point x i to each cluster and the moving distance from the previous cycle of each cluster center, as shown in the following equation (1). , t (p, u) is the update frequency. Assume that the number of clusters is C.
ここで、クラスタjの移動距離は、 Here, the movement distance of cluster j is
で表す。データ点xiのクラスタjへの帰属度は、ui,jで表す。また、fi,t(p,u)は例えば以下のように設定する。
また、係数ki(=0,1,...,kmax)は、下記(2)、(3)、及び(4)式によって更新される。なお、Cはクラスタ数、mはソフト化パラメータ(m>1の実数)、γは整数であり、ηは定数、及びtは周期を表す。また、d(e,f)はユークリッド空間上の2点e,fの距離を表す。 The coefficient k i (= 0, 1,..., K max ) is updated by the following equations (2), (3), and (4). C is the number of clusters, m is a softening parameter (m> 1 real number), γ is an integer, η is a constant, and t is a period. D (e, f) represents the distance between two points e and f in the Euclidean space.
上記(2)式は、現在のデータ点xiの各クラスタへの帰属度更新処理の頻度について、関数値fi,t(p,u)を分母とする変数η/ fi,t(p,u)が一定閾値2ki-γ以上2ki-γ+1(γ=1,2,3,…)未満の範囲に含まれる関係を満たす場合に、データ点xiの各クラスタへの帰属度更新処理の頻度を上げる処理を行うことを表す。上記(3)式は、変数η/ fi,t(p,u)が一定閾値2ki+1以上の範囲に含まれ、かつ、周期tに対する2ki+1の剰余が0となる関係を満たす場合に、データ点xiの各クラスタへの帰属度更新処理の頻度を下げる処理を行うことを表す。上記(3)式は、上記(1)式の条件、(2)式の条件のいずれも満たさない場合に、現在の帰属度更新処理の頻度を維持する処理を行うことを表す。 The above equation (2) expresses the variable η / f i, t (p with the function value f i, t (p, u) as the denominator for the frequency of the membership update processing for the current data point x i to each cluster. , u) satisfies the relationship included in the range of the constant threshold 2 ki-γ or more and less than 2 ki-γ + 1 (γ = 1, 2, 3,...), the attribution of the data point x i to each cluster This indicates that the process of increasing the frequency of the update process is performed. The above equation (3) is such that the variable η / f i, t (p, u) is included in the range of the constant threshold 2 ki + 1 or more and the remainder of 2 ki + 1 with respect to the period t is 0. If satisfying, indicating that performing the process for lowering the frequency of membership updating process for each cluster of data points x i. The above expression (3) represents that the process of maintaining the current frequency of the attribution update process is performed when neither the condition of the expression (1) nor the condition of the expression (2) is satisfied.
図4にΔtiが1、2、及び4の値である場合の、クラスタの更新処理を行う頻度と、周期との関係を示す。 FIG. 4 shows the relationship between the frequency of performing cluster update processing and the cycle when Δt i is 1, 2, and 4.
以下、クラスタリング装置について詳細に説明する。なお、クラスタリング装置においては、FCM法に追加の処理を加える。また、FCM法の1周期当たりの計算の回数は、追加の処理を加えない場合には、データ数N、及びクラスタ数CであるとするとNC回となる(非特許文献2:J.C.Bezdek. FCM - The Fuzzy c-Means Clustering Algorithm, Computers & Geosciences, 1984.)。なお、FCM法は、周期毎に全データと全クラスタ中心との距離を計算する手法である。 Hereinafter, the clustering apparatus will be described in detail. In the clustering device, additional processing is added to the FCM method. In addition, the number of calculations per cycle in the FCM method is NC times when the number of data is N and the number of clusters is C when no additional processing is added (Non-Patent Document 2: JCBezdek. FCM). -The Fuzzy c-Means Clustering Algorithm, Computers & Geosciences, 1984.). The FCM method is a method for calculating the distance between all data and all cluster centers for each period.
<クラスタリング装置の構成>
次に、クラスタリング装置の構成について説明する。図5に示すように、クラスタリング装置100は、CPUと、RAMと、後述するクラスタ処理ルーチンを実行するためのプログラムや各種データを記憶したROMと、を含むコンピュータで構成することができる。このクラスタリング装置は、機能的には図5に示すように入力部10と、演算部20と、出力部90とを含んで構成されている。
<Configuration of clustering device>
Next, the configuration of the clustering apparatus will be described. As shown in FIG. 5, the clustering apparatus 100 can be configured by a computer including a CPU, a RAM, and a ROM that stores a program for executing a cluster processing routine described later and various data. Functionally, the clustering apparatus includes an input unit 10, a calculation unit 20, and an output unit 90 as shown in FIG.
クラスタリング装置100には、ユークリッド空間上のN個のデータ次元数Dのデータ点の集合Xと、集合Xを分割するクラスタの数C(C<N)とが入力として与えられる。クラスタリング装置100は、入力された集合Xに含まれるデータ点xiの各々を、C個のクラスタに帰属度の形で分割し、帰属度の算出結果を出力する。なお、データ点の各々は、データ点xi(i=1〜N)で表し、クラスタの各々は、クラスタj(j=1〜C)で表し、クラスタjの中心位置をクラスタ中心cjとして表し、データ点xiのクラスタjへの帰属度はui,jとして表す。 The clustering apparatus 100 is supplied with a set X of data points of N data dimensions D in the Euclidean space and a number C (C <N) of clusters that divide the set X. Clustering apparatus 100, each data point x i included in the input set X, divided by the form of the degree of membership to the C clusters, and outputs the calculation result of the degree of membership. Each data point is represented by a data point x i (i = 1 to N), each cluster is represented by a cluster j (j = 1 to C), and the center position of the cluster j is defined as a cluster center c j. And the degree of attribution of data point x i to cluster j is represented as u i, j .
入力部10は、データ点の集合Xと、クラスタの数Cと、ソフト化パラメータmと、更新頻度係数の上限値kmaxとを受け付ける。また、入力部10は、受け付けたデータ点の集合Xに含まれるデータ点xiの各々のD次元座標位置と、更新頻度係数の上限値kmaxと、ソフト化パラメータmとをパラメータ記憶部22に記憶する。 The input unit 10 receives a set X of data points, the number C of clusters, a softening parameter m, and an upper limit value k max of the update frequency coefficient. The input unit 10 includes a D-dimensional coordinates of each data point x i in the set X of the received data points, and the upper limit value k max update frequency coefficients, the parameter storage unit 22 and a softening parameter m To remember.
演算部20は、パラメータ記憶部22と、初期化部24と、クラスタ帰属度更新部26と、クラスタ中心更新部28と、収束判定部30と、を含んで構成されている。 The calculation unit 20 includes a parameter storage unit 22, an initialization unit 24, a cluster membership degree update unit 26, a cluster center update unit 28, and a convergence determination unit 30.
パラメータ記憶部22には、入力部10において受け付けたデータ点xiの各々のD次元座標位置、ソフト化パラメータm、及び更新頻度係数の上限値kmaxと、後述する初期化部24又はクラスタ中心更新部28により計算されたクラスタ中心cjの各々の位置のD次元座標位置と、後述する初期化部24又はクラスタ中心更新部28により計算されたデータ点xiの各々の更新頻度Δti、及び更新頻度係数kiと、後述するクラスタ中心更新部28により計算されたクラスタ中心cjの各々の移動距離pj,tと、後述するクラスタ帰属度更新部26において計算された周期tにおけるデータ点xiの各々と、クラスタ中心cjとの各々との距離と、後述するクラスタ帰属度更新部26において計算された周期tにおけるデータ点xiのクラスタjへの帰属度ui,jとが記憶されている。なお、周期tとは、クラスタ帰属度更新部26による処理、クラスタ中心更新部28の処理、及び収束判定部30の処理の繰り返し回数を表し、周期tの初期値は1となり、当該処理の繰り返し毎に周期tの値に1を加算していくものとする。 The parameter storage unit 22, each of the D-dimensional coordinate position of the data point x i accepted in the input unit 10, the soft parameter m, and the upper limit value k max update frequency coefficients, the initialization unit 24 or the cluster center will be described later The D-dimensional coordinate position of each position of the cluster center c j calculated by the update unit 28 and the update frequency Δt i of each data point x i calculated by the initialization unit 24 or the cluster center update unit 28 described later, And the update frequency coefficient k i , the movement distance p j, t of each cluster center c j calculated by the cluster center update unit 28 described later , and the data in the period t calculated by the cluster membership update unit 26 described later and each point x i, and the distance between each of the cluster center c j, data in the calculated period t in clusters membership update unit 26 described below membership u i to cluster j of x i, and a j are stored. The period t represents the number of repetitions of the process by the cluster membership degree update unit 26, the process of the cluster center update unit 28, and the process of the convergence determination unit 30. The initial value of the period t is 1, and the process is repeated. Assume that 1 is added to the value of the period t every time.
初期化部24は、入力部10において受け付けたデータ点xiの各々から、ランダムにC個を選択し、選択したデータ点xiのD次元座標位置を、クラスタjのクラスタ中心cjのD次元座標位置とし、パラメータ記憶部22に記憶する。また、初期化部24は、データ点xiの各々についての更新頻度Δtiの値を1としてパラメータ記憶部22に記憶する。また、初期化部24は、データ点xiの各々についての更新頻度係数kiの値を0としてパラメータ記憶部22に記憶する。また、初期化部24は、入力部10において受け付けたソフト化パラメータmを記憶する。 The initialization unit 24 randomly selects C data points from each of the data points x i received by the input unit 10, and sets the D-dimensional coordinate position of the selected data points x i to D of the cluster center c j of the cluster j . The dimension coordinate position is set and stored in the parameter storage unit 22. In addition, the initialization unit 24 stores the value of the update frequency Δt i for each data point x i as 1 in the parameter storage unit 22. The initialization unit 24 stores the value of the update frequency coefficient k i for each data point x i as 0 in the parameter storage unit 22. The initialization unit 24 stores the softening parameter m received by the input unit 10.
クラスタ帰属度更新部26は、入力部10において受け付けたデータ点の集合Xに含まれる複数のデータ点xiの各々について、当該データ点xiについて、パラメータ記憶部22に記憶されている当該データ点xiの更新頻度Δtiと現在の周期tとに基づいて、当該データ点xiの各クラスタへの帰属度を更新するために、当該データ点xiとクラスタ中心cjの各々との距離を計算する処理を省略できるか否かを判定する。 Cluster membership update unit 26, for each of a plurality of data points x i in the set X of the received data points in the input unit 10, for the data points x i, the data stored in the parameter storage section 22 based on the update frequency Delta] t i and the current period t at the point x i, in order to update the degree of belonging to each cluster of the data points x i, and each of the data points x i and the cluster center c j It is determined whether or not the process for calculating the distance can be omitted.
また、クラスタ帰属度更新部26は、計算する処理を省略できないと判定されたデータ点xiの各々について、パラメータ記憶部22に記憶されている当該データ点xiのD次元座標位置、及びクラスタ中心cjの各々のD次元座標位置との距離に基づいて、当該データ点xiと、クラスタ中心cjとの距離を計算する。そして、計算する処理を省略できないと判定されたデータ点xiの各々について、各クラスタへの帰属度ui,jを決定する。 Also, the cluster membership update unit 26, for each of the determined can not skip the process of calculating data points x i, D dimension coordinates of the data points x i stored in the parameter storage unit 22, and the cluster based on the distance between each of the D-dimensional coordinate position of the center c j, calculating the corresponding data points x i, the distance between the cluster center c j. Then, the degree of membership u i, j to each cluster is determined for each data point x i determined that the calculation process cannot be omitted.
具体的には、まず、パラメータ記憶部22に記憶されているデータ点xiの更新頻度Δtiと、周期tとに基づいて、下記(5)式を満たすか否かを判定する。 Specifically, first, based on the update frequency Δt i of the data point x i stored in the parameter storage unit 22 and the period t, it is determined whether or not the following equation (5) is satisfied.
当該データ点xiの更新頻度Δtiが、上記(5)式を満たす場合、当該データ点xiについて、当該データ点xiとクラスタ中心cjの各々との距離を計算する処理を省略できないと判定する。一方、当該データ点xiの更新頻度Δtiが、上記(5)式を満たさない場合、当該データ点xiとクラスタ中心cjの各々との距離を計算する処理を省略することができると判定し、当該データ点xiの各クラスタへの帰属度をそのままとする。 Update frequency Delta] t i of the data points x i is if it satisfies the above equation (5), for the data points x i, can not skip the process of calculating the distance between each of the data points x i and the cluster center c j Is determined. On the other hand, the update frequency Delta] t i of the data points x i If the does not satisfy the equation (5), when it is possible to omit the process of calculating the distance between each of the data points x i and the cluster center c j Determination is made, and the degree of belonging to each cluster of the data point x i is left as it is.
次に、当該データ点xiとクラスタ中心cjの各々との距離を計算する処理を省略できないと判定されたデータ点xiの各々について、パラメータ記憶部22に記憶されている当該データ点xiのD次元座標位置、及びクラスタ中心cjの各々のD次元座標位置に基づいて、当該データ点xiと、クラスタ中心cjの各々との距離の各々を計算する。ここで、周期tにおけるデータ点xiと、クラスタ中心cjとの距離をd(xi,cj,t)と表す。 Next, for each data point x i determined that the process of calculating the distance between the data point x i and each of the cluster centers c j cannot be omitted, the data point x stored in the parameter storage unit 22 i D-dimensional coordinates, and based on each of D-dimensional coordinate position of the cluster centers c j, calculating the respective distances between the data points x i, with each of the cluster center c j. Here, the distance between the data point x i and the cluster center c j in the period t is expressed as d (x i , c j, t ).
そして、当該データ点xiとクラスタ中心cjの各々との距離を計算する処理を省略できないと判定されたデータ点xiの各々について、計算された距離d(xi,cj,t)の各々とソフト化パラメータmとに基づいて、クラスタj毎に、下記(6)式に従って、当該データ点xiのクラスタjへの帰属度ui,jを更新する。 Then, the calculated distance d (x i , c j, t ) is calculated for each data point x i determined that the process of calculating the distance between the data point x i and each of the cluster centers c j cannot be omitted. And the degree of attribution u i, j of the data point x i to the cluster j is updated for each cluster j according to the following equation (6).
クラスタ中心更新部28は、クラスタ帰属度更新部26において取得したデータ点xiのクラスタjへの帰属度ui,jと、パラメータ記憶部22に記憶されているデータ点xiの各々のD次元座標位置とに基づいて、クラスタjの各々のクラスタ中心cjのD次元座標位置を更新する。また、クラスタ中心更新部28は、クラスタjの各々について、周期t−1から周期tにおいて、クラスタ中心cjのD次元座標位置の移動距離pj,tを計算する。また、クラスタ中心更新部28は、データ点xiの各々について、クラスタ帰属度更新部26において取得したデータ点xiのクラスタjへの帰属度ui,jと、計算したクラスタjの各々についての移動距離pj,tとに基づいて、更新頻度係数kiを更新し、当該更新した更新頻度係数kiに基づいて、更新頻度Δtiを更新する。 The cluster center updating unit 28 determines the degree of attribution u i, j of the data point x i acquired in the cluster membership degree updating unit 26 to the cluster j and each of the data points x i stored in the parameter storage unit 22. Based on the dimensional coordinate position, the D dimensional coordinate position of each cluster center c j of the cluster j is updated. In addition, the cluster center updating unit 28 calculates the movement distance p j, t of the D-dimensional coordinate position of the cluster center c j from the period t−1 to the period t for each cluster j. In addition, the cluster center updating unit 28 assigns , for each data point x i , the degree of membership u i, j of the data point x i acquired by the cluster membership degree updating unit 26 to the cluster j and each calculated cluster j. The update frequency coefficient k i is updated on the basis of the movement distance p j, t and the update frequency Δt i is updated on the basis of the updated update frequency coefficient k i .
具体的には、まず、クラスタjの各々について、クラスタ帰属度更新部26において取得したデータ点xiのクラスタjへの帰属度ui,jを、すべてのデータ点について取得する。次に、クラスタjの各々について、パラメータ記憶部22に記憶されている、取得したすべてのデータ点xiのクラスタjへの帰属度ui,jと、すべてのデータ点xiのD次元座標位置に基づいて、下記(7)式に従って、当該クラスタjの、周期tにおけるクラスタ中心cj,tのD次元座標位置を更新し、パラメータ記憶部22に記憶する。 Specifically, first, for each cluster j, the degree of membership u i, j of the data point x i acquired in the cluster membership degree update unit 26 to the cluster j is acquired for all data points. Next, for each cluster j, the degree of membership u i, j of all the acquired data points x i stored in the parameter storage unit 22 to the cluster j and the D-dimensional coordinates of all the data points x i are stored. Based on the position, the D-dimensional coordinate position of the cluster center c j, t in the period t of the cluster j is updated according to the following equation (7) and stored in the parameter storage unit 22.
次に、クラスタjの各々について、パラメータ記憶部22に記憶されている周期t−1のクラスタ中心cj,t−1のD次元座標位置と、計算した周期tのクラスタ中心cj,tのD次元座標位置とに基づいて、更新前と更新後のクラスタ中心の移動距離pj,tを計算し、パラメータ記憶部22に記憶する。 Next, for each cluster j, the D-dimensional coordinate position of the cluster center c j, t−1 of the period t−1 stored in the parameter storage unit 22 and the calculated cluster center c j, t of the period t Based on the D-dimensional coordinate position, the movement distance p j, t of the cluster center before and after the update is calculated and stored in the parameter storage unit 22.
次に、データ点xiの各々について、クラスタ中心の移動距離pj,tと、データ点xiのクラスタjへの帰属度ui,jと、ソフト化パラメータmとを用いて決まる関数値fi,t(p,u)を用いて、上記(2)〜(4)式に基づいて、更新頻度係数kiを更新し、パラメータ記憶部22に記憶する。ここで、計算された更新頻度係数kiの値が、パラメータ記憶部22に記憶されているkmaxよりも大きい値となる場合には、更新頻度係数ki=kmaxとし、計算された更新頻度係数kiの値が、0より小さくなる場合には、更新頻度係数ki=0とする。そして、データ点xiの各々について、計算された当該データ点xiの更新頻度係数kiに基づいて、上記(1)式に従って、当該データ点xiの更新頻度Δtiを更新し、パラメータ記憶部22に記憶する。 Then, for each data point x i, the moving distance p j of cluster centers, and t, membership u i to cluster j data point x i, and j, the function value determined by using the software parameter m Using f i, t (p, u), the update frequency coefficient k i is updated based on the equations (2) to (4) and stored in the parameter storage unit 22. Here, when the value of the calculated update frequency coefficient k i is larger than k max stored in the parameter storage unit 22, the update frequency coefficient k i = k max is set and the calculated update is performed. When the value of the frequency coefficient k i is smaller than 0, the update frequency coefficient k i = 0 is set. Then, for each data point x i, based on the update frequency coefficients k i of the calculated the data points x i, according to the above (1), and updates the update frequency Delta] t i of the data points x i, the parameter Store in the storage unit 22.
収束判定部30は、予め定められている収束条件を満たすか否かを判定する。周期t−1の評価関数Ft−1と、周期tの評価関数Ftとの差の絶対値|Ft−Ft−1|が予め定められた閾値以下であれば収束条件を満たすと判定する。 The convergence determination unit 30 determines whether or not a predetermined convergence condition is satisfied. An evaluation function F t-1 of period t-1, the absolute value of the difference between the evaluation function F t of period t | a converging condition is satisfied if the below a predetermined threshold of | F t -F t-1 judge.
また、収束判定部30は、収束条件を満たすと判定した場合には、周期tにおいて、クラスタ帰属度更新部26で取得した、データ点xiの各クラスタへの帰属度算出結果と、クラスタ中心更新部28で計算されたクラスタjの各々のクラスタ中心cjのD次元座標位置とを出力部90に出力する。一方、収束判定部30は、収束条件を満たしていないと判定した場合には、クラスタ帰属度更新部26の処理と、クラスタ中心更新部28の処理と、収束判定部30の処理とを繰り返す。 In addition, when the convergence determination unit 30 determines that the convergence condition is satisfied, the calculation result of the belonging degree to each cluster of the data point x i obtained by the cluster belonging degree update unit 26 and the cluster center in the period t. The D-dimensional coordinate position of each cluster center c j of the cluster j calculated by the updating unit 28 is output to the output unit 90. On the other hand, when it is determined that the convergence condition is not satisfied, the convergence determination unit 30 repeats the process of the cluster membership degree update unit 26, the process of the cluster center update unit 28, and the process of the convergence determination unit 30.
なお、評価関数Ftは、下記(8)式に従って計算されパラメータ記憶部22に記憶される。 The evaluation function F t is calculated according to the following equation (8) and stored in the parameter storage unit 22.
ここで、データ点xiについて、周期tにおける Here, for data point x i in period t
が、パラメータ記憶部22に存在しない場合には、パラメータ記憶部22に記憶されている、当該データ点xiについてのtの値が最も大きい Is not present in the parameter storage unit 22, the value of t stored in the parameter storage unit 22 for the data point x i is the largest.
を用いることとする。 Will be used.
<クラスタリング装置の作用>
次に、クラスタリング装置100の作用について説明する。まず、入力部10において、データ点の集合Xと、更新頻度係数の上限値kmaxと、ソフト化パラメータmを受け付け当該データ点の集合Xに含まれるデータ点xiの各々のD次元座標位置と、更新頻度係数の上限値kmaxと、ソフト化パラメータmをパラメータ記憶部22に記憶する。そして、入力部10においてクラスタ数Cを受け付けると、クラスタリング装置100によって図6〜図10に示すクラスタリング処理ルーチンを実行する。
<Operation of clustering device>
Next, the operation of the clustering apparatus 100 will be described. First, the input unit 10, a set X of data points, and the upper limit value k max update frequency coefficient, D dimension coordinates of each data point x i in the set X of the data points accepts soft parameter m Then, the upper limit value k max of the update frequency coefficient and the softening parameter m are stored in the parameter storage unit 22. When the cluster number C is received by the input unit 10, the clustering apparatus 100 executes the clustering processing routine shown in FIGS.
まず、図6のステップS100で、初期化部24は、各種パラメータの初期値を設定する。 First, in step S100 of FIG. 6, the initialization unit 24 sets initial values of various parameters.
次に、ステップS102で、クラスタ帰属度更新部26は、入力部10において受け付けたデータ点xiの各々について、当該データ点xiの所属するクラスタjへの帰属度ui,jを更新する。 Next, in step S102, the cluster membership degree update unit 26 updates the membership degree u i, j to the cluster j to which the data point x i belongs for each data point x i received by the input unit 10. .
次に、ステップS104で、クラスタ中心更新部28は、クラスタjの各々について、当該クラスタjのクラスタ中心cj,tを更新する。また、ステップS104で、クラスタ中心更新部28は、データ点xiの各々について、当該データ点xiの更新頻度係数kiを更新し、更新された更新頻度係数kiに基づいて、当該データ点xiの更新頻度Δtiを更新する。 Next, in step S104, the cluster center updating unit 28 updates the cluster center c j, t of the cluster j for each cluster j. Further, in step S104, the cluster centers update unit 28, for each data point x i, and updates the update frequency coefficients k i of the data points x i, based on the updated update frequency coefficients k i, the data to update the update frequency Δt i of a point x i.
次に、ステップS106で、収束判定部30は、パラメータ記憶部22に記憶されているデータ点xiの各々についての Next, in step S106, the convergence determining unit 30 for each data point x i stored in the parameter storage section 22
と、ソフト化パラメータmとに基づいて、収束条件を満たすか否かを判定する。収束判定部30が、収束条件を満たすと判定した場合には、クラスタリング処理は、ステップS108へ移行する。一方、収束判定部30が、収束条件を満たさないと判定した場合には、クラスタリング処理は、ステップS102へ移行し、ステップS102〜ステップS106までの処理を繰り返す。 And whether or not the convergence condition is satisfied is determined based on the softening parameter m. When the convergence determination unit 30 determines that the convergence condition is satisfied, the clustering process proceeds to step S108. On the other hand, when the convergence determination unit 30 determines that the convergence condition is not satisfied, the clustering process proceeds to step S102 and repeats the processes from step S102 to step S106.
次に、ステップS108で、収束判定部30は、ステップS102において取得したデータ点xiの各クラスタへの帰属度算出結果と、ステップS104において取得したクラスタjの各々のクラスタ中心cjのD次元座標位置とを出力部90に出力してクラスタリング処理を終了する。 Next, in step S108, the convergence determining unit 30, a degree of membership calculation results to the clusters of the acquired data points x i in step S102, D dimension of each cluster center c j of the cluster j obtained in step S104 The coordinate position is output to the output unit 90, and the clustering process is terminated.
上記ステップS100の初期化処理について、図7について詳細に説明する。 The initialization process in step S100 will be described in detail with reference to FIG.
図7のステップS200で、初期化部24は、パラメータ記憶部22に記憶されているデータ点xiの各々のD次元座標位置、及び更新頻度係数の上限値kmax、ソフト化パラメータmとを読み込む。 In step S200 of FIG. 7, the initialization unit 24, each of the D-dimensional coordinate position of the data point x i stored in the parameter storage unit 22, and the upper limit value k max update frequency coefficients and soft parameter m Read.
次に、ステップS202で、初期化部24は、周期tの値を0と設定する。 Next, in step S202, the initialization unit 24 sets the value of the period t to 0.
次に、ステップS204で、初期化部24は、入力部10において受け付けたN個のデータ点xiから、C個のデータ点xiを選択し、ステップS200において取得した、選択されたデータ点の各々のD次元座標位置をクラスタjの各々のクラスタ中心cj,tのD次元座標位置として決定し、パラメータ記憶部22に記憶する。 Next, in step S204, the initialization unit 24, the N data points x i accepted in the input unit 10, select the C-number of data points x i, obtained in step S200, the selected data points Are determined as the D-dimensional coordinate positions of the cluster centers c j, t of the cluster j, and stored in the parameter storage unit 22.
次に、ステップS206で、初期化部24は、iの値を1と設定する。 Next, in step S206, the initialization unit 24 sets the value of i to 1.
次に、ステップS208で、初期化部24は、データ点xiの更新頻度Δtiを1と設定し、パラメータ記憶部22に記憶する。 Next, in step S208, the initialization unit 24 sets the update frequency Delta] t i data points x i 1 and is stored in the parameter storage unit 22.
次に、ステップS210で、初期化部24は、データ点xiの更新頻度係数kiを0と設定し、パラメータ記憶部22に記憶する。 Next, in step S210, the initialization unit 24, the update frequency coefficients k i of the data points x i is set to 0, is stored in the parameter storage unit 22.
次に、ステップS212で、初期化部24は、iの値がNであるか否かを判定する。初期化部24が、iの値がN未満であると判定した場合には、初期化処理は、ステップS214へ移行する。一方、初期化部24が、iの値がNであると判定した場合には、初期化処理を終了する。 Next, in step S212, the initialization unit 24 determines whether or not the value of i is N. If the initialization unit 24 determines that the value of i is less than N, the initialization process proceeds to step S214. On the other hand, when the initialization unit 24 determines that the value of i is N, the initialization process ends.
次に、ステップS214で、初期化部24は、iの値をi+1と設定し、ステップS208へ移行する。 Next, in step S214, the initialization unit 24 sets the value of i to i + 1, and proceeds to step S208.
上記ステップS102のクラスタ帰属度更新処理について、図8について詳細に説明する。 The cluster membership degree update process in step S102 will be described in detail with reference to FIG.
図8のステップS300で、クラスタ帰属度更新部26は、iの値を1に設定する。 In step S300 of FIG. 8, the cluster membership degree update unit 26 sets the value of i to 1.
次に、ステップS302で、クラスタ帰属度更新部26は、tの値をt+1と設定する。 Next, in step S302, the cluster membership degree update unit 26 sets the value of t to t + 1.
次に、ステップS304で、クラスタ帰属度更新部26は、jの値を1に設定する。 Next, in step S304, the cluster membership degree update unit 26 sets the value of j to 1.
次に、ステップS306で、クラスタ帰属度更新部26は、iの値がNより大きいか否かを判定する。クラスタ帰属度更新部26が、iの値がN以下であると判定した場合には、クラスタ帰属度更新処理は、ステップS308へ移行する。一方、クラスタ帰属度更新部26が、iの値がNよりも大きいと判定した場合には、クラスタ帰属度更新処理は終了する。 Next, in step S306, the cluster membership degree update unit 26 determines whether the value of i is greater than N. When the cluster membership level update unit 26 determines that the value of i is N or less, the cluster membership level update process proceeds to step S308. On the other hand, if the cluster membership degree update unit 26 determines that the value of i is greater than N, the cluster membership degree update process ends.
次に、ステップS308で、クラスタ帰属度更新部26は、ステップS302において取得したtの値と、ステップS208、又は前回のクラスタリング処理におけるステップS509において取得したデータ点xiの更新頻度Δtiとに基づいて、上記(5)式を満たすか否かを判定する。クラスタ帰属度更新部26が、上記(5)式を満たすと判定した場合には、クラスタ帰属度更新処理は、ステップS310へ移行する。一方、クラスタ帰属度更新部26が、上記(5)式を満たさないと判定した場合には、データ点xiに関する各クラスタへの帰属度はそのままとして、ステップS318へ移行する。 Next, in step S308, the cluster membership degree update unit 26 sets the value of t acquired in step S302 and the update frequency Δt i of the data point x i acquired in step S208 or step S509 in the previous clustering process. Based on this, it is determined whether or not the above equation (5) is satisfied. When the cluster membership level update unit 26 determines that the above expression (5) is satisfied, the cluster membership level update process proceeds to step S310. On the other hand, if the cluster membership level update unit 26 determines that the above equation (5) is not satisfied, the cluster membership level regarding the data point x i is left as it is, and the process proceeds to step S318.
次に、ステップS310で、クラスタ帰属度更新部26は、jの値がC以下であるか否かを判定する。クラスタ帰属度更新部26が、jの値がC以下であると判定した場合には、クラスタ帰属度更新処理は、ステップS312へ移行する。一方、クラスタ帰属度更新部26が、jの値がCよりも大きいと判定した場合には、クラスタ帰属度更新処理は、ステップS316へ移行する。 Next, in step S310, the cluster membership degree update unit 26 determines whether the value of j is C or less. When the cluster membership degree update unit 26 determines that the value of j is C or less, the cluster membership degree update process proceeds to step S312. On the other hand, when the cluster membership degree update unit 26 determines that the value of j is greater than C, the cluster membership degree update process proceeds to step S316.
次に、ステップS312で、クラスタ帰属度更新部26は、ステップS200において取得したデータ点xiのD次元座標位置と、ステップS202、又は前回のクラスタリング処理のステップS404において取得したクラスタjのクラスタ中心cjのD次元座標位置とに基づいて、距離d(xi,cj,t)を計算する。 Next, in step S312, the cluster membership updating unit 26, a D-dimensional coordinates of the acquired data points x i in step S200, step S202, or cluster centers of the acquired cluster j at step S404 of the previous clustering process based on the D-dimensional coordinate position of c j, the distance d (x i, c j, t) is calculated.
次に、ステップS314で、クラスタ帰属度更新部26は、jの値をj+1に設定し、クラスタ帰属度更新処理は、ステップS310へ移行する。 Next, in step S314, the cluster membership degree update unit 26 sets the value of j to j + 1, and the cluster membership degree update process proceeds to step S310.
ステップS316で、クラスタ帰属度更新部26は、ステップS312において取得した、データ点xiとクラスタ中心cj,tの各々との距離d(xi,cj,t)と、ソフト化パラメータmとに基づいて、クラスタj毎に、上記(6)式に従って、当該データ点xiのクラスタjへの帰属度ui,jを、更新する。 In step S316, the cluster membership degree updating unit 26 acquires the distance d (x i , c j, t ) between the data point x i and each of the cluster centers c j, t acquired in step S312, and the softening parameter m. Based on the above, the degree of membership u i, j of the data point x i to the cluster j is updated for each cluster j according to the above equation (6).
次に、ステップS318で、クラスタ帰属度更新部26は、iの値をi+1に設定し、ステップS304へ移行する。 Next, in step S318, the cluster membership degree updating unit 26 sets the value of i to i + 1, and proceeds to step S304.
上記ステップS104のクラスタ中心更新処理について、図9、及び図10について詳細に説明する。 The cluster center update process in step S104 will be described in detail with reference to FIGS.
図9のステップS400で、クラスタ中心更新部28は、jの値を1に設定する。 In step S400 of FIG. 9, the cluster center update unit 28 sets the value of j to 1.
次に、ステップS402で、クラスタ中心更新部28は、パラメータ記憶部22に記憶されている周期t−1におけるクラスタ中心cj,t−1のD次元座標位置を読み込む。 Next, in step S < b> 402, the cluster center update unit 28 reads the D-dimensional coordinate position of the cluster center c j, t−1 in the period t−1 stored in the parameter storage unit 22.
次に、ステップS404で、クラスタ中心更新部28は、ステップS200において取得したデータ点xiの各々のD次元座標位置、ソフト化パラメータm、及びステップS316において取得したデータ点xiのクラスタjへの帰属度ui,jに基づいて、上記(7)式に従って、クラスタ中心cj,tのD次元座標位置を計算し、パラメータ記憶部22に記憶する。 Next, in step S404, the cluster center updating unit 28 converts each D-dimensional coordinate position of the data point x i acquired in step S200, the softening parameter m, and the cluster j of the data point x i acquired in step S316. The D-dimensional coordinate position of the cluster center c j, t is calculated according to the above equation (7) based on the degree of membership u i, j and stored in the parameter storage unit 22.
次に、ステップS406で、クラスタ中心更新部28は、ステップS402において取得したクラスタ中心cj,t−1のD次元座標位置と、ステップS404において取得したクラスタ中心cj,tのD次元座標位置とに基づいて、周期t−1から周期tまでにおけるクラスタ中心cjの移動距離pj,tを計算する。 Next, in step S406, the cluster center updating unit 28 determines the D-dimensional coordinate position of the cluster center c j, t−1 acquired in step S402 and the D-dimensional coordinate position of the cluster center c j, t acquired in step S404. Based on the above, the movement distance p j, t of the cluster center c j from the period t−1 to the period t is calculated.
次に、ステップS408で、クラスタ中心更新部28は、jの値がCの値よりも小さいか否かを判定する。クラスタ中心更新部28が、jの値がCの値よりも小さいと判定した場合には、ステップS410へ移行する。一方、クラスタ中心更新部28が、jの値がCの値以上であると判定した場合には、ステップS411へ移行する。 Next, in step S408, the cluster center update unit 28 determines whether the value of j is smaller than the value of C. When the cluster center updating unit 28 determines that the value of j is smaller than the value of C, the process proceeds to step S410. On the other hand, when the cluster center updating unit 28 determines that the value of j is greater than or equal to the value of C, the process proceeds to step S411.
ステップS410で、クラスタ中心更新部28は、jの値をj+1としてステップS402へ移行する。 In step S410, the cluster center update unit 28 sets j to j + 1, and proceeds to step S402.
そして、ステップS411で、クラスタ中心更新部28は、iの値を1に設定する。 In step S411, the cluster center updating unit 28 sets the value of i to 1.
次に、ステップS412で、データ点xiについて、上記ステップS316で取得した当該データ点xiの各クラスタjへの帰属度ui,jと、上記ステップS406で取得した各クラスタ中心cjの1周期前からの移動距離pj,tに基づいて、関数値fi,t(p,u)を計算し、パラメータ記憶部22に記憶する。 Next, in step S412, for the data point x i , the degree of membership u i, j of the data point x i acquired in step S316 to each cluster j and the cluster center c j acquired in step S406 are determined. A function value f i, t (p, u) is calculated based on the movement distance p j, t from one cycle before and stored in the parameter storage unit 22.
次に、ステップS414で、クラスタ中心更新部28は、ステップS412において取得した関数値fi,t(p,u)が上記(3)の条件を満たすか否かを判定する。クラスタ中心更新部28が、上記(3)の条件を満たすと判定した場合には、クラスタ中心更新処理は、ステップS416へ移行する。一方、クラスタ中心更新部28が、上記(3)の条件を満たしていないと判定した場合には、クラスタ中心更新処理は、ステップS419へ移行する。 Next, in step S414, the cluster center updating unit 28 determines whether or not the function value f i, t (p, u) acquired in step S412 satisfies the condition (3). When the cluster center updating unit 28 determines that the condition (3) is satisfied, the cluster center updating process proceeds to step S416. On the other hand, when the cluster center updating unit 28 determines that the condition (3) is not satisfied, the cluster center updating process proceeds to step S419.
次に、ステップS416で、クラスタ中心更新部28は、データ点xiの更新頻度係数kiをki+1に更新する。 Next, in step S416, the cluster centers updating unit 28 updates the update frequency coefficients k i of the data points x i to k i +1.
次に、ステップS417で、クラスタ中心更新部28は、ステップS416において取得したデータ点xiの更新頻度係数kiがステップS200において取得したkmaxの値より大きいか否かを判定する。クラスタ中心更新部28が、データ点xiの更新頻度係数kiがステップS200において取得したkmaxの値以下と判定した場合には、クラスタ中心更新処理は、kiをパラメータ記憶部22に記憶し、図10のステップS509へ移行する。一方、クラスタ中心更新部28が、データ点xiの更新頻度係数kiがステップS200において取得したkmaxの値より大きい場合には、クラスタ中心更新処理は、ステップS418へ移行する。 Next, in step S417, the cluster center updating unit 28 determines whether or not the update frequency coefficient k i of the data point x i acquired in step S416 is larger than the value of k max acquired in step S200. Cluster center updating unit 28, when the update frequency coefficients k i of the data points x i is determined to less than the value of the acquired k max in step S200, the cluster centers update processing, stores k i in the parameter storage section 22 Then, the process proceeds to step S509 in FIG. On the other hand, the cluster center updating unit 28, when the update frequency coefficients k i of the data points x i is greater than the value of k max obtained in step S200, the cluster centers updating process proceeds to step S418.
次に、ステップS418で、クラスタ中心更新部28は、ステップS416において取得したデータ点xiの更新頻度係数kiの値をステップS200において取得したkmaxの値とし、パラメータ記憶部22に記憶する。 Next, in step S418, the cluster center updating unit 28 sets the value of the update frequency coefficient k i of the data point x i acquired in step S416 as the value of k max acquired in step S200, and stores it in the parameter storage unit 22. .
ステップS419で、クラスタ中心更新部28は、ステップS412において取得した関数値fi,t(p,u)が上記(4)の条件を満たすか否かを判定する。クラスタ中心更新部28が、上記(4)の条件を満たすと判定した場合には、クラスタ中心更新処理は、ステップS420へ移行する。一方、クラスタ中心更新部28が、上記(4)の条件を満たしていないと判定した場合には、クラスタ中心更新処理は、図10のステップS500へ移行する。 In step S419, the cluster center updating unit 28 determines whether or not the function value f i, t (p, u) acquired in step S412 satisfies the condition (4). If the cluster center update unit 28 determines that the condition (4) is satisfied, the cluster center update process proceeds to step S420. On the other hand, when the cluster center updating unit 28 determines that the condition (4) is not satisfied, the cluster center updating process proceeds to step S500 in FIG.
次に、ステップS420で、クラスタ中心更新部28は、データ点xiの更新頻度係数kiをkiとし、パラメータ記憶部22に記憶し、クラスタ中心更新処理は、図10のステップS509へ移行する。 Next, in step S420, the cluster centers updating unit 28, the update frequency coefficients k i of the data points x i and k i, stored in the parameter storage unit 22, the cluster center updating process proceeds to step S509 in FIG. 10 To do.
図10のステップS500で、クラスタ中心更新部28は、γの値を1に設定する。 In step S500 of FIG. 10, the cluster center updating unit 28 sets the value of γ to 1.
次に、ステップS502で、クラスタ中心更新部28は、ステップS412において取得した関数値fi,t(p,u)が上記(2)の条件を満たすか否かを判定する。クラスタ中心更新部28が、上記(2)の条件を満たすと判定した場合には、クラスタ中心更新処理は、ステップS506へ移行する。一方、クラスタ中心更新部28が、上記(2)の条件を満たしていないと判定した場合には、クラスタ中心更新処理は、ステップS504へ移行する。 Next, in step S502, the cluster center updating unit 28 determines whether or not the function value f i, t (p, u) acquired in step S412 satisfies the condition (2). When the cluster center update unit 28 determines that the condition (2) is satisfied, the cluster center update process proceeds to step S506. On the other hand, when the cluster center updating unit 28 determines that the condition (2) is not satisfied, the cluster center updating process proceeds to step S504.
次に、ステップS504で、クラスタ中心更新部28は、γの値をγ+1に設定する。 Next, in step S504, the cluster center updating unit 28 sets the value of γ to γ + 1.
次に、ステップS506で、クラスタ中心更新部28は、データ点xiの更新頻度係数kiをki−γとする。 Next, in step S506, the cluster centers updating unit 28, the update frequency coefficients k i of the data points x i and k i-gamma.
次に、ステップS507で、クラスタ中心更新部28は、ステップS506において取得したデータ点xiの更新頻度係数kiが0の値より小さいか否かを判定する。クラスタ中心更新部28が、データ点xiの更新頻度係数kiが0の値より小さいと判定した場合には、クラスタ中心更新処理は、ステップS508へ移行する。一方、クラスタ中心更新部28が、データ点xiの更新頻度係数kiが0の値以上である場合には、クラスタ中心更新処理は、kiをパラメータ記憶部22に記憶し、ステップS509へ移行する。 Next, in step S507, the cluster center updating unit 28 determines whether or not the update frequency coefficient k i of the data point x i acquired in step S506 is smaller than a value of 0. Cluster center updating unit 28, when it is determined that the update frequency coefficients k i of the data points x i is less than the value of zero, cluster centers updating process proceeds to step S508. On the other hand, the cluster center updating unit 28, when the update frequency coefficients k i of the data points x i is a value of 0 or greater, the cluster centers updating process stores the k i in the parameter storage unit 22, to step S509 Transition.
ステップS508で、クラスタ中心更新部28は、ステップS506において取得した、データ点xiの更新頻度係数kiを0とし、パラメータ記憶部22に記憶する。 In step S508, the cluster center update unit 28 sets the update frequency coefficient k i of the data point x i acquired in step S506 to 0 and stores it in the parameter storage unit 22.
次に、ステップS509で、クラスタ中心更新部28は、ステップS416、ステップS418、ステップS420、ステップS506、又はステップS508において取得したデータ点xiの更新頻度係数kiに基づいて、上記(1)式にしたがって、データ点xiの更新頻度Δtiを更新し、パラメータ記憶部22に記憶する。 Next, in step S509, the cluster center updating unit 28, based on the update frequency coefficient k i of the data point x i acquired in step S416, step S418, step S420, step S506, or step S508, the above (1). The update frequency Δt i of the data point xi is updated according to the equation and stored in the parameter storage unit 22.
次に、ステップS510で、クラスタ中心更新部28は、iの値がNより小さいか否かを判定する。クラスタ中心更新部28が、iの値がNより小さいと判定した場合には、クラスタ中心更新処理は、ステップS512へ移行する。一方、クラスタ中心更新部28が、iの値がNより小さいと判定した場合には、クラスタ中心更新処理は終了する。 Next, in step S510, the cluster center update unit 28 determines whether or not the value of i is smaller than N. When the cluster center update unit 28 determines that the value of i is smaller than N, the cluster center update process proceeds to step S512. On the other hand, when the cluster center updating unit 28 determines that the value of i is smaller than N, the cluster center updating process ends.
ステップS512で、クラスタ中心更新部28は、iの値をi+1に設定し、図9のステップS412へ移行する。 In step S512, the cluster center update unit 28 sets the value of i to i + 1, and proceeds to step S412 in FIG.
以上説明したように、第1の実施形態に係るクラスタリング装置によれば、複数のデータ点の各々について、データ点の各クラスタへの帰属度を決定し、複数のクラスタの各々について、すべてのデータ点の位置と、すべてのデータ点の該当クラスタへの帰属度と、ソフト化パラメータに基づいてクラスタの中心位置を更新し、更新前と更新後のクラスタの中心位置の移動距離を計算し、複数のデータ点の各々について、各クラスタ中心の移動距離と、データ点の各クラスタへの帰属度と、ソフト化パラメータで算出される関数値に基づいて、データ点についての各クラスタへの帰属度を決定する処理を行う頻度を決定し、予め定められた収束条件を満たすまで、各クラスタへの帰属度決定と、データ点についての帰属度を決定する処理を行う頻度の決定とを繰り返すことにより、データ点の数及びクラスタの数が大きな値であっても、複数のデータ点を高速にクラスタリングすることができる。 As described above, according to the clustering device according to the first embodiment, the degree of belonging to each cluster of data points is determined for each of a plurality of data points, and all data for each of the plurality of clusters is determined. Update the center position of the cluster based on the position of the point, the degree of attribution of all data points to the corresponding cluster, and the softwareization parameters, and calculate the movement distance of the center position of the cluster before and after the update. For each of the data points, the degree of attribution of each data point to each cluster is calculated based on the movement distance of each cluster center, the degree of attribution of each data point to each cluster, and the function value calculated by the softening parameter. Determines the frequency of the process to be determined, and performs the process of determining the degree of belonging to each cluster and the degree of belonging to the data points until a predetermined convergence condition is satisfied. By repeating the determination of the frequency, the number of the number and cluster of data points is a large value, it is possible to cluster multiple data points at high speed.
また、従来のFCM法の1周期当たりの計算回数はNC回であるのに対し、第1の実施形態に係るクラスタリング装置100を用いることで、1周期当たりの計算回数をNIFCにすることができる。ただし、NIF<Nである。図11に従来の方法から省略された回数の例を示す。 In addition, while the number of calculations per cycle in the conventional FCM method is NC, the number of calculations per cycle is set to N IF C by using the clustering apparatus 100 according to the first embodiment. Can do. However, N IF <N. FIG. 11 shows an example of the number of times omitted from the conventional method.
また、アルゴリズムの実行時間の短縮、及び計算の高速化を実現することができる。 In addition, the algorithm execution time can be shortened and the calculation speeded up.
また、各クラスタの移動距離と、該当データ点の各クラスタへの帰属度と、ソフト化パラメータによって算出される関数値に基づいて、距離計算の対象とするかどうかの制約を加えることで、距離計算を行うデータ点の数を減らし、全体の距離計算の回数削減を実現している。 In addition, by adding restrictions on whether or not to calculate the distance based on the distance traveled by each cluster, the degree of attribution of the corresponding data point to each cluster, and the function value calculated by the softwareization parameter, The number of data points to be calculated is reduced, and the total number of distance calculations is reduced.
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。 Note that the present invention is not limited to the above-described embodiment, and various modifications and applications are possible without departing from the gist of the present invention.
例えば、収束条件を評価関数に基づいて満たしているか否かを判定する場合について説明したが、これに限定されるものではなく、周期数等、他の収束条件を用いてもよい。 For example, although the case where it is determined whether or not the convergence condition is satisfied based on the evaluation function has been described, the present invention is not limited to this, and other convergence conditions such as the number of periods may be used.
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能であるし、ネットワークを介して提供することも可能である。 Further, in the present specification, the embodiment has been described in which the program is installed in advance. However, the program can be provided by being stored in a computer-readable recording medium or provided via a network. It is also possible to do.
10 入力部
20 演算部
22 パラメータ記憶部
24 初期化部
26 クラスタ帰属度更新部
28 クラスタ中心更新部
30 収束判定部
90 出力部
100 クラスタリング装置
DESCRIPTION OF SYMBOLS 10 Input part 20 Calculation part 22 Parameter memory | storage part 24 Initialization part 26 Cluster membership degree update part 28 Cluster center update part 30 Convergence determination part 90 Output part 100 Clustering apparatus
Claims (4)
前記複数のデータ点の各々について、前記データ点の位置と前記複数のクラスタの各々の中心位置との距離を計算し、前記計算された距離の各々と、予め定められたソフト化パラメータとに基づいて、前記データ点の各クラスタへの帰属度を決定するクラスタ帰属度更新部と、
前記複数のクラスタの各々について、前記複数のデータ点のすべての位置と、前記クラスタ帰属度更新部により算出された前記複数のデータ点の各々の前記クラスタの各々への帰属度と、前記ソフト化パラメータに基づいて、前記クラスタの中心位置を更新し、更新前と更新後の前記クラスタの中心位置の移動距離を計算し、
前記複数のデータ点の各々について、前記複数のクラスタのすべての中心位置の移動距離と、前記データ点の各クラスタへの帰属度と、前記ソフト化パラメータとを用いて算出される関数値に基づいて、前記データ点についての前記クラスタ帰属度更新部により各クラスタへの帰属度を決定する処理を行う頻度を決定するクラスタ中心更新部と、
予め定められた収束条件を満たすまで、前記クラスタ帰属度更新部による決定と、前記クラスタ中心更新部による決定とを繰り返す収束判定部と、
を含み、
前記クラスタ帰属度更新部は、前記複数のデータ点の各々について、前記クラスタ中心更新部によって前記データ点について決定された前記頻度に基づいて、前記複数のクラスタの各々への帰属度を更新するか否かを判定し、前記複数のクラスタの各々への帰属度を更新すると判定された前記データ点の各々について、前記データ点の位置と前記複数のクラスタの各々の中心位置との距離を計算し、前記計算された距離の各々と、前記ソフト化パラメータとに基づいて、前記データ点の各クラスタへの帰属度を決定する
クラスタリング装置。 A clustering device for clustering a plurality of data points into a plurality of clusters,
For each of the plurality of data points, calculate a distance between the position of the data point and the center position of each of the plurality of clusters, and based on each of the calculated distances and a predetermined softening parameter A cluster membership degree update unit for determining the degree of membership of each data point to each cluster,
For each of the plurality of clusters, all positions of the plurality of data points, the degree of membership of each of the plurality of data points calculated by the cluster membership degree updating unit, and the softwareization Based on the parameters, update the center position of the cluster, calculate the movement distance of the center position of the cluster before and after the update,
For each of the plurality of data points, based on a function value calculated using the movement distance of all the central positions of the plurality of clusters, the degree of belonging to each cluster of the data points, and the softening parameter A cluster center updating unit that determines the frequency of performing the process of determining the degree of belonging to each cluster by the cluster membership degree updating unit for the data point;
A convergence determination unit that repeats the determination by the cluster membership update unit and the determination by the cluster center update unit until a predetermined convergence condition is satisfied,
Including
Whether the cluster membership degree updating unit updates the membership degree to each of the plurality of clusters based on the frequency determined for the data point by the cluster center updating unit for each of the plurality of data points. And for each of the data points determined to update the degree of belonging to each of the plurality of clusters, the distance between the position of the data point and the center position of each of the plurality of clusters is calculated. A clustering device that determines the degree of attribution of each data point to each cluster based on each of the calculated distances and the softening parameter.
前記クラスタ帰属度更新部は、前記複数のデータ点の各々について、前記データ点の位置と前記複数のクラスタの各々の中心位置との距離を計算し、前記計算された距離の各々と、予め定められたソフト化パラメータとに基づいて、前記データ点の各クラスタへの帰属度を決定し、
前記クラスタ中心更新部は、前記複数のクラスタの各々について、前記複数のデータ点のすべての位置と、前記クラスタ帰属度更新部により算出された前記複数のデータ点の各々の前記クラスタの各々への帰属度と、前記ソフト化パラメータに基づいて、前記クラスタの中心位置を更新し、更新前と更新後の前記クラスタの中心位置の移動距離を計算し、
前記複数のデータ点の各々について、前記複数のクラスタのすべての中心位置の移動距離と、前記データ点の各クラスタへの帰属度と、前記ソフト化パラメータとを用いて算出される関数値に基づいて、前記データ点についての前記クラスタ帰属度更新部により各クラスタへの帰属度を決定する処理を行う頻度を決定し、
前記収束判定部は、予め定められた収束条件を満たすまで、前記クラスタ帰属度更新部による決定と、前記クラスタ中心更新部による決定とを繰り返す、
ことを含み、
前記クラスタ帰属度更新部が前記データ点の各クラスタへの帰属度を決定することでは、前記複数のデータ点の各々について、前記クラスタ中心更新部によって前記データ点について決定された前記頻度に基づいて、前記複数のクラスタの各々への帰属度を更新するか否かを判定し、前記複数のクラスタの各々への帰属度を更新すると判定された前記データ点の各々について、前記データ点の位置と前記複数のクラスタの各々の中心位置との距離を計算し、前記計算された距離の各々と、前記ソフト化パラメータとに基づいて、前記データ点の各クラスタへの帰属度を決定する
クラスタリング方法。 A clustering method in a clustering apparatus for clustering a plurality of data points into a plurality of clusters, including a cluster membership degree update unit, a cluster center update unit, and a convergence determination unit,
The cluster membership degree update unit calculates a distance between a position of the data point and a center position of each of the plurality of clusters for each of the plurality of data points, and determines each of the calculated distances in advance. And the degree of attribution of the data points to each cluster based on the softening parameters determined,
The cluster center updating unit includes, for each of the plurality of clusters, all positions of the plurality of data points, and each of the plurality of data points calculated by the cluster membership degree updating unit to each of the clusters. Based on the degree of attribution and the softening parameter, update the center position of the cluster, calculate the movement distance of the center position of the cluster before and after the update,
For each of the plurality of data points, based on a function value calculated using the movement distance of all the central positions of the plurality of clusters, the degree of belonging to each cluster of the data points, and the softening parameter Determining the frequency of performing the process of determining the degree of belonging to each cluster by the cluster degree of update for the data point,
The convergence determination unit repeats the determination by the cluster membership degree update unit and the determination by the cluster center update unit until a predetermined convergence condition is satisfied,
Including
The cluster membership degree updating unit determines the degree of membership of each of the data points to each cluster based on the frequency determined for the data point by the cluster center updating unit for each of the plurality of data points. Determining whether to update the degree of belonging to each of the plurality of clusters, and for each of the data points determined to update the degree of belonging to each of the plurality of clusters, A clustering method that calculates a distance from a center position of each of the plurality of clusters, and determines the degree of belonging to each cluster of the data points based on each of the calculated distances and the softening parameter.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015088617A JP6334455B2 (en) | 2015-04-23 | 2015-04-23 | Clustering apparatus, method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015088617A JP6334455B2 (en) | 2015-04-23 | 2015-04-23 | Clustering apparatus, method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2016206986A JP2016206986A (en) | 2016-12-08 |
| JP6334455B2 true JP6334455B2 (en) | 2018-05-30 |
Family
ID=57487874
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015088617A Expired - Fee Related JP6334455B2 (en) | 2015-04-23 | 2015-04-23 | Clustering apparatus, method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6334455B2 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107507028B (en) * | 2017-08-16 | 2021-11-30 | 北京京东尚科信息技术有限公司 | User preference determination method, device, equipment and storage medium |
| CN108319682B (en) * | 2018-01-31 | 2021-12-28 | 天闻数媒科技(北京)有限公司 | Method, device, equipment and medium for correcting classifier and constructing classification corpus |
| CN109583797B (en) * | 2019-01-28 | 2022-08-02 | 吉林大学 | Commercial complex fuzzy clustering method for parking generation rate acquisition |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003256429A (en) * | 2002-03-01 | 2003-09-12 | Kyodo Printing Co Ltd | Pattern retrieval apparatus and method |
| JP2004280254A (en) * | 2003-03-13 | 2004-10-07 | Sanyo Electric Co Ltd | Content classification method and apparatus |
| JP4999886B2 (en) * | 2009-06-09 | 2012-08-15 | ヤフー株式会社 | Image search device |
| JP5370267B2 (en) * | 2010-05-27 | 2013-12-18 | 株式会社デンソーアイティーラボラトリ | Image processing system |
-
2015
- 2015-04-23 JP JP2015088617A patent/JP6334455B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2016206986A (en) | 2016-12-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6965206B2 (en) | Clustering device, clustering method and program | |
| JP5160147B2 (en) | Tire design method | |
| JP6334454B2 (en) | Clustering apparatus, method, and program | |
| JP6569497B2 (en) | Prediction device, method and program | |
| JP6334455B2 (en) | Clustering apparatus, method, and program | |
| JPWO2016001998A1 (en) | Similarity calculation system, similarity calculation method, and program | |
| JP4591794B2 (en) | Information processing apparatus and method, and program | |
| Davarynejad et al. | A novel general framework for evolutionary optimization: Adaptive fuzzy fitness granulation | |
| JP4697670B2 (en) | Identification data learning system, learning device, identification device, and learning method | |
| CN106295670B (en) | Data processing method and data processing device | |
| CN110275895B (en) | A filling device, device and method for missing traffic data | |
| JP5163472B2 (en) | Design support apparatus, method, and program for dividing and modeling parameter space | |
| JP2016224915A (en) | Data clustering method, information processing apparatus, and data clustering program | |
| JP6689316B2 (en) | Computer system and learning control method | |
| JP2020067980A (en) | Prediction program, prediction method, and prediction device | |
| CN105975519A (en) | Multi-supporting point index-based outlier detection method and system | |
| JP7287490B2 (en) | LEARNING DEVICE, LEARNING METHOD, AND PROGRAM | |
| KR102102517B1 (en) | Apparatus and method of optimization calculation | |
| CN106600119A (en) | K-means-based power user clustering method and device | |
| CN116681104B (en) | Model building and realizing method of distributed space diagram neural network | |
| JP6601401B2 (en) | Tire model creation method, tire model creation device, tire simulation method, and non-transitory computer-readable medium | |
| CN106408082A (en) | Control method and system based on region segmentation | |
| US20210182672A1 (en) | Self-organizing map learning device and method, non-transitory computer readable medium storing self-organizing map learning program and state determination device | |
| CN105139020A (en) | User clustering method and device | |
| JP6310408B2 (en) | Clustering apparatus, method, and program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170621 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180410 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180424 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180426 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6334455 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |