説明

逐次クラスタリング装置とその方法及びプログラム

【課題】 クラスタリングによるDBSCANアルゴリズムを逐次的に実行することができるようにする。
【解決手段】 クラスタ更新は、新しく追加された点pとその近傍の点のうち、新しくクラスタ核になる点があるかどうかを調べる処理と、クラスタ核になる点があった場合に新しいクラスタの生成、既存クラスタ間の統合を行う処理の2つの処理を行う。具体的には、逐次的に与えられる点pとそのε-近傍に含まれる点の集合を入力として与え(S22)、ε-近傍に含まれる点の数がN以上かどうかを調べ(S23)、N以上であった場合には、pはクラスタ核となるため、クラスタ更新部分処理1(S24)に進み、pにクラスタ核マークを与え、新しいクラスタIDを発行して、点pにそのクラスタIDを与える。N以下の場合はpはクラスタ核ではないため、クラスタ更新部分処理2(S25)に進み、クラスタ核マークの付け替え処理を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、例えばGPS(Global Positioning System)等を利用することによって得られるユーザ位置情報から、当該ユーザが滞在している場所をリアルタイムに判定する処理に利用される逐次クラスタリング装置とその方法及びプログラムに関する。
【背景技術】
【0002】
GPS等を用いて一定時間間隔で取得されたユーザの位置を示す座標データ(以下、本明細書において点データと総称する)から、クラスタリングによってユーザが滞在した場所を抽出する処理が提案されている。このようなアルゴリズムのひとつとしてDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムが利用されており、効果をあげている。DBSCANアルゴリズムの特性として、ノイズを含むデータに強い、クラスタの形状に依存しないなどの点が挙げられる。
【0003】
しかしながら、既存のDBSCANアルゴリズムには、その逐次的な実行方法が示されていない。そのため、点データが逐次的に得られる状況で、得られた点データに対して常に最新のクラスタリング結果を得ようとした場合、新しく点データが得られるごとに、現在までに得られた全ての点データに対してクラスタリング処理を再実行しなければならない。この処理には計算コストがかかるため、リアルタイムで入力データが得られる状況でユーザの滞在地を知るような処理には不向きである。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Martin Ester, Hans-Peter Kriegel, Jorg Sander, Xiaowei Xu, "A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise", ACM KDD‘96
【非特許文献2】Brett Adams, Dinh Phung, and Svetha Venkatesh, "Extraction of Social Context and Application to Personal Multimedia Exploration", ACM MM'06
【発明の概要】
【発明が解決しようとする課題】
【0005】
以上のように、既存のDBSCANアルゴリズムには、その逐次的な実行方法が示されていないため、入力データが逐次的に得られる状況で、得られたデータに対して常に最新のクラスタリング結果を得る場合には、新しくデータが得られるごとに現在までに得られた全てのデータに対してクラスタリング処理を再実行しなければならない。
【0006】
本発明は、上記の事情を鑑みてなされたもので、逐次的にデータが得られる状況でクラスタリングによるDBSCANアルゴリズムを逐次的に実行する際の計算コストを削減することのできる逐次クラスタリング装置とその方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために本発明に係る逐次クラスタリング装置、逐次クラスタリング方法、逐次クラスタリングプログラムは以下のような態様の構成とする。
【0008】
(1)新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムを実行する逐次クラスタリング装置であって、過去のクラスタリング処理されたクラスタ構造を蓄積しておき、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新することとし、前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定する判定手段と、前記判定の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新する更新手段とを備える構成とする。
【0009】
(2)新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムを実行する逐次クラスタリング方法であって、過去のクラスタリング処理されたクラスタ構造を蓄積しておき、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新することとし、前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定し、前記判定の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新する構成とする。
【0010】
(3)新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムをコンピュータに実行させるための逐次クラスタリングプログラムであって、過去のクラスタリング処理されたクラスタ構造を蓄積してする蓄積処理と、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新する処理を備え、前記更新処理は、前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定し、前記判定処理の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新する構成とする。
【0011】
すなわち、本発明に係る逐次クラスタリング装置、方法、プログラムでは、クラスタリングによるDBSCANアルゴリズムを逐次的に実行する手法として、新たな点データが逐次的に得られる状況で、毎回それまでに得られた全ての点データを入力としてDBSCANアルゴリズムを再実行するのではなく、前回の計算で得られたクラスタ結果を新たな点データに合わせて更新することで新しいクラスタを得るようにしている。この手法を用いることで、逐次的に点データが得られる状況でクラスタリングを実行する計算コストが削減される。
【0012】
手法のポイントは、新たな点データが追加されるときに起こりうる変化として、(1)新しく追加された点がいずれかのクラスタに含まれる、(2)新しく追加された点がクラスタ核になる、(3)新しく追加された点の近傍の点がクラスタ核になる、(4)新しく追加された点がNOISE(雑音)になる、の4種類のみに限定されることに着目したことである。これらのうち既存のクラスタの構造の変化を引き起こす可能性があるのは(2)、(3)のみである。これらの変化が生じた場合、既存のクラスタの構造に対して、(a)新しいクラスタの出現、(b)既存のクラスタの拡張、(C)クラスタ間の結合、のいずれかが発生する可能性があるため、これらの変化の発生を調べる。いずれの処理も追加した点の近傍のみを調べることで行うことができるため、更新の範囲が局所的なものにすることができ、計算コストの削減になる。
【発明の効果】
【0013】
本発明によれば、逐次的に点データが得られる状況でクラスタリングによるDBSCANアルゴリズムを逐次的に実行する際の計算コストを削減することのできる逐次クラスタリング装置とその方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0014】
【図1】本発明に係る逐次クラスタリング装置の一実施形態とするユーザ位置判定システムの全体構成を示すブロック図。
【図2】上記実施形態の位置データの例を示す図。
【図3】上記実施形態のクラスタデータの例を示す図。
【図4】上記実施形態のID変換テーブルの例を示す図。
【図5】上記実施形態において、装置全体の処理の流れを示すフローチャート。
【図6】図5の逐次クラスタリング処理の流れを示すフローチャート。
【図7】図6の近傍位置データ取得処理の流れを示すフローチャート。
【図8】図6のクラスタ更新処理の流れを示すフローチャート。
【図9】図7のクラスタ部分更新処理1の流れを示すフローチャート。
【図10】図9のクラスタ部分更新処理1−1の流れを示すフローチャート。
【図11】図7のクラスタ部分更新処理2の流れを示すフローチャート。
【図12】図11のクラスタ部分更新処理2−1の流れを示すフローチャート。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【0016】
図1は本発明に係る逐次クラスタリング装置を利用したユーザ位置判定システムの全体構成を示すブロック図である。このシステムは、入力部11、記録部12、処理部13、出力部14から構成される。
【0017】
入力部11はGPS受信機等によって得られる位置情報を逐次入力するための位置情報逐次入力手段111を備える。この入力手段11は、逐次的に与えられ、二次元の座標をもつ点として表される位置データを取り込んで、順次記録部12の位置データ記録手段121に送信する。
【0018】
記録部12は位置データ記録手段121、クラスタリング結果記録手段122、クラスタID変換テーブル記録手段123を備える。
【0019】
位置データ記録手段121は、入力部11から送信される位置データを随時受け取って記録する。位置データは、図2に示す例のように、記録部12に入力された順に付与される入力データIDをそれぞれの座標を対応付けた形式で保持される。一度記録されたデータが修正されることはない。
【0020】
クラスタリング結果記録手段122は、位置データ記録手段121に記録されている位置データを処理部13の逐次クラスタリング処理手段131に適用することによって得られた出力を格納する。クラスタリング結果記録手段122によって記録されるクラスタデータの例を図3に示す。
【0021】
図3に示すクラスタデータでは、テーブルの1列目と2列目によって、各入力データIDに、それぞれの点がどのクラスタに属するかを示すクラスタIDを対応付けている。例えば、入力データID1と3が示す点が、同じクラスタ(クラスタID1)に属することを示している。一般にクラスタリングアルゴリズムとは、入力データに対してそれが属するクラスタを割り振るものである。DBSCANアルゴリズムに特有の概念として、入力された点の中にはいずれのクラスタにも属さないものもあり、そのような点にはNOIZEという特別なIDが与えられる。
【0022】
図3のテーブルの3列目にはその点がクラスタ核かどうかを示すフラグが保持される。ここで、ある点がクラスタ核であるとは、「その点の座標を中心として、距離があるしきい値以内(以下、εとする)にN点以上の点が存在すること」と定義する。ここで、ある点pから距離ε以内にある点の集合を「点pのε-近傍」と定義する。クラスタ核はDBSCANアルゴリズムにおいて中心となる概念である。DBSCANアルゴリズムはクラスタ核である点とその近傍、さらに近傍に別のクラスタ核が含まれるならば、さらにその近傍を…として、クラスタ核の近傍を一つのクラスタとしてクラスタリングを行う手法である(DBSCANの詳細については非特許文献1を参照)。
【0023】
クラスタID変換テーブル記録手段123は、逐次クラスタリング処理を実行する過程で、異なるクラスタの統合が発生した場合に、それらのクラスタIDが同じクラスタを表すという情報を保管するためのものである。具体的には、図4に示すようなテーブルが保管されている。
【0024】
図4のテーブルはもとのクラスタIDと、そのクラスタIDと同じクラスタを表すクラスタIDとの対応関係が保持されている。この例では、例えばクラスタID2をもつクラスタは、クラスタID3をもつクラスタと等しく、さらにクラスタID5をもつクラスタと等しいとされる。また、ある単一のクラスタに対して発行された複数のクラスタIDのうち、最後に発行されたものをそのクラスタの代表IDとする。
【0025】
クラスタIDは、1,2,3,…と順に発行されるものとすると、あるクラスタの代表IDは、そのクラスタに対して発行されたクラスタIDのうち最大のものとなる。クラスタID変換テーブルには、常にあるIDからそれよりも大きなIDへの変換を登録するようにする。この結果として、任意のクラスタIDを入力として複数回テーブルを参照することで、対応するクラスタの代表IDを知ることができる。図4のテーブルでは、クラスタID4に対応するクラスタの代表IDはID7であるが、ID4でテーブルを検索してID6を獲得し、さらにID6で再度テーブルを検索することで代表ID7を得ることができる。
【0026】
処理部13は逐次クラスタリング処理手段131を備える。この逐次クラスタリング処理手段131は、位置データ記憶手段121から新しく与えられた入力と、クラスタリング結果記憶手段122から与えられたある時点でのクラスタリング結果を受け取り、入力が与えられた後のクラスタリング結果を出力する。
【0027】
出力部14はクラスタ出力手段141を備える。このクラスタ出力手段141は、記録部13よりクラスタリング結果を受け取り、それを出力する。
【0028】
上記システムの処理全体の処理の流れを、図5に示すフローチャートを参照して説明する。
【0029】
処理開始が指示されると(ステップS1)、入力部11から入力されるデータを待機し(ステップS2)、新しい入力があるまでは、ステップS3の判定によってステップS2に遷移して待機状態となる。新たに入力が得られたときにステップS4に遷移する。ステップS4では逐次クラスタリング処理を実行する。この処理のフローについては後述する。
【0030】
ステップS5で逐次クラスタリング処理によって得られたクラスタリング結果を記録し、ステップS6でクラスタリング結果を出力部14に記録する。ステップS7で引き続きデータが入力されるかどうかを判断し、入力されると判断されるならばデータ入力の待機状態(ステップS2)に戻る。ステップS7で入力はないと判断された場合には、一連の処理を終了する(ステップS8)。
【0031】
次に、図5の全体処理フローのステップS4で用いられる逐次クラスタリング処理について、図6に示すフローチャートを参照して説明する。
【0032】
処理開始が指示されると(ステップS11)、ステップS12,S13で、新しく与えられた入力データおよび既にクラスタリングを行った結果をロードする。ここで、新しく入力されたデータをpとする。ステップS14で新しく入力されたデータpを引数として、近傍位置データ取得処理を実行する。この近傍位置データ取得処理は、位置データ記録手段121に記録されている点のうち、点pのε-近傍に含まれる点を全て取得する処理である。詳細は後述する。ステップS15で、pのクラスタIDの初期値としてNOIZEを与える。その後、ステップS16でクラスタ更新処理を行って一連の処理を終了する(ステップS17)。
【0033】
上記ステップS14の近傍位置データ取得処理について、図7に示すフローチャートを参照して説明する。
【0034】
まず、処理開始が指示されると(ステップS101)、ステップS102で入力として与えられた点を受け取り、ステップS103で記録部12に蓄積されている位置データを読み込む。ステップS104で、S103で読み込んだ位置データのうち、S102で入力として与えられた点のε-近傍に含まれる点を全て取得する。近傍の点の取得には、[非特許文献1]と同様に、予め点を空間データの高速な検索に適したデータ構造であるR - Treeという形式で、位置データ記録手段121によって記録しておくことによって、処理時間の削減を図る。ステップS105で取得した点を出力して一連の処理を終了する(ステップS106)。
【0035】
上記クラスタ更新処理S16について図8に示すフローチャートを参照して説明する。前述したように、クラスタ更新は新しく追加された点pとその近傍の点のうち、新しくクラスタ核になる点があるかどうかを調べる処理と、クラスタ核になる点があった場合に新しいクラスタの生成、既存クラスタ間の統合を行う処理の2つの処理を行うことで成される。図8の処理では、新しく追加した点pがクラスタ核となるかどうかを調べ、それぞれの場合に対して異なる処理を実行する。
【0036】
まず、処理開始が指示されると(ステップS21)、ステップS22で点pとそのε-近傍に含まれる点の集合を入力として与える。そして、ステップS23で、ε-近傍に含まれる点の数がN以上かどうかを調べる。N以上であった場合には、pはクラスタ核となるため、ステップS24のクラスタ更新部分処理1に進む。N以下の場合はpはクラスタ核ではないため、ステップS25のクラスタ更新部分処理2に進む。分岐した先のS24、S25のどちらかの処理が終了したとき、一連の処理を終了する(ステップS26)。
【0037】
上記ステップS24のクラスタ更新部分処理1について、図9に示すフローチャートを参照して説明する。この処理は、新しく入力された点pがクラスタ核であった場合の更新処理である。まず、処理開始が指示されると(ステップS32)、ステップS32で点pとpのε-近傍の点を入力する。ステップS33でpにクラスタ核マークを与え、ステップS34で新しいクラスタIDを発行して、点pにそのクラスタIDを与える。新しいクラスタIDを発行することは、点pを中心とした新しいクラスタが形成されることを意味する。
【0038】
ステップS35〜S40で、pのε-近傍に含まれる各点に対して順に更新を行う。ε-近傍に含まれるある点をqとして、以下qの更新手順を説明する。更新の内容は、まずその点qが既にクラスタ核であるかどうかによって分岐する。すなわち、ステップS36でqがクラスタ核かどうかを判定し、クラスタ核だった場合にはステップS37へ遷移し、そうでなかった場合はS39へ遷移する。ステップS37、S38でID変換テーブルを用いて、qをクラスタ核とするクラスタとpをクラスタ核とするクラスタとが等しいクラスタであることを登録している。具体的には、ステップS37でqが表すクラスタの代表IDを獲得し、ステップS38でクラスタID変換テーブルに、qの代表IDからpのクラスタIDへの変換を登録する。pのクラスタIDは今回の処理で新たに発行されたものなので、必ずqの代表IDよりも大きい。qがクラスタ核でなかった場合には、ステップS39でクラスタ更新部分処理1−1に遷移する。ステップS38またはS39の処理が終了した場合には、ステップS40でpの近傍の点がまだあるか判断し、ある場合にはステップS35に遷移し、ない場合には一連の処理を終了する(ステップS41)。
【0039】
上記ステップS39のクラスタ更新部分処理1−1について、図10に示すフローチャートを参照して説明する。このクラスタ更新部分処理1−1では、新たに追加した点pの近傍の点のうち、事前にクラスタ核でなかった点を対象として、その点が新たなクラスタ核になるかどうかを調べる。その後、新たなクラスタ核になった場合には、その周囲に結合するクラスタが存在するかどうかを調べる。クラスタ核にならなかった場合には、pと同じクラスタIDを与える。
【0040】
まず、処理開始が指示されると(ステップS51)、ステップS52で、入力として更新対象の点であり、かつクラスタ核でない点qを入力として受け取る。ステップS53で、近傍位置データ取得処理によって、点qのε-近傍の点を全て取得する。ステップS54でε-近傍のサイズがしきい値を超えているかを調べる。しきい値を超えている場合にはqが新たにクラスタ核となり、ステップS55に遷移する。ステップS55でqをクラスタ核として登録し、そのクラスタIDとしてpと同じクラスタIDを付与する。これは、pとqの距離がε以下であるため、必ず同じクラスタとなるためである。
【0041】
ステップS56〜S61で、qのε-近傍に含まれる各点について更新を行う。まず、qのε-近傍の点からpのε-近傍でない点を1つ選択してrとし(ステップS56)、そのε-近傍に含まれる点rがクラスタ核であるか判定し(ステップS57)、点rがクラスタ核であった場合、qとrが表すクラスタが等しいことを登録する(ステップS58,S59)。点rがクラスタ核でなかった場合には、rにpのクラスタIDを付与する(ステップS60)。ここで、ステップS61で近傍の点がまだ存在するかを判断し(ステップS61)、存在する場合にはステップS56に遷移し、存在しない場合には一連の処理を終了する(ステップS63)。一方、ステップS54でqがクラスタ核にならなかった場合には、qはpをクラスタ核とするクラスタと同じクラスタであるとして、pのクラスタIDをqに与え(ステップS62)、一連の処理を終了する(ステップS63)。
【0042】
次に、上記ステップS25のクラスタ更新部分処理2について、図11に示すフローチャートを参照して説明する。この処理は、図8のクラスタ更新処理のステップS23で、追加された点がクラスタ核でないと判定されたときの処理に相当する。まず、処理開始が指示されると(ステップS71)、ステップS72で点pとそのε-近傍の点の集合を入力として受け取る。ステップS73〜S79でpのε-近傍に含まれる各点に対して更新を行う。以下、qをε-近傍のひとつの点として説明する。ステップS73でqの更新対象マークを消したのち、ステップS74でqがクラスタ核かどうかを調べる。クラスタ核であったならばステップS75に、そうでなければステップS78に遷移する。
【0043】
ステップS75〜S77では、クラスタpのクラスタIDを付け替える処理を行う。まず、ステップS75でpとqのクラスタIDが対応するクラスタの代表IDを検索する。ステップS76でそれらの代表IDを比較し、qの代表IDの方が大きいならば、ステップS77に遷移してそのIDをpに与える。qがクラスタ核でなかった場合、ステップS78でクラスタ更新部分処理2-1を実行する。処理の引数として、qを与える。ステップS77またはS78の処理が終了した場合には、ステップS79で更新対象がまだあるか判断し、更新対象がある場合にはステップS73に遷移し、更新対象がない場合には一連の処理を終了する(ステップS80)。
【0044】
上記ステップS78のクラスタ更新部分処理2-1について、図12に示すフローチャートを参照して説明する。この処理は、クラスタ更新部分処理1-1と類似点が多いが、pがクラスタ核でないために処理が増えている。
【0045】
まず、処理開始が指示されると(ステップS81)、ステップS82で更新対象の点qを入力として与える。ステップS83でqのε-近傍に含まれる点を取得する。ステップS84で点qのε-近傍のサイズを調べ、qが新たにクラスタ核となったかどうかを判定する。クラスタ核となっている場合にはステップS85に、そうでない場合にはステップS92に遷移する。
【0046】
ステップS85では、クラスタ核と判定されたqに対して新しく発行したクラスタIDを与える。ステップS86〜S93で、qのε-近傍に含まれる全ての点について順に更新を行う。rをqのε一近傍の点として、以下に説明を行う。
【0047】
まず、ステップS81〜S84までは図10の処理1−1のステップS51〜S54と同じであるので省略する。ステップS85では、qにクラスタ核マークと新しく発行したクラスタIDを与える。続いて、ステップS86でqのε-近傍の点を1つ選択し、選択した点をrとする。この点rがクラスタ核かどうかを調べ(ステップS87)、クラスタ核の場合はステップS88に、そうでない場合にはステップS90に進む。
【0048】
ステップS88、S89で行う処理は、クラスタ更新部分処理1-1でのステップS58、S59で行う処理とほぼ同じであり、違いはIDの変換先がpのIDからqのIDになったことのみである。ステップS90ではクラスタ核でないrに対してqと同じクラスタIDを与える。ステップS89またはS90の処理が終了した場合には、ステップS91で更新対象がまだあるか判断し、更新対象がある場合にはステップS86に遷移し、更新対象がない場合には一連の処理を終了する(ステップS93)。
【0049】
上記ステップS84でqのε-近傍のサイズがNより小さい場合には、ステップS92に遷移する。ステップS92では、qがクラスタ核でなかった場合に、qにpと同じクラスタIDを与える。その処理が終了した場合には一連の処理を終了する(ステップS93)。
【0050】
以上の処理を行うユーザ位置判定システムでは、本発明を適用することによって、ノイズに強いといったユーザの滞在地抽出に適した特性を持つDBSCANアルゴリズムを、逐次的にデータが入力される状況で適用することが可能になる。その効果として、時間的遅れなくユーザがある滞在地に滞在したという情報を得ることができ、実時間でのコンテクストアウェアネスサービスの実現につなげることができる。
【0051】
尚、この発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成を削除してもよい。さらに、異なる実施形態例に亘る構成要素を適宜組み合わせても良い。
【符号の説明】
【0052】
11…入力部、111…位置情報逐次入力手段、
12…記録部、121…位置データ記録手段、122…クラスタリング結果記録手段、123…クラスタID変換テーブル記録手段、
13…処理部、131…逐次クラスタリング処理手段、
14…出力部、141…クラスタ出力手段。

