IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ネイバー コーポレーションの特許一覧

特許7165165長期間の連関性が高い文書クラスタリングのための方法およびシステム
<>
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図1
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図2
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図3
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図4
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図5
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図6
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図7
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図8
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図9
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図10
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図11
  • 特許-長期間の連関性が高い文書クラスタリングのための方法およびシステム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-25
(45)【発行日】2022-11-02
(54)【発明の名称】長期間の連関性が高い文書クラスタリングのための方法およびシステム
(51)【国際特許分類】
   G06F 16/35 20190101AFI20221026BHJP
   G06F 16/383 20190101ALI20221026BHJP
【FI】
G06F16/35
G06F16/383
【請求項の数】 20
(21)【出願番号】P 2020138408
(22)【出願日】2020-08-19
(65)【公開番号】P2021034047
(43)【公開日】2021-03-01
【審査請求日】2020-08-19
(31)【優先権主張番号】10-2019-0102546
(32)【優先日】2019-08-21
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2019-0131265
(32)【優先日】2019-10-22
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】505205812
【氏名又は名称】ネイバー コーポレーション
【氏名又は名称原語表記】NAVER Corporation
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ユ ボンソク
(72)【発明者】
【氏名】キム スヒャン
(72)【発明者】
【氏名】キム ヘジン
(72)【発明者】
【氏名】イム サンヒ
(72)【発明者】
【氏名】パク ミョンボン
(72)【発明者】
【氏名】キム ヘイン
(72)【発明者】
【氏名】キム ドクハ
(72)【発明者】
【氏名】チェ チャンリョル
(72)【発明者】
【氏名】パク ギョンシク
【審査官】原 秀人
(56)【参考文献】
【文献】特開2011-086032(JP,A)
【文献】特開2008-234338(JP,A)
【文献】特開2014-109852(JP,A)
【文献】特開2006-331089(JP,A)
【文献】米国特許出願公開第2017/0235820(US,A1)
【文献】与儀 涼子 外,Twitter上で行われる議論構造可視化のための段階的クラスタリングに関する検討,言語処理学会第18回年次大会発表論文集 チュートリアル 本会議 [CD-ROM],日本,言語処理学会,2012年03月31日,pp. 571~574
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
コンピュータシステムが実行する文書クラスタリング方法であって、
前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、
前記文書クラスタリング方法は、
前記少なくとも1つのプロセッサにより、類似文書としてクラスタリングされたクラスタを時間基準で収集する段階、および
前記少なくとも1つのプロセッサにより、前記クラスタ間の類似度に基づいて前記クラスタを併合することにより、クラスタグループとしてイシュークラスタを生成する段階
を含み、
前記生成する段階のクラスタの併合は、
並列処理方式により、各クラスタ別に、該当のクラスタ以後に生成されたクラスタと比較し、最も類似するクラスタを併合対象として選定した後、直列処理方式により、前記併合対象として選定されたクラスタがまだ併合されていない場合、前記併合対象として選定されたクラスタを順に併合すること
を特徴とする、文書クラスタリング方法。
【請求項2】
前記生成する段階は、
前記イシュークラスタと前記クラスタ間の類似度に基づいて前記イシュークラスタと前記クラスタを併合する段階
を含む、請求項1に記載の文書クラスタリング方法。
【請求項3】
前記生成する段階は、
前記イシュークラスタと他のイシュークラスタ間の類似度に基づいて前記イシュークラスタと前記他のイシュークラスタを併合する段階
を含む、請求項1または2に記載の文書クラスタリング方法。
【請求項4】
前記イシュークラスタと前記他のイシュークラスタを併合する段階は、
前記イシュークラスタと前記他のイシュークラスタのうち、文書の件数がより多いクラスタに他のクラスタの文書を併合すること
を特徴とする、請求項3に記載の文書クラスタリング方法。
【請求項5】
前記生成する段階は、
前記クラスタのベクトル間の類似度を比較し、事前に定められたクラスタ併合の基準を満たすベクトル類似度をもつクラスタを1つのクラスタとして併合して前記イシュークラスタを生成すること
を特徴とする、請求項1に記載の文書クラスタリング方法。
【請求項6】
前記生成する段階は、
前記クラスタに文書が追加される場合、該当のクラスタに対して以前に計算されたベクトルを利用することで文書が追加されたクラスタのベクトルを計算する段階
を含む、請求項5に記載の文書クラスタリング方法。
【請求項7】
前記生成する段階は、
前記イシュークラスタに他のクラスタが併合される場合、該当のイシュークラスタに対して以前に計算されたベクトルを利用することで他のクラスタが併合されたイシュークラスタのベクトルを計算する段階
を含む、請求項5または6に記載の文書クラスタリング方法。
【請求項8】
前記生成する段階は、
時間帯別に生成される短期クラスタである前記クラスタの間の類似度に基づき、前記クラスタを併合して中長期イシュー単位のクラスタグループである前記イシュークラスタを生成する段階、
前記イシュークラスタと前記イシュークラスタの生成の以降に新たに生成された他のクラスタとの間の類似度に基づき、前記イシュークラスタと前記他のクラスタを併合する段階、及び
前記イシュークラスタと前記イシュークラスタの生成の以降に新たに生成された他のイシュークラスタとの間の類似度に基づき、前記イシュークラスタと前記他のイシュークラスタを併合する段階
を含む、請求項1に記載の文書クラスタリング方法。
【請求項9】
前記生成する段階は、
前記併合されたクラスタが前記併合対象として再選定されないように除外する段階
をさらに含む、請求項1に記載の文書クラスタリング方法。
【請求項10】
前記収集する段階は、
文書間の類似度に基づいて類似文書としてクラスタリングされたクラスタを収集すること
を特徴とする、請求項1~9のうちのいずれか一項に記載の文書クラスタリング方法。
【請求項11】
請求項1~10のうちのいずれか一項に記載の文書クラスタリング方法を前記コンピュータシステムに実行させる、コンピュータプログラム。
【請求項12】
請求項1~10のうちのいずれか一項に記載の文書クラスタリング方法をコンピュータに実行させるためのプログラムが記録されている、非一時的なコンピュータ読み取り可能な記録媒体。
【請求項13】
コンピュータシステムであって、
メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサ
を含み、
前記少なくとも1つのプロセッサは、
類似文書としてクラスタリングされたクラスタを時間基準で収集するクラスタ収集部、および
前記クラスタ間の類似度に基づいて前記クラスタを併合することにより、クラスタグループとしてイシュークラスタを生成するクラスタ生成部
を含み、
前記クラスタ生成部は、
並列処理方式により、各クラスタ別に、該当のクラスタ以後に生成されたクラスタと比較し、最も類似するクラスタを併合対象とて選定した後、直列処理方式により、前記併合対象として選定されたクラスタがまだ併合されていない場合、前記併合対象として選定されたクラスタを順に併合すること
を特徴とする、コンピュータシステム。
【請求項14】
前記クラスタ生成部は、
前記イシュークラスタと前記クラスタ間の類似度に基づいて前記イシュークラスタと前記クラスタを併合すること
を特徴とする、請求項13に記載のコンピュータシステム。
【請求項15】
前記クラスタ生成部は、
前記イシュークラスタと他のイシュークラスタ間の類似度に基づいて前記イシュークラスタと前記他のイシュークラスタを併合すること
を特徴とする、請求項13または14に記載のコンピュータシステム。
【請求項16】
前記クラスタ生成部は、
前記クラスタのベクトル間の類似度を比較し、事前に定められたクラスタ併合の基準を満たすベクトル類似度をもつクラスタを1つのクラスタとして併合して前記イシュークラスタを生成すること
を特徴とする、請求項13に記載のコンピュータシステム。
【請求項17】
前記クラスタ生成部は、
前記クラスタに文書が追加される場合、該当のクラスタに対して以前に計算されたベクトルを利用することで文書が追加されたクラスタのベクトルを計算すること
を特徴とする、請求項16に記載のコンピュータシステム。
【請求項18】
前記クラスタ生成部は、
前記イシュークラスタに他のクラスタが併合される場合、該当のイシュークラスタに対して以前に計算されたベクトルを利用することで他のクラスタが併合されたイシュークラスタのベクトルを計算すること
を特徴とする、請求項16または17に記載のコンピュータシステム。
【請求項19】
前記クラスタ生成部は、
時間帯別に生成される短期クラスタである前記クラスタの間の類似度に基づき、前記クラスタを併合して中長期イシュー単位のクラスタグループである前記イシュークラスタを生成し、
前記イシュークラスタと前記イシュークラスタの生成の以降に新たに生成された他のクラスタとの間の類似度に基づき、前記イシュークラスタと前記他のクラスタを併合し、
前記イシュークラスタと前記イシュークラスタの生成の以降に新たに生成された他のイシュークラスタとの間の類似度に基づき、前記イシュークラスタと前記他のイシュークラスタを併合すること
を特徴とする、請求項13に記載のコンピュータシステム。
【請求項20】
前記クラスタ収集部は、
文書間の類似度に基づいて類似文書としてクラスタリングされたクラスタを収集すること
を特徴とする、請求項13~19のうちのいずれか一項に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【0001】
以下の説明は、文書クラスタリングのための技術に関する。
【背景技術】
【0002】
近年、情報の検索および推薦などの知能型情報サービスのために、文書を体系的に分類してグループ化するための多様な研究が行われている。
【0003】
グループ化、すなわちクラスタリングとは、データマイニングの1つであって、多数の項目の属性を基準にその類似性を演算してグループ化する技法である。
【0004】
クラスタリングは、与えられたデータ集合を、互いに類似性をもつ複数のクラスタ(Cluster)に分割していく過程であって、1つのグループに属するデータは、互いに異なるグループ内のデータとは区分される類似性をもつようになる。
【0005】
このような文書クラスタリング方法として、情報検索分野では、K-meansクラスタリング方法やオントロジー(ontology)を利用したクラスタリング方法などを始めとした多様な方法が研究されている。
【0006】
例えば、特許文献1(公告日2011年9月27日)には、文書のキーワードを含むオントロジーを利用して文書をクラスタリングする技術が開示されている。
【先行技術文献】
【特許文献】
【0007】
【文献】韓国登録特許第10-1067819号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
時間帯別に生成された短期クラスタのうちで連関性が高い短期クラスタを併合し、中/長期的に関連のあるイシュー単位のクラスタグループとしてイシュークラスタを生成することができる方法およびシステムを提供する。
【課題を解決するための手段】
【0009】
コンピュータシステムが実行する文書クラスタリング方法であって、前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記文書クラスタリング方法は、前記少なくとも1つのプロセッサにより、類似文書としてクラスタリングされたクラスタを時間基準で収集する段階、および前記少なくとも1つのプロセッサにより、前記クラスタ間の類似度に基づいて前記クラスタを併合することにより、クラスタグループとしてイシュークラスタを生成する段階を含む、文書クラスタリング方法を提供する。
【0010】
一側面によると、前記生成する段階は、前記イシュークラスタと前記クラスタ間の類似度に基づいて前記イシュークラスタと前記クラスタを併合する段階を含んでよい。
【0011】
他の側面によると、前記生成する段階は、前記イシュークラスタと他のイシュークラスタ間の類似度に基づいて前記イシュークラスタと前記他のイシュークラスタを併合する段階を含んでよい。
【0012】
また他の側面によると、前記イシュークラスタと前記他のイシュークラスタを併合する段階は、前記イシュークラスタと前記他のイシュークラスタのうちで文書件数がより多いクラスタに他のクラスタの文書を併合してよい。
【0013】
また他の側面によると、前記生成する段階は、前記クラスタのベクトル間の類似度を比較し、事前に定められたクラスタ併合の基準に適ったベクトル類似度をもつクラスタを1つのクラスタとして併合して前記イシュークラスタを生成してよい。
【0014】
また他の側面によると、前記生成する段階は、前記クラスタに文書が追加される場合、該当のクラスタに対して以前に計算されたベクトルを利用することで文書が追加されたクラスタのベクトルを計算する段階を含んでよい。
【0015】
また他の側面によると、前記生成する段階は、前記イシュークラスタに他のクラスタが併合される場合、該当のイシュークラスタに対して以前に計算されたベクトルを利用することで他のクラスタが併合されたイシュークラスタのベクトルを計算する段階を含んでよい。
【0016】
また他の側面によると、前記生成する段階は、並列処理方式により、各クラスタ別に該当のクラスタ以後に生成されたクラスタと比較して最も類似するクラスタを併合対象として選定する段階、および直列処理方式により、前記併合対象として選定されたクラスタを順に併合する段階を含んでよい。
【0017】
また他の側面によると、前記生成する段階は、前記併合されたクラスタが前記併合対象として再選定されないように除外する段階をさらに含んでよい。
【0018】
さらに他の側面によると、前記収集する段階は、文書間の類似度に基づいて類似文書としてクラスタリングされたクラスタを収集してよい。
【0019】
前記文書クラスタリング方法を前記コンピュータシステムに実行させるために非一時的なコンピュータ読み取り可能な記録媒体に記録される、コンピュータプログラムを提供する。
【0020】
前記文書クラスタリング方法をコンピュータに実行させるためのプログラムが記録されている、非一時的なコンピュータ読み取り可能な記録媒体を提供する。
【0021】
コンピュータシステムであって、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサは、類似文書としてクラスタリングされたクラスタを時間基準で収集するクラスタ収集部、および前記クラスタ間の類似度に基づいて前記クラスタを併合することにより、クラスタグループとしてイシュークラスタを生成するクラスタ生成部を含む、コンピュータシステムを提供する。
【発明の効果】
【0022】
本発明の実施形態によると、時間帯別に生成された短期クラスタをクラスタ間の類似度に基づいて併合することにより、中/長期的に関連のあるイシュー単位のクラスタグループとしてイシュークラスタを生成することができる。
【図面の簡単な説明】
【0023】
図1】本発明の一実施形態における、ネットワーク環境の例を示した図である。
図2】本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。
図3】本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示した図である。
図4】本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。
図5】本発明の一実施形態における、クラスタ間の類似度に基づいてクラスタを併合する過程を示した例示図である。
図6】本発明の一実施形態における、クラスタ間の類似度に基づいてクラスタを併合する過程を示した例示図である。
図7】本発明の一実施形態における、クラスタ間の類似度に基づいてクラスタを併合する過程を示した例示図である。
図8】本発明の一実施形態における、クラスタ間の類似度に基づいてクラスタを併合する過程を示した例示図である。
図9】本発明の一実施形態における、クラスタ併合過程の一例を示したフローチャートである。
図10】本発明の一実施形態における、イシュークラスタを利用したイシュータイムラインのインタフェース画面を示した例示図である。
図11】本発明の一実施形態における、イシュークラスタを利用したイシュータイムラインのインタフェース画面を示した例示図である。
図12】本発明の一実施形態における、イシュークラスタを利用したイシュータイムラインのインタフェース画面を示した例示図である。
【発明を実施するための形態】
【0024】
以下、本発明の実施形態について、添付の図面を参照しながら詳細に説明する。
【0025】
本発明の実施形態は、文書クラスタリング技術に関する。
【0026】
本明細書で具体的に開示される事項を含む実施形態は、時間帯別に生成された短期クラスタをクラスタ間の類似度に基づいて併合することにより、中/長期的に関連のあるイシュー単位のクラスタグループとしてイシュークラスタを生成することができ、これによってクラスタリングの品質と性能を向上させることができる。
【0027】
また、本明細書で具体的に開示される事項を含む実施形態は、クラスタ間の類似度に基づいてクラスタを併合してイシュークラスタを生成することにより、時間の経過によって主題や内容が変わって文書間の類似度が低下したとしても、関連のあるイシューの文書を効果的にクラスタリングすることができる。
【0028】
また、本明細書で具体的に開示される事項を含む実施形態は、以前に計算されたクラスタのベクトル値を利用して文書が追加されたクラスタや他のクラスタと併合されたクラスタのベクトル値を計算する方式でクラスタ併合を実行することにより、計算量を飛躍的に減らし、迅速かつ安定的なクラスタリング性能を提供することができる。
【0029】
図1は、本発明の一実施形態における、ネットワーク環境の例を示した図である。図1のネットワーク環境は、複数の電子機器110、120、130、140、複数のサーバ150、160、およびネットワーク170を含む例を示している。このような図1は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が図1のように限定されることはない。
【0030】
複数の電子機器110、120、130、140は、コンピュータシステムによって実現される固定端末や移動端末であってよい。複数の電子機器110、120、130、140の例としては、AIスピーカ、スマートフォン、携帯電話、ナビゲーション、PC(personal computer)、ノート型PC、デジタル放送用端末、PDA(Personal Digital Assistant)、PMP(Portable Multimedia Player)、タブレット、ゲームコンソール、ウェアラブルデバイス、IoT(internet of things)デバイス、VR(virtual reality)デバイス、AR(augmented reality)デバイスなどがある。一例として、図1では、電子機器110の例としてスマートフォンを示しているが、本発明の実施形態において、電子機器110は、実質的に無線または有線通信方式を利用し、ネットワーク170を介して他の電子機器120、130、140および/またはサーバ150、160と通信することのできる多様な物理的なコンピュータシステムのうちの1つを意味してよい。
【0031】
通信方式が限定されることはなく、ネットワーク170が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網、衛星網など)を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてよい。例えば、ネットワーク170は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうちの1つ以上の任意のネットワークを含んでよい。さらに、ネットワーク170は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター-バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでもよいが、これらに限定されることはない。
【0032】
サーバ150、160それぞれは、複数の電子機器110、120、130、140とネットワーク170を介して通信して命令、コード、ファイル、コンテンツ、サービスなどを提供する1つ以上のコンピュータ装置によって実現されてよい。例えば、サーバ150は、ネットワーク170を介して接続した複数の電子機器110、120、130、140に第1サービスを提供するシステムであってよく、サーバ160も、ネットワーク170を介して接続した複数の電子機器110、120、130、140に第2サービスを提供するシステムであってよい。より具体的な例として、サーバ150は、複数の電子機器110、120、130、140においてインストールされて実行されるコンピュータプログラムであるアプリケーションを通じ、該当のアプリケーションが目的とするサービス(一例として、ニュースサービスなど)を第1サービスとして複数の電子機器110、120、130、140に提供してよい。他の例として、サーバ160は、上述したアプリケーションのインストールおよび実行のためのファイルを複数の電子機器110、120、130、140に配布するサービスを第2サービスとして提供してよい。
【0033】
図2は、本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。図2では、電子機器に対する例として電子機器110の内部構成およびサーバ150の内部構成について説明する。また、他の電子機器120、130、140やサーバ160も、上述した電子機器110またはサーバ150と同一または類似の内部構成を有してよい。
【0034】
電子機器110およびサーバ150は、メモリ211、221、プロセッサ212、222、通信モジュール213、223、および入力/出力インタフェース214、224を含んでよい。メモリ211、221は、非一時的なコンピュータ読み取り可能な記録媒体であって、RAM(random access memory)、ROM(read only memory)、ディスクドライブ、SSD(solid state drive)、フラッシュメモリ(flash memory)などのような永続的大容量記録装置を含んでよい。ここで、ROM、SSD、フラッシュメモリ、ディスクドライブのような永続的大容量記録装置は、メモリ211、221とは区分される別の永続的記録装置として電子機器110やサーバ150に含まれてもよい。また、メモリ211、221には、オペレーティングシステムと、少なくとも1つのプログラムコード(一例として、電子機器110においてインストールされて実行されるブラウザや、特定のサービスの提供のために電子機器110にインストールされるアプリケーションなどのためのコード)が記録されてよい。このようなソフトウェア構成要素は、メモリ211、221とは別のコンピュータ読み取り可能な記録媒体からロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピー(登録商標)ドライブ、ディスク、テープ、DVD/CD-ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信モジュール213、223を通じてメモリ211、221にロードされてもよい。例えば、少なくとも1つのプログラムは、開発者またはアプリケーションのインストールファイルを配布するファイル配布システム(一例として、上述したサーバ160)がネットワーク170を介して提供するファイルによってインストールされるコンピュータプログラム(一例として、上述したアプリケーション)に基づいてメモリ211、221にロードされてよい。
【0035】
プロセッサ212、222は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ211、221または通信モジュール213、223によって、プロセッサ212、222に提供されてよい。例えば、プロセッサ212、222は、メモリ211、221のような記録装置に記録されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
【0036】
通信モジュール213、223は、ネットワーク170を介して電子機器110とサーバ150とが互いに通信するための機能を提供してもよいし、電子機器110および/またはサーバ150が他の電子機器(一例として、電子機器120)または他のサーバ(一例として、サーバ160)と通信するための機能を提供してもよい。一例として、電子機器110のプロセッサ212がメモリ211のような記録装置に記録されたプログラムコードにしたがって生成した要求が、通信モジュール213の制御にしたがってネットワーク170を介してサーバ150に伝達されてよい。これとは逆に、サーバ150のプロセッサ222の制御にしたがって提供される制御信号や命令、コンテンツ、ファイルなどが、通信モジュール223とネットワーク170を経て電子機器110の通信モジュール213を通じて電子機器110に受信されてよい。例えば、通信モジュール213を通じて受信されたサーバ150の制御信号や命令、コンテンツ、ファイルなどは、プロセッサ212やメモリ211に伝達されてよく、コンテンツやファイルなどは、電子機器110がさらに含むことのできる記録媒体(上述した永続的記録装置)に記録されてよい。
【0037】
入力/出力インタフェース214は、入力/出力装置215とのインタフェースのための手段であってよい。例えば、入力装置は、キーボード、マウス、マイクロフォン、カメラなどの装置を、出力装置は、ディスプレイ、スピーカ、触覚フィードバックデバイスなどのような装置を含んでよい。他の例として、入力/出力インタフェース214は、タッチスクリーンのように入力と出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。入力/出力装置215は、電子機器110と1つの装置で構成されてもよい。また、サーバ150の入力/出力インタフェース224は、サーバ150に接続するかサーバ150が含むことのできる入力または出力のための装置(図示せず)とのインタフェースのための手段であってよい。より具体的な例として、電子機器110のプロセッサ212がメモリ211にロードされたコンピュータプログラムの命令を処理するにあたり、サーバ150や電子機器120が提供するデータを利用して構成されるサービス画面やコンテンツが、入力/出力インタフェース214を通じてディスプレイに表示されてよい。
【0038】
また、他の実施形態において、電子機器110およびサーバ150は、図2の構成要素よりも多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、電子機器110は、上述した入力/出力装置215のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、カメラ、各種センサ、データベースなどのような他の構成要素をさらに含んでもよい。より具体的な例として、電子機器110がAIスピーカである場合、一般的にAIスピーカが含んでいる各種センサ、カメラモジュール、物理的な各種ボタン、タッチパネルを利用したボタン、入力/出力ポート、振動のための振動器などのような多様な構成要素が、電子機器110にさらに含まれるように実現されてよい。
【0039】
以下では、長期間の連関性が高い文書クラスタリングのための方法およびシステムの具体的な実施形態について説明する。
【0040】
本明細書において、文書とは、インターネット上で検索や推薦などの対象となる情報単位を意味してよい。
【0041】
本実施形態では、ニュースサービスを通じて提供される記事(news)を文書の代表的な例として説明するが、クラスタリングの対象が記事に限定されてはならず、インターネット上に情報単位で提供されるすべての形態の文書に拡大した適用が可能である。
【0042】
文書クラスタリング技術は、多くの記事を主題別に効果的に分類して伝達するために利用されており、クラスタリングされた記事の集結規模や重要度などに基づき、所定のアルゴリズムを用いて特定のクラスタ記事をサービス画面の上位に表示する方式を使用したりもする。
【0043】
このようなクラスタリング技術は、内容が似ている記事をクラスタリングするものであり、主に最新の記事を中心として使用する場合には品質は高まるが、時間範囲が広がるほどクラスタリングの品質は低下する。また、時間によって主題が変わる時事的な記事をクラスタリングするには限界があり、記事の件数が増えるほど処理時間が急激に増加するという問題がある。
【0044】
本発明の実施形態は、時間帯別に生成された短期クラスタを併合することにより、中/長期的に関連のあるイシュー単位のクラスタグループとしてイシュークラスタを生成することを目的とする。
【0045】
図3は、本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示したブロック図であり、図4は、本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。
【0046】
本実施形態に係るサーバ150は、記事を提供するニュースサービスプラットフォームの役割を担ってよい。特に、サーバ150は、中/長期的に続くイシューに該当する記事を効果的にクラスタリングして提供してよい。
【0047】
サーバ150のプロセッサ222は、図4に係る文書クラスタリング方法を実行するための構成要素として、図3に示すように、クラスタ収集部310、クラスタ生成部320、およびクラスタ表示部330を含んでよい。実施形態によって、プロセッサ222の構成要素は、選択的にプロセッサ222に含まれても除外されてもよい。また、実施形態によって、プロセッサ222の構成要素は、プロセッサ222の機能の表現のために分離されても併合されてもよい。
【0048】
このようなプロセッサ222およびプロセッサ222の構成要素は、図4の文書クラスタリング方法が含む段階410~450を実行するようにサーバ150を制御してよい。例えば、プロセッサ222およびプロセッサ222の構成要素は、メモリ221が含むオペレーティングシステムのコードと少なくとも1つのプログラムのコードとによる命令(instruction)を実行するように実現されてよい。
【0049】
ここで、プロセッサ222の構成要素は、サーバ150に記録されたプログラムコードが提供する命令にしたがってプロセッサ222によって実行される互いに異なる機能(different functions)の表現であってよい。例えば、サーバ150が短期クラスタを収集するように上述した命令にしたがってサーバ150を制御するプロセッサ222の機能的表現として、クラスタ収集部310が利用されてよい。
【0050】
プロセッサ222は、サーバ150の制御と関連する命令がロードされたメモリ221から必要な命令を読み取ってよい。この場合、前記読み取られた命令は、以下で説明する段階410~450をプロセッサ222が実行するように制御するための命令を含んでよい。以下で説明する段階410~450は、図4に示した順序とは異なる順序で実行されてもよく、段階410~450の一部が省略されても、追加の過程がさらに含まれてもよい。
【0051】
以下では、時間を基準として連関性の高い記事で束ねられたクラスタは「短期クラスタ」とし、連関性の高いクラスタとして束ねられて1つのイシュー単位が生成される場合、イシュー単位に該当するクラスタグループは「イシュークラスタ」とする。
【0052】
図4を参照すると、段階410で、クラスタ収集部310は、記事間の類似度に基づいて類似記事としてクラスタリングされた短期クラスタを収集してよい。クラスタ収集部310は、ここ最近の一定時間内の記事をクラスタリングして生成された短期クラスタを収集してよい。短期クラスタを生成するための記事クラスタリング方法としては、広く利用されているクラスタリング技法のうちの少なくとも1つが利用されてよい。このとき、各短期クラスタに対しては、クラスタ生成過程で固有の識別子(ID)が付与されてよい。記事クラスタリングの作業中に、以前に生成された既存のクラスタでは以前に付与された識別子が維持されてよい。
【0053】
例えば、図5を参照すると、クラスタ収集部310は、互いに異なる記事50のベクトル間の類似度が一定レベル以上の場合に、1つのクラスタとして束ねて短期クラスタ501を生成してよい。このとき、各記事50のベクトルとは、該当の記事50に含まれた単語のベクトル平均を意味してよい。クラスタ収集部310は、ここ最近36時間以内の類似記事を短期クラスタ501として束ねてよい。短期クラスタ501に対して以前に付与された識別子(ID)が維持されていたとしても、36時間が経過した記事は該当のクラスタから削除し、ここ最近36時間以内の記事だけがサービス対象として表示されてよい。本発明の実施形態では、短期クラスタ501を収集するにあたり、短期クラスタ501から時間の経過によって削除された記事も、既存の識別子(ID)ですべて累積して収集してよい。
【0054】
図4を参照すると、段階420で、クラスタ生成部320は、クラスタ間の類似度に基づいて短期クラスタを併合することにより、イシュークラスタを生成してよい。短期クラスタのうちの一部は類似する主題の記事で構成されているが、1つのクラスタとして束ねられていなかったり、記事の時間差のせいで互いに異なるクラスタとして存在したりする場合が多い。このような問題を解決するために、クラスタ生成部320は、短期クラスタがクラスタ併合の基準を満たす場合、つまり、短期クラスタ間の類似度が一定レベル以上の場合、1つのイシュークラスタとして束ねてよい。
【0055】
例えば、図6を参照すると、クラスタ生成部320は、短期クラスタ501のうち、短期クラスタ501のベクトル間の類似度が一定レベル以上の場合、1つのクラスタとして併合してイシュークラスタ602を生成してよい。短期クラスタ501のベクトルとは、該当のクラスタに含まれた記事のベクトル平均を意味してよい。
【0056】
クラスタ併合の基準としてクラスタ間の類似度を適用するが、一例として、クラスタベクトルどうしを比較し、ユークリッド(Euclid)値とコサイン(cosine)値のうちの少なくとも1つが定められた範囲にあるクラスタを1つのクラスタとして束ねてよい。例えば、2つのクラスタのベクトル間のコサイン類似度が0.98以上の場合、および/または2つのクラスタのベクトル間のユークリッド類似度が0.71以上の場合、2つのクラスタを1つのクラスタとして束ねてよい。このとき、ベクトル間の類似度は、「1/(1+2つのベクトル間の距離)」のように定義されてよい。
【0057】
クラスタのベクトル値を求めるために、従来は、クラスタに記事が追加される場合、全体記事のベクトルを用いて全体の平均を新たに求める方法を適用していたが、このような場合には多数のAPIの呼び出しと多数の計算を含むようになり、記事が増加するほどその計算量も増加していた。
【0058】
本実施形態では、短期クラスタcに記事nが追加される場合、短期クラスタcに対して以前に計算されたベクトルvを利用して新規ベクトルv’を一度に求めることができるが、これは数式(1)のように定義されてよい。
【0059】
v’=(v+(v×m))/(1+m)・・・(1)
【0060】
ここで、vは追加される記事nのベクトル値、mは短期クラスタcに含まれた既存の記事件数を意味する。
【0061】
このような方式により、以前に計算された短期クラスタのベクトル値を利用することで、記事が追加された短期クラスタの新規ベクトル値を容易かつ迅速に求めることができる。
【0062】
図4を参照すると、段階430で、クラスタ生成部320は、クラスタ間の類似度に基づいて新たに生成された短期クラスタを、段階420で生成されたイシュークラスタと併合してよい。
【0063】
図7に示すように、クラスタ生成部320は、段階420で生成されたイシュークラスタ602のベクトルと新たに生成される短期クラスタ501’のベクトルとを比較し、クラスタ併合の基準を満たすベクトル類似度をもつ場合、短期クラスタ501’をイシュークラスタ602に含ませてよい。このとき、イシュークラスタのベクトルとは、該当のクラスタに含まれた短期クラスタのベクトル平均を意味してよく、短期クラスタとイシュークラスタの併合基準は、上述した短期クラスタ間の併合基準と等しい。
【0064】
図4を参照すると、段階440で、クラスタ生成部320は、クラスタ間の類似度に基づいて以前に生成されたイシュークラスタを、段階430で生成されたイシュークラスタと併合してよい。イシュークラスタとイシュークラスタ間の併合基準は、上述した短期クラスタ間の併合基準と等しい。
【0065】
図8に示すように、クラスタ生成部320は、短期クラスタの併合によって生成されたイシュークラスタのベクトルと以前に生成されたイシュークラスタ602’のベクトルとを比較し、クラスタ併合の基準を満たすベクトル類似度をもつ場合、1つのイシュークラスタ602として併合してよい。言い換えれば、クラスタ生成部320は、イシュークラスタ間のベクトルを互いに比較し、クラスタ併合の基準に適えば1つのイシュークラスタ602として束ねてよい。このとき、クラスタ生成部320は、クラスタ併合の基準を満たすイシュークラスタの記事件数を比較し、記事件数が多いイシュークラスタに残りのイシュークラスタの記事を併合してよい。
【0066】
本実施形態では、イシュークラスタCに新たな短期クラスタcが追加されるか、(記事件数がより少ない)小さいイシュークラスタC’を(記事件数がより多い)大きいイシュークラスタCに併合する場合、イシュークラスタCに対して以前に計算されたベクトルVを利用して新規ベクトルV’を一度に求めることができるが、これは数式(2)または数式(3)のように定義されてよい。
【0067】
V’=((v×m)+(V×m))/(m+m)・・・(2)
【0068】
ここで、vは短期クラスタcのベクトル値、mは短期クラスタcに含まれた記事件数、mはイシュークラスタCに含まれた既存の記事件数を意味する。
【0069】
V’=((vC’×mC’)+(V×m))/(mC’+m)・・・(3)
【0070】
ここで、vC’は小さいイシュークラスタC’のベクトル値、mC’は小さいイシュークラスタC’に含まれた記事件数、mはイシュークラスタCに含まれた既存の記事件数を意味する。
【0071】
このような方式により、以前に計算されたイシュークラスタのベクトル値を利用することで、短期クラスタあるいは小さいイシュークラスタが併合されたイシュークラスタの新規ベクトル値を容易かつ迅速に求めることができる。
【0072】
クラスタに対して全体記事のベクトル平均を毎回のように求める場合に比べ、以前の過程で予め計算されたベクトル値を利用することにより、記事が追加されるか他のクラスタと併合されるクラスタの新規ベクトルを飛躍的に迅速に求めることができる。
【0073】
上述したイシュークラスタの生成過程410~440は例示的なものに過ぎず、これに限定されることはない。
【0074】
また、A、B、C、Dの短期クラスタあるいはイシュークラスタが存在すると仮定するとき、クラスタ間の併合過程420~440で、A-B、A-C、B-C、C-Dがクラスタ併合の条件を満たす場合に併合を一度に行うようになれば、A、B、C、Dがすべて1つのクラスタとして併合される。
【0075】
しかし、クラスタ併合の条件を満たすクラスタを一度に併合する場合、次のような問題が発生することがある。
【0076】
先ず、クラスタAとBの併合結果、併合されたクラスタABのベクトルとクラスタD間のベクトル距離が遠くなってクラスタ併合の条件を満たすことができなくなることがあり、クラスタ併合の条件にまったく適わなかったクラスタEと併合クラスタABとのベクトル距離が近くなってクラスタ併合の条件を満たすようになることがある。
【0077】
次に、クラスタ併合プロセスを並列進行する場合、クラスタAとBがクラスタBに併合されると同時に、クラスタBとCがクラスタBに併合されることがある。
【0078】
このような2つの問題を解決するためのクラスタ併合方法の一例は、図9に示すとおりである。
【0079】
図9を参照すると、クラスタ生成部320は、すべてのクラスタを対象に、各クラスタ別に該当のクラスタ以後に生成されたクラスタと比較し、そのうちベクトル距離が最も近いクラスタ(短期クラスタあるいはイシュークラスタ)だけを併合対象として選定する(S901)。この段階901は、並列処理方式で行われる。
【0080】
クラスタ生成部320は、段階901で併合対象として選定されたクラスタを、直列処理方式によって1つ1つ順に併合する(S902)。既に併合されたクラスタは、次の過程で併合対象として再選定されたとしても無視し、併合後には併合対象として選定されないように除外してよい。
【0081】
クラスタ生成部320は、段階902の実行結果、併合されるクラスタの件数が0であるかを判断し(S903)、併合されるクラスタが1つ以上存在する場合には、併合されたクラスタを含んだ全体クラスタを対象として再び段階901からの段階を繰り返す。
【0082】
クラスタ生成部320は、併合されるクラスタの個数が0になるまで前記過程901~902を繰り返した後、併合されるクラスタの件数が0になれば、クラスタ併合を終了させる(S904)。
【0083】
本実施形態では、クラスタ併合の以前と以後の結果に影響を及ぼさずに計算量が多い部分を並列処理することにより、迅速かつ安定的にクラスタ併合を実行することができる。
【0084】
クラスタ併合方法は、同じ記事の存在可否、ベクトルユークリッド、ベクトルコサインなどのように類似度を示す多様な特徴を活用してよく、広く利用されている併合方式のうちの少なくとも1つの方式を利用してよく、各方式による併合結果で記事件数、クラスタ数、クラスタ内の記事の類似度あるいは関連性などのような要件に応じて選択的に適用されてよい。
【0085】
本実施形態では、記事を提供するサービスを通じて揮発性であるクラスタデータと破片化されたクラスタデータを併合することにより、中/長期的に関連のあるイシュー単位のクラスタグループとしてイシュークラスタを生成することができる。
【0086】
従来には、長期にわたって収集した記事をクラスタリングする場合、テキストを中心とし、テキストが似ている記事を束ね、結局は似たような文書の集合体を生成するだけであったが、本発明では時間を基準として束ねたクラスタをクラスタ間の類似度に基づいて併合していくことにより、イシュー単位のクラスタグループを生成することができ、文書上の内容が変わるが脈絡的には共通するイシューをもつ文書の集合体を生成することができる。クラスタ間の類似度に基づいてクラスタを併合してイシュークラスタを生成することにより、記事間の類似度では併合が困難であった記事を、共通するイシューをもつ1つのクラスタとして束ねることができる。
【0087】
図4を参照すると、段階450で、クラスタ表示部330は、段階440で最終併合されたイシュークラスタの記事を、記事提供サービスを通じて表示してよい。クラスタ表示部330は、イシュークラスタを利用した記事タイムラインとしてインターネット上の記事のうちでイシュークラスタに含まれた記事に対するタイムラインを提供してよい。言い換えれば、クラスタ表示部330は、イシュークラスタを利用してイシュークラスタに含まれた記事を時系列で表示してよい。
【0088】
クラスタ表示部330は、イシュークラスタのうちで事前に定められた表示条件を満たす少なくとも1つのイシュークラスタを、サービスを通じて表示してよい。一例として、クラスタ表示部330は、コンテンツ提供者(content provider)(例えば、報道機関など)によって特定された記事あるいはサービスを利用するユーザの選択や設定によって特定された記事が存在するイシュークラスタをサービス表示対象として決定してよい。言い換えれば、クラスタ表示部330は、報道機関が取り扱う主要イシューやユーザ個人が関心のあるイシューに対応するイシュークラスタに対し、サービスページ上にイシュータイムラインを表示してよい。他の例として、クラスタ表示部330は、文書の件数、クラスタリング後の経過時間、コメント数のうちの少なくとも1つが事前に定められた条件に該当するイシュークラスタをサービス表示対象として決定してよい。イシュークラスタの表示条件は、例えば、クラスタに含まれた記事のうち最初にクラスタリングされた記事が2日以上経過した場合、あるいはクラスタに含まれた記事の総数が200件以上の場合、コメント数が100件以上の記事が1日あたり3件以上であり該当の条件の日が2日以上である場合などが含まれてよい。上述したイシュークラスタの表示条件とともに、報道機関イシューや個人イシューを結合させてサービス表示対象を決定することも可能である。
【0089】
上述イシュークラスタを利用したイシュータイムラインのインタフェース画面の例は、図10~12に示すとおりである。
【0090】
図10を参照すると、クラスタ表示部330は、イシュークラスタ、すなわち、中/長期的に連関性の高い記事を時系列で表示するためのイシュータイムライン画面1000を、ニュースサービスを通じて表示してよい。イシュータイムライン画面1000には、イシュークラスタに含まれた単位時間(例えば、1day)別に記事件数をグラフ形態で示す時間領域1010、およびイシュークラスタに含まれた記事リストを単位時間別に区分して示す記事領域1020が含まれてよい。
【0091】
イシュータイムライン画面1000は、中/長期的に連関性の高い記事を一目で把握することができ、時間領域1010と記事領域1020とが有機的に連結された構造によって記事確認のためのナビゲーション機能を提供してよい。
【0092】
イシュータイムライン画面1000の一部領域、例えば上端には、イシュークラスタが生成された期間情報1001、イシュークラスタと関連するイシュータイトル1002などが含まれてよい。イシュータイトル1002は、イシュークラスタに含まれた少なくとも1つの記事の題目やタグなどを活用して生成されるものであって、例えば、コメント数が最も多い記事の題目がイシュータイトル1002として表示されてもよいし、あるいは記事の題目やタグなどに主に登場するキーワードの組み合わせによってイシュータイトル1002が生成されて表示されてもよい。
【0093】
時間領域1010は、イシュークラスタに含まれた各単位時間の時間情報と記事件数が含まれるものであって、例えば、一軸には時間情報を示し、他の軸には記事件数を棒の長さで示す棒グラフの形態が表示されてよい。このとき、記事件数により、グラフバーのディスプレイ要素(例えば、色や明るさなど)が区分されて表示されてよい。例えば、記事件数が多いほどグラフバーの色は濃く、記事件数が少ないほどグラフバーの色は薄く表示されてよい。
【0094】
記事領域1020は、1つのイシュークラスタとして併合された単位時間別の記事リストが日付順、記事件数順などの一定の基準によって整列されてよく、例えば、ここ最近のクラスタが最上位に表示されてもよいし、あるいは最も多くの記事を含んだクラスタが最上位に表示されてもよい。
【0095】
図11を参照すると、イシュータイムライン画面1000において、時間領域1010は、一方向(例えば、左右方向)のスクロール1101が可能であり、記事領域1020は、時間領域1010と同一あるいは他の方向(例えば、上下方向)のスクロール1102が可能となるようにインタフェースを構成してよい。
【0096】
イシュークラスタがサービスを通じて表示されることにより、ユーザは、イシュークラスタの時間領域1010に対するスクロール1101により、該当のイシューが登場した後にクラスタリングされた全体期間内で単位時間別の記事件数を確認することができ、イシュー登場時点、最もイシューとなった時点などのように時間経過によるイシューの変化を一目で確認することができる。
【0097】
また、記事領域1020に対するスクロール1102により、イシュークラスタに含まれた単位時間別の記事リストを事前に定められた整列順に示すことができ、ユーザは、単位時間別にクラスタリングされた記事を確認することができる。記事領域1020には、単位時間別に一定の件数(例えば、3件)の一部記事だけを示し、ユーザから特定の日付の記事リストに対して別途の要求(例えば、もっと見る、全体表示など)が入力されれば、全体記事を示してよい。
【0098】
記事領域1020に対してスクロール1102がなされるとき、記事リストの画面表示に合わせて時間領域1010が自動でスクロールされてよい。一例として、記事領域1020に対するスクロール1102により、時間領域1010で画面の事前に定められた基準範囲(例えば、中央線など)に表示された記事リストの単位時間グラフバーが中央に自動でスクロールされ、他の単位時間グラフバーと区別されるように表示されてよい。
【0099】
図12を参照すると、記事領域1020に対するスクロール1102により、単位時間別の記事リストを確認する過程において、時間領域1010が初期状態(図10)に比べて簡略化されてよい。例えば、記事領域1020に対するスクロール1102が一定時間(例えば、1秒)以上続けば、時間領域1010のサイズが小さくなるか、時間領域1010のグラフバーが縮小された形態で表示されてよい。記事領域1020のスクロール1102によって最上端に整列された記事リストが画面に再び表示される場合、時間領域1010は初期状態(図10)に復元されてよい。
【0100】
また、記事領域1020に対するスクロール1102の方向によって時間領域1010の表示の可否、つまり、表示状態または隠し状態が選択的に適用されてよい。例えば、記事領域1020が下方向にスクロールされる場合には時間領域1010が隠し処理される反面、記事領域1020が上方向にスクロールされる場合には時間領域1010が再び表示されてよい。
【0101】
同じように、時間領域1010に対するスクロール1101時に、単位時間グラフバーの画面表示に合わせて記事領域1020が自動でスクロールされてよい。言い換えれば、時間領域1010と記事領域1020とが相互に連結され、一領域のスクロールに合わせて他の領域が自動でスクロールされてよい。
【0102】
他の例として、記事領域1020に対してスクロール1102がなされるときに時間領域1010が自動でスクロールされる反面、時間領域1010に対してスクロール1101がなされるときに記事領域1020が既存の位置で固定状態を維持することも可能であり、その反対も可能であることはもちろんである。
【0103】
時間領域1010に対してスクロール1101がなされるときに記事領域1020が自動でスクロールされずに固定状態を維持するようにインタフェースが構成された場合、時間領域1010で特定の日付のグラフ、例えば、7月26日のグラフバーを選択すれば、記事領域1020では7月26日付けの記事リストに自動でスクロールされて表示されてよい。時間領域1010では、選択された日付のグラフバーが他の単位時間グラフバーとは区別されるように表示されてよい。時間領域1010の初期状態(図10)で特定の日付のグラフバーが選択された場合、選択された日付の記事リストが記事領域1020に表示されると同時に、時間領域1010は簡略化されて表示されてよい。
【0104】
このように、本発明の実施形態によると、時間帯別に生成された短期クラスタをクラスタ間の類似度に基づいて併合することにより、中/長期的に関連のあるイシュー単位のクラスタグループとしてイシュークラスタを生成することができる。クラスタ間の類似度に基づいてクラスタを併合してイシュークラスタを生成することにより、時間の経過によって主題や内容が変わって記事間の類似度が低下したとしても、関連のあるイシューの記事を効果的にクラスタリングすることができる。以前に計算されたクラスタのベクトル値を利用して記事が追加されたクラスタや他のクラスタと併合されたクラスタのベクトル値を計算する方式でクラスタ併合を実行することにより、計算量を飛躍的に減らし、迅速かつ安定的なクラスタリング性能を提供することができる。
【0105】
さらに、本発明の実施形態によると、イシュークラスタを利用することで、中/長期的に連関性の高い記事を時系列で示すことのできる記事タイムラインを提供することができる。イシュークラスタによって単位時間に対する表示領域と各単位時間別にクラスタリングされた記事を表示することにより、長期間に連関性の高い記事を一目で把握することができ、時間領域と記事領域とが有機的に連結される構造で記事確認のためのナビゲーション機能を提供することにより、ユーザの利便性を向上させることができる。
【0106】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および/またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)およびOS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【0107】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、コンピュータ記録媒体または装置に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録されても実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【0108】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。このとき、媒体は、コンピュータ実行可能なプログラムを継続して記録するものであっても、実行またはダウンロードのために一時記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例としては、ハードディスク、フロッピディスク、磁気テープのような磁気媒体、CD-ROM、DVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどを含み、プログラム命令が記録されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記録媒体または格納媒体も挙げられる。
【0109】
以上のように、実施形態を、限定された実施形態と図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能である。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ/あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【0110】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【符号の説明】
【0111】
222:プロセッサ
310:クラスタ収集部
320:クラスタ生成部
330:クラスタ表示部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12