JP6803980B1 - 信頼されたイニシャライザを用いない秘密分散 - Google Patents

信頼されたイニシャライザを用いない秘密分散 Download PDF

Info

Publication number
JP6803980B1
JP6803980B1 JP2019521721A JP2019521721A JP6803980B1 JP 6803980 B1 JP6803980 B1 JP 6803980B1 JP 2019521721 A JP2019521721 A JP 2019521721A JP 2019521721 A JP2019521721 A JP 2019521721A JP 6803980 B1 JP6803980 B1 JP 6803980B1
Authority
JP
Japan
Prior art keywords
data
social network
user
item
platform
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.)
Active
Application number
JP2019521721A
Other languages
English (en)
Other versions
JP2021508064A (ja
Inventor
チャオチャオ・チェン
ジュン・ジョウ
Original Assignee
アドバンスド ニュー テクノロジーズ カンパニー リミテッド
アドバンスド ニュー テクノロジーズ カンパニー リミテッド
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 アドバンスド ニュー テクノロジーズ カンパニー リミテッド, アドバンスド ニュー テクノロジーズ カンパニー リミテッド filed Critical アドバンスド ニュー テクノロジーズ カンパニー リミテッド
Application granted granted Critical
Publication of JP6803980B1 publication Critical patent/JP6803980B1/ja
Publication of JP2021508064A publication Critical patent/JP2021508064A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9536Search customisation based on social or collaborative filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6263Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0263Targeted advertisements based upon Internet or website rating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • G06Q30/0625Directed, with specific intent or strategy
    • G06Q30/0627Directed, with specific intent or strategy using item specifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/50Oblivious transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Mathematical Physics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Game Theory and Decision Science (AREA)
  • Primary Health Care (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Medical Informatics (AREA)
  • Algebra (AREA)
  • Operations Research (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

アイテム評価および推奨プラットフォームが複数のユーザに対する複数のアイテムのそれぞれの評価を有する評価データを識別し、複数のユーザに対する複数のアイテムのそれぞれの評価に寄与する数人のユーザ特徴を有するユーザ特徴データを識別し、ソーシャルネットワークデータおよび第1のいくつかの確率変数に基づいて計算された操作されたソーシャルネットワークデータを、信頼されたイニシャライザを用いない秘密分散法によりソーシャルネットワークプラットフォームから受信する。ソーシャルネットワークデータが、数人のユーザのうちの任意の2人の間の社会的関係を示す。信頼されたイニシャライザを用いない秘密分散法において、ソーシャルネットワークプラットフォームは、ソーシャルネットワークデータを開示することなく、操作されたソーシャルネットワークデータをアイテム評価および推奨プラットフォームと共有する。アイテム評価および推奨プラットフォームは、評価データおよび操作されたソーシャルネットワークデータに基づいて、ユーザ特徴データを更新する。

Description

本発明は、信頼されたイニシャライザを用いない秘密分散に関する。
技術とデータ分析の発展により、多くのオンラインプラットフォームが様々なタイプのデータを収集する。例えば、映画評価プラットフォームはユーザから評価データを収集し、一方でソーシャルメディアプラットフォームはユーザからソーシャルネットワークデータを収集する。これらの収集されたデータは貴重であり、通常はそれぞれのプラットフォームによってプライベートな情報として保持される。プラットフォームはデータのプライバシーにますます注意を払い、少なくともそのオリジナルの形態でそれらの収集したデータを必ずしも共有したくない。
本開示は、例えば、ソーシャルな推奨を提供するための2つのプラットフォーム間で信頼されたイニシャライザ(trusted initializer)を用いない秘密分散のための方法およびシステムを説明する。
ある実施形態では、コンピュータ実装方法が、数人のユーザに対するいくつかのアイテムのそれぞれの評価を有する評価データを、アイテム評価および推奨プラットフォームによって識別するステップと、数人のユーザに対するいくつかのアイテムのそれぞれの評価に寄与する数人のユーザ特徴を有するユーザ特徴データを、アイテム評価および推奨プラットフォームによって識別するステップと、ソーシャルネットワークデータおよび第1のいくつかの確率変数に基づいて計算されたいくつかの操作されたソーシャルネットワークデータを、信頼されたイニシャライザを用いない秘密分散法により、アイテム評価および推奨プラットフォームによってソーシャルネットワークプラットフォームから受信するステップであって、ソーシャルネットワークデータが、数人のユーザのうちの任意の2人の間の社会的関係を示し、信頼されたイニシャライザを用いない秘密分散法において、ソーシャルネットワークプラットフォームは、ソーシャルネットワークデータを開示することなく、いくつかの操作されたソーシャルネットワークデータをアイテム評価および推奨プラットフォームと共有する、ステップと、評価データおよびいくつかの操作されたソーシャルネットワークデータに基づいて、ユーザ特徴データをアイテム評価および推奨プラットフォームによって更新するステップとを含む。
上述した実施形態は、コンピュータ実装方法、該コンピュータ実装方法を実行するためのコンピュータ可読命令を記憶した非一時的コンピュータ可読媒体、およびコンピュータ実装方法/非一時的コンピュータ可読媒体上に記憶された命令を実行するように構成されたハードウェアプロセッサに相互運用可能に結合されたコンピュータメモリを備えるコンピュータ実装システムを使用して実装可能である。
本明細書に説明される主題は、以下の利点の1つまたは複数を実現するように、特定の実施形態で実装され得る。第一に、説明される技術によって、異なるプラットフォームがプライベートなデータまたはセンシティブなデータを開示しない秘密分散により安全に協力できるようになり、それによりデータプライバシーに妥協することなくプラットフォーム間で統合と協力を促進する。第二に、秘密分散法を適用する前に異なるプラットフォームによって動作の大半が実行され得るので、説明される技術によって、より効率的な共通展開アクティビティ(時間に対する、プロセッササイクル、メモリ使用、およびネットワーク帯域/混雑など)または現在のオンラインプラットフォームによってサポートされないアクティビティが可能になる。第三に、説明される技術によって、アイテム評価および推奨プラットフォームの向上した推奨モデルを提供できるとともに、より的を絞った推奨(ソーシャルメディアプラットフォームから取得されたソーシャルネットワークデータを利用することによって、より的を絞った関連性のある推奨を提供する映画推奨プラットフォームなど)を提供できる。第四に、説明される技術によって、プラットフォームが信頼される権限のオーバーヘッドなく協力できる。他の利点は、当業者には明らかであろう。
本明細書に説明される主題の1つまたは複数の実施形態の詳細は、発明の詳細な説明、特許請求の範囲、および添付の図面に記載される。主題の他の特徴、態様、および利点は、その発明の詳細な説明、特許請求の範囲、および添付の図面から当業者に明らかになるであろう。
本開示の実施形態による、信頼されたイニシャライザを用いないプラットフォームAとプラットフォームBの間の秘密分散のための例示的なシステムを示すブロック図である。 本開示の実施形態による、プラットフォームAによって推奨を生成するための信頼されたイニシャライザを用いないプラットフォームAとプラットフォームBの間での例示的な秘密分散法を示すフローチャートである。 本開示の実施形態による、信頼されたイニシャライザを用いない秘密分散を使用して、行列Aと行列Bの行列積の要素Zijを計算するための、プラットフォームAとプラットフォームBの間の例示的な秘密分散法を示すフローチャートである。 本開示の実施形態による、信頼されたイニシャライザを用いない秘密分散を使用して、アイテム評価および推奨プラットフォームによって推奨を生成するための例示的な方法を示すフローチャートである。 本開示の実施形態による、本開示に説明されるような、アルゴリズム、方法、機能、プロセス、フロー、およびプロシージャに関連付けられた計算機能を提供するために使用される例示的なコンピュータシステムを示すブロック図である。
様々な図面における同様の参照番号および記号は、同じ要素を示す。
以下の詳細な説明は、例えば、ソーシャルネットワークデータに基づいてユーザに推奨を提供するための2つのプラットフォームの間で、信頼されたイニシャライザを用いない秘密分散を説明し、任意の当業者が1つまたは複数の特定の実施形態の文脈において、開示される主題を作成および使用できるように提示される。本開示の範囲から逸脱することなく、開示された実施形態の様々な修正、変更、および置換を行うことができ、それらは当業者には容易に明らかであり、本明細書に定義された一般原理は他の実施形態および用途に適用されてよい。いくつかの事例では、説明される主題の理解を得るのに不必要な詳細は、不必要な詳細により1つまたは複数の説明される実施形態を曖昧にしないように、およびそのような詳細が当業者の技術の範囲内である限り、省略され得る。本開示は、説明または図示された実施態様に限定されることを意図しないが、説明される原理および特徴と矛盾しない最も広い範囲を与えるように意図されている。
多くのオンラインプラットフォーム間で、様々なプラットフォームが様々なタイプのデータを蓄積できる。例えば、NETFLIXまたはIMDBなどの、アイテム評価および推奨プラットフォームは、映画およびテレビシリーズについてユーザからの評価データを蓄積する。FACEBOOK(登録商標)またはTWITTER(登録商標)などのソーシャルメディアまたはソーシャルネットワークプラットフォームは、ユーザおよびユーザの友人からのソーシャルネットワークデータを蓄積する。親密な友人が類似した選好をもつ傾向があるので、ソーシャルな情報は推奨システムの性能を向上させることができる。既存のソーシャルベースの推奨方法は、アイテムのユーザ評価データとユーザ間のソーシャルなデータとが共有されることを仮定している。しかしながら、データのプライバシーまたは他の懸念に起因して、オンラインプラットフォームは、通常は他の当事者とそれらのオリジナルのデータを共有しない。
説明する例示的な技法では、プラットフォームが各プラットフォームのプライベートデータを他方に開示することなく、評価データおよびソーシャルネットワークデータの両方に基づいて向上した推奨システムを構築することにセキュアに協力することができる。例えば、アイテム評価および推奨プラットフォームとソーシャルネットワークプラットフォームの間で秘密分散法により評価データとソーシャルネットワークデータの両方に基づいて、ソーシャル推奨モデルがトレーニングされ得る。秘密分散法の下では、プラットフォームの間で交換されるデータは、それらのオリジナルの形態ではなく操作された形態である。交換されるデータは、操作されたデータからオリジナルのデータを復元または復号できないように操作されている。
秘密分散法は、送信前にデータソースがオリジナルのデータを符号化された形態に符号化または暗号化し、対象受信者が、例えば、既知のセキュリティキー、または対応する復号アルゴリズムに基づいて、受信した符号化されたデータからオリジナルのデータを復号または復元できるセキュアなデータ送信のための符号化、暗号化、または他の方法とは異なる。秘密分散法は、オリジナルのデータを、対象受信者によってさえも知られることから保護する。そうして、データソースはオリジナルのデータのプライバシーを保つ。
故に、秘密分散法は、データプライバシーに妥協することなく、異なるプラットフォーム間の協力を促進するとともに、相互の利益を達成することに役に立ち得る。例えば、開示される秘密分散法を用いて、アイテム評価および推奨プラットフォームは、ソーシャルネットワークプラットフォームからのソーシャルネットワーク情報を、より良いユーザニーズの予測およびユーザへの的を絞った推奨の提供に利用でき、アイテム評価および推奨プラットフォームにユーザーエクスペリエンスの向上と潜在的な利益リターンをもたらす。
図1は、本開示の実施形態による、プラットフォームA102とプラットフォームB104の間の秘密分散のための例示的なシステム100を示すブロック図である。プラットフォームA102は、限定ではなく、ユーザが製品、サービス、または他のアイテムを評価する、娯楽、小売、サービス、および他の産業または部門におけるアイテム評価および推奨プラットフォームを含むことができる。アイテム評価および推奨プラットフォームの例として、例えば、AMAZON、NETFLIX、またはIMDBが含まれる。プラットフォームA102は、そのユーザからの評価データRを収集できる。評価データRは、ユーザによって与えられた1つまたは複数のアイテム(例えば、製品またはサービス)の1つまたは複数の実際の評価、またはアイテムに対するユーザのクリック、購入、検索、または他の履歴アクティビティ基づく1つまたは複数のマップされた評価を含むことができる。評価は、アイテムについてのユーザのニーズ、好感度、または選好を反映できる。評価は、具体的な範囲(例えば、[0,1]または[1,5])を有し得る。いくつかの実施形態では、評価データRは、M*N次元を有する行列で表すことができ、ここで、Mは、ユーザの数を表し、Nは、アイテムの数を表し、エントリRijは、ユーザiによるアイテムiの評価を表す。
プラットフォームA102はまた、例えば、ユーザの名前、年齢、性別、住所、または任意の他のアカウントまたはプロフィール情報を含み得るユーザデータ、プラットフォームA102での購入履歴、閲覧履歴、またはユーザの検索履歴を含むことができる。プラットフォームA102はまた、例えば、名称、カテゴリ、価格、キーワード、インストラクションなどを含み得る、アイテムに関連するアイテムデータを含むことができる。
いくつかの実施形態では、エントリRijの少数(M*Nに比べて)のみが、アイテムに関連する既存のユーザアクティビティに基づいて評価またはマップされた評価を有するので、収集された評価データRはスパース行列であることがある。いくつかの実施形態では、プラットフォームA102は、アイテムの的を絞った推奨をユーザに提供するためにアイテムの既知の評価を予測できる。いくつかの実施形態では、プラットフォームA102は、例えば、機械学習または統計アルゴリズムにしたがってユーザデータおよびアイテムデータに基づいて、アイテムの既知の評価を予測できる。一例として、プラットフォームA102は、行列分解法または他の技法にしたがって、ユーザ特徴データU(ユーザ要因データとも呼ばれる)とアイテム特徴データV(アイテム要因データとも呼ばれる)とに基づいて、アイテムの推奨を提供できる。具体的には、各ユーザ(例えば、ユーザi)は、年齢、性別、地理的な場所、訪問パターンなど、ユーザ特徴のベクトル(例えば、Ui)によって特徴付けられ得る。各アイテム(例えば、アイテムj)は、カテゴリ、キーワード、トピック、価格などのアイテム特徴のベクトル(例えば、Vj)によって特徴付けられ得る。ユーザ特徴およびアイテム特徴は、所与のアイテムについての、所与のユーザの評価、選択、または購入に影響を与える要因であり得る。いくつかの実施形態では、ユーザによって与えられたアイテムの評価は、ユーザ特徴のベクトルとアイテム特徴のベクトルの内積によって近似され得る。例えば、
Figure 0006803980
ここで、Uiは、ユーザiに対応するユーザ特徴データのベクトルを表し、Vjは、アイテムjに対応するアイテム特徴データのベクトルを表し、Rijは、ユーザiによるアイテムjの評価を表す。
いくつかの実施形態では、ユーザ特徴ベクトル(例えば、Ui)およびアイテム特徴ベクトル(例えば、Vj)は、トレーニングデータ(例えば、既知の評価データ)から学習され得る潜在ベクトルである。
プラットフォームB104は、限定ではなく、ソーシャルメディアプラットフォーム(FACEBOOK(登録商標)、TWITTER(登録商標)、またはINSTAGRAMなど)を含み得る。プラットフォームB104は、そのユーザからソーシャルネットワークデータSを収集できる。ソーシャルネットワークデータは、例えば、名前、年齢、性別、住所、職業、人間関係、趣味、ステータス、コメント、ブログ、閲覧履歴、あるいはプラットフォームBでの他の人口統計、雇用、ユーザのレクリエーション情報、およびユーザの友人、家族、同僚などの対応する情報を含むことができる。そのようなソーシャルネットワークデータSは、ユーザのアイテムの評価の予測および推奨の提供のためにプラットフォームAにとって有益であることがある。
例えば、プラットフォームAは式(2)に示されるような最適化問題を解くことによってユーザの評価を予測できる。
Figure 0006803980
ここで、Sikは、ソーシャルネットワークデータSにおけるユーザiとユーザkとの間の社会的関係を表し、λ1は、ソーシャルネットワークデータに関連付けられた定義済みの重みを表し、λ2は、オーバーフィットを避けるための定義済みの重みを表す。
この例では、式(2)の右辺の目的関数は、3つの項を含む。第1の項
Figure 0006803980
は、ユーザ特徴データ(例えば、U=[U1, U2, ..., UM])およびアイテム特徴データ(例えば、V=[V1, V2, ..., VN])に基づいて計算された既知の評価データと近似された評価の間の誤差または距離を表す。第2の項
Figure 0006803980
は、ユーザ特徴ベクトルに対するソーシャルネットワークデータSの影響を表す。例えば、2人のユーザがより親密または強力な社会的関係であれば、2つのユーザ特徴ベクトルがより類似する。いくつかの実施形態では、Sikがより大きければ、2人のユーザはより親密なまたは強力な社会的関係にある。第3の項
Figure 0006803980
は、オーバーフィットを回避するために使用される。重みλ1およびλ2の値は、事前に決められ得る。より大きな重みは、目的関数の対応する項により大きな影響を与える。
目的関数を最小化するための上述の最適化問題は、例えば、勾配降下アルゴリズムまたは他のアルゴリズムによって解かれ得る。例えば、潜在ベクトルUおよびVの微分をとると、以下の2つの式になる。
Figure 0006803980
上の式(3)および(4)のUおよびVについて解くために、個別のUおよびSの既知の値を必要とせずに、U・diag(S・IM)とU・Sの行列積の結果で十分である。そうして、U・diag(S・IM)とU・Sの行列積の結果を取得するために、プラットフォームAおよびBによって秘密分散法が使用され得る。秘密分散法の下では、プラットフォームAは、プラットフォームBにオリジナルのUを開示することなく、操作されたUをプラットフォームBに開示でき、プラットフォームBは、プラットフォームAにオリジナルのSを開示することなく、操作されたSをプラットフォームAに開示できる。
いくつかの実施形態では、秘密分散法は信頼されたイニシャライザを用いてまたは用いずに実装され得る。信頼されたイニシャライザを用いる場合、共通の開始点が信頼されたイニシャライザによって確立され、2つのプラットフォームのデータ交換を支援するために2つのプラットフォームに送られる。信頼されたイニシャライザを用いない場合、2つのプラットフォームはそれぞれ、2つのプラットフォームのデータの交換を支援するために、それぞれの開始点として乱数を生成する。各プラットフォームは、センシティブなプライベート情報を共有せずに協力により利益を得ることができる。
図2は、本開示の実施形態による、プラットフォームAによって推奨を生成するために、信頼されたイニシャライザを用いないプラットフォームAとプラットフォームBの間の例示的な秘密分散法200を示すフローチャートである。プラットフォームAは、図1に示されたプラットフォームAであってよく、プラットフォームBは、図1に示されたプラットフォームBであってよい。いくつかの実施形態では、例示的な秘密分散法は、反復アルゴリズムによって実装され得る。反復数Tは、例えば、事前に決定された値であるか、または一定の基準(例えば、アルゴリズムが収束または更新して異なる反復の後のUまたはVの差分がしきい値より小さくなるかどうか)に基づいて決定されてよい。202において、プラットフォームAは、ユーザ評価データR、初期のユーザ特徴データUおよびアイテム特徴データV、および反復数Tを識別する。204において、プラットフォームBは、ソーシャルネットワークデータSを識別する。t回の反復(t<T)に対して、208において、プラットフォームAおよびプラットフォームBは、行列積U・diag(S・IM)とU・Sを取得するために信頼されたイニシャライザを用いずに秘密分散法を実行できる。206において、プラットフォームAは、例えば式(3)および(4)にしたがって、行列積U・diag(S・IM)とU・Sに基づいてUおよびVを更新する。T回の反復の後、210において、プラットフォームAは、更新したユーザ特徴データUとアイテム特徴データVに基づいて推奨を生成する。
いくつかの実施形態では、行列Zを行列Aと行列Bとの積とする。すなわち、Z=A・Bである。Zijは、Zのi番目の行とj番目の列のエントリ/要素を表す。Zijは、例えば、式(5)にしたがって計算され得る。行列積U・diag(S・IM)とU・Sは、例えば、
Figure 0006803980
であり、ここにおいて、
Figure 0006803980
は、行列Aのi番目の行を表し、Bjは行列Bのj番目の列を表す。
図3は、本開示の実施形態による、信頼されたイニシャライザを用いない秘密分散法を使用して、行列Aと行列Bとの積の要素Zijを計算するためのプラットフォームAとプラットフォームBの間の例示的な秘密分散法300を示すフローチャートである。信頼されたイニシャライザを用いない秘密分散法では、両プラットフォームは、信頼されたイニシャライザの必要性に代わる一連のステップおよび計算において乱数を生成する。
304において、プラットフォームA302は、行列Aのi番目の行
Figure 0006803980
であり得る、初期ベクトルx=(x1,x2,...,x_2k)を取得する。324において、プラットフォームB322は、行列Bのj番目の列を表し得る初期ベクトルy=(y1,y2,...,y_2k)を取得する。ベクトルxとyは、同じ次元2kを有し得る。ベクトルxとyは、例えば、確率変数、オールゼロ、事前に決定された値、または他の初期値を含むことができる。
いくつかの実施形態では、プラットフォームAとBの両方は、k回のループにより出力350を計算する。k回目の反復では、306において、プラットフォームA302は、ランダムな値ajおよびcjを生成し、aj+cjの合計は0ではない。例えば、ランダムに生成される値ajおよびcjは、308に示されるように、aj+cjが0に等しくなくなるまで、繰り返し生成され得る。0に等しくないaj+cjが見つかると、プラットフォームA302は、操作されて後にプラットフォームB322に送られることになる値を計算する。プラットフォームA302について算出された値は、限定ではなく、310に示されるような、pj=aj+cj、x’[2j-1]=x[2j-1]+a、およびx’[2j]=x[2j]+cjを含むことができる。311において、値{pj, x’[2j-1], x’[2j]}は、計算のためにプラットフォームB322に送られる。同様に、326において、プラットフォームB322は、ランダムな値bjおよびdjを生成し、bj+djの合計は0ではない。例えば、ランダムに生成される値bjおよびdjは、328に示されるように、bj+djが0に等しくなくなるまで、繰り返し生成され得る。プラットフォームB322について算出された値は、限定ではなく、330に示されるような、qj=bj+dj、y’[2j-1]=y[2j-1]+bj、およびy’[2j]=y[2j]+djを含むことができる。331において、値{qj, y’[2j-1], y’[2j]}が計算のためにプラットフォームA302に送られる。
両プラットフォームが操作したデータを互いに送った後、まだk回のループにおいて、両プラットフォームは出力値に最終的に加算する値を計算する。プラットフォームA302は、312に示されるように、hj = y’[2j-1] (x[2j-1] + 2aj) + y’[2j] (x[2j] + 2cj) + qj (aj + 2cj)を計算する。プラットフォームB322は、332に示されるように、gj= x’[2j-1] (2y’[2j-1] - bj)+ x’[2j] (2y[2j] - dj) + pj (dj - 2bj)を計算する。314において、プラットフォームA302は、314に示されるように、すべてのhjを合計すること、すなわち、
Figure 0006803980
によって、値hを取得する。332において、プラットフォームB322は、334に示されるように、すべてのgjを合計すること、すなわち、
Figure 0006803980
によって、値gを取得する。
315において、プラットフォームAは、プラットフォームBから値gを受信できる。hとgの合計は、ベクトルxとyの積に等しい。すなわち、xy=h+gである。そうして、315において、プラットフォームAは、プラットフォームBから値gを受信する。335において、プラットフォームAはプラットフォームBに値hを送る。316において、プラットフォームAは、ベクトルxとyの操作されたデータであるhとgの合計を計算することによってベクトルxとyの積を計算できる。同様にして、336において、プラットフォームBはまた、hとgの合計を計算することによってベクトルxとyの積を計算できる。
xが行列Aのi番目の行である
Figure 0006803980
であり、yが行列Bのj番目の列Bjであるとすれば、行列Aと行列Bとの積の要素Zijは、
Figure 0006803980
として取得され得る。したがって、行列Aと行列Bの行列積Zを取得できる。
行列UをAに置換し、diag(S・IM)をBに置換することによって、行列積S・diag(S・IM)を取得できる。同様にして、行列UをAに置換し、SをBに置換することによって、行列積U・Sを取得できる。行列積U・diag(S・IM)とU・Sの場合、プラットフォームAは、図2の206に関して説明したように、例えば、式(3)および(4)にしたがってUまたはVを更新できる。
故に、プラットフォームA302は、更新されたユーザ特徴データおよびアイテム特徴データに基づいて、予測される評価データを生成できる。いくつかの実施形態では、プラットフォームA302は、とりわけ、予測された評価データに基づいて、特定の顧客に対して特定のアイテムのための推奨を生成できる。上述した技法および計算は、オーバーヘッドとなる信頼された権限の必要なしに達成され得る。
図4は、実施形態による、信頼されたイニシャライザを用いない秘密分散法を使用してアイテム評価および推奨プラットフォームによりユーザへの推奨を生成するための例示的な方法400のフローチャートである。提示を明快にするために、以下の説明は、本明細書の他の図面の文脈において方法400を概略的に説明する。例えば、アイテム評価および推奨プラットフォームは、図1〜図3に関して説明したプラットフォームAであってよい。しかしながら、方法400は、例えば、任意の適切なシステム、環境、ソフトウェア、およびハードウェア、または必要に応じて、システム、環境、ソフトウェア、およびハードウェアの組み合わせによって実行されてよいことが理解されるであろう。いくつかの実施形態では、方法400の様々なステップは、並列に、組み合わせて、ループして、または任意の順序で実行され得る。
402において、評価データは、限定ではなく、数人のユーザに対するいくつかのアイテムのそれぞれの評価を含み、アイテム評価および推奨プラットフォームによって識別される。評価データを識別することは、(例えば別のデバイスから)受信すること、メモリから読み取りまたはロードすること、あるいは方法400への1つまたは複数の入力に基づいて評価データを決定することを含む。評価データは、図1〜図3に関して説明した評価データRを含むことができる。例えば、評価データは、実際の評価またはアイテムに対する既存のユーザアクティビティに基づいてマップされた評価を含むことができる。方法400は、402から404に進む。
404において、ユーザ特徴データは、数人のユーザに対するいくつかのアイテムのそれぞれの評価に寄与するいくつかのユーザの特徴を含み、アイテム評価および推奨プラットフォームによって識別される。ユーザ特徴データを識別することは、(例えば別のデバイスから)受信すること、メモリから読み取りまたはロードすること、あるいは方法400への1つまたは複数の入力に基づいてユーザ特徴データを決定することを含む。いくつかの実施形態では、ユーザ特徴データは、行列Uによって表され得る。ユーザ特徴データは、図1〜図3に関して説明したユーザ特徴データUを含むことができる。方法400は、404から406に進む。
406において、アイテム特徴データは、数人のユーザに対するいくつかのアイテムのそれぞれの評価に寄与するいくつかのアイテムの特徴を含み、アイテム評価および推奨プラットフォームによって識別される。いくつかの実施形態では、アイテム特徴データを識別することは、(例えば別のデバイスから)受信すること、メモリから読み取りまたはロードすること、あるいは方法400への1つまたは複数の入力に基づいてアイテム特徴データを決定することを含む。アイテム特徴データは、図1〜図3に関して説明したアイテム特徴データVを含むことができる。方法400は、406から408に進む。
408において、アイテム評価および推奨プラットフォームは、ソーシャルネットワークプラットフォームからの信頼されたイニシャライザを用いない秘密分散法によって、ソーシャルネットワークプラットフォームからのソーシャルネットワークデータ(例えば、ソーシャルネットワークデータ行列Sのベクトルy)に基づいて計算された、いくつかの操作されたソーシャルネットワークデータ(例えば、図3に関して説明したg)を受信する。さらに、ソーシャルネットワークデータは、数人のユーザのうちの任意の2人の間の社会的関係を示す。信頼されたイニシャライザを用いない秘密分散法では、ソーシャルネットワークプラットフォームは、ソーシャルネットワークデータ(例えば、y)を開示することなく、いくつかの操作されたソーシャルネットワークデータ(例えば、g)をアイテム評価および推奨プラットフォームと共有し、ここで、操作されたソーシャルネットワークデータは、ソーシャルネットワークデータと第1のいくつかの確率変数(例えば、bj、dj)に基づいて計算される。いくつかの実施形態では、信頼されたイニシャライザを用いない秘密分散法では、アイテム評価および推奨プラットフォームは、ユーザ特徴データ(例えば、ユーザ特徴データ行列Uのベクトルであるx)を開示することなく、いくつかの操作されたユーザ特徴データ(例えば、h)をソーシャルネットワークプラットフォームと共有し、ここで、いくつかの操作されたユーザ特徴データは、ユーザ特徴データと第2のいくつかの確率変数(例えば、aj、cj)に基づいて計算される。いくつかの実施形態では、操作されたソーシャルネットワークデータは、操作されたソーシャルネットワークデータからオリジナルのソーシャルネットワークデータを復元できないように操作されている。
いくつかの実施形態では、信頼されたイニシャライザを用いない秘密分散法は、例えば図3に関して説明したように、式(2)に関して説明したような最適化問題を解くことに使用される。例えば、信頼されたイニシャライザを用いない秘密分散法では、アイテム評価および推奨プラットフォームは、ユーザ特徴データのベクトル(例えば、x)を取得し、ユーザ特徴データのベクトル(例えば、x)と、第2のいくつかの確率変数(例えば、aj、cj)に基づいて、第1の操作されたユーザ特徴データ(例えば、x’)を生成する。アイテム評価および推奨プラットフォームは、第1の操作されたユーザ特徴データ(例えば、x’)をソーシャルネットワークプラットフォームに送信し、ソーシャルネットワークプラットフォームから、ソーシャルネットワークデータ(例えば、y)および第1のいくつかの確率変数(例えば、bj、dj)に基づいて算出された第1の操作されたソーシャルネットワークデータ(例えば、y’)を受信する。
アイテム評価および推奨プラットフォームは、第1の操作されたユーザ特徴データ(例えば、x’)、第1の操作されたソーシャルネットワークデータ(例えば、y’)、または第2のいくつかの確率変数(例えば、aj、cj)のうちの2つ以上に基づいて、操作されたユーザ特徴データ(例えば、h)の1つを生成できる。同様に、ソーシャルネットワークプラットフォームは、第1の操作されたユーザ特徴データ(例えば、x’)、第1の操作されたソーシャルネットワークデータ(例えば、y’)、または第1のいくつかの確率変数(例えば、bj、dj)のうちの2つ以上に基づいて算出された操作されたソーシャルネットワークデータ(例えば、g)の1つを生成できる。方法400は、408から410に進む。
410において、例えば、図3に関して説明したように、アイテム評価および推奨プラットフォームは、ユーザ特徴データ(例えば、xまたはUの任意のベクトル)を開示することなく、いくつかの操作されたユーザ特徴データ(例えば、いくつかのh)をソーシャルネットワークプラットフォームに送信する。方法400は、410から412に進む。
412において、アイテム評価および推奨プラットフォームは、評価データおよびいくつかの操作されたソーシャルネットワークデータに基づいてユーザ特徴データを更新する。いくつかの実施形態では、ユーザ特徴データを更新することは、いくつかの操作されたユーザ特徴データ(例えば、h)のうちの1つといくつかの操作されたソーシャルネットワークデータ(例えば、g)のうちの1つの合計を計算することによってユーザ特徴データとソーシャルネットワークデータとの積を計算することを含む。さらに、記載された計算は、ソーシャルネットワークデータを用いずに、ユーザ特徴データとソーシャルネットワークデータとの積における各エントリについて計算すること、いくつかの操作されたユーザ特徴データのうちの1つといくつかの操作されたソーシャルネットワークデータのうちの1つを計算することを含むことができる。いくつかの実施形態では、ユーザ特徴データは、例えば、式(2)に示されたように、予測された評価データと評価データの間の差と、ソーシャルネットワークデータによって重み付けされたユーザ特徴データと、およびオーバーフィットを回避するための項との重み付けされた合計を最小化する最適化問題を解くことを含む。いくつかの実施形態では、ユーザ特徴データを更新することは、図3に関して説明した例示的な技法にしたがってユーザ特徴データを更新することを含む。方法400は、412から414に進む。
414において、アイテム評価および推奨プラットフォームは、図3に関して説明した例示的な技法にしたがって評価データおよびユーザ特徴データに基づいてアイテム特徴データを更新する。方法400は、414から416に進む。
416において、ユーザ特徴データとアイテム特徴データとの積に基づく数人のユーザに対するいくつかのアイテムの予測された評価データが生成される。いくつかの実施形態では、予測された評価データは、式(1)にしたがって、例えば、ユーザ特徴データとアイテム特徴データとの積に基づいて生成され得る。いくつかの実施形態では、生成された評価はソーシャルネットワークを組み込んだことにより、ユーザのニーズまたは選好により良く沿ったものであり得る。方法400は、416から418に進む。
418において、予測された評価データに基づく特定のユーザに対する特定のアイテムの推奨が生成される。いくつかの実施形態では、特定のユーザに対する最高の予測された評価をもつ1つまたは複数のアイテムが、特定のユーザに推奨され得る。特定のアイテムの推奨は、映画またはショッピングアイテムの推奨であってよい。例えば、ソーシャルネットワークデータに基づいて、NETFLIXは、より良く映画を推奨でき、AMAZONはより良くアイテムを推奨できる。いくつかの実施形態では、特定のアイテムに対する特定のアイテムの推奨は、例えばユーザインターフェース(UI)を介して出力され得る。いくつかの実施形態では、選択したトピックが、グラフィックユーザインターフェース(GUI)またはユーザのレビューおよび検討のための他のUIにおいて、チャットボックス、ポップウィンドウなどに表示され得る。方法400は、418で終了する。
図9は、本開示の実施形態による、例示的な開示に説明された、説明されたアルゴリズム、方法、機能、プロセス、フロー、およびプロシージャに関連付けられたコンピュータ機能を提供するために使用される例示的なコンピュータシステム500を示すブロック図である。図示されたコンピュータ502は、コンピューティングデバイスの物理インスタンスまたは仮想インスタンス(または両方)を含む、サーバ、デスクトップコンピュータ、ラップトップ/ノートブックコンピュータ、ワイヤレスデータポート、スマートフォン、携帯情報端末(PDA)、タブレットコンピューティングデバイス、これらのデバイス内の一つまたは複数のプロセッサ、または任意の別のコンピューティングデバイスなど、任意のコンピューティングデバイスを包含することを意図している。加えて、コンピュータ502は、キーパッド、キーボード、タッチスクリーン、またはユーザ情報を受け入れることのできる他の入力デバイスなどの、入力デバイスと、デジタルデータ、視覚情報、聴覚情報(あるいは情報の組み合わせ)を含む、コンピュータ502の動作に関連付けられた情報をグラフィカルタイプユーザインターフェース(UI)(またはGUI)に伝達する出力デバイスとを含むことができる。
コンピュータ502は、クライアント、ネットワークコンポーネント、サーバ、データベースまたは他の永続的機能、または本開示に説明された主題を実行するためのコンピュータシステムの任意の他の構成要素(または役割の組み合わせ)において役割を機能できる。図示されたコンピュータ502は、ネットワーク530に通信可能に結合される。いくつかの実施形態では、コンピュータ502の1つまたは複数の構成要素が、クラウドコンピューティングベースの環境、ローカル環境、グローバル環境、または他の環境(または環境の組み合わせ)を含む、環境の中で動作するように構成され得る。
高いレベルでは、コンピュータ502は、説明された主題に関連付けられたデータおよび情報を、受信、送信、処理、記憶、または管理するように動作可能な電子コンピューティングデバイスである。いくつかの実施形態によれば、コンピュータ502はまた、アプリケーションサーバ、電子メールサーバ、Webサーバ、キャッシュサーバ、データストリーミングサーバ、または他のサーバ(またはサーバの組み合わせ)を含むサーバを含むことができ、あるいはサーバに通信可能に結合され得る。
コンピュータ502は、ネットワーク530を介して(例えば、別のコンピュータ502上で実行されている)クライアントアプリケーションから要求を受信することができ、ソフトウェアアプリケーションを使用して受信した要求を処理することによって受信した要求に応答できる。加えて、要求はまた、内部ユーザ(例えば、コマンドコンソールから、または別の適切なアクセス方法によって)、外部またはサードパーティ、他の自動アプリケーション、並びに他の適切なエンティティ、個人、システム、またはコンピュータから、コンピュータ502に送られ得る。
コンピュータ502の各構成要素は、システムバス503を使用して通信できる。いくつかの実施形態では、ハードウェアまたはソフトウェア(またはハードウェアとソフトウェアの組み合わせ)を含むコンピュータ502の構成要素の一部または全部は、アプリケーションプログラミングインターフェース(API)512またはサービスレイヤ513(またはAPI512とサービスレイヤ513の組み合わせ)を使用して、システムバス503を介して互いにまたはインターフェース504(または両方の組み合わせ)とインターフェースしてよい。API512は、ルーチン、データ構造、およびオブジェクトクラスのための仕様を含んでよい。API512は、コンピュータ言語に依存しないものでも依存するものでもよく、完全なインターフェース、単一の機能、またはAPIのセットさえも指すものであってよい。サービスレイヤ513は、コンピュータ502またはコンピュータ502に通信可能に結合される他の構成要素(図示されているかどうかにかかわらず)に、ソフトウェアサービスを提供する。コンピュータ502の機能は、このサービスレイヤを使用するすべてのサービス消費者にとってアクセス可能であってよい。サービスレイヤ513によって提供されるものなどのソフトウェアサービスは、規定のインターフェースを通じて、再使用可能な定義された機能を提供する。例えば、インターフェースは、JAVA(登録商標)、C++、拡張マークアップ言語(XML)フォーマットまたは別の適切なフォーマットにおいてデータを提供する他の適切なコンピューティング言語で書かれたソフトウェアであってよい。コンピュータ502の統合された構成要素として示されているが、代替の実施形態では、API512またはサービスレイヤ513は、コンピュータ502の他の構成要素またはコンピュータ502に通信可能に結合される他の構成要素(図示されているかどうかにかかわらず)に対してスタンドアロン構成要素として示されてよい。さらに、API512またはサービスレイヤ513の一部または全部は、本開示の範囲から逸脱することなく、別のソフトウェアモジュール、企業アプリケーション、またはハードウェアモジュールの子モジュールまたはサブモジュールとして実装されてよい。
コンピュータ502は、インターフェース504を含む。図5に単一のインターフェース504として示されているが、特定のニーズ、要望、またはコンピュータ502の特定の実装にしたがって、2つ以上のインターフェース504が使用され得る。インターフェース504は、分散環境におけるネットワーク530に通信可能にリンクされている他のシステム(図示されているかどうかにかかわらず)と通信するためにコンピュータ502によって使用される。一般に、インターフェース504は、ソフトウェアまたはハードウェア(またはソフトウェアとハードウェアの組み合わせ)で符号化されたロジックを含み、ネットワーク530と通信するように動作可能である。より具体的には、インターフェース504は、ネットワーク530またはインターフェースのハードウェアが図示されたコンピュータ502の内外で物理的信号を通信するように動作可能であるように、通信に関連付けられた1つまたは複数の通信プロトコルをサポートするソフトウェアを含んでよい。
コンピュータ502は、プロセッサ505を含む。図5に単一のプロセッサ505として示されているが、特定のニーズ、要望、またはコンピュータ502の特定の実装にしたがって、2つ以上のプロセッサが使用され得る。一般に、プロセッサ505は命令を実行し、データを操作するとともに、コンピュータ502の動作、および本開示に説明されているような任意のアルゴリズム、方法、機能、プロセス、フロー、およびプロシージャを実行する。
コンピュータ502はまた、コンピュータ502、またはネットワーク530に通信可能にリンクされた他の構成要素(図示されているかどうかにかかわらず)(または両方の組み合わせ)のためのデータを保持できるデータベース506を含む。例えば、データベース506は、本開示に矛盾しないデータを記憶するインメモリの、従来の、または他のタイプのデータベースであってよい。いくつかの実装形態では、データベース506は、特定のニーズ、要望、またはコンピュータ502の特定の実装、および説明された機能にしたがって、2つ以上の異なるデータベースのタイプ(例えば、ハイブリッドインメモリデータベースおよび従来のデータベース)の組み合わせであってよい。図5に単一のデータベース506として示されているが、特定のニーズ、要望、またはコンピュータ502の特定の実装、および説明された機能にしたがって、(同じタイプまたは異なるタイプの)2つ以上のデータベースが使用され得る。データベース506はコンピュータ502の統合された構成要素として示されているが、代替の実施形態では、データベース506はコンピュータ502の外部にあってよい。示されるように、データベース506は、上述の評価データ516、ユーザ特徴データ518、アイテム特徴データ526、およびソーシャルネットワークデータ528を保持する。
コンピュータ502はまた、コンピュータ502、またはネットワーク530に通信可能にリンクされた別の構成要素(図示されているかどうかにかかわらず)(または両方の組み合わせ)のためのデータを保持できるメモリ507を含む。メモリ507は、本開示に矛盾しない任意のデータを記憶できる。いくつかの実装形態では、メモリ507は、特定のニーズ、要望、またはコンピュータ502の特定の実装、および説明された機能にしたがって、2つ以上の異なるタイプのメモリの組合せ(例えば、半導体ストレージと磁気ストレージの組合せ)であり得る。図5に単一のメモリ507として示されているが、特定のニーズ、要望、またはコンピュータ502の特定の実装、および説明された機能にしたがって、(同じタイプまたはタイプの組み合わせの)2つ以上のメモリ507が使用され得る。メモリ507はコンピュータ502の統合された構成要素として示されているが、代替の実装形態では、メモリ507はコンピュータ502の外部にあってよい。
アプリケーション508は、特に本開示で説明されている機能に関して、特定のニーズ、要望、またはコンピュータ502の特定の実装にしたがって、機能を提供するアルゴリズムソフトウェアエンジンである。例えば、アプリケーション508は、1つまたは複数の構成要素、モジュール、またはアプリケーションとして機能することができる。さらに、単一のアプリケーション508として図示されているが、アプリケーション508はコンピュータ502上で複数のアプリケーション508として実装されてよい。加えて、コンピュータ502に統合されるように図示されているが、代替の実装において、アプリケーション508はコンピュータ502の外部にあってよい。
コンピュータ502はまた、電源514を含むことができる。電源514は、ユーザ交換可能にあるいはユーザが交換できないように構成され得る充電式または非充電式のバッテリを含むことができる。いくつかの実施形態では、電源514は、電力変換または管理回路(再充電、スタンバイ、または別の電力管理機能を含む)を含むことができる。いくつかの実装形態では、電源514は、例えばコンピュータ502に電力を供給するため、または充電式バッテリを充電するために、コンピュータ502を壁のコンセントまたは他の電力源に差し込むことを可能にするための電源プラグを含むことができる。
コンピュータ502を含むコンピュータシステムに関連付けられた、またはコンピュータシステムの外部に、任意の数のコンピュータ502が存在することができ、各コンピュータ502はネットワーク530を介して通信する。さらに、「クライアント」、「ユーザ」という用語、および他の適切な用語は、本開示の範囲から逸脱することなく、必要に応じて交換可能に使用され得る。さらに、本開示は、多数のユーザが1つのコンピュータ502を使用できること、または1人のユーザが複数のコンピュータ502を使用できることを意図する。
主題の詳細な実施形態は、単独でまたは組み合わせて、1つまたは複数の特徴を含むことができる。
例えば、第1の実施形態では、数人のユーザに対するいくつかのアイテムのそれぞれの評価を有する評価データを、アイテム評価および推奨プラットフォームによって識別するステップと、数人のユーザに対するいくつかのアイテムのそれぞれの評価に寄与するいくつかのユーザ特徴を有するユーザ特徴データを、アイテム評価および推奨プラットフォームによって識別するステップと、ソーシャルネットワークデータおよび第1のいくつかの確率変数に基づいて計算されたいくつかの操作されたソーシャルネットワークデータを、信頼されたイニシャライザを用いない秘密分散法により、アイテム評価および推奨プラットフォームによってソーシャルネットワークプラットフォームから受信するステップであって、ソーシャルネットワークデータが、数人のユーザのうちの任意の2人の間の社会的関係を示し、信頼されたイニシャライザを用いない秘密分散法において、ソーシャルネットワークプラットフォームは、ソーシャルネットワークデータを開示することなく、いくつかの操作されたソーシャルネットワークデータをアイテム評価および推奨プラットフォームと共有する、ステップと、評価データおよびいくつかの操作されたソーシャルネットワークデータに基づいて、ユーザ特徴データをアイテム評価および推奨プラットフォームによって更新するステップとを含む。
第2の実施形態では、動作を実行するためのコンピュータシステムによって実行可能な1つまたはいくつかの命令を記憶した非一時的コンピュータ可読記憶媒体であって、動作が、数人のユーザに対するいくつかのアイテムのそれぞれの評価を有する評価データを、アイテム評価および推奨プラットフォームによって識別するステップと、数人のユーザに対するいくつかのアイテムのそれぞれの評価に寄与するいくつかのユーザ特徴を有するユーザ特徴データを、アイテム評価および推奨プラットフォームによって識別するステップと、ソーシャルネットワークデータおよび第1のいくつかの確率変数に基づいて計算されたいくつかの操作されたソーシャルネットワークデータを、信頼されたイニシャライザを用いない秘密分散法により、アイテム評価および推奨プラットフォームによってソーシャルネットワークプラットフォームから受信するステップであって、ソーシャルネットワークデータが、数人のユーザのうちの任意の2人の間の社会的関係を示し、信頼されたイニシャライザを用いない秘密分散法において、ソーシャルネットワークプラットフォームは、ソーシャルネットワークデータを開示することなく、いくつかの操作されたソーシャルネットワークデータをアイテム評価および推奨プラットフォームと共有する、ステップと、評価データおよびいくつかの操作されたソーシャルネットワークデータに基づいて、ユーザ特徴データをアイテム評価および推奨プラットフォームによって更新するステップとを含む。
第3の実施形態では、1つまたは複数のコンピュータと、1つまたは複数のコンピュータと相互運用可能に結合されるとともに、命令を記憶した有形の非一時的機械可読媒体を有する1つまたは複数のコンピュータメモリデバイスとを備えるコンピュータ実装システムであって、命令が、1つまたは複数のコンピュータによって実行されると、数人のユーザに対するいくつかのアイテムのそれぞれの評価を有する評価データを、アイテム評価および推奨プラットフォームによって識別するステップと、数人のユーザに対するいくつかのアイテムのそれぞれの評価に寄与するいくつかのユーザ特徴を有するユーザ特徴データを、アイテム評価および推奨プラットフォームによって識別するステップと、ソーシャルネットワークデータおよび第1のいくつかの確率変数に基づいて計算されたいくつかの操作されたソーシャルネットワークデータを、信頼されたイニシャライザを用いない秘密分散法により、アイテム評価および推奨プラットフォームによってソーシャルネットワークプラットフォームから受信するステップであって、ソーシャルネットワークデータが、数人のユーザのうちの任意の2人の間の社会的関係を示し、信頼されたイニシャライザを用いない秘密分散法において、ソーシャルネットワークプラットフォームは、ソーシャルネットワークデータを開示することなく、いくつかの操作されたソーシャルネットワークデータをアイテム評価および推奨プラットフォームと共有する、ステップと、評価データおよびいくつかの操作されたソーシャルネットワークデータに基づいて、ユーザ特徴データをアイテム評価および推奨プラットフォームによって更新するステップとを含む動作を実行する。
前述のおよび他の説明された実装形態はそれぞれ、随意に以下の特徴のうちの1つまたは複数を含むことができる。
第1の特徴は、後述の特徴のいずれかと組み合わせることができ、信頼されたイニシャライザを用いない秘密分散法において、アイテム評価および推奨プラットフォームが、ユーザ特徴データを開示することなくいくつかの操作されたユーザ特徴データをソーシャルネットワークプラットフォームと共有し、いくつかの操作されたユーザ特徴データが、ユーザ特徴データおよび第2のいくつかの確率変数に基づいて計算される、
第2の特徴は、前述または後述の特徴のいずれかと組み合わせることができ、ユーザ特徴データを更新するステップは、いくつかの操作されたユーザ特徴データの1つといくつかの操作されたソーシャルネットワークデータの1つの合計に基づいて、ユーザ特徴データとソーシャルネットワークデータの積を計算するステップを含む。
第3の特徴は、前述または後述の特徴のいずれかと組み合わせることができ、ソーシャルネットワークデータを用いずに、いくつかの操作されたユーザ特徴データの1つといくつかの操作されたソーシャルネットワークデータの1つの合計を計算することによってユーザ特徴データとソーシャルネットワークデータとの積を計算するステップが、ユーザ特徴データとソーシャルネットワークデータの積の各エントリに対して、ソーシャルネットワークデータを用いずに、いくつかの操作されたユーザ特徴データの1つおよびいくつかの操作されたソーシャルネットワークデータの1つを計算するステップを含む。
第4の特徴は、前述または後述の特徴のいずれかと組み合わせることができ、方法または動作が、数人のユーザに対するいくつかのアイテムのそれぞれの評価に寄与するいくつかのアイテム特徴を有するアイテム特徴データを識別するステップであって、ユーザ特徴データとアイテム特徴データとの積が評価データの推定をもたらす、ステップと、評価データ、ユーザ特徴データ、およびいくつかの操作されたソーシャルネットワークデータに基づいてアイテム特徴データを更新するステップとをさらに含む。
第5の特徴は、前述または後述の特徴のいずれかと組み合わせることができ、方法または動作が、ユーザ特徴データとアイテム特徴データとの積に基づいて、数人のユーザに対するいくつかのアイテムの予測された評価データを生成するステップと、予測された評価データに基づいて、特定の顧客に対する特定のアイテムの推奨を生成するステップとをさらに含む。
第6の特徴は、前述または後述の特徴のいずれかと組み合わせることができ、ユーザ特徴データを更新するステップは、予測された評価データと評価データの間の差と、ソーシャルネットワークデータによって重み付けされたユーザ特徴データと、およびオーバーフィットを回避するための項との重み付けされた合計を最小化するために最小化問題を解くステップを含む。
第7の特徴は、前述または後述の特徴のいずれかと組み合わせることができ、最小化問題を解くステップが、
Figure 0006803980
を解くステップを含み、ここで、Uiは、ユーザiに対応するユーザ特徴データのベクトルを表し、Vjは、アイテムjに対応するアイテム特徴データのベクトルを表し、Rijは、ユーザiによるアイテムjの評価を表し、Sikは、ユーザiとユーザkとの間の社会的関係を表し、λ1は、ソーシャルネットワークデータに関連付けられた定義済みの重みを表し、λ2は、オーバーフィットを回避するための定義済みの重みを表す。
第8の特徴は、前述または後述の特徴のいずれかと組み合わせることができ、方法または動作が、信頼されたイニシャライザを用いない秘密分散法において、 ユーザ特徴データのベクトルを、アイテム評価および推奨プラットフォームによって取得するステップと、ユーザ特徴データのベクトルおよび第2のいくつかの確率変数に基づいて、第1の操作されたユーザ特徴データを、アイテム評価および推奨プラットフォームによって生成するステップと、第1の操作されたユーザ特徴データをソーシャルネットワークプラットフォームにアイテム評価および推奨プラットフォームによって送信するステップと、ソーシャルネットワークデータおよび第1のいくつかの確率変数に基づいて計算された第1の操作されたソーシャルネットワークデータを、ソーシャルネットワークプラットフォームからアイテム評価および推奨プラットフォームによって受信するステップと、第1の操作されたユーザ特徴データ、第1の操作されたソーシャルネットワークデータ、または第2のいくつかの確率変数のうちの2つ以上に基づいて、操作されたユーザ特徴データのうちの1つを、アイテム評価および推奨プラットフォームによって生成するステップとをさらに含む。
本明細書に説明された主題の実施形態および機能的動作は、本明細書に開示された構造およびそれらの構造上の均等物を含む、デジタル電子回路、有形の具現化されたコンピュータソフトウェアまたはファームウェア、コンピュータハードウェア、またはそれらの1つまたは複数の組み合わせで実装され得る。説明された主題のソフトウェア実施形態は、1つまたは複数のコンピュータプログラムとして、すなわち、データ処理装置によって実行されるための、あるいはデータ処理装置の動作を制御するための、有形の非一時的コンピュータ可読なコンピュータ記憶媒体上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装され得る。代替または追加で、プログラム命令は、人工的に生成された伝搬信号、例えば、データ処理装置による実行のために適切な受信装置に送信するための情報を符号化するように生成された、機械生成された電気信号、光信号、または電磁信号の中に/上に符号化され得る。コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムまたはシリアルアクセスメモリデバイス、またはコンピュータ記憶媒体の組み合わせであってよい。1つまたは複数のコンピュータを構成することは、ソフトウェアが1つまたは複数のコンピュータによって実行されるときに特定の計算動作が実行されるように、1つまたは複数のコンピュータがハードウェア、ファームウェア、またはソフトウェア(またはハードウェア、ファームウェア、およびソフトウェアの組合せ)をインストールしていることを意味する。
「リアルタイム(real-time)」、「リアルタイム(real time)」、「リアルタイム(realtime)」、「リアル(ファスト)タイム(real (fast) time (RFT))」、「ほぼリアルタイム(near(ly) real-time (NRT))」、「準リアルタイム(quasi real-time)」という用語、または(当業者には理解されるような)同様の用語は、アクションおよび応答が実質的に同時に起こることを個人が知覚するように、アクションおよび応答が時間的に近いことを意味する。例えば、データへのアクセスに対する個人のアクションに続いてデータを表示するための応答(または表示の開始)にかかる時間差は、1ms未満、1秒未満、または5秒未満であってよい。要求されたデータは瞬時に表示される(または表示を開始される)必要はないが、説明されたコンピューティングシステムの処理限界と、例えばデータを収集、正確に測定、分析、処理、保存、または送信するのに必要な時間とを考慮して、意図的な遅延なしに表示(または表示のために開始)される。
用語「データ処理装置」、「コンピュータ」、または「電子コンピュータデバイス」(または当業者によって理解されるような同等のもの)は、データ処理ハードウェアを指すとともに、例として、プログラム可能なプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含め、データを処理するためのあらゆる種類の装置、デバイス、および機械を包含する。装置は、例えば、中央処理装置(CPU)、FPGA(フィールドプログラマブルゲートアレイ)、またはASIC(特定用途向け集積回路)などの特殊用途論理回路でもよく、またはさらに特殊用途論理回路を含んでもよい。いくつかの実装形態では、データ処理装置または専用論理回路(またはデータ処理装置または専用論理回路の組み合わせ)は、ハードウェアベースまたはソフトウェアベース(またはハードウェアベースとソフトウェアベースの両方の組み合わせ)とすることができる。装置は、コンピュータプログラムの実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、または実行環境の組み合わせを構成するコードを任意に含むことができる。本開示は、従来のオペレーティングシステム、例えば、LINUX、UNIX(登録商標)、WINDOWS(登録商標)、MAC OS、ANDROID(登録商標)、IOS、任意の他の適切な従来のオペレーティングシステムを用いてまたは用いずにデータ処理装置の使用を意図する。
プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、あるいはコードと呼ばれるまたは説明され得るコンピュータプログラムは、プログラム言語の任意の形式で書くことができ、プログラム言語は、コンパイル言語またはインタプリタ言語、あるいは宣言型言語または手続き型言語を含み、コンピュータプログラムは、スタンドアロンプログラムとして、あるいはコンピューティング環境で使用するための適切なモジュール、コンポーネント、サブルーチン、または他のユニットとして任意の形式で展開され得る。コンピュータプログラムは、必ずしもそうである必要はないが、ファイルシステム内のファイルに対応できる。プログラムは、他のプログラムまたはデータを保持するファイルの一部、例えば、マークアップ言語文書に記憶された1つまたは複数のスクリプトは、対象のプログラム専用の単一ファイル、または複数の協調ファイル、例えば、1つまたは複数のモジュール、サブプログラム、またはコードの一部を保持するファイルなどに記憶できる。コンピュータプログラムは、1つのサイトに配置されているかまたは複数のサイトにわたって分散され、通信ネットワークによって相互接続されている1つのコンピュータまたは複数のコンピュータ上で実行されるように展開され得る。
様々な図に示されたプログラムの部分は、様々なオブジェクト、方法、または他のプロセスを介して説明された特徴および機能を実装する、個々のモジュールとして示すことができ、プログラムは代わりに、必要に応じて、いくつかのサブモジュール、サードパーティのサービス、コンポーネント、ライブラリなどを含むことができる。対照的に、様々な構成要素の特徴および機能を組み合わせて、必要に応じて単一の構成要素にすることができる。コンピュータでの判定を行うために使用されるしきい値は、静的に、動的に、または静的かつ動的に決定できる。
本明細書に説明された方法、プロセス、または論理フローは、入力データに基づき動作して出力データを生成することによって機能を実行するために1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能コンピュータによって実行され得る。方法、プロセス、または論理フローは、特殊用途論理回路、例えば、CPU、FPGA、またはASICによって実行することができ、特殊用途論理回路として装置が実装されてよい。
コンピュータプログラムを実行するために適切なコンピュータは、汎用または特殊用途のマイクロプロセッサ、その両方、または任意の他のタイプのCPUに基づくことができる。一般に、CPUはメモリから命令およびデータを受信し、メモリに書き込む。コンピュータの必須要素は、命令を行うまたは実行するためのCPU、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータはまた、例えば磁気ディスク、光磁気ディスク、または光ディスクなど、データを記憶するための1つまたは複数の大容量記憶デバイスを含む、または1つまたは複数の大容量記憶デバイスに動作可能に結合され、1つまたは複数の大容量記憶デバイスからデータを受信するか、または1つまたは複数の大容量記憶デバイスにデータを転送するか、またはその両方を行う。しかしながら、コンピュータはそのようなデバイスを有する必要はない。さらに、コンピュータは、別のデバイス、例えば携帯電話、携帯情報端末(PDA)、モバイルオーディオまたはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)受信機、またはポータブルストレージデバイス、例えば、数例を挙げるとユニバーサルシリアルバス(USB)フラッシュドライブに組み込まれ得る。
コンピュータプログラム命令およびデータを記憶するための非一時的コンピュータ可読媒体は、例として半導体メモリデバイス、磁気デバイス、光磁気ディスクおよび光メモリデバイスを含む、あらゆる形態の永久的/非永久的または揮発性/不揮発性メモリ、媒体、およびメモリデバイスを含むことができ、半導体メモリデバイスは、例えば、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、消去可能プログラマブル読み出し専用メモリ(EPROM)、電気的消去可能プログラマブル読み出し専用メモリ(EEPROM)、およびフラッシュメモリデバイスであり、磁気デバイスは、例えば、テープ、カートリッジ、カセット、内蔵/取り外し可能ディスクであり、光メモリデバイスは、例えば、デジタルビデオディスク(DVD)、CD ROM、DVD+/-R、DVD-RAM、DVD-ROM、HD-DVD、およびBLURAY、ならびに他の光メモリ技術である。メモリは、キャッシュ、クラス、フレームワーク、アプリケーション、モジュール、バックアップデータ、ジョブ、ウェブページ、ウェブページテンプレート、データ構造、データベーステーブル、動的情報を記憶するリポジトリ、または任意のパラメータ、変数、アルゴリズム、命令、規則、制約、または参照を含む任意の他の適切な情報を含む様々なオブジェクトまたはデータを記憶できる。さらに、メモリは、ログ、ポリシー、セキュリティデータまたはアクセスデータ、報告ファイルなどの任意の他の適切なデータを含むことができる。プロセッサおよびメモリは、特殊用途論理回路によって補完されるか、またはその中に組み込まれることができる。
ユーザとの対話を提供にするために、本明細書に記載の主題の実施形態は、ユーザに情報を表示するための、例えば、CRT(陰極線管)、LCD(液晶ディスプレイ)、LED(発光ダイオード)、またはプラズマモニタなどの表示デバイスと、ユーザがそれによってコンピュータに入力を提供できるマウス、トラックボール、またはトラックパッドなどのキーボードおよびポインティングデバイスとを具備するコンピュータ上に実装され得る。圧力感知のタブレットコンピュータ表面、静電容量式または電気式感知を使用したマルチタッチスクリーン、または他のタイプのタッチスクリーンなどのタッチスクリーンを使用してコンピュータに入力を提供してもよい。他の種類のデバイスがユーザとの対話を提供するために同様に使用され、例えば、ユーザに提供されるフィードバックは、任意の形式の感覚フィードバック、例えば、視覚的フィードバック、聴覚的フィードバック、触覚的フィードバックであり、ユーザからの入力は、音声、会話、または触覚入力を含む任意の形式で受信される。さらに、コンピュータは、ユーザによって使用されるデバイスとドキュメントを送受信することによって、例えば、ウェブブラウザから受信した要求に応答してユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザと対話できる。
「グラフィカルユーザインターフェース」または「GUI」という用語は、単数形または複数形で使用され、1つまたは複数のグラフィカルユーザインターフェースおよび特定のグラフィカルユーザインターフェースの各ディスプレイを記述する。したがって、GUIは、限定ではなく、情報を処理するとともに情報結果を効率的にユーザに提示するウェブブラウザ、タッチスクリーン、またはコマンドラインインターフェース(CLI)を含む任意のグラフィカルユーザインターフェースを表すことができる。一般に、GUIは、インタラクティブフィールド、プルダウンリスト、およびボタンなど、ウェブブラウザのいくつかまたはすべてに関連付けられたいくつかのユーザインターフェース(UI)要素を含むことができる。これらのUI要素および他のUI要素は、ウェブブラウザの機能に関連するかまたはそれを表すことができる。
本明細書に記載の主題の実施形態は、例えばデータサーバとしてのバックエンド構成要素を含む、または例えばアプリケーションサーバなどのミドルウェア構成要素を含む、または例えばグラフィカルユーザインターフェースを有するクライアントコンピュータ、またはユーザがそれを介して本明細書に記載の主題の実施形態と対話できるウェブブラウザなどのフロントエンド構成要素を含む、またはそのようなバックエンド構成要素、ミドルウェア構成要素、またはフロントエンド構成要素の1つまたは複数の組み合わせを含むコンピューティングシステムで実装され得る。システムの構成要素は、例えば通信ネットワークなどの有線または無線デジタルデータ通信(またはデータ通信の組み合わせ)の任意の形態または媒体によって相互接続され得る。通信ネットワークの例は、ローカルエリアネットワーク(LAN)、無線アクセスネットワーク(RAN)、メトロポリタンエリアネットワーク(MAN)、ワイドエリアネットワーク(WAN)、WIMAX(Worldwide Interoperability for Microwave Access)、例えば、802.11a/b/g/nまたは802.20(または802.11xと802.20の組み合わせ、または本開示に矛盾しない他のプロトコル)を使用する無線ローカルエリアネットワーク(WLAN)、インターネットの全部または一部、あるいは1つまたは複数の場所における任意の他の通信システム(通信ネットワークの組み合わせ)を含む。ネットワークは、例えば、インターネットプロトコル(IP)パケット、フレームリレーフレーム、非同期転送モード(ATM)セル、音声、ビデオ、データ、またはネットワークアドレス間の他の適切な情報(または通信タイプの組み合わせ)と通信できる。
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントとサーバは一般に互いに離れており、通常は通信ネットワークを介して対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生じる。
本明細書は多くの具体的な実施形態の詳細を含むが、これらはいかなる発明の範囲または特許請求され得るものの範囲に対する限定として解釈されるべきではなく、むしろ特定の発明の特定の実施形態に特有であり得る特徴の説明として解釈されるべきである。別々の実施形態の文脈で本明細書に説明されているいくつかの特徴は、組み合わせて、単一の実施形態で実装されてよい。対照的に、単一の実施形態の文脈で説明されている様々な特徴は、複数の実施形態で別々に、または任意のサブコンビネーションで実装されてよい。さらに、前述の特徴は特定の組み合わせで作用するものとして説明され、最初はそのように請求することさえされ得るが、場合によっては、請求する組み合わせからの1つまたは複数の特徴をその組み合わせから切り取ることができ、請求する組み合わせは、サブコンビネーションまたはサブコンビネーションの変形に向けられてよい。
主題の特定の実施形態が説明された。説明された実施形態の他の実施形態、変形、および置換は、添付の特許請求の範囲の範囲内であり、このことは、当業者には明らかであろう。動作は図面または特許請求の範囲に特定の順序で描かれているが、これは、望ましい結果を達成するために、そのような動作が示された特定の順序またはシーケンシャルな順序に実行されること、または図示されたすべての動作(いくつかの動作は任意とされ得る)が実行されることを必要とすると理解されるべきではない。特定の状況では、マルチタスク処理または並列処理(またはマルチタスク処理と並列処理の組み合わせ)が有利であり、必要に応じて実行され得る。
さらに、前述の実装形態における様々なシステムモジュールおよび構成要素の分離または統合は、すべての実装形態においてそのような分離または統合を必要とすると理解されるべきではなく、説明されるプログラムコンポーネントおよびシステムは、概して単一のソフトウェアアイテムに統合され得る、または複数のソフトウェアアイテムにパッケージ化され得ると理解すべきである。
したがって、前述の例示的な実装形態は、本開示を定義または制限するものではない。本開示の精神および範囲から逸脱することなく、他の変更、置換、および変形もまた可能である。
さらに、特許請求の範囲に記載された実施形態は、少なくともコンピュータ実装方法、コンピュータ実装方法を実行するためのコンピュータ可読命令を記憶する非一時的コンピュータ可読媒体、およびコンピュータ実装方法または非一時的コンピュータ可読媒体に記憶された命令を実行するように構成されたハードウェアプロセッサと相互運用可能に結合されたコンピュータメモリを備えるコンピュータシステムに適用可能であると考えられる。
503 システムバス
504 インターフェース
505 プロセッサ
506 データベース
507 メモリ
508 アプリケーション
512 API
513 サービスレイヤ
514 電源
516 評価データ
518 ユーザ特徴データ
526 アイテム特徴データ
528 操作されたソーシャルネットワークデータ
530 ネットワーク

Claims (19)

  1. 複数のユーザに対する複数のアイテムのそれぞれの評価を有する評価データを、アイテム評価および推奨プラットフォームによって識別するステップと、
    前記複数のユーザに対する前記複数のアイテムのそれぞれの評価に寄与する複数のユーザ特徴を有するユーザ特徴データを、前記アイテム評価および推奨プラットフォームによって識別するステップと、
    ソーシャルネットワークデータおよび第1のいくつかの確率変数に基づいて計算された複数の操作されたソーシャルネットワークデータを、信頼されたイニシャライザを用いない秘密分散法により、前記アイテム評価および推奨プラットフォームによってソーシャルネットワークプラットフォームから受信するステップであって、前記ソーシャルネットワークデータが、前記複数のユーザのうちの任意の2人の間の社会的関係を示し、前記信頼されたイニシャライザを用いない秘密分散法において、前記ソーシャルネットワークプラットフォームは、前記ソーシャルネットワークデータを開示することなく、前記複数の操作されたソーシャルネットワークデータを前記アイテム評価および推奨プラットフォームと共有する、ステップと、
    前記評価データおよび前記複数の操作されたソーシャルネットワークデータに基づいて、前記ユーザ特徴データを前記アイテム評価および推奨プラットフォームによって更新するステップであって、前記ユーザ特徴データを更新するステップは、複数の操作されたユーザ特徴データの1つと前記複数の操作されたソーシャルネットワークデータの1つの合計に基づいて、前記ユーザ特徴データと前記ソーシャルネットワークデータの積を計算するステップを含む、ステップ
    を含む、コンピュータ実装方法。
  2. 前記信頼されたイニシャライザを用いない秘密分散法において、前記アイテム評価および推奨プラットフォームが、前記ユーザ特徴データを開示することなく前記複数の操作されたユーザ特徴データを前記ソーシャルネットワークプラットフォームと共有し、前記複数の操作されたユーザ特徴データが、前記ユーザ特徴データおよび第2のいくつかの確率変数に基づいて計算される、請求項1に記載のコンピュータ実装方法。
  3. 前記信頼されたイニシャライザを用いない秘密分散法において、
    ユーザ特徴データのベクトルを、前記アイテム評価および推奨プラットフォームによって取得するステップと、
    前記ユーザ特徴データのベクトルおよび前記第2のいくつかの確率変数に基づいて、第1の操作されたユーザ特徴データを、前記アイテム評価および推奨プラットフォームによって生成するステップと、
    第1の操作されたユーザ特徴データを前記ソーシャルネットワークプラットフォームに前記アイテム評価および推奨プラットフォームによって送信するステップと、
    前記ソーシャルネットワークデータおよび前記第1のいくつかの確率変数に基づいて計算された第1の操作されたソーシャルネットワークデータを、前記ソーシャルネットワークプラットフォームから前記アイテム評価および推奨プラットフォームによって受信するステップと、
    前記第1の操作されたユーザ特徴データ、前記第1の操作されたソーシャルネットワークデータ、または前記第2のいくつかの確率変数のうちの2つ以上に基づいて、前記操作されたユーザ特徴データのうちの1つを、前記アイテム評価および推奨プラットフォームによって生成するステップと
    をさらに含む、請求項2に記載のコンピュータ実装方法。
  4. 記複数の操作されたユーザ特徴データの1つと前記複数の操作されたソーシャルネットワークデータの1つの合計を計算することによって前記ユーザ特徴データと前記ソーシャルネットワークデータとの積を計算するステップが、前記ユーザ特徴データと前記ソーシャルネットワークデータの積の各エントリに対して、前記ソーシャルネットワークデータを用いずに、前記複数の操作されたユーザ特徴データの1つおよび前記複数の操作されたソーシャルネットワークデータの1つを計算するステップを含む、請求項1に記載のコンピュータ実装方法。
  5. 前記複数のユーザに対する前記複数のアイテムの前記それぞれの評価に寄与する複数のアイテム特徴を有するアイテム特徴データを識別するステップであって、前記ユーザ特徴データと前記アイテム特徴データとの積が前記評価データの推定をもたらす、ステップと、
    前記評価データ、前記ユーザ特徴データ、および前記複数の操作されたソーシャルネットワークデータに基づいて前記アイテム特徴データを更新するステップと
    をさらに含む、請求項1に記載のコンピュータ実装方法。
  6. 前記ユーザ特徴データとアイテム特徴データとの前記積に基づいて、前記複数のユーザに対する前記複数のアイテムの予測された評価データを生成するステップと、
    前記予測された評価データに基づいて、特定の顧客に対する特定のアイテムの推奨を生成するステップと
    をさらに含む、請求項5に記載のコンピュータ実装方法。
  7. 前記ユーザ特徴データを更新するステップは、予測された評価データと前記評価データの間の差と、前記ソーシャルネットワークデータによって重み付けされた前記ユーザ特徴データと、およびオーバーフィットを回避するための項との重み付けされた合計を最小化するために最小化問題を解くステップを含む、請求項6に記載のコンピュータ実装方法。
  8. 最小化問題を解くステップが、
    Figure 0006803980
    を解くステップを含み、
    ここで、
    Uiは、ユーザiに対応する前記ユーザ特徴データのベクトルを表し、
    Vjは、アイテムjに対応する前記アイテム特徴データのベクトルを表し、
    Rijは、ユーザiによるアイテムjの評価を表し、
    Sikは、ユーザiとユーザkとの間の社会的関係を表し、
    λ1は、前記ソーシャルネットワークデータに関連付けられた定義済みの重みを表し、
    λ2は、オーバーフィットを回避するための定義済みの重みを表す、請求項6に記載のコンピュータ実装方法。
  9. 動作を実行するためのコンピュータシステムによって実行可能な1つまたは複数の命令を記憶した非一時的コンピュータ可読記憶媒体であって、前記動作が、
    複数のユーザに対する複数のアイテムのそれぞれの評価を有する評価データを、アイテム評価および推奨プラットフォームによって識別するステップと、
    前記複数のユーザに対する前記複数のアイテムのそれぞれの評価に寄与する複数のユーザ特徴を有するユーザ特徴データを、前記アイテム評価および推奨プラットフォームによって識別するステップと、
    ソーシャルネットワークデータおよび第1のいくつかの確率変数に基づいて計算された複数の操作されたソーシャルネットワークデータを、信頼されたイニシャライザを用いない秘密分散法により、前記アイテム評価および推奨プラットフォームによってソーシャルネットワークプラットフォームから受信するステップであって、前記ソーシャルネットワークデータが、前記複数のユーザのうちの任意の2人の間の社会的関係を示し、前記信頼されたイニシャライザを用いない秘密分散法において、前記ソーシャルネットワークプラットフォームは、前記ソーシャルネットワークデータを開示することなく、前記複数の操作されたソーシャルネットワークデータを前記アイテム評価および推奨プラットフォームと共有する、ステップと、
    前記評価データおよび前記複数の操作されたソーシャルネットワークデータに基づいて、前記ユーザ特徴データを前記アイテム評価および推奨プラットフォームによって更新するステップであって、前記ユーザ特徴データを更新するステップは、複数の操作されたユーザ特徴データの1つと前記複数の操作されたソーシャルネットワークデータの1つの合計に基づいて、前記ユーザ特徴データと前記ソーシャルネットワークデータの積を計算するステップを含む、ステップ
    を含む、非一時的コンピュータ可読記憶媒体。
  10. 前記信頼されたイニシャライザを用いない秘密分散法において、前記アイテム評価および推奨プラットフォームが、前記ユーザ特徴データを開示することなく前記複数の操作されたユーザ特徴データを前記ソーシャルネットワークプラットフォームと共有し、前記複数の操作されたユーザ特徴データが、前記ユーザ特徴データおよび第2のいくつかの確率変数に基づいて計算され、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  11. 前記動作が、前記信頼されたイニシャライザを用いない秘密分散法において、
    ユーザ特徴データのベクトルを、前記アイテム評価および推奨プラットフォームによって取得するステップと、
    前記ユーザ特徴データのベクトルおよび前記第2のいくつかの確率変数に基づいて、第1の操作されたユーザ特徴データを、前記アイテム評価および推奨プラットフォームによって生成するステップと、
    第1の操作されたユーザ特徴データを前記ソーシャルネットワークプラットフォームに前記アイテム評価および推奨プラットフォームによって送信するステップと、
    前記ソーシャルネットワークデータおよび前記第1のいくつかの確率変数に基づいて計算された第1の操作されたソーシャルネットワークデータを、前記ソーシャルネットワークプラットフォームから前記アイテム評価および推奨プラットフォームによって受信するステップと、
    前記第1の操作されたユーザ特徴データ、前記第1の操作されたソーシャルネットワークデータ、または前記第2のいくつかの確率変数のうちの2つ以上に基づいて、前記操作されたユーザ特徴データのうちの1つを、前記アイテム評価および推奨プラットフォームによって生成するステップと
    をさらに含む、請求項10に記載の非一時的コンピュータ可読記憶媒体。
  12. 記複数の操作されたユーザ特徴データの1つと前記複数の操作されたソーシャルネットワークデータの1つの合計に基づいて、前記ユーザ特徴データと前記ソーシャルネットワークデータとの積を計算するステップが、前記ユーザ特徴データと前記ソーシャルネットワークデータの積の各エントリに対して、前記ソーシャルネットワークデータを用いずに、前記複数の操作されたユーザ特徴データの1つおよび前記複数の操作されたソーシャルネットワークデータの1つを計算するステップを含む、請求項10に記載の非一時的コンピュータ可読記憶媒体。
  13. 前記動作が、
    前記複数のユーザに対する前記複数のアイテムの前記それぞれの評価に寄与する複数のアイテム特徴を有するアイテム特徴データを識別するステップであって、前記ユーザ特徴データと前記アイテム特徴データとの積が前記評価データの推定をもたらす、ステップと、
    前記評価データ、前記ユーザ特徴データ、および前記複数の操作されたソーシャルネットワークデータに基づいて前記アイテム特徴データを更新するステップと
    をさらに含む、請求項9に記載の非一時的コンピュータ可読記憶媒体。
  14. 1つまたは複数のコンピュータと、
    前記1つまたは複数のコンピュータと相互運用可能に結合されるとともに、命令を記憶した有形の非一時的機械可読媒体を有する1つまたは複数のコンピュータメモリデバイスとを備えるコンピュータ実装システムであって、
    前記命令が、前記1つまたは複数のコンピュータによって実行されると、
    複数のユーザに対する複数のアイテムのそれぞれの評価を有する評価データを、アイテム評価および推奨プラットフォームによって識別するステップと、
    前記複数のユーザに対する前記複数のアイテムのそれぞれの評価に寄与する複数のユーザ特徴を有するユーザ特徴データを、前記アイテム評価および推奨プラットフォームによって識別するステップと、
    ソーシャルネットワークデータおよび第1のいくつかの確率変数に基づいて計算された複数の操作されたソーシャルネットワークデータを、信頼されたイニシャライザを用いない秘密分散法により、前記アイテム評価および推奨プラットフォームによってソーシャルネットワークプラットフォームから受信するステップであって、前記ソーシャルネットワークデータが、前記複数のユーザのうちの任意の2人の間の社会的関係を示し、前記信頼されたイニシャライザを用いない秘密分散法において、前記ソーシャルネットワークプラットフォームは、前記ソーシャルネットワークデータを開示することなく、前記複数の操作されたソーシャルネットワークデータを前記アイテム評価および推奨プラットフォームと共有する、ステップと、
    前記評価データおよび前記複数の操作されたソーシャルネットワークデータに基づいて、前記ユーザ特徴データを前記アイテム評価および推奨プラットフォームによって更新するステップであって、前記ユーザ特徴データを更新するステップは、複数の操作されたユーザ特徴データの1つと前記複数の操作されたソーシャルネットワークデータの1つの合計に基づいて、前記ユーザ特徴データと前記ソーシャルネットワークデータの積を計算するステップを含む、ステップ
    を含む動作を実行する、コンピュータ実装システム。
  15. 前記信頼されたイニシャライザを用いない秘密分散法において、前記アイテム評価および推奨プラットフォームが、前記ユーザ特徴データを開示することなく前記複数の操作されたユーザ特徴データを前記ソーシャルネットワークプラットフォームと共有し、前記複数の操作されたユーザ特徴データが、前記ユーザ特徴データおよび第2のいくつかの確率変数に基づいて計算され、請求項14に記載のコンピュータ実装システム。
  16. 記複数の操作されたユーザ特徴データの1つと前記複数の操作されたソーシャルネットワークデータの1つの合計に基づいて、前記ユーザ特徴データと前記ソーシャルネットワークデータとの積を計算するステップが、前記ユーザ特徴データと前記ソーシャルネットワークデータの積の各エントリに対して、前記ソーシャルネットワークデータを用いずに、前記複数の操作されたユーザ特徴データの1つおよび前記複数の操作されたソーシャルネットワークデータの1つを計算するステップを含む、請求項15に記載のコンピュータ実装システム。
  17. 前記動作が、
    前記複数のユーザに対する前記複数のアイテムの前記それぞれの評価に寄与する複数のアイテム特徴を有するアイテム特徴データを識別するステップであって、前記ユーザ特徴データと前記アイテム特徴データとの積が前記評価データの推定をもたらす、ステップと、
    前記評価データ、前記ユーザ特徴データ、および前記複数の操作されたソーシャルネットワークデータに基づいて前記アイテム特徴データを更新するステップと
    をさらに含む、請求項14に記載のコンピュータ実装システム。
  18. 前記動作が、
    前記ユーザ特徴データとアイテム特徴データとの前記積に基づいて、前記複数のユーザに対する前記複数のアイテムの予測された評価データを生成するステップと、
    前記予測された評価データに基づいて、特定の顧客に対する特定のアイテムの推奨を生成するステップと
    をさらに含み、
    前記ユーザ特徴データを更新するステップは、予測された評価データと前記評価データの間の差と、前記ソーシャルネットワークデータによって重み付けされた前記ユーザ特徴データと、およびオーバーフィットを回避するための項との重み付けされた合計を最小化するために最小化問題を解くステップを含む、請求項17に記載のコンピュータ実装システム。
  19. 最小化問題を解くステップが、
    Figure 0006803980
    を解くステップを含み、
    ここで、
    Uiは、ユーザiに対応する前記ユーザ特徴データのベクトルを表し、
    Vjは、アイテムjに対応する前記アイテム特徴データのベクトルを表し、
    Rijは、ユーザiによるアイテムjの評価を表し、
    Sikは、ユーザiとユーザkとの間の社会的関係を表し、
    λ1は、前記ソーシャルネットワークデータに関連付けられた定義済みの重みを表し、
    λ2は、オーバーフィットを回避するための定義済みの重みを表す、請求項18に記載のコンピュータ実装システム。
JP2019521721A 2018-10-17 2018-10-17 信頼されたイニシャライザを用いない秘密分散 Active JP6803980B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/110688 WO2020077573A1 (en) 2018-10-17 2018-10-17 Secret sharing with no trusted initializer

Publications (2)

Publication Number Publication Date
JP6803980B1 true JP6803980B1 (ja) 2020-12-23
JP2021508064A JP2021508064A (ja) 2021-02-25

Family

ID=66850327

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019521721A Active JP6803980B1 (ja) 2018-10-17 2018-10-17 信頼されたイニシャライザを用いない秘密分散

Country Status (16)

Country Link
US (2) US10789377B2 (ja)
EP (2) EP3665583A4 (ja)
JP (1) JP6803980B1 (ja)
KR (1) KR102150816B1 (ja)
CN (2) CN110366722A (ja)
AU (2) AU2018353923B2 (ja)
BR (1) BR112019008135B1 (ja)
CA (2) CA3040669A1 (ja)
ES (1) ES2836207T3 (ja)
MX (1) MX2019004664A (ja)
PH (1) PH12019500891A1 (ja)
PL (1) PL3659292T3 (ja)
RU (1) RU2728522C1 (ja)
SG (2) SG11201903587TA (ja)
WO (2) WO2020077573A1 (ja)
ZA (1) ZA201902550B (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112019008135B1 (pt) 2018-10-17 2022-01-04 Advanced New Technologies Co., Ltd. Método implementado por computador, meio legível por computador e sistema implementado por computador
CN111030811B (zh) * 2019-12-13 2022-04-22 支付宝(杭州)信息技术有限公司 一种数据处理的方法
CN111176582A (zh) * 2019-12-31 2020-05-19 北京百度网讯科技有限公司 矩阵存储方法、矩阵访问方法、装置和电子设备
CN111461858B (zh) * 2020-03-10 2023-02-17 支付宝(杭州)信息技术有限公司 基于隐私保护的连乘计算方法、装置、***和电子设备
CN111428276B (zh) * 2020-03-19 2022-08-02 腾讯科技(深圳)有限公司 一种数据处理的方法、装置、设备和介质
CN111162896B (zh) * 2020-04-01 2020-06-26 支付宝(杭州)信息技术有限公司 双方联合进行数据处理的方法及装置
CN111506922B (zh) * 2020-04-17 2023-03-10 支付宝(杭州)信息技术有限公司 多方联合对隐私数据进行显著性检验的方法和装置
CN111241570B (zh) * 2020-04-24 2020-07-17 支付宝(杭州)信息技术有限公司 保护数据隐私的双方联合训练业务预测模型的方法和装置
CN111291417B (zh) * 2020-05-09 2020-08-28 支付宝(杭州)信息技术有限公司 保护数据隐私的多方联合训练对象推荐模型的方法及装置
CN112163227B (zh) * 2020-09-02 2022-04-29 湖北工业大学 一种电商平台卖家用户销售额多维统计分析***及方法
CN112231561B (zh) * 2020-10-14 2024-06-07 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质
US11379743B2 (en) * 2020-11-02 2022-07-05 Sas Institute Inc. Recommendation system
US11544767B2 (en) * 2020-11-02 2023-01-03 Sas Institute Inc. Recommendation system with implicit feedback
CN112311546B (zh) * 2020-12-25 2021-04-09 鹏城实验室 数据保密判定方法、装置、设备及计算机可读存储介质
CN112560106B (zh) * 2021-02-20 2021-05-18 支付宝(杭州)信息技术有限公司 针对隐私矩阵进行处理的方法、装置和***
JP2024081261A (ja) 2022-12-06 2024-06-18 富士通株式会社 プログラム、算出方法および情報処理装置
CN116383848B (zh) * 2023-04-04 2023-11-28 北京航空航天大学 一种三方安全计算防作恶方法、设备及介质
US11743524B1 (en) 2023-04-12 2023-08-29 Recentive Analytics, Inc. Artificial intelligence techniques for projecting viewership using partial prior data sources

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7788123B1 (en) * 2000-06-23 2010-08-31 Ekhaus Michael A Method and system for high performance model-based personalization
US20040133574A1 (en) * 2003-01-07 2004-07-08 Science Applications International Corporaton Vector space method for secure information sharing
EP1683298B1 (en) * 2003-11-03 2008-09-17 Koninklijke Philips Electronics N.V. Method and device for efficient multiparty multiplication
US20090197681A1 (en) 2008-01-31 2009-08-06 Microsoft Corporation System and method for targeted recommendations using social gaming networks
US8407286B2 (en) * 2008-05-15 2013-03-26 Yahoo! Inc. Method and apparatus for utilizing social network information for showing reviews
US8068426B2 (en) * 2008-05-29 2011-11-29 Massachusetts Institute Of Technology Feedback-based online network coding
US20100076850A1 (en) * 2008-09-22 2010-03-25 Rajesh Parekh Targeting Ads by Effectively Combining Behavioral Targeting and Social Networking
US8364713B2 (en) * 2009-01-20 2013-01-29 Titanium Fire Ltd. Personal data manager systems and methods
US8489515B2 (en) * 2009-05-08 2013-07-16 Comcast Interactive Media, LLC. Social network based recommendation method and system
US9460092B2 (en) * 2009-06-16 2016-10-04 Rovi Technologies Corporation Media asset recommendation service
US20110060738A1 (en) * 2009-09-08 2011-03-10 Apple Inc. Media item clustering based on similarity data
US8781901B2 (en) * 2009-12-04 2014-07-15 Telefonaktiebolaget L M Ericsson (Publ) System and methods for protecting the privacy of user information in a recommendation system
US20110246500A1 (en) * 2010-03-30 2011-10-06 Praphul Chandra Storing and querying of user feedback in a personal repository accessible to a personal computing device
US8812591B2 (en) * 2011-06-15 2014-08-19 Facebook, Inc. Social networking system data exchange
US9536268B2 (en) 2011-07-26 2017-01-03 F. David Serena Social network graph inference and aggregation with portability, protected shared content, and application programs spanning multiple social networks
EP2549423A1 (en) * 2011-07-22 2013-01-23 Axel Springer Digital TV Guide GmbH Automatic determination of the relevance of recommendations in a social network
US20130054481A1 (en) * 2011-08-23 2013-02-28 Infosys Limited System and method for sharing, analyzing and consolidating medical data in a social network
US20130097056A1 (en) * 2011-10-13 2013-04-18 Xerox Corporation Methods and systems for recommending services based on an electronic social media trust model
EP2590126A1 (en) * 2011-11-01 2013-05-08 Nederlandse Organisatie voor toegepast -natuurwetenschappelijk onderzoek TNO Recommender system for providing recommendations to groups of users
KR20160102573A (ko) 2011-12-19 2016-08-30 인텔 코포레이션 스마트 장치 지원 상거래
US9043250B2 (en) * 2012-01-10 2015-05-26 Telcordia Technologies, Inc. Privacy-preserving aggregated data mining
US10311403B2 (en) * 2012-06-04 2019-06-04 Apple Inc. Providing feedback via a social network from a media distribution platform
CN104620267A (zh) * 2012-06-21 2015-05-13 汤姆逊许可公司 用于推断用户人口统计的方法和装置
WO2014023432A1 (en) * 2012-08-09 2014-02-13 Livestudies Srl Apparatus and method for a collaborative environment using distributed touch sensitive surfaces
CN102932100B (zh) * 2012-10-16 2016-09-21 四川电力科学研究院 一种并行加扰的方法及装置
CN105637798A (zh) * 2013-03-04 2016-06-01 汤姆逊许可公司 用于隐私保护计数的方法和***
US10733194B2 (en) * 2013-03-08 2020-08-04 Warren Young Systems and methods for providing a review platform
US20140288999A1 (en) 2013-03-12 2014-09-25 Correlor Technologies Ltd Social character recognition (scr) system
US20150066689A1 (en) * 2013-08-27 2015-03-05 Jon Anthony ASTORE Method and system for providing social media ecosystem compensation
WO2015061696A1 (en) * 2013-10-25 2015-04-30 Peep Mobile Digital Social event system
CN103713938A (zh) * 2013-12-17 2014-04-09 江苏名通信息科技有限公司 虚拟化环境下基于OpenMP的多GPU协同计算方法
CN103995823A (zh) 2014-03-25 2014-08-20 南京邮电大学 一种基于社交网络的信息推荐方法
US10235403B2 (en) * 2014-07-08 2019-03-19 Palo Alto Research Center Incorporated Parallel collective matrix factorization framework for big data
US10360392B2 (en) * 2014-08-01 2019-07-23 National Ict Australia Limited Generating shares of secret data
CN104156436B (zh) 2014-08-13 2017-05-10 福州大学 一种社交云媒体协同过滤推荐方法
US9483311B2 (en) * 2014-09-15 2016-11-01 International Business Machines Corporation Logical data shuffling
WO2016074094A1 (en) * 2014-11-14 2016-05-19 Marin Litoiu Systems and methods of controlled sharing of big data
US10289733B2 (en) * 2014-12-22 2019-05-14 Rovi Guides, Inc. Systems and methods for filtering techniques using metadata and usage data analysis
US9706180B2 (en) * 2015-03-23 2017-07-11 Panasonic Intellectual Property Management Co., Ltd. Projection display apparatus
US10341701B2 (en) * 2015-04-21 2019-07-02 Edge2020 LLC Clustering and adjudication to determine a recommendation of multimedia content
CN104966125B (zh) 2015-05-06 2018-07-24 同济大学 一种社交网络的物品评分及推荐方法
US20160381158A1 (en) * 2015-06-29 2016-12-29 Google Inc. Automatic Invitation Delivery System
JP2017034531A (ja) * 2015-08-04 2017-02-09 富士通株式会社 動画像符号化装置及び動画像符号化方法
CN105550211A (zh) 2015-12-03 2016-05-04 云南大学 一种融合社交网络和项目内容的协同推荐***
IL243026A0 (en) * 2015-12-10 2016-02-29 Rokach Lior Designing recommendation systems based on hidden context
WO2017105440A1 (en) * 2015-12-16 2017-06-22 Thomson Licensing Methods and apparatuses for processing biometric responses to multimedia content
CN105677701A (zh) * 2015-12-24 2016-06-15 苏州大学 一种基于不经意传输的社会化推荐方法
US11367149B2 (en) * 2016-01-15 2022-06-21 Carnegie Mellon University Pattern identification in time-series social media data, and output-dynamics engineering for a dynamic system having one or more multi-scale time-series data sets
US10708234B2 (en) * 2016-03-24 2020-07-07 International Business Machines Corporation System, method, and recording medium for preventing back propogation of data protection
RU2613530C1 (ru) 2016-04-19 2017-03-16 Игорь Юрьевич Скворцов Самонастраивающаяся интерактивная система, способ и считываемый компьютером носитель данных обмена комментариями между пользователями
WO2017200510A1 (ru) 2016-05-18 2017-11-23 Евгэн Мыхайловыч ВЫСОЦЬКЫЙ Обработка персональных и совокупных предпочтений пользователей (варианты)
US20180218426A1 (en) * 2017-01-27 2018-08-02 Xerox Corporation Systems and methods for privacy preserving recommendation of items
RU2649797C1 (ru) 2017-06-14 2018-04-04 Общество С Ограниченной Ответственностью "Центр Разработки И Внедрения Инновационных Технологий" Интерактивная система, способ и считываемый компьютером носитель данных представления рекламного контента
US10521225B2 (en) * 2017-06-29 2019-12-31 Oracle International Corporation Matrix multiplication at memory bandwidth
CN111095332B (zh) * 2017-07-06 2023-12-08 罗伯特·博世有限公司 用于保护隐私的社交媒体广告的方法和***
RU2666336C1 (ru) 2017-08-01 2018-09-06 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для рекомендации медиаобъектов
CN108228833B (zh) 2018-01-04 2021-08-03 浙江大学 一种利用用户倾向性学习解决社区项目推荐任务的方法
CN108418810A (zh) * 2018-02-08 2018-08-17 中国人民解放军国防科技大学 一种基于Hadamard矩阵的秘密分享方法
CN108596774B (zh) * 2018-04-24 2021-10-01 山东师范大学 基于深层次网络嵌入特征的社会化信息推荐算法及***
BR112019008135B1 (pt) 2018-10-17 2022-01-04 Advanced New Technologies Co., Ltd. Método implementado por computador, meio legível por computador e sistema implementado por computador
JP7109501B2 (ja) 2020-06-05 2022-07-29 東芝ライフスタイル株式会社 冷蔵庫

Also Published As

Publication number Publication date
AU2019257397A1 (en) 2020-05-07
CA3040669A1 (en) 2020-04-17
EP3665583A1 (en) 2020-06-17
MX2019004664A (es) 2022-05-12
US10789377B2 (en) 2020-09-29
ES2836207T3 (es) 2021-06-24
WO2020077959A1 (en) 2020-04-23
CN110546642A (zh) 2019-12-06
KR102150816B1 (ko) 2020-09-02
BR112019008135B1 (pt) 2022-01-04
RU2728522C1 (ru) 2020-07-30
WO2020077573A1 (en) 2020-04-23
ZA201902550B (en) 2020-12-23
CA3059610A1 (en) 2020-04-17
AU2019257397B2 (en) 2020-10-01
US20200125745A1 (en) 2020-04-23
PL3659292T3 (pl) 2021-07-05
EP3665583A4 (en) 2020-06-17
EP3659292A4 (en) 2020-06-03
AU2018353923B2 (en) 2021-05-06
SG11201903587TA (en) 2020-05-28
US11386212B2 (en) 2022-07-12
AU2018353923A1 (en) 2020-05-07
JP2021508064A (ja) 2021-02-25
EP3659292A1 (en) 2020-06-03
KR20200045441A (ko) 2020-05-04
EP3659292B8 (en) 2020-12-02
SG11201910155SA (en) 2020-05-28
BR112019008135A2 (pt) 2021-05-18
CN110366722A (zh) 2019-10-22
US20200320605A1 (en) 2020-10-08
PH12019500891A1 (en) 2019-06-17
CN110546642B (zh) 2023-06-02
EP3659292B1 (en) 2020-09-30

Similar Documents

Publication Publication Date Title
JP6803980B1 (ja) 信頼されたイニシャライザを用いない秘密分散
JP6799151B1 (ja) 信頼できるイニシャライザを用いた秘密共有
US9947037B2 (en) Software recommendation services for targeted user groups
US11100116B2 (en) Recommendation systems implementing separated attention on like and dislike items for personalized ranking
US10748102B2 (en) Just in time learning driven by point of sale or other data and metrics
JP7229148B2 (ja) プライバシーを保護しながら分散された顧客データ上で機械学習すること
CN117616436A (zh) 机器学习模型的联合训练
WO2021224871A1 (en) Resource scoring and recommendation system
US11188968B2 (en) Component based review system
US20230229793A1 (en) Intelligent estimation of onboarding times for managed services

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200703

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190611

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201030

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20201110

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201201

R150 Certificate of patent or registration of utility model

Ref document number: 6803980

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250