【特許請求の範囲】
【請求項1】
新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムを実行する逐次クラスタリング装置であって、
過去のクラスタリング処理されたクラスタ構造を蓄積しておき、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新することとし、
前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定する判定手段と、
前記判定の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新する更新手段と
を備えることを特徴とする逐次クラスタリング装置。
【請求項2】
新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムを実行する逐次クラスタリング方法であって、
過去のクラスタリング処理されたクラスタ構造を蓄積しておき、前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新することとし、
前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定し、
前記判定の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新することを特徴とする逐次クラスタリング方法。
【請求項3】
新たな点データが逐次得られる状況下で、前記新たな点データが入力される毎に、ある点データを核として一定の距離範囲にある近傍点データをクラスタ単位とするクラスタリング処理によるDBSCAN(Density-Based Spatial Clustering of Applications with Noise)アルゴリズムをコンピュータに実行させるための逐次クラスタリングプログラムであって、
過去のクラスタリング処理されたクラスタ構造を蓄積してする蓄積処理と、
前記新たな点データが入力されたとき、蓄積されている既存のクラスタ構造を新たな点データに合わせて更新処理とを備え、
前記更新処理は、
前記新たな点データが入力されるときに、前記新たな点データがクラスタの核になるか、前記新たな点データの近傍点データがクラスタ核になるかを判定し、
前記判定処理の結果に基づいて、前記既存のクラスタ構造に対して、前記新たな点データ及びその近傍点データについて、新しいクラスタの出現、既存のクラスタの拡張、クラスタ間の結合、のいずれかの変化の発生を判定し更新することを特徴とする逐次クラスタリングプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2010−186256(P2010−186256A)
【公開日】平成22年8月26日(2010.8.26)
【国際特許分類】
【出願番号】特願2009−28945(P2009−28945)
【出願日】平成21年2月10日(2009.2.10)
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り 2008年11月6日 社団法人情報処理学会発行の「情報処理学会研究報告 情処研報 Vol.2008,No.110」に発表
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】