Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3675682B2 - Cluster analysis processing method, apparatus, and recording medium recording cluster analysis program - Google Patents
[go: Go Back, main page]

JP3675682B2 - Cluster analysis processing method, apparatus, and recording medium recording cluster analysis program - Google Patents

Cluster analysis processing method, apparatus, and recording medium recording cluster analysis program Download PDF

Info

Publication number
JP3675682B2
JP3675682B2 JP27047599A JP27047599A JP3675682B2 JP 3675682 B2 JP3675682 B2 JP 3675682B2 JP 27047599 A JP27047599 A JP 27047599A JP 27047599 A JP27047599 A JP 27047599A JP 3675682 B2 JP3675682 B2 JP 3675682B2
Authority
JP
Japan
Prior art keywords
maximum value
row
data
column
similarity
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 - Lifetime
Application number
JP27047599A
Other languages
Japanese (ja)
Other versions
JP2001092841A (en
Inventor
正之 杉崎
大二郎 森
雅且 大久保
一男 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP27047599A priority Critical patent/JP3675682B2/en
Publication of JP2001092841A publication Critical patent/JP2001092841A/en
Application granted granted Critical
Publication of JP3675682B2 publication Critical patent/JP3675682B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はクラスター分析処理方法および装置に関する。
【0002】
【従来の技術】
近年、インターネットなどのコンピュータネットワークの普及により、不特定多数を対象に電子化された大量の情報がやりとりされている。これらの大量の情報の中から重要な情報を獲得するために、様々な分析手法が存在する。中でも、類似した情報同士を結び付け2分木を生成するクラスター分析方法は、情報の分類手法として数多く利用されている。
【0003】
クラスター分析とは「異質なものの混ざりあっている対象(それは個体=ものの場合もあるし、変数の場合もある)を、それらの間に何らかの意味で定義された類似度(similarity)を手がかりにして似たものを集め、いくつかの均質なものの集落(クラスター)を分類する方法を総称したもの」である(“多変量統計解析法”田中、脇本、現代数学社、1983初版)。
【0004】
簡単にアルゴリズムを説明すると、個々のデータの数をNとして、
1.データ集合D={1,...,N}の各データ間の類似度を計算
2.データ集合Dから最も類似したデータの組(i,j)を探索
3.i,jから新たなクラスターkを生成し、データ集合Dに加える
4.データ集合Dからi,jを削除する
5.終了条件を満たすまで、上記1,2,3,4を繰り返す
となる。終了条件とは、例えば「クラスターの数がm個まで」や、上記アルゴリズムの2で「類似度の値によって類似していると判断されなくなった場合」などがある。図9が、クラスター分析処理のイメージ図である。
【0005】
実際にクラスター分析を行う対象としては、文書の自動分類などがある。新聞記事などの大量の文書を集めておき、類似した内容の文書同士を収集させ分類する方法として利用される。この場合、各文書の特徴を、要素が文書内に存在する単語と1対1に対応したベクトル(特徴ベクトル)として表現する。各単語に対応する要素は、文書に対するその単語の重要度(重み)を実数値化して表現する。単語の重みの計算方法は、その単語の出現頻度や文書集合全体における分布の割合や文字数の長さなどを利用して決定する手法(“Automatic Text Processing ”Gerard Salton, ADDISONWESLEY pub. 1989)が一般的である。こうして得られたベクトルを用いて各文書間の類似度(距離)を定義する。例えばユークリッド空間におけるベクトル同士のなす角(cosθ) などを利用する。これにより、類似した文書同士を同じクラスターに分けていき、類似度から閾値を利用して類似していないと判断したときに、処理を止める。この結果、いくつかの文書のまとまりを得ることができる。
【0006】
【発明が解決しようとする課題】
この分析手法は、処理対象が多くなると、次のように非常に計算回数が多くなるという欠点がある。
【0007】
(1)各データ間の類似度の計算にN×N(Nはデータ数)回かかる。
【0008】
(2)最も類似しているデータの組の探索がN×N回かかる。
【0009】
(3)2つのクラスターをひとつににまとめる新たなクラスターを生成する場合、残りの個々のデータ(最初は、N−2個)との類似度の計算を行う。
【0010】
データiとデータjに対し(i,j)の類似度と(j,i)の類似度は等しい(対称性が成り立つ)とすると、(1)や(2)の計算回数は1/2になるが、オーダとしてはNの2乗に変化はない。
【0011】
本発明の目的は、計算回数のオーダを最小でN(データの個数)にするラスター分析処理方法、装置、およびラスター分析処理プログラムを記録した記録媒体を提供することにある。
【0012】
【課題を解決するための手段】
(2)の計算において、処理の途中結果を記録しておき、次の類似しているデータの組の探索時に利用することで、処理回数のオーダを最小でN(データの個数)にする方法を提案する。
【0013】
データ間の類似度の値を要素とするN×Nの行列を生成する。この行列をA={Aij}(i,j=1,...,N)とする。行列Aから最大値をとるデータの組(imax ,jmax )を見つけることを考える。
【0014】
あらかじめ(実数値、列ID)を組とした、N個の一時的な領域を用意する(これを次候補記憶テーブルT={Ti :Ti =(値、列ID),i=1,....N}とする)。各Tiには、行列Aの行iにおける最大値とその列IDを入れる。式で表すと、

Figure 0003675682
となる。次に、次候補記憶テーブルTの要素Ti=(値、列ID)の値が最大となるiを見つける。こうして得られたiとTiの列IDが最大値をとるデータの組となる。
【0015】
クラスター分析の場合、こうして得られたデータimax とjmax から新しいクラスターkを生成し、クラスターkとそれ以外のデータ(個数N−2)との類似度を計算し直し、最大値を探索する。このとき次候補記憶テーブルTを利用すると高速に探索できる。新たなクラスターk(行IDはN+1とする)を生成することにより行列Aの中で変更されるのは行imax ,jmax ,kと列imax ,jmax ,kである。この変更に伴い次候補記憶テーブルTの値の更新が確実に必要なのはimax ,jmax ,kであり、そのうち行内の最大値の探索が必要なのはkのみとなる。また、次候補記憶テーブルTの要素で、列IDの値がimax かjmax と同じであれば最大値の再計算をするが、それ以外は次候補記憶テーブルT内の要素の値がそのまま利用できる。すなわち、次候補記憶テーブルTを用いることにより、行列Aの最大値とそのデータの組の探索の計算回数のオーダーは最小時Nまで期待できる。すなわち、次候補記憶テーブルTを探索するだけで最大値が見つかるとき、そのときの計算回数のオーダはNになる。
【0016】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して説明する。
【0017】
図1を参照すると、本発明の一実施形態のクラスター分析処理装置は、データ入力部101とデータ記憶部102とクラスター分析処理部103と表示部104で構成されている。
【0018】
データ入力部101は処理を施したいデータを入力するためのものである。処理を施したいデータは、類似度(距離)が定義できるデータであればよく、〔従来の技術〕で説明した文書情報なども処理対象にできる。また、このとき各データ間の類似度を計算する関数も入力する。これは、装置側で扱える関数を提示し、装置利用者がその中から選択する方法もとれる。
【0019】
データ記憶部102は、データ入力部101で入力された情報を記憶する。
【0020】
クラスター分析処理部103は、データ入力部101で入力されたデータおよびデータ間の類似度計算用関数を用いてクラスター分析を行う。このとき、最も類似したデータの組の探索に、次候補記憶テーブルTを用いて高速化を計っている。
【0021】
表示部104は、クラスター分析の結果を表示する。
【0022】
図2はクラスター分析処理部103の処理を示すフローチャートである。データ集合D(N個)の各データ間の類似度A={Aij}(i,j=1,...,N)を計算する(ステップ201)。類似度の行列{Aij}の各行IDを探索し、類似度の最大値とそのときの列IDを求め、次候補記憶テーブルT=(T1,...,TN):Tk(val,index)に入れ、次候補記憶テーブルを探索し、類似度{Aij}の最大値を探索する(ステップ202)。imax,jmaxから新たなクラスターkを生成し、データ集合Dに加える(ステップ204)。例えば集合D「りんご、きゅうり、なし」があったとすると、果物という観点から「りんご」と「なし」が近くて、これから新たなクラスター「果物」ができあがる。データ集合Dからimax,jmaxを削除する(ステップ205)。以上を、所定の終了条件が満たされるまで繰り返す(ステップ203)。
【0023】
図3は図2中のステップ202の詳細を示すフローチャートである。なお、この処理に入る前に列ID番号Ti.index=−1に設定されている。まず類似度の行列Aの行ID番号であるiを初期化する(ステップ301)。行列Aの最大値maxVとその行ID番号maxNi、列ID番号maxNiを初期化する(ステップ302)。行ID番号Ti.indexの値を調べる(ステップ303,304),列ID番号Ti.index=−2であれば最大値を計算する必要がないのでステップ308に進み、行ID番号iを+1する。列ID番号Ti.indexが−1であれば、行ID番号がiの類似度を求める必要があるので、類似度{Aij}(l=1,...,N)の最大値を求め、その値をTi.valに保存し、そのときの列ID番号lをTi.indexに保存する(ステップ305)。maxVとTi.valを比較し(ステップ306)、Ti.valの方が大きければmaxV,maxNi,maxNjにそれぞれTi.val,i,Ti.indexを代入する(ステップ307)。行ID番号iを+1する(ステップ308)。以上、ステップ303から308までの処理を行ID番号iがNより大きくなるまで繰り返す(ステップ309)。
【0024】
以上の処理により、次候補記憶テーブルT=Tk(val,index)、類似度の行列{Aij}(i,j=1〜N)内の最大値maxVと、そのときの行IDおよび列ID番号maxNi,maxNjが求まる。
【0025】
図4は図1中のステップ205の詳細を示すフローチャートである。
【0026】
まず、i行(i=1〜N)、maxNi列の類似度AimaxNi,i行(i=1〜N)、maxNj列の類似度AimaxNj,maxNi行、maxNj列の類似度AmaxNimaxNjをいずれも−1とする(ステップ401)。行ID番号iを初期化する(ステップ402)。行ID番号iがmaxNiまたはmaxNjに等しければ、行ID番号iの類似度の最大値は求めなくてもよいので、列ID番号Ti.index=−2とする(ステップ403〜405)。iがmaxNi、maxNjでなく、Ti.indexがmaxNiまたはmaxNjに等しい場合、Ti、indexがmaxNi、maxNjのデータが削除されるため、最大値を求める必要があるので、Ti.index=−1とする(ステップ406〜408)。行ID番号iを+1する(ステップ409)。以上、ステップ403から409までの処理をiがNより大きくなるまで繰り返す(ステップ410)。
【0027】
次に、類似度の行列{Aij}に、A(N+1)j,Ai(N+1)(i,j=1〜N+1)を追加し、T(N+1) .index=−1とする(ステップ411)。最後に、データ数Nを+1インクリメントする(ステップ412)。
【0028】
次に、本実施形態を具体例により説明する。
【0029】
クラスター分析を行うデータを、例えば1999年6月のA社が発行している新聞記事一ケ月分とする。記事間の類似度は、〔従来の技術〕で説明した文書の特徴ベクトル間の成す角(cosθ) を用いる。
【0030】
図5は、類似度の行列Aから次候補記憶テーブルTを用いて最大値を探索する例である。「文書iと文書jの類似度と文書jと文書iの類似度は同じ」であるから、実際の類似度の行列Aの半分を利用する。行列Aからの最大値の探索が初めてであれば、次候補記憶テーブルTの各要素には値が入っていないため、全ての各行において最大の類似度とその列IDを記録する。このようにして次候補記憶テーブルTに入れられた値を利用して上から順に最大値を探索する。図5の例では、最大値を取る行ID番号と列ID番号の組が(5,2)でそのときの値が0.46であった。それらから、新たなクラスターを生成し、古いクラスター情報を削除した例が図5である。
【0031】
図6では、まず、類似度の行列Aの2と5の行と列それぞれの情報を空にし、さらに新たなクラスター情報をN+1として追加する。また、それに合わせて、次候補記憶テーブルTの内容も変更する。T2 とT5 の情報は削除し、TN+1 には行列Aの行ID番号N+1内の最大値とその列ID番号を記録する。それ以外に列ID番号の値が2あるいは5となる要素が存在すれば、その値も更新する。そのような要素がなければ、次の最大値の探索時の計算回数は[(次候補記憶テーブルTの探索)+(行N+1の最大値探索)]となり、オーダーはNとなる。
【0032】
図7は、文書の自動分類書類における文書数に対する処理時間を従来方法と本発明の方法とで比較して示す図である。処理対象はアンケートの自由回答文で、文書間の類似度の計算には(従来の技術)で説明した特徴ベクトル間の成す角を利用した、従来方法では文書数に2乗で比例して計算時間が増えていくが、本方法ではほぼ線形に増えていくことが確認できる。
【0033】
図8は本発明の他の実施形態のクラスター分析処理装置のブロック図である。
【0034】
本実施形態のクラスター分析処理装置は入力装置501と記憶装置502、503と出力装置504と記録媒体505とデータ処理装置506で構成されている。入力装置501、記憶装置502、出力装置504は図1中のデータ入力部101、データ記憶部102、表示部104にそれぞれ対応する。記憶装置503はハードディスクである。記録媒体505は図2〜図4の処理からなるクラスター分析処理プログラムを記録したフロッピィ・ディスク、CD−ROM、光磁気ディスクなどの記録媒体である。データ処理装置506は記録媒体505からクラスター分析処理プログラムを読み込んでこれを実行するCPUである。
【0035】
【発明の効果】
以上説明したように、本発明によれば、計算回数のオーダを最小でN(データの個数)にすることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態のクラスター分析処理装置の構成図である。
【図2】クラスター分析処理部103の処理を示すフローチャートである。
【図3】図1中のステップ202の詳細を示すフローチャートである。
【図4】図1中のステップ205の詳細なフローチャートである。
【図5】類似度の行列Aからの最大値の探索例を示す図である。
【図6】類似度の行列Aからの最大値の探索例を示す図である。
【図7】文書の自動分類処理における文書数の処理時間の関係を従来方法と本発明で比較して示す図である。
【図8】本発明の他の実施形態のクラスター分析処理装置の構成図である。
【図9】クラスター分析のイメージ図である。
【符号の説明】
101 データ入力部
102 データ記憶部
103 クラスター分析部
104 表示部
201〜205、301〜309、401〜412 ステップ
501 入力装置
502、503 記憶装置
504 出力装置
505 記録媒体
506 データ処理装置[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a cluster analysis processing method and apparatus .
[0002]
[Prior art]
In recent years, with the spread of computer networks such as the Internet, a large amount of information digitized for an unspecified number has been exchanged. In order to acquire important information from such a large amount of information, various analysis methods exist. Among them, a cluster analysis method that generates a binary tree by connecting similar pieces of information is widely used as an information classification method.
[0003]
Cluster analysis is “a mixture of heterogeneous things (individuals may be things or variables), and the similarity defined in some sense between them is a clue. It is a collective term for collecting similar things and classifying several homogeneous clusters (clusters) ("Multivariate Statistical Analysis" Tanaka, Wakimoto, Hyundai Mathematics, 1983, first edition).
[0004]
To explain the algorithm briefly, let N be the number of individual data.
1. Data set D = {1,. . . , N} to calculate the similarity between each data. 2. Search for the most similar data set (i, j) from data set D 3. Create a new cluster k from i, j and add to data set D 4. Delete i, j from data set D Until the end condition is satisfied, the above 1, 2, 3, and 4 are repeated. The termination condition includes, for example, “up to m clusters” or “when it is no longer determined to be similar by the value of similarity” in 2 of the above algorithm. FIG. 9 is an image diagram of cluster analysis processing.
[0005]
The target of actual cluster analysis includes automatic document classification. It is used as a method for collecting a large number of documents such as newspaper articles and collecting and classifying similar documents. In this case, the feature of each document is expressed as a vector (feature vector) in which the element has a one-to-one correspondence with a word existing in the document. The element corresponding to each word expresses the importance (weight) of the word with respect to the document as a real value. The method of calculating the word weight is generally determined using the frequency of the word, the distribution ratio in the entire document set, the length of the number of characters, etc. (“Automatic Text Processing” Gerard Salton, ADDISONWESLEY pub. 1989). Is. The degree of similarity (distance) between the documents is defined using the vector thus obtained. For example, the angle (cosθ) between vectors in the Euclidean space is used. Thereby, similar documents are divided into the same cluster, and when it is determined that they are not similar using a threshold value from the similarity, the processing is stopped. As a result, a group of several documents can be obtained.
[0006]
[Problems to be solved by the invention]
This analysis method has a drawback that the number of calculations increases as follows when the number of processing objects increases.
[0007]
(1) It takes N × N (N is the number of data) times to calculate the similarity between each data.
[0008]
(2) It takes N × N searches for the most similar data set.
[0009]
(3) When generating a new cluster that combines two clusters into one, the similarity with the remaining individual data (initially N-2) is calculated.
[0010]
Assuming that the similarity of (i, j) and the similarity of (j, i) are the same for data i and data j (symmetry is established), the number of calculations of (1) and (2) is halved. However, there is no change in the square of N as an order.
[0011]
An object of the present invention is the order of the number of calculations raster analyzing processing method to N (number of data) with a minimum, devices, and to provide a recording medium recording a cluster analysis program.
[0012]
[Means for Solving the Problems]
In the calculation of (2), a method in which the order of the number of times of processing is set to N (the number of data) is minimized by recording the intermediate result of the processing and using it when searching for the next similar data set. Propose.
[0013]
An N × N matrix having elements of similarity values between data is generated. Let this matrix be A = {Aij} (i, j = 1,..., N). Consider finding a data set (i max , j max ) that takes the maximum value from matrix A.
[0014]
Prepare N temporary areas with a set of (real value, column ID) in advance (this is the next candidate storage table T = {Ti: Ti = (value, column ID), i = 1,. ... N}). In each Ti, the maximum value in the row i of the matrix A and its column ID are entered. Expressed as an expression:
Figure 0003675682
It becomes. Next, i in which the value of element Ti = (value, column ID) in the next candidate storage table T is maximized is found. The i and Ti column IDs obtained in this way form a data set having the maximum value.
[0015]
In the case of cluster analysis, a new cluster k is generated from the data i max and j max thus obtained, the similarity between the cluster k and other data (number N-2) is recalculated, and the maximum value is searched. . At this time, when the next candidate storage table T is used, the search can be performed at high speed. It is the row i max , j max , k and the column i max , j max , k that are changed in the matrix A by creating a new cluster k (row ID is N + 1). With this change, it is i max , j max , k that surely needs to be updated in the value of the next candidate storage table T, and only k is required to search for the maximum value in the row. If the column ID value is the same as i max or j max in the elements of the next candidate storage table T, the maximum value is recalculated. Otherwise, the element values in the next candidate storage table T remain unchanged. Available. In other words, by using the next candidate storage table T, the order of the number of times of searching for the maximum value of the matrix A and the data set can be expected up to the minimum time N. That is, when the maximum value is found only by searching the next candidate storage table T, the order of the number of calculations at that time is N.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings.
[0017]
Referring to FIG. 1, the cluster analysis processing apparatus according to an embodiment of the present invention includes a data input unit 101, a data storage unit 102, a cluster analysis processing unit 103, and a display unit 104.
[0018]
The data input unit 101 is for inputting data to be processed. The data to be processed may be data that can define the similarity (distance), and the document information described in [Prior Art] can be processed. At this time, a function for calculating the similarity between the data is also input. This is a method in which a function that can be handled on the device side is presented, and the device user selects from among them.
[0019]
The data storage unit 102 stores information input by the data input unit 101.
[0020]
The cluster analysis processing unit 103 performs cluster analysis using the data input by the data input unit 101 and the similarity calculation function between the data. At this time, the next candidate storage table T is used to speed up the search for the most similar data set.
[0021]
The display unit 104 displays the result of cluster analysis.
[0022]
FIG. 2 is a flowchart showing the processing of the cluster analysis processing unit 103. The similarity A = {Aij} (i, j = 1,..., N) between each data of the data set D (N) is calculated (step 201). Each row ID of the similarity matrix {Aij} is searched, the maximum value of the similarity and the column ID at that time are obtained, and the next candidate storage table T = (T 1 ,..., T N ): T k (val , Index), the next candidate storage table is searched, and the maximum value of the similarity {Aij} is searched (step 202). A new cluster k is generated from i max and j max and added to the data set D (step 204). For example, if there is a set D “apples, cucumbers, none”, “apples” and “none” are close to each other from the viewpoint of fruits, and a new cluster “fruits” will be created. Delete i max and j max from the data set D (step 205). The above is repeated until a predetermined end condition is satisfied (step 203).
[0023]
FIG. 3 is a flowchart showing details of step 202 in FIG. Note that the column ID number Ti. index = -1. First, i, which is the row ID number of the matrix A of similarity, is initialized (step 301). The maximum value maxV of the matrix A, its row ID number maxNi, and column ID number maxNi are initialized (step 302). Line ID number Ti. The index value is checked (steps 303 and 304), and the column ID number Ti. If index = −2, there is no need to calculate the maximum value, so the process proceeds to step 308 and the row ID number i is incremented by one. Column ID number Ti. If the index is −1, it is necessary to obtain the similarity of the row ID number i, so the maximum value of the similarity {Aij} (l = 1,. val, and the column ID number 1 at that time is Ti. Save to index (step 305). maxV and Ti. val (step 306) and Ti. If val is larger, max., maxNi, maxNj are Ti. val, i, Ti. index is substituted (step 307). The row ID number i is incremented by 1 (step 308). The processes from step 303 to step 308 are repeated until the row ID number i becomes larger than N (step 309).
[0024]
With the above processing, the next candidate storage table T = T k (val, index), the maximum value maxV in the similarity matrix {Aij} (i, j = 1 to N), and the row ID and column ID at that time Numbers maxNi and maxNj are obtained.
[0025]
FIG. 4 is a flowchart showing details of step 205 in FIG.
[0026]
First, the similarity AimaxNi of the i row (i = 1 to N) and the maxNi column, the similarity AimaxNj of the i row (i = 1 to N), the maxNj column, the similarity AmaxNimaxNj of the maxNi row and the maxNj column are all −1. (Step 401). The row ID number i is initialized (step 402). If the row ID number i is equal to maxNi or maxNj, the maximum value of the similarity of the row ID number i may not be obtained. index = −2 (steps 403 to 405). i is not maxNi or maxNj but Ti. When index is equal to maxNi or maxNj, data of Ti and index are maxNi and maxNj is deleted, so the maximum value needs to be obtained. index = −1 (steps 406 to 408). The row ID number i is incremented by 1 (step 409). The processes from step 403 to 409 are repeated until i becomes larger than N (step 410).
[0027]
Next, A (N + 1) j and Ai (N + 1) (i, j = 1 to N + 1) are added to the similarity matrix {Aij}, and T (N + 1) . index = −1 (step 411). Finally, the data number N is incremented by +1 (step 412).
[0028]
Next, the present embodiment will be described using a specific example.
[0029]
The data to be subjected to cluster analysis is, for example, one month of newspaper articles published by Company A in June 1999. The similarity between articles uses the angle (cosθ) formed between the feature vectors of the document described in [Prior Art].
[0030]
FIG. 5 shows an example in which the maximum value is searched from the similarity matrix A using the next candidate storage table T. Since the similarity between the document i and the document j is the same as the similarity between the document j and the document i, half of the actual similarity matrix A is used. If the search for the maximum value from the matrix A is the first time, since each element of the next candidate storage table T has no value, the maximum similarity and its column ID are recorded in all the rows. In this way, the maximum value is searched in order from the top using the values stored in the next candidate storage table T. In the example of FIG. 5, the combination of the row ID number and the column ID number taking the maximum value is (5, 2), and the value at that time is 0.46. FIG. 5 shows an example in which a new cluster is generated and old cluster information is deleted from them.
[0031]
In FIG. 6, first, information on the rows and columns 2 and 5 of the similarity matrix A is emptied, and new cluster information is added as N + 1. In accordance with this, the contents of the next candidate storage table T are also changed. The information of T 2 and T 5 is deleted, and the maximum value in the row ID number N + 1 of the matrix A and its column ID number are recorded in T N + 1 . In addition, if there is an element having a column ID number value of 2 or 5, the value is also updated. If there is no such element, the number of calculations at the time of searching for the next maximum value is [(search of next candidate storage table T) + (maximum value search of row N + 1)], and the order is N.
[0032]
FIG. 7 is a diagram showing the processing time with respect to the number of documents in the automatic classification document of the document by comparing the conventional method and the method of the present invention. The processing target is a free answer sentence of the questionnaire. The similarity between the documents is calculated by using the angle between the feature vectors described in (Conventional technology). In the conventional method, the calculation is proportional to the square of the number of documents. Although time increases, it can be confirmed that this method increases almost linearly.
[0033]
FIG. 8 is a block diagram of a cluster analysis processing apparatus according to another embodiment of the present invention.
[0034]
The cluster analysis processing apparatus of this embodiment includes an input device 501, storage devices 502 and 503, an output device 504, a recording medium 505, and a data processing device 506. The input device 501, the storage device 502, and the output device 504 correspond to the data input unit 101, the data storage unit 102, and the display unit 104 in FIG. The storage device 503 is a hard disk. A recording medium 505 is a recording medium such as a floppy disk, a CD-ROM, or a magneto-optical disk in which a cluster analysis processing program including the processes shown in FIGS. The data processing device 506 is a CPU that reads a cluster analysis processing program from the recording medium 505 and executes it.
[0035]
【The invention's effect】
As described above, according to the present invention, the order of the number of calculations can be reduced to N (the number of data).
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a cluster analysis processing apparatus according to an embodiment of the present invention.
FIG. 2 is a flowchart showing processing of a cluster analysis processing unit 103;
FIG. 3 is a flowchart showing details of step 202 in FIG. 1;
4 is a detailed flowchart of step 205 in FIG. 1. FIG.
FIG. 5 is a diagram illustrating an example of searching for a maximum value from a similarity matrix A;
FIG. 6 is a diagram illustrating an example of searching for a maximum value from a similarity matrix A;
FIG. 7 is a diagram showing the relationship between the number of documents and the processing time in the automatic document classification processing in comparison with the conventional method and the present invention.
FIG. 8 is a configuration diagram of a cluster analysis processing apparatus according to another embodiment of the present invention.
FIG. 9 is an image diagram of cluster analysis.
[Explanation of symbols]
101 Data Input Unit 102 Data Storage Unit 103 Cluster Analysis Unit 104 Display Units 201-205, 301-309, 401-412 Step 501 Input Device 502, 503 Storage Device 504 Output Device 505 Recording Medium 506 Data Processing Device

Claims (3)

クラスター分析処理装置が行なうクラスター分析処理方法であって、
該クラスター分析処理装置のクラスター分析処理部が、
データの各々の間の類似度の行列から各行の類似度の最大値を探索し、類似度の最大値と、該最大値をとる列の番号を要素とする次候補記憶テーブルを作成し、該次候補記憶テーブルを探索し、前記類似度の行列内の最大値と、その最大値をとる行ID、列IDを求める処理と、
新たなクラスターを生成し、前記類似度の行列に追加するとともに、前記類似度の行列から前記最大値をとる行IDの値を行IDとする全てのデータ、前記最大値をとる列IDの値を行IDとする全てのデータ、前記最大値をとる行IDの値を列IDとする全てのデータ、前記最大値をとる列IDの値を列IDとする全てのデータを前記類似度の行列から削除し、前記次候補記憶テーブルから前記最大値をとる行ID、列IDの値を行IDとするデータを削除する処理を有し、
これら処理を所定の終了条件が満たされるまで繰り返すことを特徴とするクラスター分析処理方法。
A cluster analysis processing method performed by the cluster analysis processing apparatus,
A cluster analysis processing unit of the cluster analysis processing apparatus;
Searching for the maximum value of the similarity of each row from the matrix of similarity between each of the data, creating a next candidate storage table having the maximum value of the similarity and the number of the column taking the maximum value as elements, to search for the next candidate storage table, the maximum value in the matrix of the similarity, the process for obtaining the row ID, string ID that takes the maximum value,
A new cluster is generated and added to the similarity matrix, and all data having a row ID that takes the maximum value from the similarity matrix as a row ID, and a column ID value that takes the maximum value All the data with the row ID as the row ID, all the data with the row ID value that takes the maximum value as the column ID, and all the data with the column ID value that takes the maximum value as the column ID remove from having the next candidate from the storage table takes the maximum value row ID, the process of deleting the data to the row ID column values ID,
A cluster analysis processing method characterized by repeating these processes until a predetermined end condition is satisfied.
コンピュータを、クラスター分析処理部を有するクラスター分析処理装置として動作させるクラスター分析処理プログラムを記録した記録媒体であって、
クラスター分析処理部が、
N個のデータの各々の間の類似度の行列から各行の類似度の最大値を探索し、類似度の最大値と、該最大値をとる列の番号を要素とする次候補記憶テーブルを作成し、該次候補記憶テーブルを探索し、前記類似度の行列内の最大値と、その最大値をとる行ID、列IDを求める処理と、
新たなクラスターを生成し、前記類似度の行列に追加するとともに、前記類似度の行列から前記最大値をとる行IDの値を行IDとする全てのデータ、前記最大値をとる列IDの値を行IDとする全てのデータ、前記最大値をとる行IDの値を列IDとする全てのデータ、前記最大値をとる列IDの値を列IDとする全てのデータを前記類似度の行列から削除し、前記次候補記憶テーブルから前記最大値をとる行ID、列IDの値を行IDとするデータを削除する処理と
を所定の終了条件が満たされるまで繰り返す
ことを特徴とする、クラスター分析処理装置としてコンピュータを動作させるためのクラスター分析処理プログラムを記録した記録媒体。
A recording medium that records a cluster analysis processing program that causes a computer to operate as a cluster analysis processing apparatus having a cluster analysis processing unit,
The cluster analysis processor
The maximum value of similarity of each row is searched from the matrix of similarity between each of the N pieces of data, and a next candidate storage table including the maximum value of similarity and the number of the column taking the maximum value as elements is created. And searching the next candidate storage table to obtain a maximum value in the similarity matrix, a row ID and a column ID taking the maximum value,
A new cluster is generated and added to the similarity matrix, and all data having a row ID that takes the maximum value from the similarity matrix as a row ID, and a column ID value that takes the maximum value All the data with the row ID as the row ID, all the data with the row ID value that takes the maximum value as the column ID, and all the data with the column ID value that takes the maximum value as the column ID And deleting the data having the row ID taking the maximum value and the value of the column ID as the row ID from the next candidate storage table
Is repeated until a predetermined end condition is satisfied
The recording medium which recorded the cluster analysis processing program for operating a computer as a cluster analysis processing apparatus characterized by the above-mentioned .
クラスター分析処理部が、
N個のデータの各々の間の類似度の行列から各行の類似度の最大値を探索し、類似度の最大値と、該最大値をとる列の番号を要素とする次候補記憶テーブルを作成し、該次候補記憶テーブルを探索し、前記類似度の行列内の最大値と、その最大値をとる行ID、列IDを求める処理と、
新たなクラスターを生成し、前記類似度の行列に追加するとともに、前記類似度の行列から前記最大値をとる行IDの値を行IDとする全てのデータ、前記最大値をとる列IDの値を行IDとする全てのデータ、前記最大値をとる行IDの値を列IDとする全てのデータ、前記最大値をとる列IDの値を列IDとする全てのデータを前記類似度の行列から削除し、前記次候補記憶テーブルから前記最大値をとる行ID、列IDの値を行IDとするデータを削除する処理と
を処理終了の条件が満たされるまで繰り返す
ことを特徴とするクラスター分析処理装置。
The cluster analysis processor
The maximum value of similarity of each row is searched from the matrix of similarity between each of the N pieces of data, and a next candidate storage table including the maximum value of similarity and the number of the column taking the maximum value as elements is created. And searching the next candidate storage table to obtain a maximum value in the similarity matrix, a row ID and a column ID taking the maximum value,
A new cluster is generated and added to the similarity matrix, and all data having a row ID that takes the maximum value from the similarity matrix as a row ID, and a column ID value that takes the maximum value All the data with the row ID as the row ID, all the data with the row ID value that takes the maximum value as the column ID, and all the data with the column ID value that takes the maximum value as the column ID And deleting the data having the row ID taking the maximum value and the value of the column ID as the row ID from the next candidate storage table
Is repeated until the process termination condition is satisfied
A cluster analysis processing apparatus characterized by that.
JP27047599A 1999-09-24 1999-09-24 Cluster analysis processing method, apparatus, and recording medium recording cluster analysis program Expired - Lifetime JP3675682B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27047599A JP3675682B2 (en) 1999-09-24 1999-09-24 Cluster analysis processing method, apparatus, and recording medium recording cluster analysis program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27047599A JP3675682B2 (en) 1999-09-24 1999-09-24 Cluster analysis processing method, apparatus, and recording medium recording cluster analysis program

Publications (2)

Publication Number Publication Date
JP2001092841A JP2001092841A (en) 2001-04-06
JP3675682B2 true JP3675682B2 (en) 2005-07-27

Family

ID=17486831

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27047599A Expired - Lifetime JP3675682B2 (en) 1999-09-24 1999-09-24 Cluster analysis processing method, apparatus, and recording medium recording cluster analysis program

Country Status (1)

Country Link
JP (1) JP3675682B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234482A (en) * 2007-03-22 2008-10-02 Nippon Telegr & Teleph Corp <Ntt> Document classification apparatus, document classification method, program, and recording medium

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003330941A (en) * 2002-05-08 2003-11-21 Olympus Optical Co Ltd Similar image classification device
JP4967705B2 (en) * 2007-02-22 2012-07-04 富士ゼロックス株式会社 Cluster generation apparatus and cluster generation program
JP4931220B2 (en) * 2007-03-12 2012-05-16 インターナショナル・ビジネス・マシーンズ・コーポレーション Detection apparatus, system, program, and detection method
CN101996197B (en) * 2009-08-31 2012-12-26 中国移动通信集团公司 Cluster realizing method and system
WO2014065032A1 (en) * 2012-10-24 2014-05-01 日本電気株式会社 Electromagnetic field feature classification and presentation device
CN113822702B (en) * 2021-08-30 2023-10-20 国网辽宁省电力有限公司阜新供电公司 Inter-industry electricity demand correlation analysis system and method under emergencies
CN116503882A (en) * 2023-04-06 2023-07-28 浙江工业大学 A method for identifying verification codes by clicking on icons
CN116450653B (en) * 2023-06-09 2023-08-25 浙江大学 A Complementary Method and Device for Missing Supply Chain Data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234482A (en) * 2007-03-22 2008-10-02 Nippon Telegr & Teleph Corp <Ntt> Document classification apparatus, document classification method, program, and recording medium

Also Published As

Publication number Publication date
JP2001092841A (en) 2001-04-06

Similar Documents

Publication Publication Date Title
Snir et al. Quartets MaxCut: a divide and conquer quartets algorithm
US6360224B1 (en) Fast extraction of one-way and two-way counts from sparse data
US6654742B1 (en) Method and system for document collection final search result by arithmetical operations between search results sorted by multiple ranking metrics
EP0947937B1 (en) Image search apparatus and method
US7231375B2 (en) Computer aided query to task mapping
US6760714B1 (en) Representation and retrieval of images using content vectors derived from image information elements
US7809718B2 (en) Method and apparatus for incorporating metadata in data clustering
US20100211588A1 (en) Context-Aware Query Suggestion By Mining Log Data
US20030158850A1 (en) System and method for identifying relationships between database records
JP2002014816A (en) Method and apparatus for generating a decision tree with a discriminant and using it for data classification
JPH10187754A (en) Device and method for classifying document
JP3193658B2 (en) Method and apparatus for deriving inter-data coupling rule, and method and apparatus for extracting orthogonal convex region
JP3675682B2 (en) Cluster analysis processing method, apparatus, and recording medium recording cluster analysis program
JP2004213626A (en) Storage and retrieval of information
JP2004164608A (en) Information retrieval system
JP2004341948A (en) Concept extraction system, concept extraction method, program, and storage medium
US20100211534A1 (en) Efficient computation of ontology affinity matrices
JP4125951B2 (en) Text automatic classification method and apparatus, program, and recording medium
Ong et al. Data blending in manufacturing and supply chains
CN116166799B (en) A short text stream clustering method based on episodic memory
CN114943285B (en) Intelligent auditing system for internet news content data
JP3880534B2 (en) Document classification method and document classification program
JP3081093B2 (en) Index creation method and apparatus and document search apparatus
JPH08329112A (en) Free text search system
JP4497337B2 (en) Concept search device and recording medium recording computer program

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050105

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050304

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20050304

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050304

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050426

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3675682

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090513

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090513

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100513

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100513

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110513

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120513

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130513

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140513

Year of fee payment: 9

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term