コンピュータ実行可能命令とともに構成される1つ以上のプロセッサによって行われる、製品情報を伝送する方法であって、前記方法は、1人以上のユーザによって与えられる製品評価レコードを検索することであって、前記製品評価レコードのそれぞれは、ユーザの識別情報ユーザIDと、製品の識別情報製品IDと、評価情報とを含む、検索することと、前記ユーザIDおよび前記製品IDを一次キーとして使用することと、前記一次キーの区間に従って、前記製品評価レコードを複数のレコードのサブセットに分割することと、前記複数のレコードのサブセットを複数の計算ノードに割り当てることと、前記複数の計算ノードから、前記割り当てられた複数のレコードのサブセットの特異値分解SVDの計算結果を得ることと、前記SVDの計算結果に基づいて、推薦製品情報をクライアント端末に送ることと、を含む、方法。前記割り当てることは、1つのユーザIDおよび/または1つの製品IDに関連する評価情報を、1つのレコードのサブセットに割り当てることを含む、請求項1に記載の方法。前記複数の計算ノードは、サーバである、請求項1に記載の方法。前記SVDの計算結果は、ユーザ嗜好情報および製品人気情報を含む、請求項1に記載の方法。前記SVDの計算結果に基づいて、前記推薦製品情報を前記クライアント端末に前記送ることは、前記ユーザ嗜好情報に基づいて、前記クライアント端末にログインするユーザに合致する、1人以上のユーザを決定することと、前記決定されたユーザによって評価された製品の製品情報を、前記クライアント端末に送ることと、を含む、請求項4に記載の方法。前記SVDの計算結果に基づいて、前記推薦製品情報を前記クライアント端末に前記送ることは、前記製品人気情報に基づいて、前記クライアント端末にログインするユーザによって評価された1つ以上の製品に合致する、1つ以上の製品を決定することと、前記決定された製品の製品情報を前記クライアント端末に送ることと、を含む、請求項4に記載の方法。前記SVDの計算結果に基づいて、前記推薦製品情報を前記クライアント端末に前記送ることは、前記ユーザ嗜好情報および前記製品人気情報の双方に基づいて、前記クライアント端末にログインするユーザと、前記ログインしたユーザによって評価された1つ以上の製品との組み合わせに合致する、ユーザと製品との1つ以上の組み合わせを決定することと、前記決定された組み合わせにおける製品の製品情報を前記クライアント端末に送ることと、を含む、請求項4に記載の方法。前記製品評価レコードを検索した後に、前記製品評価レコードのフォーマットを変換することをさらに含む、請求項1に記載の方法。前記製品評価レコードを複数のレコードのサブセットに前記分割することは、フォーマット変換後に、前記製品評価レコードを分割することをさらに備える、請求項8に記載の方法。前記変換することは、各ユーザIDおよび/または製品IDに対応する前記評価情報のランキング順序を調整すること、および/または所定の条件を満たす、1つ以上のユーザIDおよび/または製品IDに対応する評価情報を削除すること、を含む、請求項8に記載の方法。前記調整することは、前記製品評価レコードに対応する行列に対して、列交換および/または線形交換を行うことを含み、前記削除することは、前記製品評価レコードに対応する前記行列から、所定の条件を満たす行および/または列を削除することを含む、請求項10に記載の方法。前記一次キーの前記区間のそれぞれは、1つ以上のユーザIDと、1つ以上の製品IDとを含み、前記一次キーの異なる区間には、いかなる前記ユーザIDおよび製品IDの重複もない、請求項1に記載の方法。製品情報を伝送するためのデバイスであって、プロセッサと、メモリとを備え、前記メモリは、前記プロセッサによって実行可能である以下のモジュール、すなわち、検索モジュールであって、1人以上のユーザによって与えられる製品評価レコードを検索し、前記製品評価レコードのそれぞれは、ユーザの識別情報ユーザIDと、製品の識別情報製品IDと、評価情報とを含む、検索モジュールと、割り当てモジュールであって、前記ユーザIDおよび前記製品IDを一次キーとして使用し、前記一次キーの区間に従って、前記製品評価レコードを複数のレコードのサブセットに分割し、そして、前記複数のレコードのサブセットを複数の計算ノードに割り当てる、割り当てモジュールと、伝送モジュールであって、前記複数の計算ノードから、前記割り当てられた複数のレコードのサブセットの特異値分解SVDの計算結果を得て、前記SVDの計算結果に基づいて、推薦製品情報をクライアント端末に送る、伝送モジュールと、を格納する、デバイス。前記割り当てモジュールはさらに、1つのユーザIDおよび/または1つの製品IDに関連する評価情報を、1つのレコードのサブセットに割り当てる、請求項13に記載のデバイス。前記SVDの計算結果は、ユーザ嗜好情報および製品人気情報を含み、前記伝送モジュールはさらに、以下のオペレーション、すなわち、前記ユーザ嗜好情報に基づいて、前記クライアント端末にログインするユーザに合致する、1人以上のユーザを決定することと、前記決定されたユーザによって評価された製品の製品情報を、前記クライアント端末に送ることと、前記製品人気情報に基づいて、前記クライアント端末にログインするユーザによって評価された1つ以上の製品に合致する、1つ以上の製品を決定することと、前記決定された製品の製品情報を前記クライアント端末に送ることと、前記ユーザ嗜好情報および前記製品人気情報の双方に基づいて、前記クライアント端末にログインするユーザと、前記ログインしたユーザによって評価された1つ以上の製品との組み合わせに合致する、ユーザと製品との1つ以上の組み合わせを決定することと、前記決定された組み合わせにおける製品の製品情報を前記クライアント端末に送ることと、のうちの1つ以上を行う、請求項13に記載のデバイス。前記製品評価レコードのフォーマットを変換する、変換モジュールをさらに備える、請求項13に記載のデバイス。前記割り当てモジュールはさらに、フォーマット変換後に、前記製品評価レコードをさらに分割する、請求項16に記載のデバイス。前記変換モジュールはさらに、各ユーザIDおよび/または製品IDに対応する前記評価情報のランキング順序を調整し、および/または所定の条件を満たす、1つ以上のユーザIDおよび/または製品IDに対応する評価情報を削除する、請求項16に記載のデバイス。前記変換モジュールはさらに、前記製品評価レコードに対応する行列に対して、列交換および/または線形交換をさらに行い、および/または前記製品評価レコードに対応する前記行列から、所定の条件を満たす行および/または列を削除する、請求項18に記載のデバイス。1つ以上のプロセッサによって実行可能なコンピュータ実行可能命令を含む、1つ以上のコンピュータ可読媒体であって、該コンピュータ実行可能命令は、前記1つ以上のプロセッサによって実行されたときに、前記1つ以上のプロセッサに、1人以上のユーザによって与えられる製品評価レコードを検索することであって、前記製品評価レコードのそれぞれは、ユーザの識別情報ユーザID、製品の識別情報製品ID、および評価情報を含む、検索することと、前記ユーザIDおよび前記製品IDを一次キーとして使用することと、前記一次キーの区間に従って、前記製品評価レコードを複数のレコードのサブセットに分割することと、前記複数のレコードのサブセットを複数の計算ノードに割り当てることとであって、前記割り当てることは、1つのユーザIDおよび/または1つの製品IDに関連する評価情報を1つのレコードのサブセットに割り当てることを含む、複数の計算ノードに割り当てることと、前記複数の計算ノードから、前記割り当てられた複数のレコードのサブセットの特異値分解SVDの計算結果を得ることであって、前記SVDの計算結果は、ユーザ嗜好情報および製品人気情報を含む、計算結果を得ることと、前記SVDの計算結果に基づいて、推薦製品情報をクライアント端末に送ることと、を含むオペレーションを行わせる、1つ以上のコンピュータ可読媒体。一実施形態において、システムは、1人以上のユーザから製品評価レコードを検索する。製品評価レコードのそれぞれは、ユーザの識別情報ユーザIDと、製品の識別情報製品IDと、評価情報とを含む。システムは、ユーザIDおよび製品IDを一次キーとして使用し、次いで、一次キーの範囲に基づいて、製品評価レコードを複数のレコードのサブセットに分割し、そして、これらのレコードのサブセットを複数の計算ノードに割り当てる。同じユーザIDまたは同じ製品IDに関連する、評価レコードの中の全ての評価情報は、1つのレコードのサブセットに分類される。複数の計算ノードは、ある計算機能を伴うコンピューティングデバイスである。計算ノードの例として、パーソナルコンピュータ、サーバコンピュータ、手持ち式デバイスまたは携帯デバイス、タブレットデバイス、マルチプロセッサシステム、マイクロプロセッサに基づくシステム、セットアップボックス、プログラム可能な顧客電子デバイス、ネットワークPC、小型コンピュータ、大型コンピュータ、および上記のいずれかのシステムまたはデバイスを含む分散コンピューティング環境が挙げられる。複数の計算ノードは、前記割り当てられたレコードのサブセットに基づいて、SVDの計算結果を得る。システムは、そのようなSVDの計算結果を検索する。SVDの計算結果に基づいて、推薦製品情報がクライアント端末に送られる。本開示は、図を参照することによって、下記のように本手法を説明する。本明細書で説明される例示的な実施形態は、本開示の実施形態の全てではなく、実施形態の一部分である。開示された例示的な実施形態に基づいて、創造的な努力をせずに当業者によって策定される全ての他の実施形態は、本開示の保護下にある。図1は、製品情報を伝送するための例示的な方法のフロー図を示す。101で、1人以上のユーザから製品評価レコードが検索される。ユーザが製品を電子商取引用ウェブサイトから購入した後に、電子商取引用ウェブサイトは、通常、ユーザが購入した製品または購買プロセスを評価する機会を提供し、これらの評価は、評価レコードの形態で電子商取引用ウェブサイトに格納される。評価レコードは、テキストの形態でデータベースに格納することができる。評価レコードのそれぞれは、ユーザIDと、製品IDと、評価情報とを含み得る。評価情報は、ユーザの製品の評価または製品に対するユーザの嗜好とすることができる。例えば、評価情報は、1~5の任意の数とすることができる。1は、ユーザが製品に関して全く満足していないことを意味し、2は、ユーザが製品に関してあまり満足していないことを意味し、3は、ユーザがどちらともいえないことを意味し、4は、ユーザが製品に関してやや満足していることを意味し、5は、ユーザが製品に関して非常に満足していることを意味する。表1で示されるように、ユーザが製品を評価していない場合は、対応する評価レコードの評価情報に0の値が設定され得る。上記の評価レコードはまた、行列によっても表され得る。行列の要素は、評価情報であり、行番号は、ユーザIDまたは製品IDのいずれかに対応し、列番号は、ユーザIDまたは製品IDのいずれかに対応する。例えば、表1の評価レコードは、行列によって以下のように表すことができる。上記の行列において、行番号は、製品IDに対応し、その一方で、列番号は、ユーザIDに対応する。102で、製品評価レコードにフォーマット変換を施す。例えば、製品評価レコードの中の各ユーザIDおよび/または製品IDの対応する評価情報の順序が調整され得る。加えて、1つ以上のユーザIDおよび/または製品IDに対応する評価情報が削除され得る。そのような削除された評価情報は、1つの製品だけしか評価しなかったユーザ等の、評価した製品の数が最小の所定の閾値を下回る、ユーザの評価情報であり得る。そのような削除された評価情報はまた、評価した製品の数が最大の所定の閾値を超える、ユーザの評価情報であり得る。そのような評価情報は、インターネットにおいて悪意のあるソフトウェアによって生成される可能性がある。そのような評価情報を削除することは、製品評価レコードにおけるノイズの影響を除去するのを補助する。行列を使用して製品評価レコードを表したときに、上述のフォーマット変換プロセスは、以下の通りであり得る。最初に、行列に対して列交換および行交換を行う。いくつかの列および行を削除する。次いで、行列を、複数の交差していないサブ行列に変換する。ユーザおよび製品の数が急激に増加した場合、およびユーザによって評価された製品の数が制限された場合、多くの製品は、製品レコードを有しない場合がある。したがって、評価レコードの対応する行列は、疎行列であり、非ゼロ要素が、要素の総数のわずかな割合を占める。上記のプロセスに基づいて、疎行列の中の非ゼロ要素は、複数の交差していないサブ行列の中へ収集することができる。例えば、製品評価レコードは、下記の疎行列1によって表すことができる。疎行列1に関して、行2および3は、交換することができる。交換の後に、行1、2、6、および10、ならびに列1、9、および10のような、非ゼロ要素を1つだけしか有しない行および列、ならびに、列5のような、全てゼロ要素である行および列が削除される。よって、下記のように行列2が得られる。上述の評価レコードはまた、図2で示されるように、連結グラフを使用して表され得る。ユーザおよび製品は、ノードである。線は、製品のユーザの評価を表す。上述の評価レコードのフォーマット変換は、以下のように実行することができる。連結グラフに対して線除去オペレーションを行う。換言すれば、1本だけの線によって他のノードにリンクされているノードに関して、そのような線を除去し、連結グラフを複数の連結サブグラフに変換する。複数の連結サブグラフを、1本以上の線によってともにリンクする。一例として図2を使用すると、製品1とユーザ1、製品10とユーザ2、製品6とユーザ9、および製品3とユーザ10とをリンクする線を除去することによって、図3で示されるように、2本の線によってリンクされる2つの連結サブグラフが得られる。103で、ユーザIDおよび製品IDを一次キーとして使用することによって、製品評価レコードが複数のレコードのサブセットに分割され、そして、該複数のレコードのサブセットが複数の計算ノードに割り当てられる。一次キーは、製品評価レコードの評価情報の各部分を一意的に識別するために使用される。システムは、一次キーを複数の区間に分割するために、計算ノードの数、製品評価レコードの情報量、および非ゼロ要素の分布特性を基準として使用し得る。各一次キーの区間は、1つ以上のユーザIDと、1つ以上の製品IDとを含む。各区間のユーザIDと製品IDとの間にはいかなる重複もない。一実施形態において、1つのユーザIDおよび/または1つの製品IDに関連する、製品評価レコードの中の全ての評価情報は、1つのレコードのサブセットに割り当てられる。さらに、製品評価レコードは、一次キーの区間に従って分割され得る。一次キーのそれぞれの区間に含まれるユーザIDおよび製品IDに関連する評価情報は、それぞれの区間に対応するそれぞれのレコードのサブセットとして全て処理される。したがって、分解に起因するレコードのサブセットは、評価レコードのサブセットであり、各レコードのサブセットは、1つの一次キー区間に対応し、異なるレコードのサブセットは、異なるユーザIDおよび製品IDに対応する。加えて、同じユーザIDまたは製品IDに関連する、評価レコードの中の全ての評価情報は、同じレコードのサブセットに含まれ、同じ計算ノードに割り当てられる。レコードのサブセットは、分散クラスタで位置付けられる計算ノードに割り当てられ、これらは、並列コンピューティングを行うことができる。行列2に対応する製品評価レコードを一例として取り上げる。評価レコードは、製品2、4、5、および7~9に関するユーザ2~4および6~8の評価情報を含む。一次キーは、2つの区間に分割することができ、区間1は、ユーザ6~8ならびに製品2、4、および5を含み、区間2は、ユーザ2~4および製品7~9を含む。ユーザIDおよび製品IDに関して、区間1と区間2との間にはいかなる重複もない。製品評価レコードを区間1および区間2に従って分割したときに、区間1に含まれるユーザ6~8ならびに製品2、4、および5に関連する評価情報は、レコードのサブセット1として指定することができ、区間2に含まれるユーザ2~4および製品7~9に関連する評価情報は、レコードのサブセット2として指定することができる。同様に、行列2は、2つの交差していない疎行列に分解することができる。レコードのサブセット1に対応するサブマトリックスは、以下の通りである:レコードのサブセット2に対応するサブマトリックスは、以下の通りである:製品評価レコードを連結グラフによって表したときに、製品評価レコードに対応する連結グラフは、一次キーの区間に基づいて、複数の連結サブグラフに分割することができる。図4で示されるように、各連結サブグラフは、レコードのサブセットに対応する。各計算ノードに割り当てられる連結サブグラフの完全性を確保するために、2つの連結サブグラフが、2つの並列計算ノードに割り当てられ得る。製品評価レコードを分割する際に、ユーザIDまたは製品IDを一次キーとして使用するときに、1つのユーザIDまたは製品IDに関連する製品評価情報が、複数のレコードのサブセットに含まれ得る。行列2に対応する製品評価レコードを一例として取り上げる。ユーザ6~8によって作成された全ての製品の評価情報が1つのレコードのサブセットにグループ化され、かつユーザ2~4によって作成された全ての製品の評価情報が別のレコードのサブセットにグループ化される場合、製品5に関連する評価情報が2つのレコードのサブセットに含まれ、製品7に関連する評価情報が2つのレコードのサブセットに含まれる。SVDアルゴリズムは、1つの製品またはユーザに関連する評価情報を1つの計算ノードで計算することを必要とするので、上記の分割されたレコードのサブセットは、SVD要件を満たさない場合がある。したがって、本開示の例示的な実施形態は、製品評価レコードを分割する際に、ユーザIDまたは製品IDのいずれかを一次キーとして使用する代わりに、ユーザIDおよび製品IDの双方を一次キーとして使用する。104で、複数の計算ノードが、割り当てられたレコードのサブセットに対してSVDの計算を行って、ユーザ嗜好情報および製品人気情報を検索する。例えば、SVDの計算結果を得るために、各計算ノードがその対応するレコードのサブセットを受け取った後に、SVDの計算を使用して、そのレコードのサブセットに対して並列コンピューティングを行ってもよい。SVDの計算のための入力として、レコードのサブセットは、ユーザの製品嗜好情報およびユーザの製品人気情報を含む、ユーザの評価情報を含む。SVDの計算は、レコードのサブセットから上述した2種類の情報を分解し、SVDの計算結果を得ることができる。SVDの計算結果は、ユーザ嗜好情報および製品人気情報を含む。ユーザ嗜好情報は、製品に対するユーザの嗜好のレベルを表し、複数のユーザベクトルを含み得る。各ユーザベクトルは、製品のためのそれぞれのユーザの嗜好を表す。製品人気情報は、製品の人気のレベルを表し、複数の製品ベクトルを含み得る。各製品ベクトルは、それぞれの製品の人気のレベルを表す。ユーザベクトルおよび製品ベクトルは、配列を使用して表すことができる。例えば、計算ノードに割り当てられるレコードのサブセットは、m×nの行列Aとして表され得、mは、ユーザIDの数であり、nは、製品IDの数である。行列Aは、製品の数nに関するユーザの数mの評価レコードを表す。計算ノードは、SVDの計算を使用して、行列Aを、m個のレベルを伴う直交行列U、およびn個のレベルを伴う直交行列V、ならびに対角行列の積Sに分割し得る。m個のレベルを伴う直交行列Uおよびn個のレベルを伴う直交行列Vは、それぞれ、ユーザ嗜好情報および製品人気情報に対応する。直交行列Uの行または列に対応するm個の配列は、各ユーザの属性に対応する、m人のユーザに対応するユーザベクトルである。直交行列Vの行または列に対応するn個の配列は、各製品の属性に対応する、n個の製品に対応する製品ベクトルである。105で、割り当てられたレコードのサブセットの複数の計算ノードによって計算されたSVDの計算結果が検索される。SVDの計算結果に基づいて、推薦製品情報がクライアント端末に送られる。例えば、推薦製品情報は、複数の計算ノードからのSVDの計算結果の組み合わせ、およびSVDの計算結果の中のユーザ嗜好情報および製品人気情報の比較を通して得てもよい。次いで、推薦製品情報を、クライアント端末に送る。ユーザベクトル間の類似性に基づいて製品が推薦されるシナリオ、すなわち、ユーザ-ユーザ推薦シナリオの場合において、ユーザ間の類似性は、計算されたユーザ嗜好情報に従って、異なるユーザに対応するユーザベクトル間の一対比較に基づいて得られ得る。ユーザ間の類似性は、対応するユーザベクトル間の差によって計算され得る。ユーザベクトル間の差が小さいほど、ユーザ間の類似性が高くなる。クライアント端末にログインしたユーザに関して、ログインしたユーザと他のユーザとの間の類似性に基づいて、他のユーザがランク付けされ得る。類似性のレベルが所定の閾値よりも高いユーザ、または所定のランキング基準を満たすユーザ例えば、上位N位にランク付けされ、Nは、任意の整数とすることができるは、ログインしたユーザに相当するユーザとみなされる。決定された相当するユーザの製品評価情報は、クライアント端末に送られ得る。例えば、上記の製品に関する相当するユーザの評価情報は、所定の評価閾値よりも大きい。製品ベクトル間の類似性に基づいて製品が推薦されるシナリオ、すなわち、製品-製品推薦シナリオの場合において、製品間の類似性は、計算された製品人気情報に従って、異なるユーザに対応する製品ベクトル間の一対比較に基づいて得られ得る。製品間の類似性は、対応する製品ベクトル間の差によって計算され得る。製品ベクトル間の差が小さいほど、ユーザ間の類似性が高くなる。クライアント端末にログインしたユーザに関して、ログインしたユーザが評価した製品例えば、ログインしたユーザによって評価された評価情報が、閾値よりも大きい製品と、他の製品との間の類似性に基づいて、製品がランク付けされ得る。類似性のレベルが所定の閾値よりも高い製品、または所定のランキング基準を満たす製品例えば、上位N位にランク付けされ、Nは、任意の整数とすることができるは、ログインしたユーザによって評価された製品に相当する製品とみなされる。決定された相当する製品情報は、クライアント端末に送られ得る。ユーザベクトルと製品ベクトルとの組み合わせ間の類似性に基づいて製品が推薦されるシナリオ、すなわち、ユーザ-製品推薦シナリオの場合において、ユーザと製品との種々の組み合わせ間の類似性は、ユーザ嗜好情報および製品人気情報に従って、ユーザベクトルと製品ベクトルとの組み合わせ間の一対比較に基づいて得られ得る。ユーザと製品との種々の組み合わせ間の類似性は、ユーザベクトルと製品ベクトルとの対応する組み合わせ間の差によって計算され得る。ユーザベクトルと製品ベクトルとの組み合わせ間の差が小さいほど、ユーザベクトルと製品ベクトルとのそのような組み合わせ間の類似性が高くなる。クライアント端末にログインしたユーザと該ユーザによって評価された製品との組み合わせに関して、ユーザと製品との組み合わせは、ランク付けされ得、類似性のレベルが所定の閾値よりも高い、または所定のランキング基準を満たす組み合わせ例えば、上位N位にランク付けされるは、上記の組み合わせに合致するユーザと製品との組み合わせとみなされる。決定された組み合わせにおける製品情報は、クライアント端末に送られ得る。一実施形態において、組み合わせにおける製品に対する該組み合わせにおけるユーザの評価は、所定の評価閾値よりも高い。代替として、または並行して、ログインしたユーザと該ユーザの評価した製品との組み合わせについて、ログインしたユーザの製品の評価は、所定の評価閾値よりも高い。本開示の例示的な実施形態は、少なくとも以下の利点を含む。製品評価レコードは、ユーザIDおよび製品IDを一次キーとして使用することによって分割される。分割されたレコードのサブセットは、複数の計算ノードに割り当てられ、同じユーザIDまたは同じ製品IDに関連する、評価レコードの中の評価情報は、1つのレコードのサブセットに分類される。これは、論理的かつ簡単に、評価レコードを複数の計算ノードに割り当てるという目的を達成する。さらに、並列計算のために、製品評価情報が複数の計算ノードに割り当てられ、SVDの計算結果に基づいて、推薦製品情報がクライアント端末に送られるので、当該手法は、複数の計算ノードによって処理されるデータ量および計算の複雑さを軽減する。製品評価レコードを割り当てる際にユーザIDおよび製品IDを一次キーとして使用することはまた、計算ノードによって処理されるデータの完成度も確保し、それによって、計算の精度が向上する。本開示の全ての実施形態が、全ての利点を同時に達成する必要がないことを認識されたい。上で論じたように製品情報を伝送するための例示的な方法に基づいて、本開示はまた、製品情報を伝送するための方法を使用する、デバイスも提供する。図5は、製品情報を伝送するための例示的なデバイス500の構造ブロック図である。一実施形態において、デバイス500は、これらに限定されないが、1つ以上のプロセッサ502およびメモリ504を含んでもよい。メモリ504は、ランダムアクセスメモリRAM等の揮発性メモリおよび/またはリードオンリーメモリROMもしくはフラッシュRAM等の不揮発性メモリの形態でコンピュータ可読媒体を含んでもよい。メモリ504は、コンピュータ可読媒体の一例である。コンピュータ可読媒体は、コンピュータ実行可能命令、データ構造、プログラムモジュール、または他のデータ等の情報の格納のための任意の方法または技術において実装される、揮発性および不揮発性の、取り外し可能および取り外し不可能な媒体を含む。コンピュータ記憶媒体の例として、限定されないが、相変化メモリPRAM、スタティックランダムアクセスメモリSRAM、ダイナミックランダムアクセスメモリDRAM、他の種類のランダムアクセスメモリRAM、読取専用メモリROM、電気的消去プログラム可能型読取専用メモリEEPROM、フラッシュメモリもしくは他のメモリ技術、コンパクトディスク読取専用メモリCD-ROM、デジタル多目的ディスクDVDもしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、またはコンピュータデバイスによるアクセスのために情報を格納するために使用することができる任意の他の非伝送媒体が挙げられる。本明細書で定義される場合、コンピュータ可読媒体は、変調データ信号および搬送波等の一過性媒体を含まない。メモリ504は、その中にプログラム単位またはモジュールおよびプログラムデータを格納することができる。一実施形態において、モジュールは、検索モジュール510と、割り当てモジュール520と、伝送モジュール530とを含んでもよい。一実施形態において、モジュールは、変換モジュール540をさらに含んでもよい。これらのモジュールは、したがって、1つ以上のプロセッサ502によって実行することができるソフトウェア内に実装されてもよい。他の実装において、モジュールは、ファームウェア、ハードウェア、ソフトウェア、またはそれらの組み合わせの中に実装されてもよい。検索モジュール510は、1人以上のユーザによって与えられる製品評価レコードを検索する。例えば、製品評価レコードは、ユーザIDと、製品IDと、評価情報とを含み得る。割り当てモジュール520は、ユーザIDおよび製品IDを一次キーとして使用し、次いで、一次キーの区間に従って、製品評価レコードを複数のレコードのサブセットに分割し、そして、該複数のレコードのサブセットを複数の計算ノードに割り当てる。一実施形態において、1つのユーザIDおよび/または1つの製品IDに関連する、製品評価レコードの中の全ての評価情報は、1つのレコードのサブセットに割り当てられる。伝送モジュール530は、割り当てられた複数の計算ノードによって計算された、割り当てられたレコードのサブセットのSVDの計算結果を検索し、SVDの計算結果に基づいて、推薦製品情報をクライアント端末に送る。例えば、SVDの計算結果は、ユーザ嗜好情報および製品人気情報を含んでもよい。伝送モジュール520は、ユーザ嗜好情報に基づいて、クライアント端末にログインするユーザに合致するユーザを決定し、決定されたユーザによって評価された製品の製品情報を、クライアント端末に送り得る。代替として、伝送モジュール520は、製品人気情報に基づいて、クライアント端末にログインするユーザによって評価された製品に合致する製品を決定し、決定された製品の製品情報をクライアント端末に送り得る。代替として、伝送モジュール520は、ユーザ嗜好情報および製品人気情報の双方に基づいて、クライアント端末にログインするユーザと、ログインしたユーザによって評価された製品との組み合わせに合致する、ユーザと製品との組み合わせを決定し、決定された組み合わせにおける製品情報をクライアント端末に送る。一実施形態において、デバイス500は、変換モジュール540をさらに含んでもよい。変換モジュール540は、製品評価レコードのフォーマットを変換する。それに応じて、変換モジュール540が製品評価レコードを変換した後に、割り当てモジュール520は、変換された製品評価レコードを複数のレコードのサブセットに分割する。例えば、変換モジュール540は、各ユーザIDおよび/または製品IDに対応する評価情報のランキング順序を調整してもよく、および/または1つ以上の所定の条件を満たす、1つ以上のユーザIDおよび/または製品IDに対応する評価情報を削除してもよい。変換モジュール540は、製品評価レコードに対応する行列に対して、列交換および/または線形交換を行ってもよく、および/または製品評価レコードに対応する行列から、1つ以上の所定の条件を満たす1つ以上の行および/または列を削除してもよい。本開示の例示的な実施形態は、少なくとも以下の利点を含む。製品評価レコードは、ユーザIDおよび製品IDを一次キーとして使用することによって分割される。分割されたレコードのサブセットは、複数の計算ノードに割り当てられ、同じユーザIDまたは同じ製品IDに関連する、評価レコードの中の評価情報は、1つのレコードのサブセットに分類される。これは、論理的かつ簡単に、評価レコードを複数の計算ノードに割り当てるという目的を達成する。さらに、並列計算のために、製品評価情報が複数の計算ノードに割り当てられ、SVDの計算結果に基づいて、推薦製品情報がクライアント端末に送られるので、当該手法は、複数の計算ノードによって処理されるデータ量および計算の複雑さを軽減する。製品評価レコードを割り当てる際にユーザIDおよび製品IDを一次キーとして使用することはまた、計算ノードによって処理されるデータの完成度も確保し、それによって、計算の精度が向上する。本開示の全ての実施形態が、全ての利点を同時に達成する必要がないことを認識されたい。上で説明した例示的な実施形態から、当業者は、開示された方法およびシステムが、ソフトウェアおよび普遍的ハードウェアプラットフォームを使用して実装され得ることを明らかに理解することができる。この理解に基づいて、本開示の技術的スキームまたは既存の技術に寄与する部分は、ROM/RAM、ハードドライブ、および光ディスク等の記憶媒体に格納されるソフトウェア製品の形態で実装されてもよい。ソフトウェアは、コンピューティングデバイス例えば、パーソナルコンピュータ、サーバ、またはネットワークデバイスが本開示の例示的な実施形態で説明される方法を実行するための、コンピュータ実行可能命令を含む。種々の例示的な実施形態は、本開示において段階的に説明される。例示的な実施形態の同じかまたは同様の部分は、相互に参照することができる。各例示的な実施形態は、他の例示的な実施形態とは異なる焦点を有する。具体的には、例示的なシステムの実施形態は、その例示的な方法の実施形態との基本的一致のために、比較的単純な様式で記載されている。その詳細は、例示的な方法の関連する部分を参照して見出すことができる。上記の例示的なデバイスの説明は、例示目的のためだけであることを意味する。その中で別々の構成要素として説明されるユニットまたはモジュールは、物理的に分離される場合もあり、されない場合もある。実施形態において説明されるモジュールは、1つのモジュールに統合されてもよく、または複数のサブモジュールにさらに分割されてもよい。ユニットまたはモジュールに関して示される構成要素は、物理ユニットである場合もあり、またはそうでない場合もあり、例えば、1つの場所に位置してもよく、または複数のネットワークユニットに分散させてもよい。実際の必要性に応じて、例示的な実施形態の目的は、モジュールの一部または全部を選択することによって達成され得る。当業者は、いかなる革新的な効果も伴わずに、開示されるシステムを理解し、実装することができる。開示される方法およびシステムは、ソフトウェアを伴う普遍的コンピュータシステムまたは特化型コンピュータシステムの環境または構成において使用されてもよい。その例として、パーソナルコンピュータ、サーバコンピュータ、手持ち式デバイスまたは携帯デバイス、タブレットデバイス、マルチプロセッサシステム、マイクロプロセッサに基づくシステム、セットアップボックス、プログラム可能な顧客電子デバイス、ネットワークPC、小型コンピュータ、大型コンピュータ、および上記のいずれかのシステムまたはデバイスを含む分散コンピューティング環境が挙げられる。本開示は、プログラムモジュール等の、コンピュータによって実行されるコンピュータ実行可能命令の一般的な文脈において説明することができる。一般的に、プログラムモジュールは、特定のタスクを実行するかまたは特定の抽象データ型を実装するためのルーチン、プログラム、オブジェクト、モジュール、データ構造、コンピュータ実行可能命令等を含む。開示される方法およびデバイスは、分散コンピューティング環境内に実装されてもよい。分散コンピューティング環境において、通信ネットワークを通して接続されるリモート処理デバイスによってタスクが実行される。分散コンピューティング環境において、プログラムモジュールは、ローカルおよび/またはリモートコンピュータの記憶媒体記憶デバイスを含む内に位置してもよい。上記は、本開示の例示的な実施形態である。しかしながら、本開示は、本明細書に限定されない。当業者は、本開示の趣旨および範囲から逸脱することなく、数多くの方法で本開示を変更または修正できることを認識されたい。したがって、これらの修正および変形は、本開示の特許請求の範囲およびそれらの均等物の範囲に含まれるとみなされるべきである。