(57)【特許請求の範囲】
【請求項１】
ユーザを識別するユーザ識別子毎に、コンテンツ情報を識別するコンテンツ識別子を一又は複数対応付けて個別データを生成し、生成した複数の前記個別データ同士を対応付けて圧縮対象データを生成する圧縮対象データ生成手段と、
前記圧縮対象データに含まれる前記複数の個別データを、所定の前記コンテンツ識別子の有無に応じてグループ分けを行うグループ分け手段と、
前記グループ分け手段によってグループ分けがされた前記個別データのグループの中から、所定の抽出条件に従って前記個別データを抽出する個別データ抽出手段と、
前記個別データ抽出手段による前記個別データの抽出対象となった前記個別データのグループの中で、前記個別データ抽出手段によって抽出された前記個別データ以外の前記個別データを前記圧縮対象データから除外することで前記圧縮対象データのデータ量を圧縮するデータ圧縮手段と、
を備えることを特徴とするデータ圧縮装置。
【請求項２】
前記グループ分け手段は、グループ分け後の前記個別データを更にグループ分けすることを特徴とする請求項１に記載のデータ圧縮装置。
【請求項３】
前記グループ分け手段は、グループ分けされた前記個別データのグループの数、及び、グループ分けの対象となる前記個別データのグループ内に含まれる前記個別データの数、のうち少なくともいずれかが予め定められた閾値を満たすまで繰り返しグループ分けを行うことを特徴とする請求項２に記載のデータ圧縮装置。
【請求項４】
前記グループ分け手段は、グループ分けを繰り返し行う際に、グループ分け毎に異なる前記コンテンツ識別子の有無に応じてグループ分けを行うことを特徴とする請求項２又は３に記載のデータ圧縮装置。
【請求項５】
前記個別データ抽出手段は、前記個別データを抽出する際に、前記個別データの抽出対象となる前記個別データのグループの中で、前記個別データに対応付けられた前記コンテンツ識別子の数が最も多い個別データを抽出することを特徴とする請求項１〜４のいずれか一項に記載のデータ圧縮装置。
【請求項６】
前記個別データ抽出手段は、前記個別データを抽出する際に、前記個別データの抽出対象となる前記個別データのグループの中で、前記個別データに対応付けられた前記コンテンツ識別子の数が最も少ない個別データを抽出することを特徴とする請求項１〜４のいずれか一項に記載のデータ圧縮装置。
【請求項７】
前記個別データ抽出手段は、前記個別データのグループ内における過半数の前記個別データに対応付けられた前記コンテンツ識別子を抽出し、抽出した前記コンテンツ識別子を用いて前記個別データを抽出することを特徴とする請求項１〜４のいずれか一項に記載のデータ圧縮装置。
【請求項８】
前記コンテンツ情報は、前記ユーザが利用したコンテンツについての情報であり、
前記圧縮対象データ生成手段は、前記ユーザが利用したコンテンツのコンテンツ識別子を、前記ユーザ識別子に対応付けることを特徴とする請求項１〜７のいずれか一項に記載のデータ圧縮装置。
【請求項９】
圧縮対象データを圧縮する圧縮装置において実行されるデータ圧縮方法であって、
ユーザを識別するユーザ識別子毎に、コンテンツ情報を識別するコンテンツ識別子を一又は複数対応付けて個別データを生成し、生成した複数の前記個別データ同士を対応付けて圧縮対象データを生成する圧縮対象データ生成ステップと、
前記圧縮対象データに含まれる前記複数の個別データを、所定の前記コンテンツ識別子の有無に応じてグループ分けを行うグループ分けステップと、
前記グループ分けステップにおいてグループ分けがされた前記個別データのグループの中から、所定の抽出条件に従って前記個別データを抽出する個別データ抽出ステップと、
前記個別データ抽出ステップにおいて前記個別データの抽出対象となった前記個別データのグループの中で、前記個別データ抽出ステップにおいて抽出された前記個別データ以外の前記個別データを前記圧縮対象データから除外することで前記圧縮対象データのデータ量を圧縮するデータ圧縮ステップと、
を有することを特徴とするデータ圧縮方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの圧縮を行うデータ圧縮装置及びデータ圧縮方法に関する。
【背景技術】
【０００２】
従来、ユーザに対して提供するレコメンデーション情報等の分析を行う分析システムがある。この分析システムでは、ユーザによるコンテンツ情報の閲覧履歴等に基づいて、ユーザ識別子とコンテンツ情報を識別するコンテンツ識別子とを対応付けて行列形式で表したユーザ×コンテンツ行列を形成し、形成したユーザ×コンテンツ行列を用いてデータ処理を行っている。しかしながら、ユーザ数やコンテンツ情報の数が大規模になると、ユーザ×コンテンツ行列も大規模になり、データの処理時間が大幅に増加する。
【０００３】
そこで、大規模なユーザ×コンテンツ行列を取り扱う場合、従来の分析システムでは、特異値分解等の線形代数の技術を利用してユーザ×コンテンツ行列を圧縮する方法が知られている。また、特許文献１には、時間的に異なる２つのデータにおいて両者が同じ値である場合には、前回の測定と同じ値であることを示すマークを付して、データ量を圧縮することが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２０１０−５００６３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特異値分解等の線形代数の技術を利用してユーザ×コンテンツ行列を圧縮する方法では、この圧縮自体に膨大な計算時間が必要となり、全体として、分析システムの計算時間を大幅に削減することができないといった問題がある。また、特許文献１に記載された方法では、時間的に異なるデータ間においてデータ量を圧縮することができるものの、圧縮の際に時間という概念を用いる必要がある。従って、例えば、データ中に時間の概念がない場合など、時間という概念を用いた圧縮が好ましくない場合には、特許文献１のデータ圧縮方法を用いることができないといった問題がある。
【０００６】
そこで本発明は、大規模なデータを高速に圧縮することができるデータ圧縮装置及びデータ圧縮方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、ユーザを識別するユーザ識別子毎に、コンテンツ情報を識別するコンテンツ識別子を一又は複数対応付けて個別データを生成し、生成した複数の個別データ同士を対応付けて圧縮対象データを生成する圧縮対象データ生成手段と、圧縮対象データに含まれる複数の個別データを、所定のコンテンツ識別子の有無に応じてグループ分けを行うグループ分け手段と、グループ分け手段によってグループ分けがされた個別データのグループの中から、所定の抽出条件に従って個別データを抽出する個別データ抽出手段と、個別データ抽出手段による個別データの抽出対象となった個別データのグループの中で、個別データ抽出手段によって抽出された個別データ以外の個別データを圧縮対象データから除外することで圧縮対象データのデータ量を圧縮するデータ圧縮手段と、を備えることを特徴とする。
【０００８】
また、本発明は、圧縮対象データを圧縮する圧縮装置において実行されるデータ圧縮方法であって、ユーザを識別するユーザ識別子毎に、コンテンツ情報を識別するコンテンツ識別子を一又は複数対応付けて個別データを生成し、生成した複数の個別データ同士を対応付けて圧縮対象データを生成する圧縮対象データ生成ステップと、圧縮対象データに含まれる複数の個別データを、所定のコンテンツ識別子の有無に応じてグループ分けを行うグループ分けステップと、グループ分けステップにおいてグループ分けがされた個別データのグループの中から、所定の抽出条件に従って個別データを抽出する個別データ抽出ステップと、個別データ抽出ステップにおいて個別データの抽出対象となった個別データのグループの中で、個別データ抽出ステップにおいて抽出された個別データ以外の個別データを圧縮対象データから除外することで圧縮対象データのデータ量を圧縮するデータ圧縮ステップと、を有することを特徴とする。
【０００９】
これらの発明にあっては、圧縮対象データが、所定のコンテンツ識別子の有無に応じてグループ分けされる。そして、グループ分けがされた個別データのグループの中から、所定の抽出条件に従って個別データが抽出される。そして、個別データの抽出対象となった個別データのグループの中で、抽出された個別データ以外の個別データを圧縮対象データから除外することで圧縮対象データのデータ量が圧縮される。このように、個別データのグループ分け、及び、所定のコンテンツ識別子の有無に応じた個別データの抽出を行うだけで、圧縮対象データの圧縮を行うことができる。これにより、圧縮の対象となる圧縮対象データが大規模となった場合であっても、圧縮対象データを高速に圧縮することができる。
【００１０】
また、グループ分け手段は、グループ分け後の個別データを更にグループ分けすることが好適である。これにより、圧縮対象データから個別データを除外する際の対象となる個別データのグループをより好適に絞りこむことができ、好適な圧縮を行うことができる。
【００１１】
また、グループ分け手段は、グループ分けされた個別データのグループの数、及び、グループ内に含まれる個別データの数、のうち少なくともいずれかが予め定められた閾値を満たすまで繰り返しグループ分けを行うことが好適である。これにより、グループ分けされた個別データのグループの数、及び、グループ内に含まれる個別データの数に応じて、圧縮対象データから個別データを除外する際の対象となる個別データのグループを、より一層好適に絞りこむことができる。
【００１２】
また、グループ分け手段は、グループ分けを繰り返し行う際に、グループ分け毎に異なるコンテンツ識別子の有無に応じてグループ分けを行うことが好適である。これにより、グループ分け毎に異なるコンテンツ識別子の有無に応じて、圧縮対象データから個別データを除外する際の対象となる個別データのグループを、より一層好適に絞りこむことができる。
【００１３】
また、個別データ抽出手段は、個別データを抽出する際に、個別データの抽出対象となる個別データのグループの中で、個別データに対応付けられたコンテンツ識別子の数が最も多い個別データを抽出することが好適である。これにより、抽出された個別データが属していたグループの中で、抽出された個別データ以外の個別データが圧縮対象データから除外されて抽出された個別データのみが残ることとなる。このように、対応付けられたコンテンツ識別子の数が最も多い個別データを残しながら圧縮対象データのデータ量の圧縮を行うことで、圧縮対象データの圧縮をより好適に行うことができる。
【００１４】
また、個別データ抽出手段は、個別データを抽出する際に、個別データの抽出対象となる個別データのグループの中で、個別データに対応付けられたコンテンツ識別子の数が最も少ない個別データを抽出することが好適である。これにより、抽出された個別データが属していたグループの中で、抽出された個別データ以外の個別データが圧縮対象データから除外されて抽出された個別データのみが残ることとなる。このように、対応付けられたコンテンツ識別子の数が最も少ない個別データを残しながら圧縮対象データのデータ量の圧縮を行うことで、圧縮対象データの圧縮をより好適に行うことができる。
【００１５】
また、個別データ抽出手段は、個別データのグループ内における過半数の個別データに対応付けられているコンテンツ識別子を抽出し、抽出したコンテンツ識別子を用いて個別データを抽出することが好適である。これにより、過半数の個別データに対応付けられているコンテンツ識別子を用いて個別データが抽出される。そして、抽出された個別データを残しながら圧縮対象データのデータ量の圧縮を行うことで、圧縮対象データの圧縮をより好適に行うことができる。
【００１６】
また、コンテンツ情報は、ユーザが利用したコンテンツについての情報であり、圧縮対象データ生成手段は、ユーザが利用したコンテンツのコンテンツ識別子を、ユーザ識別子に対応付けることが好適である。これにより、例えば、ユーザ数が多く、利用するコンテンツの数が多いために、圧縮対象データのデータ量が膨大となるような場合であっても、圧縮対象データをより高速に圧縮することができる。
【発明の効果】
【００１７】
本発明によれば、大規模なデータを高速に圧縮することができる。
【図面の簡単な説明】
【００１８】
【図１】情報収集サーバの全体構成を示すブロック図である。
【図２】ユーザＩＤとコンテンツＩＤとが対応付けられた情報を示す図である。
【図３】特定コンテンツ順計算部が求める特定のコンテンツ順を示す図である。
【図４】圧縮対象データ生成部が生成する個別データを示す図である。
【図５】個別データのグループ分けの様子を示す図である。
【図６】圧縮後の圧縮対象データを示す図である。
【図７】情報収集サーバのハードウェア構成を示すブロック図である。
【図８】情報収集サーバが行うデータ圧縮処理の流れを示すフローチャートである。
【図９】個別データを示す図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照しつつ本発明に係るデータ圧縮装置を適用した情報収集サーバの好適な実施形態について詳細に説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
【００２０】
図１に示すように、情報収集サーバ（データ圧縮装置）１は、ユーザが利用したコンテンツ情報等を収集し、蓄積するものである。情報収集サーバ１に蓄積された情報は、図示しない他のサーバ等に出力されて例えばレコメンデーション情報の提供等に利用される。このため、情報収集サーバ１は、情報収集部１１と、履歴データベース１２と、特定コンテンツ順計算部２１と、圧縮対象データ生成部（圧縮対象データ生成手段）２２と、グループ分け部（グループ分け手段）２３と、個別データ抽出部（個別データ抽出手段）２４と、データ圧縮部（データ圧縮手段）２５と、を含んで構成される。
【００２１】
情報収集部１１は、ユーザが携帯端末等を用いてどのようなコンテンツ情報を利用したかについての情報を取得する。具体的には、情報収集部１１は、ユーザを識別するユーザＩＤ（ユーザ識別子）と、ユーザが利用したコンテン情報を識別するためのコンテンツＩＤ（コンテンツ識別子）と、が対応付けられた情報を取得する。例えば、情報収集部１１は、図２に示すように、ユーザＩＤとしての「Ｕ１」と、コンテンツＩＤとしての「Ｃ１」とが対応付けられた情報、ユーザＩＤとしての「Ｕ１」と、コンテンツＩＤとしての「Ｃ２」とが対応付けられた情報、・・・、のように、ユーザＩＤとコンテンツＩＤとが対応付けられた情報を複数取得する。
【００２２】
情報収集部１１は、取得した情報を、履歴データベース１２に記憶させる。なお、情報収集部１１は、ユーザＩＤ及びコンテンツＩＤについての情報を、図示しない移動端末から取得したり、これらのユーザＩＤ及びコンテンツＩＤを携帯端末から収集する他のサーバ等から取得したりすることができる。本実施形態において、ユーザＩＤ及びコンテンツＩＤについての情報の取得先は限定されない。
【００２３】
履歴データベース１２は、情報収集部１１が収集したユーザＩＤとコンテンツＩＤとが対応付けられた情報、及び、データ圧縮部２５が圧縮した圧縮後の圧縮対象データ、を記憶する。履歴データベース１２に記憶された圧縮後の圧縮対象データは、図示しない他のサーバ等に出力されてレコメンデーション情報の提供等に利用される。
【００２４】
特定コンテンツ順計算部２１は、特定のコンテンツ順を求める。ここでの特定のコンテンツ順とは、履歴データベース１２に記憶されたコンテンツＩＤの数に基づいて得られるコンテンツの人気ランキング順を用いる。なお、特定コンテンツ順計算部２１は、特定のコンテンツ順として、人気ランキング順を用いる以外にも、ランダムなコンテンツ順を指定してもよい。また、特定のコンテンツ順として、マーケティングデータ等の外部データを利用して、グループ分け部２３によるグループ分け処理が容易となるように手動でコンテンツ順を設定してもよい。
【００２５】
ここでは、便宜上、図３に示すように、特定のコンテンツ順としてコンテンツＩＤ：Ｃ４が第１位、コンテンツＩＤ：Ｃ１が第２位、コンテンツＩＤ：Ｃ２が第３位、コンテンツＩＤ：Ｃ５が第４位、コンテンツＩＤ：Ｃ３が第５位、が特定コンテンツ順計算部２１によって求められたものとする。
【００２６】
圧縮対象データ生成部２２は、まず、履歴データベース１２に記憶されたユーザＩＤとコンテンツＩＤとが対応付けられた情報（図２参照）を用いて、ユーザＩＤ毎に個別データを生成する。具体的には、圧縮対象データ生成部２２は、ユーザＩＤが「Ｕ１」についての個別データを生成する場合、図４（ａ）に示すように、ユーザＩＤ：Ｕ１に、コンテンツＩＤ：Ｃ１，Ｃ２，Ｃ４，Ｃ５を対応付ける。圧縮対象データ生成部２２は、図４（ａ）に示すユーザＩＤ：Ｕ１についての個別データの生成と同様に、他のユーザＩＤについても個別データを生成する。
【００２７】
次に、圧縮対象データ生成部２２は、ユーザＩＤ毎に生成した複数の個別データ同士を対応付けて、図４（ｂ）に示すように、圧縮対象データを生成する。この圧縮対象データは、ユーザＩＤとコンテンツＩＤとを対応付けて行列形式で示したユーザ×コンテンツ行列として表すことができる。
【００２８】
グループ分け部２３は、圧縮対象データに含まれる複数の個別データを、所定のコンテンツＩＤの有無に応じてグループ分けを行う。所定のコンテンツＩＤとして、特定コンテンツ順計算部２１で求められた特定のコンテンツ順に含まれるコンテンツＩＤが用いられる。また、グループ分け部２３は、所定のグループ分け条件を満たすまで繰り返しグループ分けを行う。なお、所定のグループ分け条件として、グループ分け対象となる各グループにおける個別データの数、及び、グループ分けの対象とする個別データのグループの数、を用いた条件が予め設定されている。また、グループ分け部２３は、繰り返しグループ分けを行う際に、グループ分け毎に異なるコンテンツＩＤの有無に応じてグループ分けを行う。
【００２９】
以下、図５を用いて、グループ分け部２３が、ユーザＩＤ：Ｕ１，Ｕ２，Ｕ３，Ｕ４，Ｕ５の個別データをグループ分けする具体例について説明する。ここでは、所定のグループ分け条件として、グループ分け対象となる各グループにおける個別データの数が２以下、及び、グループ分けの対象とする個別データのグループの数が３以上、が設定されており、双方の条件を満たすまで、グループ分け部２３がグループ分けを繰り返す。また、グループ分け部２３は、繰り返しグループ分けを行う際に用いるコンテンツＩＤとして、特定コンテンツ順計算部２１によって求められた特定のコンテンツ順の第１位のコンテンツＩＤから順に、繰り返しの度に順次下位のコンテンツＩＤを用いる。
【００３０】
まず、グループ分け部２３は、ユーザＩＤ：Ｕ１，Ｕ２，Ｕ３，Ｕ４，Ｕ５の５つの個別データが、所定のグループ分け条件を見たしているか否かを判断する。ここでは、グループ分け対象となるユーザＩＤ：Ｕ１，Ｕ２，Ｕ３，Ｕ４，Ｕ５のグループ（以下「グループＧ１」という）における個別データの数が５であり、グループ分け対象となるグループの数（グループＧ１）が１である。よって、所定のグループ分け条件を満たさないため、グループ分け部２３は、特定のコンテンツ順の第１位のコンテンツＩＤ：Ｃ４の有無に応じて、グループＧ１の個別データのグループ分けを行う。
【００３１】
ここでは、図４（ｂ）に示すように、ユーザＩＤ：Ｕ１，Ｕ３，Ｕ５の個別データにコンテンツＩＤ：Ｃ４が含まれている。このため、グループ分け部２３は、図５に示すように、グループＧ１に含まれる個別データを、ユーザＩＤ：Ｕ１，Ｕ３，Ｕ５の個別データのグループＧ１１と、ユーザＩＤ：Ｕ２，Ｕ４の個別データのグループＧ１２と、に分ける。
【００３２】
次に、グループ分け部２３は、グループ分け後のグループＧ１１，Ｇ１２を、さらにグループ分けを行うか否かを判断する。具体的には、グループ分け部２３は、グループＧ１１，Ｇ１２がそれぞれ所定のグループ分け条件を見たしているか否かを判断する。ここでは、グループＧ１１における個別データの数が３、グループＧ１２における個別データの数が２であり、グループ分けの対象となるグループの数（グループＧ１１，Ｇ１２）が２である。よって、所定のグループ分け条件を満たさないため、グループ分け部２３は、特定のコンテンツ順の第２位のコンテンツＩＤ：Ｃ１の有無に応じて、グループＧ１１，Ｇ１２のそれぞれを更にグループ分けする。
【００３３】
ここでは、グループＧ１１のグループ分けを行う場合、図４（ｂ）に示すように、ユーザＩＤ：Ｕ１，Ｕ３の個別データにコンテンツＩＤ：Ｃ１が含まれている。このため、グループ分け部２３は、図５に示すように、グループＧ１１に含まれる個別データを、ユーザＩＤ：Ｕ１，Ｕ３の個別データのグループＧ２１と、ユーザＩＤ：Ｕ５の個別データのグループＧ２２と、にグループ分けする。同様に、グループＧ１２のグループ分けを行う場合、ユーザＩＤ：Ｕ４の個別データにコンテンツＩＤ：Ｃ１が含まれている。このため、グループ分け部２３は、図５に示すように、グループＧ１２に含まれる個別データを、ユーザＩＤ：Ｕ２の個別データのグループＧ２３と、ユーザＩＤ：Ｕ４の個別データのグループＧ２４と、にグループ分けする。
【００３４】
次に、グループ分け部２３は、グループ分け後のグループＧ２１，Ｇ２２，Ｇ２３，Ｇ２４を、さらにグループ分けを行うか否かを判断する。具体的には、グループ分け部２３は、グループＧ２１〜Ｇ２４が、それぞれ所定のグループ分け条件を見たしているか否かを判断する。ここでは、グループＧ２１における個別データの数が２、グループＧ２２，Ｇ２３，Ｇ２４における個別データの数がそれぞれ１であり、グループ分けの対象となるグループの数（グループＧ２１〜Ｇ２４）が４である。よって、所定のグループ分け条件を満たすため、グループ分け部２３は、これ以上のグループ分けを行わない。
【００３５】
個別データ抽出部２４は、グループ分け部２３によってグループ分けがされた個別データのグループの中から、所定の抽出条件に従って個別データを抽出する。具体的には、個別データ抽出部２４は、個別データを複数含むグループを、個別データの抽出対象とする。そして、個別データ抽出部２４は、抽出対象のグループに含まれる個別データの中で、各ユーザＩＤに対して最も多くのコンテンツＩＤが対応付けられている個別データを抽出する。
【００３６】
例えば、図５に示すように、個別データがグループＧ２１，Ｇ２２，Ｇ２３，Ｇ２４にグループ分けされている場合、個別データ抽出部２４は、個別データを２つ含むグループＧ２１を、個別データの抽出対象として選択する。そして、個別データ抽出部２４は、グループＧ２１に含まれるユーザＩＤが「Ｕ１」，「Ｕ３」の個別データの中で、個別データに対応付けられているコンテンツＩＤの数が多い個別データを抽出する。ここでは、図４（ｂ）に示すように、ユーザＩＤが「Ｕ１」の個別データには４つのコンテンツＩＤが対応付けられ、ユーザＩＤが「Ｕ３」の個別データには３つのコンテンツＩＤが対応付けられている。従って、個別データ抽出部２４は、グループＧ２１の中のユーザＩＤが「Ｕ１」の個別データを、抽出する。
【００３７】
データ圧縮部２５は、個別データ抽出部２４による個別データの抽出対象となった個別データのグループの中で、個別データ抽出部２４によって抽出された個別データ以外の個別データを圧縮対象データから除外することで圧縮対象データのデータ量を圧縮する。データ圧縮部２５は、圧縮後の圧縮対象データを、履歴データベース１２に記憶させる。
【００３８】
例えば、個別データ抽出部２４によって図５に示すグループＧ２１の中のユーザＩＤが「Ｕ１」の個別データが抽出されている場合、ユーザＩＤが「Ｕ１」の個別データ以外の個別データであるユーザＩＤが「Ｕ３」の個別データを、図４（ｂ）に示す圧縮対象データから除外する。これにより、図４に示す圧縮対象データからユーザＩＤが「Ｕ３」の個別データが除外され、図６に示す圧縮対象データのようにデータ量が圧縮される。
【００３９】
このように、情報収集サーバ１は、ユーザＩＤとコンテンツＩＤとが対応付けられた圧縮対象データのデータ量を圧縮することができる。
【００４０】
なお、情報収集サーバ１は、物理的には、図７に示すように、ＣＰＵ１０１、主記憶装置であるＲＡＭ１０２及びＲＯＭ１０３、ハードディスク等の補助記憶装置１０４、データ送受信デバイスである通信モジュール１０５、入力デバイスであるキーボード及びマウス等の入力装置１０６、ディスプレイ等の出力装置１０７などを含むコンピュータシステムとして構成されている。図１において説明した各機能は、図７に示すＣＰＵ１０１、ＲＡＭ１０２等のハードウェア上に所定のコンピュータソフトウェアを読み込ませることにより、ＣＰＵ１０１の制御のもとでＲＡＭ１０２や補助記憶装置１０４におけるデータの読み出し及び書き込み等を行うことで実現される。
【００４１】
次に、本実施形態における情報収集サーバ１が行う圧縮対象データの圧縮処理の流れ、及び、本発明に係るデータ圧縮方法について説明する。図８に示すように、特定コンテンツ順計算部２１は、履歴データベース１２に記憶された情報等を用いて、特定のコンテンツ順を求める（ステップＳ１０１）。
【００４２】
次に、圧縮対象データ生成部２２は、履歴データベース１２に記憶された情報を用いて、ユーザＩＤ毎に個別データを生成する（ステップＳ１０２：圧縮対象データ生成ステップ）。そして、圧縮対象データ生成部２２は、生成した複数の個別データ同士を対応付けて、圧縮対象データを生成する（ステップＳ１０３：圧縮対象データ生成ステップ）。
【００４３】
次に、グループ分け部２３は、圧縮対象データに含まれる複数の個別データを、特定のコンテンツ順に含まれるコンテンツＩＤの有無に応じて、グループ分けを行う（ステップＳ１０４：グループ分けステップ）。そして、グループ分け部２３は、グループ分け対象となる各グループにおける個別データの数、及び、グループ分けの対象とする個別データのグループの数が、所定のグループ分け条件を満たしているか否かを判断する（ステップＳ１０５：グループ分けステップ）。所定のグループ分け条件を満たしていない場合（ステップＳ１０５：ＮＯ）、グループ分け部２３は、所定のグループ分け条件を満たすまで個別データのグループ分け（ステップＳ１０４）を繰り返す。
【００４４】
グループ分け部２３によって所定のグループ分け条件が満たされたと判断された場合（ステップＳ１０５：ＹＥＳ）、個別データ抽出部２４は、グループ分け部２３によってグループ分けがされた個別データのグループの中から、所定の抽出条件に従って個別データを抽出する（ステップＳ１０６：個別データ抽出ステップ）。
【００４５】
次に、データ圧縮部２５は、個別データ抽出部２４によって抽出された個別データを用いて圧縮対象データを圧縮し、圧縮後の圧縮対象データを履歴データベース１２に記憶させる（ステップＳ１０７：データ圧縮ステップ）。
【００４６】
本実施形態は以上のように構成され、圧縮対象データが、所定のコンテンツＩＤの有無に応じてグループ分けされる。そして、グループ分けがされた個別データのグループの中から、所定の抽出条件に従って個別データが抽出される。そして、個別データの抽出対象となった個別データのグループの中で、抽出された個別データ以外の個別データを圧縮対象データから除外することで圧縮対象データが圧縮される。このように、個別データのグループ分け、及び、所定のコンテンツＩＤの有無に応じた個別データの抽出を行うだけで、複雑な計算処理を行うことなく圧縮対象データのデータ量の圧縮を行うことができる。これにより、圧縮の対象となる圧縮対象データが大規模となった場合であっても、圧縮対象データのデータ量を高速に圧縮することができる。このように、圧縮対象データのデータ量の圧縮を行うことができるため、この圧縮対象データを利用する装置の計算時間を短縮することができる。
【００４７】
また、グループ分け部２３が、グループ分け後の個別データを更にグループ分けすることで、圧縮対象データから個別データを除外する際の対象となる個別データのグループをより好適に絞りこむことができ、好適な圧縮を行うことができる。
【００４８】
また、グループ分け部２３が、所定のグループ分け条件として予め設定された、グループ分けされた個別データのグループの数、及び、グループ内に含まれる個別データの数、を満たすまで繰り返しグループ分けを行う。これにより、グループ分けされた個別データのグループの数、及び、グループ内に含まれる個別データの数に応じて、圧縮対象データから個別データを除外する際の対象となる個別データのグループを、より一層好適に絞りこむことができる。
【００４９】
また、グループ分け部２３は、グループ分けを繰り返し行う際に、グループ分け毎に異なるコンテンツＩＤの有無に応じてグループ分けを行う。これにより、グループ分け毎に異なるコンテンツＩＤの有無に応じて、圧縮対象データから個別データを除外する際の対象となる個別データのグループを、より一層好適に絞りこむことができる。
【００５０】
また、個別データ抽出部２４は、個別データを抽出する場合、抽出対象となる個別データのグループの中で、個別データに対応付けられたコンテンツＩＤの数が最も多い個別データを抽出する。これにより、抽出された個別データが属していたグループの中で、抽出された個別データ以外の個別データが圧縮対象データから除外され、抽出された個別データのみが残ることとなる。このように、対応付けられたコンテンツＩＤの数が最も多い個別データを残しながら圧縮対象データの圧縮を行うことで、圧縮対象データのデータ量の圧縮をより好適に行うことができる。
【００５１】
また、コンテンツ情報として、ユーザが利用したコンテンツについての情報を用いる。圧縮対象データ生成部２２は、ユーザが利用したコンテンツのコンテンツＩＤを、ユーザＩＤに対応付ける。この場合、例えば、ユーザ数が多く、利用するコンテンツの数が多いために、圧縮対象データのデータ量が膨大となってしまっても、情報収集サーバ１によって圧縮対象データのデータ量をより高速に圧縮することができる。
【００５２】
なお、上記実施形態において、所定のグループ分け条件として設定された、グループ分けされた個別データのグループの数、及び、グループ内に含まれる個別データの数、の双方を満たす場合にグループ分けを終了するものとしたが、いずれか一方を満たす場合にグループ分けを終了してもよい。また、所定のグループ分け条件は、上述のグループ分けされた個別データのグループの数、及び、グループ内に含まれる個別データの数、に限定されるものではなく、他の条件を設定してもよい。
【００５３】
グループ分けを繰り返し行う際に、グループ分け毎に異なるコンテンツＩＤとして、特定のコンテンツ順に含まれるコンテンツＩＤを第１位から順に用いるものとしたが、これ以外の方法によって選ばれたコンテンツＩＤを用いてもよい。
【００５４】
また、個別データ抽出部２４は、個別データの抽出を行う際に、抽出対象のグループに含まれる個別データの中で、各ユーザＩＤに対して対応付けられているコンテンツＩＤの数が最も少ない個別データを抽出してもよい。この場合であっても、対応付けられたコンテンツＩＤの数が最も少ない個別データを残しながら圧縮対象データの圧縮を行うことができる。
【００５５】
また、個別データ抽出部２４は、個別データの抽出を行う際に、個別データのグループ内における過半数の個別データに対応付けられているコンテンツＩＤを抽出し、抽出したコンテンツＩＤを用いて個別データを抽出することもできる。以下、具体的例について説明する。図９に示すように、個別データの抽出対象となるグループＧ１００に、ユーザＩＤ：Ｕ１１，Ｕ１２，Ｕ１３の個別データが含まれているものとする。また、ユーザＩＤ：Ｕ１１の個別データにはコンテンツＩＤ：Ｃ１，Ｃ２，Ｃ５，Ｃ７，Ｃ８が対応付けられており、ユーザＩＤ：Ｕ１２の個別データにはコンテンツＩＤ：Ｃ１，Ｃ２，Ｃ５，Ｃ９，Ｃ１０が対応付けられており、ユーザＩＤ：Ｕ１３の個別データにはコンテンツＩＤ：Ｃ１，Ｃ２，Ｃ５，Ｃ９，Ｃ１１，Ｃ１２，Ｃ１３，Ｃ１４が対応付けられているものとする。
【００５６】
この場合、まず個別データ抽出部２４は、ユーザＩＤ：Ｕ１１，Ｕ１２，Ｕ１３の個別データに対応付けられたコンテンツＩＤの中で、過半数の個別データに対応付けられているコンテンツＩＤを抽出する。ここでは、２以上の個別データに対応付けられているコンテンツＩＤ：Ｃ１，Ｃ２，Ｃ５，Ｃ９が抽出される。
【００５７】
そして個別データ抽出部２４は、個別データごとに、抽出したコンテンツＩＤと個別データに含まれるコンテンツＩＤとの類似度を求める。この類似度は、例えば、個別データに対して、抽出されたコンテンツＩＤが対応付けられている場合にはその数に応じて類似度を＋１とし、抽出されたコンテンツＩＤ以外のコンテンツＩＤが対応付けられている場合にはその数に応じて類似度を−１とする。具体的には、ユーザＩＤ：Ｕ１１の個別データには、抽出されたコンテンツＩＤ：Ｃ１，Ｃ２，Ｃ５，Ｃ９のうち３つのコンテンツＩＤ（Ｃ１，Ｃ２，Ｃ５）が対応付けられているため類似度を＋３とし、抽出されたコンテンツＩＤ以外の２つのコンテンツＩＤ（Ｃ７，Ｃ９）が対応付けられているため類似度を−２とする。その結果、ユーザＩＤ：Ｕ１の個別データの類似度は「１」となる。このようにして、ユーザＩＤごとに個別データの類似度を求める。その結果、図９に示す例では、ユーザＩＤ：Ｕ１１の個別データの類似度は「１」、ユーザＩＤ：Ｕ１２の個別データの類似度は「３」、ユーザＩＤ：Ｕ１３の個別データの類似度は「０」となる。
【００５８】
そして、個別データ抽出部２４は、求められた類似度が最も高いユーザＩＤの個別データ（ここでは、ユーザＩＤ：Ｕ１２の個別データ）を抽出する。この場合であっても、過半数の個別データに対応付けられているコンテンツＩＤを用いて個別データを抽出し、抽出された個別データを残しながら圧縮対象データの圧縮を行うことができる。
【００５９】
また、過半数の個別データに対応付けられているコンテンツＩＤを抽出した後、類似度を用いずに個別データを求めることもできる。具体的には、個別データ抽出部２４は、例えば、過半数の個別データに対応付けられているコンテンツＩＤ：Ｃ１，Ｃ２，Ｃ５，Ｃ９を用いて、新たに個別データを作成する。より詳細には、過半数の個別データに対応付けられているコンテンツＩＤ：Ｃ１，Ｃ２，Ｃ５，Ｃ９に対し、新たに生成したユーザＩＤ：Ｕ２０を対応付けて、新たな個別データを作成する。そして個別データ抽出部２４は、作成した新たな個別データを、圧縮対象データの圧縮の際に残すデータとして抽出することもできる。この場合であっても、過半数の個別データに対応付けられているコンテンツＩＤを用いて個別データを抽出し、抽出された個別データを残しながら圧縮対象データの圧縮を行うことができる。
【符号の説明】
【００６０】
１…情報収集サーバ、１１…情報収集部、１２…履歴データベース、２１…特定コンテンツ順計算部、２２…圧縮対象データ生成部、２３…グループ分け部、２４…個別データ抽出部、２５…データ圧縮部。
【図１】
0005762938.tif 000002
【図２】
0005762938.tif 000003
【図３】
0005762938.tif 000004
【図４】
0005762938.tif 000005
【図５】
0005762938.tif 000006
【図６】
0005762938.tif 000007
【図７】
0005762938.tif 000008
【図８】
0005762938.tif 000009
【図９】
0005762938.tif 000010