JP2022549037A - 特徴を共有するイベントを識別するためのシステムおよび方法 - Google Patents

特徴を共有するイベントを識別するためのシステムおよび方法 Download PDF

Info

Publication number
JP2022549037A
JP2022549037A JP2021541107A JP2021541107A JP2022549037A JP 2022549037 A JP2022549037 A JP 2022549037A JP 2021541107 A JP2021541107 A JP 2021541107A JP 2021541107 A JP2021541107 A JP 2021541107A JP 2022549037 A JP2022549037 A JP 2022549037A
Authority
JP
Japan
Prior art keywords
identifier
interaction
previous interactions
previous
interactions
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.)
Granted
Application number
JP2021541107A
Other languages
English (en)
Other versions
JP7304954B2 (ja
Inventor
リャンシャオ・チウ
サトヴィック・チョーハン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2022549037A publication Critical patent/JP2022549037A/ja
Application granted granted Critical
Publication of JP7304954B2 publication Critical patent/JP7304954B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24573Query processing with adaptation to user needs using data annotations, e.g. user-defined metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • G06F16/24556Aggregation; Duplicate elimination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3075Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • 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/901Indexing; Data structures therefor; Storage structures
    • 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/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • 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/9535Search customisation based on user profiles and personalisation
    • 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/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9558Details of hyperlinks; Management of linked annotations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Computational Linguistics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Fuzzy Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

デバイスから、第1の識別子を含むイベントに関連付けられた対話データを受信するステップと、第1の識別子に関連付けられた第2の識別子を識別するステップと、第1の識別子または第2の識別子に関連付けられた1つまたは複数の以前の対話を識別するステップと、識別された1つまたは複数の以前の対話に基づいて対話データに注釈を付けるステップであって、注釈が、第1の識別子に関連付けられた以前の対話または第2の識別子に関連付けられた以前の対話に関する優先度を示す、ステップと、イベントが以前の対話のうちの1つまたは複数に関連付けられているという指示を送信するステップであって、1つまたは複数の以前の対話が、注釈によって示される優先度に基づいて決定される、ステップとを含む方法。

Description

クライアントデバイスにわたるイベントなど、イベント間の関連付け(例えば、第1のデバイス上の第1のコンテンツアイテムとの第1の対話と、第2のデバイス上の第2のコンテンツとの第2の対話との間の関連付け)を決定することができることは、分析システムにとって有用である可能性がある。そうするために、関連付けを決定するために、様々な対話からの識別子が比較され得る。例えば、第1の識別子を有する対話は、同様に第1の識別子を有する以前の対話に関連すると決定され得る。しかしながら、対話は、対話間の関連付けの重複につながるいくつかの異なる識別子によって識別される場合がある。例えば、システムは、第1の対話の第1または第2の識別子に一致する対話を検索する場合があり、第2の対話が第1および第2の識別子に関連するので、第2の対話を2回識別し、それによって重複につながる場合がある。
本開示の一実装形態は、デバイスから、第1の識別子を含むイベントに関連付けられた対話データを受信するステップと、第1の識別子に関連付けられた第2の識別子を識別するステップと、第1の識別子または第2の識別子に関連付けられた1つまたは複数の以前の対話を識別するステップと、識別された1つまたは複数の以前の対話に基づいて対話データに注釈を付けるステップであって、注釈が、第1の識別子に関連付けられた以前の対話または第2の識別子に関連付けられた以前の対話に関する優先度を示す、ステップと、イベントが以前の対話のうちの1つまたは複数に関連付けられているという指示を送信するステップであって、1つまたは複数の以前の対話が、注釈によって示される優先度に基づいて決定される、ステップとを含む方法に関する。
いくつかの実装形態において、1つまたは複数の以前の対話のうちの少なくとも2つは単一の以前のイベントに関連付けられ、少なくとも2つの以前の対話のうちの第1のものが第1の識別子に関連付けられ、少なくとも2つの以前の対話のうちの第2のものが第2の識別子に関連付けられ、少なくとも2つの以前の対話のうちの第1および第2のものが第2のデバイスに関連付けられる。いくつかの実装形態において、方法は、第1の識別子に関連付けられた1つまたは複数の他の識別子を識別するステップをさらに含み、第1の識別子または第2の識別子に関連付けられた1つまたは複数の以前の対話を識別するステップが、第1の識別子、第2の識別子、または1つもしくは複数の他の識別子のうちの1つに関連付けられた1つまたは複数の以前の対話を識別するステップをさらに含み、注釈が、第1の識別子、第2の識別子、または1つもしくは複数の他の識別子のうちの1つに関連付けられた以前の対話に関する優先度を示す。いくつかの実装形態において、対話データに注釈を付けるステップは、1つまたは複数の以前の対話が第1の識別子に関連付けられた対話を含むかどうかを判定するステップと、1つまたは複数の以前の対話が第1の識別子に関連付けられた対話を含むとの判定に応答して、第1の識別子に関連付けられた以前の対話を優先するように対話データに注釈を付けるステップと、1つまたは複数の以前の対話が第1の識別子に関連付けられた対話を含まないとの判定に応答して、1つまたは複数の以前の対話が第2の識別子に関連付けられた対話を含むかどうかを判定するステップと、1つまたは複数の以前の対話が第2の識別子に関連付けられた対話を含むとの判定に応答して、第2の識別子に関連付けられた以前の対話を優先するように対話データに注釈を付けるステップとを含む。
いくつかの実装形態において、方法は、イベントに関連付けられた以前の対話を識別するために、以前の対話を分析するステップをさらに含み、以前の対話は注釈によって示される識別子を含む。いくつかの実装形態において、以前の対話は第1のデバイスに関連付けられ、イベントは第2のデバイスに関連付けられる。いくつかの実装形態において、方法は、対話データと注釈とをコンピュータストレージ内に記憶するステップをさらに含み、第1または第2の識別子に関連付けられた以前の対話の将来の分析は、分析を注釈によって示される識別子に関連付けられた対話に限定することによって、検索空間を低減する。いくつかの実装形態において、第1の識別子はデバイスに関連付けられ、第2の識別子はアカウントに関連付けられる。いくつかの実装形態において、第1の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データは、第2の識別子を有する以前の対話に関連付けることができず、第2の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データは、第1の識別子を有する以前の対話に関連付けることができない。いくつかの実装形態において、方法は、イベントに関連する総統計(aggregate statistics)を決定するために、注釈を使用して以前の対話を分析するステップをさらに含み、総統計は、イベントと特徴を共有する以前の対話のカウントを含む。
本開示の別の実装形態は、特徴を共有するイベントを識別するためのシステムに関し、システムは、1つまたは複数のプロセッサと1つまたは複数のメモリとを含む1つまたは複数の処理回路を含み、1つまたは複数のメモリには、1つまたは複数のプロセッサによって実行されると、1つまたは複数の処理回路に、デバイスから、第1の識別子を含むイベントに関連付けられた対話データを受信する動作と、第1の識別子に関連付けられた第2の識別子を識別する動作と、第1の識別子または第2の識別子に関連付けられた1つまたは複数の以前の対話を識別する動作と、識別された1つまたは複数の以前の対話に基づいて、対話データに注釈を付ける動作であって、注釈が、第1の識別子に関連付けられた以前の対話または第2の識別子に関連付けられた以前の対話に関する優先度を示す、動作と、イベントが以前の対話のうちの1つまたは複数に関連付けられているという指示を送信する動作であって、1つまたは複数の以前の対話が、注釈によって示される優先度に基づいて決定される、動作とを実行させる命令が記憶されている。
いくつかの実装形態において、1つまたは複数の以前の対話のうちの少なくとも2つは単一の以前のイベントに関連付けられ、少なくとも2つの以前の対話のうちの第1のものが第1の識別子に関連付けられ、少なくとも2つの以前の対話のうちの第2のものが第2の識別子に関連付けられ、少なくとも2つの以前の対話のうちの第1および第2のものが第2のデバイスに関連付けられる。いくつかの実装形態において、システムは、第1の識別子に関連付けられた1つまたは複数の他の識別子を識別するようにさらに構成され、第1の識別子または第2の識別子に関連付けられた1つまたは複数の以前の対話を識別する動作が、第1の識別子、第2の識別子、または1つもしくは複数の他の識別子のうちの1つに関連付けられた1つまたは複数の以前の対話を識別する動作をさらに含み、注釈が、第1の識別子、第2の識別子、または1つもしくは複数の他の識別子のうちの1つに関連付けられた以前の対話に関する優先度を示す。いくつかの実装形態において、対話データに注釈を付ける動作は、1つまたは複数の以前の対話が第1の識別子に関連付けられた対話を含むかどうかを判定する動作と、1つまたは複数の以前の対話が第1の識別子に関連付けられた対話を含むとの判定に応答して、第1の識別子に関連付けられた以前の対話を優先するように対話データに注釈を付ける動作と、1つまたは複数の以前の対話が第1の識別子に関連付けられた対話を含まないとの判定に応答して、1つまたは複数の以前の対話が第2の識別子に関連付けられた対話を含むかどうかを判定する動作と、1つまたは複数の以前の対話が第2の識別子に関連付けられた対話を含むとの判定に応答して、第2の識別子に関連付けられた以前の対話を優先するように対話データに注釈を付ける動作とを含む。
いくつかの実装形態において、システムは、イベントに関連付けられた以前の対話を識別するために、以前の対話を分析するようにさらに構成され、以前の対話は注釈によって示される識別子を含む。いくつかの実装形態において、以前の対話は第1のデバイスに関連付けられ、イベントは第2のデバイスに関連付けられる。いくつかの実装形態において、システムは、対話データと注釈とをコンピュータストレージ内に記憶するようにさらに構成され、第1または第2の識別子に関連付けられた以前の対話の将来の分析は、分析を注釈によって示される識別子に関連付けられた対話に限定することによって、検索空間を低減する。いくつかの実装形態において、第1の識別子はデバイスに関連付けられ、第2の識別子はアカウントに関連付けられる。いくつかの実装形態において、第1の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データは、第2の識別子を有する以前の対話に関連付けることができず、第2の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データは、第1の識別子を有する以前の対話に関連付けることができない。いくつかの実装形態において、システムは、イベントに関連する総統計を決定するために、注釈を使用して以前の対話を分析するようにさらに構成され、総統計は、イベントと特徴を共有する以前の対話のカウントを含む。
本開示の別の実装形態は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、デバイスから、第1の識別子を含むイベントに関連付けられた対話データを受信する動作と、第1の識別子に関連付けられた第2の識別子を識別する動作と、第1の識別子または第2の識別子に関連付けられた1つまたは複数の以前の対話を識別する動作と、識別された1つまたは複数の以前の対話に基づいて、対話データに注釈を付ける動作であって、注釈が、第1の識別子に関連付けられた以前の対話または第2の識別子に関連付けられた以前の対話に関する優先度を示す、動作と、イベントが以前の対話のうちの1つまたは複数に関連付けられているという指示を送信する動作であって、1つまたは複数の以前の対話が、注釈によって示される優先度に基づいて決定される、動作とを実行させる命令が記憶されている1つまたは複数の非一時的コンピュータ可読媒体に関する。
いくつかの実装形態において、1つまたは複数の以前の対話のうちの少なくとも2つは単一の以前のイベントに関連付けられ、少なくとも2つの以前の対話のうちの第1のものが第1の識別子に関連付けられ、少なくとも2つの以前の対話のうちの第2のものが第2の識別子に関連付けられ、少なくとも2つの以前の対話のうちの第1および第2のものが第2のデバイスに関連付けられる。いくつかの実装形態において、命令は、第1の識別子に関連付けられた1つまたは複数の他の識別子を識別するようにさらに構成され、第1の識別子または第2の識別子に関連付けられた1つまたは複数の以前の対話を識別する動作が、第1の識別子、第2の識別子、または1つもしくは複数の他の識別子のうちの1つに関連付けられた1つまたは複数の以前の対話を識別する動作をさらに含み、注釈が、第1の識別子、第2の識別子、または1つもしくは複数の他の識別子のうちの1つに関連付けられた以前の対話に関する優先度を示す。いくつかの実装形態において、対話データに注釈を付ける動作は、1つまたは複数の以前の対話が第1の識別子に関連付けられた対話を含むかどうかを判定する動作と、1つまたは複数の以前の対話が第1の識別子に関連付けられた対話を含むとの判定に応答して、第1の識別子に関連付けられた以前の対話を優先するように対話データに注釈を付ける動作と、1つまたは複数の以前の対話が第1の識別子に関連付けられた対話を含まないとの判定に応答して、1つまたは複数の以前の対話が第2の識別子に関連付けられた対話を含むかどうかを判定する動作と、1つまたは複数の以前の対話が第2の識別子に関連付けられた対話を含むとの判定に応答して、第2の識別子に関連付けられた以前の対話を優先するように対話データに注釈を付ける動作とを含む。
いくつかの実装形態において、命令は、イベントに関連付けられた以前の対話を識別するために、以前の対話を分析するようにさらに構成され、以前の対話は注釈によって示される識別子を含む。いくつかの実装形態において、以前の対話は第1のデバイスに関連付けられ、イベントは第2のデバイスに関連付けられる。いくつかの実装形態において、命令は、対話データと注釈とをコンピュータストレージ内に記憶するようにさらに構成され、第1または第2の識別子に関連付けられた以前の対話の将来の分析は、分析を注釈によって示される識別子に関連付けられた対話に限定することによって、検索空間を低減する。いくつかの実装形態において、第1の識別子はデバイスに関連付けられ、第2の識別子はアカウントに関連付けられる。いくつかの実装形態において、第1の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データは、第2の識別子を有する以前の対話に関連付けることができず、第2の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データは、第1の識別子を有する以前の対話に関連付けることができない。いくつかの実装形態において、命令は、イベントに関連する総統計を決定するために、注釈を使用して以前の対話を分析するようにさらに構成され、総統計は、イベントと特徴を共有する以前の対話のカウントを含む。
様々な態様および実装形態は、必要に応じて組み合わされ得る。
例示的な実装形態による、異なるデバイスからのイベント間の関連付けを決定することができない可能性があるシステムを示す図である。 例示的な実装形態による、異なるデバイスからのイベント間の関連付けを決定することができるが、結果を重複させる可能性がある図1Aのシステムの修正形態を示す図である。 例示的な実装形態による、ネットワークを介して対話する様々なエンティティを示す図である。 実装形態による、データ転送および相関のためのアーキテクチャを示す図である。 例示的な実装形態による、図3のアーキテクチャを使用してイベントを分析および重複排除する方法を示すフロー図である。 例示的な実装形態による、図3のアーキテクチャを使用してイベント注釈を決定する方法を示すフロー図である。 例示的な実装形態による、図3のアーキテクチャの可能な実装形態を示すフロー図である。 例示的な実装形態による、図3のアーキテクチャの別の可能な実装形態を示すフロー図である。 例示的な実装形態による、図3のアーキテクチャの別の可能な実装形態を示すフロー図である。 例示的な実装形態による、コンピューティングシステムのブロック図である。
以下は、特徴を共有するイベントを識別するための方法、装置、およびシステムに関する様々な概念、およびそれら実装形態についてのより詳細な説明である。説明されている概念は、任意の特定の実装方法に限定されないので、上記で紹介され、以下でより詳細に論じられている様々な概念は、多くの方法のいずれかにおいて実装され得る。
多くのドメインにおいて、モバイルデバイスなどの様々なデバイスとの対話を測定することが望ましい場合がある。例えば、モバイルアプリケーションの開発者は、モバイルアプリケーションにおけるコンバージョンにつながる一連のアクションを知りたい場合がある。追加の例として、開発者は、アプリケーションの誤動作(例えば、クラッシュなど)につながる一連のアクションを知りたい場合がある。様々な実装形態において、モバイルデバイスとの対話を測定することは、デバイスにわたるイベント間の関連付けを決定することを含む。例えば、第1のデバイスにおけるコンテンツアイテムとの対話と、第2のデバイスにおけるその後のコンバージョンとの間の関連付けを決定することが望ましい場合がある。
本開示のシステムおよび方法は、一般に、限定はしないが、デバイスにわたるイベントを含む、イベント間の関連付けを決定することに関する。より具体的には、本開示のシステムおよび方法は、イベントデータを重複排除し、対話測定値を正確に決定するための独自のコンピュータアーキテクチャ方法論に関する。
対話測定値を決定することは、対話データ(例えば、イベントに関連するデータ)を収集することと、対話データを以前の対話データと相関させることとを含む。例えば、モバイルデバイスは、ユーザが第1のコンテンツアイテムと対話し、次いで新しいモバイルアプリケーションをダウンロードしたときに指示を送信し得、分析システムは、ダウンロードを第1のコンテンツアイテムとのユーザ対話と相関させ得る。対話データは、以前の対話との相関化を容易にするために、識別子とともに送信され得る。例えば、第1のモバイルアプリケーションによって生成された対話データは、識別子(例えば、共有された識別子など)を使用して以前の対話に関連付けられ得る。しかしながら、異なるデバイスからの対話は、異なる識別子を有する場合がある。したがって、デバイスにわたる対話を相関させることは、困難である場合がある。例えば、第1のデバイスを使用するユーザは、第1のデバイスに第1の識別子(例えば、デバイス識別子)を有する第1の対話データを生成させるコンテンツアイテムと対話する場合があり、第2のデバイスを使用する同じユーザは、第2のデバイスに第2の識別子(例えば、デバイス識別子)を有する第2の対話データを生成させるコンテンツアイテムに関連付けられたトランザクションを完了する場合があり、分析システムは、第1の識別子と第2の識別子との間の相違により、トランザクションを対話と相関させることができない場合がある。
したがって、デバイスにわたる対話データなどの対話データの相関化を容易にするシステムが必要である。1つの解決策は、第1のタイプの識別子(例えば、デバイス識別子)に関連付けられ得る第2のタイプの識別子(例えば、アカウント識別子)を利用する。例えば、第1のデバイスは、第1のタイプの識別子(例えば、デバイス識別子)を有する第1の対話データを生成し得、第2のデバイスは、第2のタイプの識別子(例えば、アカウント識別子)を有する第2の対話データを生成し得、分析システムは、第2の識別子を使用して第1の識別子を検索し、第1のタイプの識別子(例えば、デバイス識別子)と第2のタイプの識別子(例えば、アカウント識別子)との間の関連付けを使用して、第2の対話を第1の対話と相関させ得る。様々な実装形態において、デバイスは、利用可能な識別子を使用して対話データを生成する。例えば、ログインアカウントを有する第1のデバイスは、第1のタイプの識別子(例えば、デバイス識別子)と第2のタイプの識別子(例えば、アカウント識別子)とを有する対話データを生成し得るが、ログインアカウントを持たない第2のデバイスは、第1のタイプの識別子(例えば、デバイス識別子)を有する対話データを生成し得る。様々な実装形態において、第1のタイプの識別子を有する対話データのコピーが、第2のタイプの識別子を有する対話データのコピーとは別に記憶される。しかしながら、以前の対話は、複数の識別子および/または複数のタイプの識別子(例えば、デバイス識別子およびアカウント識別子など)を使用して表され得るので、イベントに関連付けられた以前の対話を検索するときに、以前の対話の重複するコピーを識別することが可能である。例えば、ユーザは、モバイルデバイスにおいてコンバージョンを完了する場合があり、モバイルデバイスは、2つのタイプの識別子を有する対話データを分析システムに送信する場合があり、分析システムは、2つのタイプの識別子のうちの少なくとも1つを有する以前の対話についてデータベース(または複数のデータベース)を検索し、2つのタイプの識別子の各々について1回ずつ、単一の以前の対話を2回識別し、それによって相関する以前の対話の数を過剰に報告する場合がある。したがって、モバイルデバイスの対話を以前の対話と正確に相関させる能力を維持するために、モバイルデバイスからの対話測定値を重複排除するための新しいアーキテクチャが必要とされる。
ここで図1Aに目を向けると、例示的な実装形態による、単一のデバイスからの対話をアトリビュートするための典型的なシステム10Aが示されている。様々な実装形態において、システム10Aは、デバイスにわたる対話を相関させることができない。例えば、ステップ20において、第1のコンピューティングデバイス12は、第1のイベントを検出し得る。第1のイベントは、コンテンツアイテムとの対話を含み得る。ステップ22において、第1のコンピューティングデバイス12は、第1のタイプの識別子(例えば、デバイス識別子)を含む対話データを生成し得、対話データを記憶のために第1のデータベース14Aに送信し得る。ステップ24において、第2のコンピューティングデバイス16は、第2のイベントに関連付けられた第1のタイプの識別子(例えば、デバイス識別子)を含む対話データを生成し、アトリビューションのために分析システム18に送信し得る。様々な実装形態において、第1のコンピューティングデバイス12からの第1のタイプの識別子に関連付けられた特定の識別子は、第2のコンピューティングデバイス16からの第1のタイプの識別子に関連付けられた特定の識別子とは異なる。例えば、第1のコンピューティングデバイス12および第2のコンピューティングデバイス16は、両方とも、デバイス識別子を含む対話データを生成し得るが、第1のコンピューティングデバイスに関連付けられたデバイス識別子は、第2のコンピューティングデバイス16に関連付けられたデバイス識別子とは異なり得る。様々な実装形態において、第2のイベントは、第1のイベントと相関される。ステップ26において、分析システム18は、第2のイベントに関連する以前の対話について、第1のデータベース14Aを検索し得る。様々な実装形態において、ステップ26は、第2のコンピューティングデバイス16からの識別子を使用して第1のデータベース14Aを検索することを含む。ステップ28において、第1のデータベース14Aは、結果を分析システム18に返し得る。様々な実装形態において、(例えば、第1のコンピューティングデバイス16からのデバイス識別子は、第1のコンピューティングデバイス12からのデバイス識別子とは異なり、したがって、第2のコンピューティングデバイス16からの識別子は、第1のコンピューティングデバイス12からの識別子に関連する以前の対話を見つけるために使用することができないので)結果は、第1のコンピューティングデバイス12に関連するいかなる以前の対話も含まない。したがって、システム10Aは、デバイスにわたる対話を相関させることができない場合がある。
対話のクロスデバイス相関化を容易にするために、システム10Aは、別のタイプの識別子(例えば、アカウント識別子)を含むように修正され得る。図1Bを参照すると、システム10Bは、デバイスにわたる対話を相関させるように構成されたシステム10Aの修正されたバージョンであり得る。ステップ40において、第1のコンピューティングデバイス12は、第1のイベントを検出し得る。第1のイベントは、コンテンツアイテムとの対話を含み得る。ステップ42において、第1のコンピューティングデバイス12は、第1のタイプの識別子(例えば、デバイス識別子)と第2のタイプの識別子(例えば、アカウント識別子)とを含む対話データを生成し得、対話データを記憶のために第1のデータベース14Aおよび第2のデータベース14Bに送信し得る。様々な実装形態において、第1のコンピューティングデバイス12は、対話データの2つのコピー、第1のタイプの識別子を含む第1のコピーと、第2のタイプの識別子を含む第2のコピーとを生成する。いくつかの実装形態において、第1および第2のコピーは、互いに別々に記憶され得る。例えば、第1のコピーは、第1のデータベース14A内に記憶され得、第2のコピーは、第2のデータベース14B内に記憶され得る。ステップ44において、第2のコンピューティングデバイス16は、第2のイベントに関連する第1のタイプの識別子(例えば、デバイス識別子)と第2のタイプの識別子(例えば、アカウント識別子)とを含む対話データを生成し、アトリビューションのために分析システム18に送信し得る。様々な実装形態において、第2のイベントは、第1のイベントと相関される。ステップ46において、分析システム18は、第2のイベントに関連する以前の対話について第1のデータベース14Aおよび第2のデータベース14Bを検索し得る。様々な実装形態において、ステップ46は、第1のタイプの識別子を使用して第1のデータベース14Aを検索することと、第2のタイプの識別子を使用して第2のデータベース14Bを検索することとを含む。ステップ48において、第1のデータベース14Aおよび第2のデータベース14Bは、結果を分析システム18に返し得る。第1のデータベース14Aは、(例えば、第1のコンピューティングデバイス12からの第1のタイプの識別子が第2のコンピューティングデバイス16からの第1のタイプの識別子とは異なるので)第2のイベントに関連する第1のコンピューティングデバイス12からの以前の対話を返すことができない場合がある。しかしながら、第2のデータベース14Bは、(例えば、第1のコンピューティングデバイス12からの第2のタイプの識別子が第2のコンピューティングデバイス16からの第2の識別子と同じであるので)第2のイベントに関連する第1のコンピューティングデバイス12からの以前の対話を返すことができる場合がある。したがって、システム10Bは、対話のクロスデバイス相関化を容易にすることによって、システム10Aを改善し得る。しかしながら、システム10Bは、相関結果を重複させる場合がある。例えば、第2のコンピューティングデバイス16を使用して、ユーザは、第2のイベントに関連するコンテンツアイテムを以前に閲覧している場合があり、それによって、(例えば、第1のイベントからの対話データがステップ40~42において記憶されたのと同様のプロセスによって)閲覧に関連する対話データを第1のデータベース14Aおよび第2のデータベース14Bに記憶させる場合がある。したがって、ステップ48の間、分析システムは、閲覧に関連する対話データの重複コピー(例えば、第1のタイプの識別子を含む第1のコピーおよび第2のタイプの識別子を含む第2のコピー)を受信する場合がある。結果として、ステップ50において、分析システム18は、分析結果を誤って報告する場合がある(例えば、相関する以前の対話の数を過剰に報告する、重複する以前の対話を誤って識別するなど)。したがって、イベントデータを重複排除し、対話測定値を正確に決定するシステムが必要である。
本開示の態様は、改善されたデータ報告および分析経路およびコンピュータアーキテクチャを提供する。経路およびアーキテクチャは、堅牢かつ正確な方法でモバイルデバイスイベントデータを分析および報告するために使用され得る。
重複排除されたクロスデバイス対話測定を容易にするために、本開示のシステムおよび方法は、イベントデータの注釈付けを容易にする分析および重複排除システムを導入する。本明細書で使用されるxの注釈付けまたはxに注釈を付けるという用語は、メタデータをxに追加することを意味すると解釈され得る。非限定的な例示的な実装形態は、以下の通りであり、第1のデバイス(例えば、デスクトップコンピュータなど)を使用するユーザは、第1のコンテンツアイテムを閲覧し得る。第1のコンピューティングシステムは、ユーザが第1のコンテンツアイテムを閲覧したことを登録し、第1の対話データの第1のコピーを第1のタイプの識別子とともに第1のデータベース内に保存し、第1の対話データの第2のコピーを第2のタイプの識別子とともに第2のデータベース内に保存し得る。モバイルデバイスを使用するユーザは、次いで、第2のコンテンツアイテムと対話し得、それによって、モバイルデバイスに第2の対話に関連するイベントデータを分析および重複排除システムに送信させる。イベントデータは、第1のタイプの識別子(例えば、デバイス識別子)と第2のタイプの識別子(例えば、アカウント識別子)とを含み得る。分析および重複排除システムは、第1のタイプの識別子または第2のタイプの識別子を有する以前の対話について検索し得、結果に基づいてイベントデータに注釈を付け得る。例えば、分析および重複排除システムは、第1のタイプの識別子を有する第1のデータベース内の対話の識別に応答して、第1のタイプの識別子に関連するコンバージョンに対して適格であり、第2のタイプの識別子に関連するコンバージョンに対して適格ではないとしてイベントデータに注釈を付け得る。分析および重複排除システムは、重複排除された結果を決定するために注釈に基づいて以前の会話をフィルタリングすると同時に、イベントデータに関連する以前の対話を識別するために以前の対話データを分析し得る。
ここで図2を参照すると、例示的な実装形態による、モバイルデバイスからのイベントデータを収集および分析するためのシステム200が示されている。システム200は、クライアントデバイス110と、分析および重複排除システム202とを含み、分析および重複排除システム202は、第1のデータ処理システム300と、第2のデータ処理システム400と、第3のデータ処理システム500とを有する。様々な実装形態において、システム200の構成要素は、ネットワーク160を介して通信する。ネットワーク160は、インターネット、ローカル、ワイド、メトロ、もしくは他のエリアネットワーク、イントラネット、衛星ネットワーク、音声もしくはデータ携帯電話通信ネットワークなどの他のコンピュータネットワーク、それらの組合せ、または任意の他のタイプの電子通信ネットワークなどのコンピュータネットワークを含み得る。ネットワーク160は、ディスプレイネットワーク(例えば、コンテンツ配置もしくは検索エンジン結果システムに関連する、またはコンテンツアイテム配置キャンペーンの一部としてサードパーティコンテンツアイテムを含む資格がある、インターネット上で利用可能な情報リソースのサブセット)を含むかまたは構成し得る。様々な実装形態において、ネットワーク160は、システム200の構成要素間の安全な通信を容易にする。非限定的な例として、ネットワーク160は、トランスポート層セキュリティ(TLS)、セキュアソケット層(SSL)、ハイパーテキスト転送プロトコルセキュア(HTTPS)、および/または任意の他のセキュア通信プロトコルを実装し得る。
クライアントデバイス110は、モバイルコンピューティングデバイス、スマートフォン、タブレット、またはコンテンツ(例えば、ウェブページ、モバイルアプリケーションなど)の受信、表示、および対話を容易にするように構成された任意の他のデバイスであり得る。クライアントデバイス110は、オンラインコンテンツを受信および表示し、オンラインコンテンツとのユーザ対話を受信するためのアプリケーション112を含み得る。例えば、アプリケーション112は、ウェブブラウザであり得る。追加的または代替的に、アプリケーション112は、特定の商人に関連付けられたモバイルアプリケーションであり得る。
様々な実装形態において、アプリケーション112は、オンラインコンテンツを受信するためにコンテンツ発行者と対話する。例えば、アプリケーション112は、コンテンツ発行者から情報リソースを受信し得る。情報リソースは、ウェブページまたは他のオンラインドキュメントなどのウェブベースのコンテンツアイテムを含み得る。情報リソースは、アプリケーション112によって解釈されると、アプリケーション112に対話型ウェブページなどのグラフィカルユーザインターフェースをユーザに対して表示させる命令(例えば、スクリプト、実行可能コードなど)を含み得る。
アプリケーション112は、イベント回路122と、バンドリング回路124と、報告回路126とを有するソフトウェア開発キット120を含むように示されている。ソフトウェア開発キット(SDK)120は、パッケージ内に含まれるソフトウェア開発ツールの集合体を含み得る。SDK120は、アプリケーションプログラミングインターフェース(API)を含み得る。いくつかの実装形態において、SDK120は、特定のシステムソフトウェア(例えば、iOS、Androidなど)とインターフェースする再利用可能な関数を有する1つまたは複数のライブラリを含む。SDK120は、アプリケーション112への機能の組み込みを容易にし得る。例えば、開発者は、特定のタイプのイベントがアプリケーション112において発生するときはいつでも、イベントデータを自動的に送信するために、SDK120を使用し得る。さらなる例として、SDK120は、デバイス分析を収集および報告するように構成された再利用可能な関数を含み得、開発者は、アプリケーション112の特定のアクション中に再利用可能な関数を呼び出させるために、再利用可能な関数をアプリケーション112の命令に挿入し得る。いくつかの実装形態において、イベント回路122、バンドリング回路124、および/または報告回路126は、SDK120によって提供される機能(例えば、再利用可能な関数など)である。
イベント回路122は、アプリケーション112内のイベントを検出し得る。様々な実装形態において、イベント回路122は、特定のイベント(例えば、コンバージョン、トランザクション、アプリ内購入、アプリ内ゲームにおける特定のレベルの達成、特定の数のアクションの実行、アプリケーションと対話するのに一定の時間量を費やすことなど)を検出することに基づいて他の機能をトリガするように構成され得る。例えば、イベント回路122は、アプリケーション112内のイベントを検出すると、バンドリング回路124をトリガし得る。様々な実装形態において、SDK120は、イベント回路122をトリガするためにアプリケーション112内に組み込まれる関数を含む。例えば、開発者は、イベント回路122に確認されたトランザクションを検出させるアプリケーション112のトランザクション確認機能内にSDK120の関数を含み得る。イベントは、アプリケーション内の開発者にとって重要な任意のアクションを含み得、本明細書で明示的に企図されている例に限定されないことが理解されるべきである。様々な実装形態において、イベント回路122は、異なるタイプのイベント間を区別するように構成される。例えば、イベント回路122は、第1のタイプの検出されたイベントに基づいてアクションの第1のセットをトリガし得、第2のタイプの検出されたイベントに基づいてアクションの第2のセットをトリガし得る。様々な実装形態において、イベント回路122は、検出されたイベントに関連するイベントデータを収集し、収集されたイベントデータをバンドリング回路124に送信するように構成される。
バンドリング回路124は、イベントデータをバンドル(例えば、集約など)し得る。様々な実装形態において、バンドリング回路124は、イベント回路122から検出されたイベントに関連するイベントデータを受信する。バンドリング回路124は、1つまたは複数のイベントからイベントデータを収集し、送信のためにイベントデータをバンドルし得る。例えば、バンドリング回路124は、10個のイベントからイベントデータを収集し、イベントデータを単一のバンドルに結合し得る。イベントデータは、バージョン情報(例えば、アプリケーション112および/またはSDK120のバージョンなど)、1つもしくは複数の識別子、および/またはタイプを含み得る。追加的または代替的に、イベントデータは、イベントのタイムスタンプ、イベントの名前、および/またはイベントのパラメータ(例えば、購入されたアイテム、価格、通貨、割引、サブスクリプション情報など)などの他の情報を含み得る。いくつかの実装形態において、バンドリング回路124は、バンドルを報告回路126に送信する。様々な実装形態において、バンドリング回路124は、データバンドル(例えば、イベントデータの集合体など)を生成する。様々な実装形態において、バンドリング回路124は、クライアントデバイス110の動作を改善する。例えば、バンドリング回路124は、各イベントを個別に送信することに関連する電力消費を低減するために、10個のイベントからのイベントデータをバンドルし得る。
報告回路126は、バンドルされたイベントデータを分析および重複排除システム202に送信し得る。追加的または代替的に、報告回路126は、データをいくつかの宛先(例えば、第1のデータ処理システム300、第2のデータ処理システム400、データベースなど)に並行して送信し得る。いくつかの実装形態において、報告回路126は、第1のデータを第1の宛先に送信し、第2のデータを第2の宛先に送信する。例えば、報告回路126は、第1のデータを第1のデータ処理システム300に送信し、第2のデータを第2のデータ処理システム400に送信し得る。
様々な実装形態において、報告回路126は、データを定期的に送信する。例えば、報告回路126は、データを事前定義された時間において送信し得る。別の例として、報告回路126は、データをある間隔(例えば、10分ごと、10時間ごとなど)において送信し得る。追加的または代替的に、報告回路126は、しきい値に応答してデータを送信し得る。例えば、報告回路126は、バンドリング回路124がしきい値数のイベント(例えば、10個のイベント、100個のイベントなど)からのイベントデータを受信することに応答してデータを送信し得る。いくつかの実装形態において、報告回路126は、データを動的に送信する。例えば、報告回路126は、クライアントデバイス110が充電源に接続されていることに応答してデータを送信し得る。さらなる例として、報告回路126は、送信バンドルが指定されたデータサイズに達することに応答してデータを送信し得る。
分析および重複排除システム202は、イベントデータを以前の対話と相関させ得る。様々な実装形態において、分析および重複排除システム202は、識別子キースペース(例えば、異なる識別子タイプ)を重複排除する。例えば、分析および重複排除システム202は、関連付けられた識別子を有する重複する対話を識別するために、以前の対話を分析し得る。様々な実装形態において、分析および重複排除システム202は、例えば、デバイスにわたるイベントの重複排除された相関化を容易にするために、イベントデータに注釈を付ける。いくつかの実装形態において、分析および重複排除システム202は、単一のデバイスにおけるイベントの重複排除された相関化を容易にする。例えば、分析および重複排除システム202は、第1のデバイスにおける第1のアプリケーションにおける第1のイベントおよび第1のデバイスにおける第2のアプリケーションにおける第2のイベントの重複排除された相関化を容易にし得、ここで、第1および第2のイベントは、異なる識別子に関連付けられる。分析および重複排除システム202は、第1のデータ処理システム300と、第2のデータ処理システム400と、第3のデータ処理システム500とを含み得る。追加的または代替的に、分析および重複排除システム202は、追加のおよび/またはより少ない構成要素(例えば、第1のデータ処理システム300のみなど)を含み得る。いくつかの実装形態において、分析および重複排除システム202は、分散システム(例えば、クラウド処理システムなど)である。いくつかの実装形態において、分析および重複排除システム202は、第1のデータ処理システム300と、第2のデータ処理システム400と、第3のデータ処理システム500とを単一のシステム(例えば、単一のサーバなど)において組み合わせる。
第1のデータ処理システム300は、クライアントデバイス110から(例えば、SDK120などを介して)イベントデータを受信し、第2のデータ処理システム400からの注釈を要求し、第2のデータ処理システム400から受信した注釈をメモリ(例えば、データベースなど)内に保存し得る。いくつかの実装形態において、第1のデータ処理システム300は、SDK120からデータバンドル(例えば、いくつかのイベントに関連するイベントデータの集合体など)を受信する。第1のデータ処理システム300は、サーバ、分散処理クラスタ、クラウド処理システム、または任意の他のコンピューティングデバイスであり得る。第1のデータ処理システム300は、少なくとも1つのコンピュータプログラムまたは少なくとも1つのスクリプトを含むかまたは実行し得る。いくつかの実装形態において、第1のデータ処理システム300は、1つまたは複数のスクリプトを実行するように構成された1つまたは複数のプロセッサなどの、ソフトウェアとハードウェアとの組合せを含む。
第1のデータ処理システム300は、注釈付きコンバージョンデータベース310と処理回路320とを含むように示されている。注釈付きコンバージョンデータベース310は、注釈付きコンバージョンを記憶し得る。例えば、第1のデータ処理システム300は、第1の対話データについて第2のデータ処理システム400からの注釈を要求し得、第2のデータ処理システム400から受信した注釈を、第1の対話データに関連するコンバージョン情報とともに注釈付きコンバージョンデータベース310内に記憶し得る。追加的または代替的に、注釈付きコンバージョンデータベース310は、製品もしくはサービスの購入、(例えば、オンラインフォーム、または電子メールなどの通信に対する応答などを介する)要求された情報の提供、または任意の他のタイプの対話などの、任意のタイプの所望の対話データ/イベントを記憶し得る。注釈付きコンバージョンデータベース310は、1つまたは複数の記憶媒体を含み得る。記憶媒体は、限定はしないが、磁気記憶装置、光学記憶装置、フラッシュ記憶装置、および/またはRAMを含み得る。第1のデータ処理システム300は、データベース機能を実行する(すなわち、注釈付きコンバージョンデータベース310内に記憶されたデータを管理する)ために、様々なAPIを実装または促進し得る。APIは、限定はしないが、SQL、ODBC、JDBC、ならびに/または任意の他のデータ記憶および操作APIであり得る。
処理回路320は、プロセッサ330とメモリ340とを含み得る。メモリ340は、プロセッサ330によって実行されると、処理回路320に本明細書で説明される様々な動作を実行させる命令を記憶され得る。本明細書で説明されている動作は、ソフトウェア、ハードウェア、またはそれらの組合せを使用して実装され得る。プロセッサ330は、マイクロプロセッサ、ASIC、FPGAなど、またはそれらの組合せを含み得る。多くの実装形態において、プロセッサ330は、マルチコアプロセッサ、またはプロセッサのアレイであり得る。メモリ340は、限定はしないが、プロセッサ330にプログラム命令を提供することができる電子記憶デバイス、光記憶デバイス、磁気記憶デバイス、または任意の他の記憶デバイスを含み得る。メモリ340は、フロッピーディスク、CD-ROM、DVD、磁気ディスク、メモリチップ、ROM、RAM、EEPROM、EPROM、フラッシュメモリ、光媒体、またはプロセッサ330が命令を読み出すことができる任意の他の適切なメモリを含み得る。命令は、限定はしないが、C、C++、C#、Java、JavaScript、Perl、HTML、XML、Python、およびVisual Basicなどの、任意の適切なコンピュータプログラミング言語からのコードを含み得る。
メモリ340は、注釈コンパイラ回路342を含み得る。注釈コンパイラ回路342は、クライアントデバイス110から対話データを受信し、対話データから1つまたは複数の識別子を抽出し、補足データをコンパイルし、第2のデータ処理システム400からの注釈を要求し得る。様々な実装形態において、注釈コンパイラ回路342は、SDK120からデータバンドルを受信し、データバンドル内に含まれる1つまたは複数のイベントに関連付けられた1つまたは複数の識別子を識別するために、データバンドルの内容を分析する。例えば、注釈コンパイラ回路342は、第1の識別子に関連付けられたイベントを含むデータバンドルを受信し得、第1の識別子に関連付けられた第2の識別子を識別し得、第1および第2の識別子を第2のデータ処理システム400に注釈要求の一部として送信し得る。様々な実装形態において、補足データがデータバンドルの内容に関連付けられる。例えば、補足データは、データバンドル内に含まれるイベントに関連付けられた別の識別子であり得る。
第2のデータ処理システム400は、補足識別子を識別し、対話に注釈を付け、イベント間の相関関係を決定し得る。例えば、第2のデータ処理システム400は、第1の識別子を含む第1のデータ処理システム300からの第1のイベントに関連する注釈要求を受信し得、第1の識別子に関連付けられた第2の識別子を識別し得、第1のイベントに注釈を付け得、注釈を使用して第1のイベントを以前の対話と相関させ得る。様々な実装形態において、第2のデータ処理システム400は、注釈を生成する。追加的または代替的に、第2のデータ処理システム400は、相関情報を生成し得る。例えば、第2のデータ処理システム400は、イベントに関連付けられた以前の対話を識別し得る。相関情報によって記述される対話は、コンテンツアイテムを閲覧すること(例えば、コンテンツアイテムが提供されるウェブページにナビゲートすること、および/またはウェブページが閲覧されるデバイスのビューポート内でアイテムもしくはアイテムの一部が提供されることを決定することなど)、コンテツアイテムを選択/クリックすること、コンテンツアイテム上でホバリングすること、および/またはコンテンツアイテムとの他の対話を含み得る。いくつかの実装形態において、第2のデータ処理システム400は、集約情報を生成する。例えば、第2のデータ処理システム400は、コンテンツアイテムと対話した後にどれくらい多くのユーザがコンバージョンを完了したかを決定し得る。集約情報は、オンライン対話(例えば、いくつかのコンテンツアイテムとの対話)の数またはグループ化を記述し得る。追加的または代替的に、集約情報は、個々のオンライン対話(例えば、単一のコンテンツアイテムとの単一の対話)を記述し得る。集約情報は、一意の識別子を含み得る。いくつかの実装形態において、識別子は、マーケティングキャンペーンを識別する。追加的または代替的に、識別子は、各オンライン対話を一意に識別し得る。いくつかの実装形態において、集約情報は、コンテンツアイテムに関連付けられた1つまたは複数の対話を記述する。例えば、集約情報はオンライン対話の時間、日付、および/または場所を含み得る。
第2のデータ処理システム400は、サーバ、分散処理クラスタ、クラウド処理システム、または任意の他のコンピューティングデバイスであり得る。第2のデータ処理システム400は、少なくとも1つのコンピュータプログラムまたは少なくとも1つのスクリプトを含むかまたは実行し得る。いくつかの実装形態において、第2のデータ処理システム400は、1つまたは複数のスクリプトを実行するように構成された1つまたは複数のプロセッサなどの、ソフトウェアとハードウェアとの組合せを含む。
第2のデータ処理システム400は、識別子データベース410と、対話データベース420と、処理回路430とを含むように示されている。識別子データベース410は、様々な識別子を記憶し得る。例えば、識別子データベース410は、デバイスにわたるイベントを相関させるために使用される識別子を記憶し得る。いくつかの実装形態において、識別子データベース410は、複数のタイプの識別子を含む。例えば、識別子データベース410は、第1のタイプの特定の識別子と第2のタイプのユニバーサル識別子とを含み得る。様々な実装形態において、識別子データベース410は、パーティションを含み得る。例えば、識別子データベース410は、第1および第2の識別子が結合できないように、第1の識別子タイプを記憶するための第1のパーティションと、第2の識別子タイプを記憶するための第2のパーティションとを含み得る。追加的または代替的に、識別子データベース410は、別個のサブデータベースを含み得る。例えば、識別子データベース410は、第1のタイプの識別子を記憶するための第1のサブデータベースと、第2のタイプの識別子を記憶するための第2のサブデータベースとを含み得る。いくつかの実装形態において、識別子データベース410は、識別子間の関連性を決定することを容易にするためのデータ構造を含む。例えば、識別子データベース410は、第1のタイプの識別子(例えば、特定の識別子など)と第2のタイプの識別子(例えば、ユニバーサル識別子など)との間の関連性を表すグラフ構造を含み得る。様々な実装形態において、識別子は、デバイス間のイベントを相関させるために使用され得る。
対話データベース420は、対話データを記憶し得る。様々な実装形態において、対話データは、コンテンツアイテムとのユーザ対話を記述する。例えば、対話データは、ユーザが閲覧した広告を記述し得る。対話データは、バージョン、商人識別子(例えば、コンテンツアイテムが関連付けられている商人を記述する、など)、第2の識別子、および/またはタイプを含み得る。様々な実装形態において、対話データベース420は、識別子タイプに基づいて対話データを記憶し得る。例えば、対話データベース420は、第1のパーティション内に第1のタイプの識別子に関連付けられた対話データを記憶し得、第2のパーティション内に第2のタイプの識別子に関連付けられた対話データを記憶し得る。いくつかの実装形態において、対話データベース420は、別個のサブデータベースを含む。例えば、対話データベース420は、第1のタイプの識別子に関連付けられた対話データを記憶するための第1のサブデータベースと、第2のタイプの識別子に関連付けられた対話データを記憶するための第1のサブデータベースとは別の第2のサブデータベースとを含み得る。識別子データベース410および/または対話データベース420は、1つまたは複数の記憶媒体を含み得る。記憶媒体は、限定はしないが、磁気記憶装置、光学記憶装置、フラッシュ記憶装置、および/またはRAMを含み得る。第2のデータ処理システム400は、データベース機能を実行する(すなわち、識別子データベース410および/または対話データベース420内に記憶されたデータを管理する)ために、様々なAPIを実装または促進し得る。APIは、限定はしないが、SQL、ODBC、JDBC、ならびに/または任意の他のデータ記憶および操作APIであり得る。
処理回路430は、プロセッサ440とメモリ450とを含む。メモリ450は、プロセッサ440によって実行されると、処理回路430に本明細書で説明される様々な動作を実行させる命令を記憶され得る。本明細書で説明されている動作は、ソフトウェア、ハードウェア、またはそれらの組合せを使用して実装され得る。プロセッサ440は、マイクロプロセッサ、ASIC、FPGAなど、またはそれらの組合せを含み得る。多くの実装形態において、プロセッサ440は、マルチコアプロセッサ、またはプロセッサのアレイであり得る。メモリ450は、限定はしないが、プロセッサ440にプログラム命令を提供することができる電子記憶デバイス、光記憶デバイス、磁気記憶デバイス、または任意の他の記憶デバイスを含み得る。メモリ450は、フロッピーディスク、CD-ROM、DVD、磁気ディスク、メモリチップ、ROM、RAM、EEPROM、EPROM、フラッシュメモリ、光媒体、またはプロセッサ440が命令を読み出すことができる任意の他の適切なメモリを含み得る。命令は、限定はしないが、C、C++、C#、Java、JavaScript、Perl、HTML、XML、Python、およびVisual Basicなどの、任意の適切なコンピュータプログラミング言語からのコードを含み得る。
メモリ450は、識別子回路452と、注釈回路454と、分析回路456と、報告回路458とを含み得る。識別子回路452は、識別子間の関連付けを決定し得る。例えば、識別子回路452は、第1の識別子を受信し得、第1の識別子に関連付けられた第2の識別子を識別し得る。いくつかの実装形態において、識別子回路452は、識別子を決定するために外部システムに問い合わせ得る。例えば、識別子回路452は、第1の識別子を用いて外部識別情報サービスに問い合わせ、外部識別情報サービスから、第1の識別子に関連付けられた第2の識別子を受信し得る。追加的または代替的に、識別子回路452は、識別子を決定するために識別子データベース410を検索し得る。例えば、識別子データベース410は、リンクされた識別子を記憶し得、識別子回路452は、特定の識別子にリンクされた識別子について識別子データベース410を検索し得る。様々な実装形態において、識別子回路452は、異なるタイプの識別子間を相関させる。例えば、識別子回路452は、第1のタイプの識別子を受信し得、第1のタイプの識別子に関連付けられた第2のタイプの1つまたは複数の識別子を識別し得る。
注釈回路454は、対話データを受信し、対話データに注釈を付け得る。様々な実装形態において、注釈回路454は、対話データに関連付けられた1つまたは複数の以前の対話を識別し、1つまたは複数の以前の対話に基づいて対話データに注釈を付ける。例えば、注釈回路454は、第1の識別子を有する対話データを受信し得、第1の識別子に関連付けられた以前の対話について対話データベース420を検索し得る。注釈については、図5を参照して以下でより詳細に論じる。様々な実装形態において、注釈回路454は、識別された以前の対話の識別子タイプに基づいて注釈を決定する。注釈回路454によって生成された注釈は、特定のタイプの識別子に関連付けられた以前の対話に対する優先度に関連付けられ得る。例えば、対話データの注釈は、第2のタイプの識別子に関連付けられた以前の対話よりも高く、第1のタイプの識別子に関連付けられた以前の対話に対する優先度を指定し得る。注釈回路454は、キースペース(例えば、異なる識別子を有するデータのセットなど)の重複排除を容易にし得る。
分析回路456は、対話データを以前の対話と相関させ得る。例えば、分析回路456は、クライアントデバイス110におけるイベントに関連する対話データを受信し得、対話データに関連する1つまたは複数の以前の対話を識別し得る。追加の例として、分析回路456は、コンバージョンを記述する対話データを受信し得、コンバージョンにつながるコンテンツアイテムと1つまたは複数のユーザ対話を識別し得る。様々な実装形態において、分析回路456は、以前の対話を識別するために対話データベース420を検索する。いくつかの実装形態において、分析回路456は、識別子に関連付けられた以前の対話を識別する。例えば、分析回路456は、以前の対話を識別するために、第1のタイプの識別子を使用して対話データベース420の第1のパーティションを検索し得、第2のタイプの識別子を使用して対話データベース420の第2のパーティションを検索し得る。様々な実装形態において、分析回路456は、重複排除された結果を生成する。例えば、分析回路456は、注釈付き対話データを受信し得、(例えば、特定のタイプの識別子を有する以前の対話をフィルタリングすることなどによって)注釈を使用してイベントに関連する以前の対話を決定し得る。いくつかの実装形態において、分析回路456は、計算効率を改善するために注釈を使用する。例えば、分析回路456は、対話データに関連付けられたイベントが第1のタイプの識別子に関連付けられた以前の対話とのアトリビューションにのみ適格であることを示す注釈付き対話データを受信し得、第1のタイプの識別子および他のタイプの識別子に関連付けられた以前の対話について対話データベース420を検索する代わりに、第1のタイプの識別子に関連付けられた以前の対話についてのみ対話データベース420を検索し得る(したがって、分析を制限することによって、検索空間を低減し、デバイスリソースを節約する)。様々な実装形態において、分析回路456は、受信したデータを説明する統計的測定値を生成するために、受信したデータに対して統計的演算を実行する。例えば、分析回路456は、マーケティングキャンペーンに関連する対話率を決定し得る。いくつかの実装形態において、分析回路456は、人口統計学的情報(例えば、ユーザ分布など)、地理的結果(例えば、場所の分布など)、および/またはオーディエンス(例えば、1つまたは複数のパラメータに基づくユーザのターゲットグループ、例えば、しきい値を超えて購入をしたユーザ、など)を生成する。様々な実装形態において、分析回路456は、結果を報告のために報告回路458に送信する。
報告回路458は、分析回路456から結果を受信し得、結果を外部システムに送信し得る。例えば、報告回路458は、分析回路456から対話データと、対話データに関連する1つまたは複数の以前の対話とを受信し得、結果を対話データに関連する商人に送信し得る。非限定的な例として、ビデオを見たユーザは、ビデオをクリックし得る。ビデオを提供するコンテンツプロバイダは、どれくらい多くのユーザがビデオをクリックしたかを知りたい場合がある。いくつかの実装形態において、ユーザは、第1のコンテンツアイテムとのユーザの対話の結果として、コンテンツプロバイダによって提供される他のコンテンツと対話し得る。例えば、ビデオを見たユーザは、ビデオ内で紹介されたアイテムを購入するために、コンテンツプロバイダによって維持されるウェブサイトを後に訪問し得る。いくつかの実装形態において、対話は、オンラインコンバージョンであるか、またはオンラインコンバージョンに関連付けられる。コンバージョンは、製品/サービスの購入、要求された情報の提供などのトランザクションであり得る。報告回路458は、機密情報を保持しながら、オンラインコンテンツとのユーザ対話の堅牢な報告および分析を容易にし得る。
第3のデータ処理システム500は、第1のデータ処理システム300から注釈付き対話データを受信し得、第2のデータ処理システム400からの分析を要求し得る。例えば、第3のデータ処理システム500は、第1のタイプの識別子に関連付けられた第1の対話データを取得し得、第1の対話データを分析回路456に送信し得、第2のタイプの識別子に関連付けられた第2の対話データを取得し得、第2の対話データを分析のために分析回路456に送信し得る。いくつかの実装形態において、第3のデータ処理システム500は、補足データを決定する。例えば、第3のデータ処理システム500は、(例えば、識別子回路452などを介して)第1の識別子に関連付けられた1つまたは複数の識別子を決定し得る。
第3のデータ処理システム500は、サーバ、分散処理クラスタ、クラウド処理システム、または任意の他のコンピューティングデバイスであり得る。第3のデータ処理システム500は、少なくとも1つのコンピュータプログラムまたは少なくとも1つのスクリプトを含むかまたは実行し得る。いくつかの実装形態において、第3のデータ処理システム500は、1つまたは複数のスクリプトを実行するように構成された1つまたは複数のプロセッサなどの、ソフトウェアとハードウェアとの組合せを含む。
第3のデータ処理システム500は、処理回路510を含むように示されている。処理回路510は、プロセッサ520とメモリ530とを含む。メモリ530は、プロセッサ520によって実行されると、処理回路510に本明細書で説明される様々な動作を実行させる命令を記憶され得る。本明細書で説明されている動作は、ソフトウェア、ハードウェア、またはそれらの組合せを使用して実装され得る。プロセッサ520は、マイクロプロセッサ、ASIC、FPGAなど、またはそれらの組合せを含み得る。多くの実装形態において、プロセッサ520は、マルチコアプロセッサ、またはプロセッサのアレイであり得る。メモリ530は、限定はしないが、プロセッサ520にプログラム命令を提供することができる電子記憶デバイス、光記憶デバイス、磁気記憶デバイス、または任意の他の記憶デバイスを含み得る。メモリ530は、フロッピーディスク、CD-ROM、DVD、磁気ディスク、メモリチップ、ROM、RAM、EEPROM、EPROM、フラッシュメモリ、光媒体、またはプロセッサ520が命令を読み出すことができる任意の他の適切なメモリを含み得る。命令は、限定はしないが、C、C++、C#、Java、JavaScript、Perl、HTML、XML、Python、およびVisual Basicなどの、任意の適切なコンピュータプログラミング言語からのコードを含み得る。
情報集約および分析要求回路532は、注釈付き対話データを取得し得、対話データの分析を要求し得る。いくつかの実装形態において、情報集約および分析要求回路532は、補足データを決定する。例えば、情報集約および分析要求回路532は、対話データ内の識別子に関連付けられた1つまたは複数の補足識別子を識別し得る。いくつかの実装形態において、情報集約および分析要求回路532は、コンバージョンデータを取得し、(例えば、注釈付きコンバージョンデータベース310におけるルックアップなどによって)取得したコンバージョンデータに関連する注釈決定する。いくつかの実装形態において、情報集約および分析要求回路532は、対話データに関連付けられた1つまたは複数の以前の対話を識別し得る。様々な実装形態において、情報集約および分析要求回路532は、注釈付きコンバージョンデータベース310から情報を取得し、情報を分析回路456に渡す。
ここで図3を参照すると、例示的な実装形態による、異なるデバイスからのイベントを正確かつ効率的に相関させるための改善されたコンピュータアーキテクチャが示されている。要約すると、第1のデータ処理システム300、第2のデータ処理システム400、および第3のデータ処理システム500は、対話情報を決定するために、クライアントデバイス110におけるイベントからの対話データを以前の対話データと相関させ得る。例えば、クライアントデバイス110は、イベントを検出し、対話データを生成し、対話データを第1のデータ処理システム300に送信し得る。第1のデータ処理システム300、第2のデータ処理システム400、および第3のデータ処理システム500は、クライアントデバイス110から受信した対話データに注釈を付けることによって、重複する相関結果を防止しながら、クライアントデバイス110におけるイベントに関連付けられた1つまたは複数の以前の対話を決定するために、共同分析プロセスに関与し得る。
ステップ602において、クライアントデバイス110は、対話データを(例えば、アプリケーション112および/またはSDK120などを介して)第1のデータ処理システム300に送信し得る。いくつかの実施形態において、クライアントデバイス110は、バンドルされた対話データを送信する。様々な実装形態において、ステップ602は、クライアントデバイス110におけるイベントの検出に応答する。例えば、ユーザは、クライアントデバイス110においてコンバージョンを完了し得る。いくつかの実施形態において、第1のデータ処理システム300に送信される対話データは、1つまたは複数の識別子を含む。例えば、対話データは、第1のタイプの識別子と第2のタイプの識別子とを含み得る。
ステップ604において、第1のデータ処理システム300は、クライアントデバイス110から受信した対話データの注釈を要求し得る。様々な実装形態において、ステップ604は、対話データに関連付けられた1つまたは複数の識別子を第2のデータ処理システム400に送信することを含む。いくつかの実施形態において、第1のデータ処理システム300は、第1の識別子(例えば、第1のタイプの識別子など)を第2のデータ処理システム400に送信し、第2のデータ処理システム400は、第1の識別子に基づいて第2の識別子(例えば、第2のタイプの識別子など)を識別する。
ステップ606において、第2のデータ処理システム400は、対話データに関連する注釈を返す。様々な実装形態において、注釈は、特定のタイプの識別子に関連付けられた以前の対話に対する優先度を示す。例えば、優先度は、対話データに関連付けられたイベントが第1のタイプの識別子を有する以前のイベントとのアトリビューションについてのみ適格であることを示し得る。様々な実装形態において、優先度は、バイナリである。例えば、優先度は、対話データに関連付けられたイベントが特定のタイプの識別子を有する以前の対話とのアトリビューションについて適格であるかまたは適格でないか(例えば、アトリビュートされ得るか、アトリビュートされ得ないかなど)を示し得る。別の例として、イベントは、イベントが第1のタイプの識別子を有する以前の対話とのアトリビューションについて適格であるが、第2のタイプの識別子を有する以前の対話とのアトリビューションについて適格でないことを示す注釈を有し得、分析および重複排除システム202は、以前の対話の2つのコピー、第1のタイプの識別子を有する1つのコピーと、第2のタイプの識別子を有する1つのコピーとを見つけ得、注釈に基づいて、第1のタイプの識別子を有する以前の対話のコピーに対してのみイベントをアトリビュートし得る。様々な実装形態において、第1のデータ処理システム300は、対話データとともに注釈を保存する。ステップ608において、第3のデータ処理システム500は、第1のデータ処理システム300からの対話データおよび/または注釈を要求し得る。ステップ610において、第1のデータ処理システム300は、第3のデータ処理システム500に対話データおよび/または注釈を送信し得る。ステップ612において、第3のデータ処理システム500は、第2のデータ処理システム400からの注釈付き対話データの分析を要求し得る。第2のデータ処理システム400は、注釈付き対話データに関連する1つまたは複数の以前の対話を識別するために、注釈付き対話データを分析し得る。ステップ614において、第2のデータ処理システム400は、分析結果を外部システムに送信し得る。例えば、第2のデータ処理システム400は、広告キャンペーンの有効性を示す集約統計を商人に送信し得る。いくつかの実装形態において、結果は、コンバージョン率および/またはアトリビューション率を含む。様々な実装形態において、第2のデータ処理システム400は、デバイスにわたるイベントの重複排除された相関化を容易にする。例えば、第2のデータ処理システム400は、異なる識別子に関連付けられているが、同じイベントに関する以前の対話データを重複排除するために、注釈情報を使用し得る。
ここで図4を参照すると、実装形態による、重複排除された分析のための対話データを準備する方法700が示されている。要約すると、分析および重複排除システム202は、同じイベントに関連付けられた以前の対話の重複コピーが含まれるのを防ぎながら、対話データに関連付けられた以前の対話を決定するために、対話データに注釈を付け、対話データの分析中に注釈を使用し得る。様々な実装形態において、第1のデータ処理システム300、第2のデータ処理システム400、および第3のデータ処理システム500は、方法700を共同で実行する。追加的または代替的に、分析および重複排除システム202の1つまたは複数の構成要素(またはその組合せ)は、方法700を実行し得る。ステップ702において、第1のデータ処理システム300は、クライアントデバイスからイベントに対応するイベント情報を受信し得る。様々な実装形態において、イベント情報は、クライアントデバイス110におけるイベントに対応する対話データを含む。いくつかの実装形態において、イベント情報は、バンドルされる。ステップ704において、第1のデータ処理システム300は、イベント情報を解析し、第2のデータ処理システム400からのイベントに対する注釈を要求し得る。様々な実装形態において、イベント情報を解析することは、イベント情報に関連付けられた1つまたは複数の識別子を識別することを含む。
ステップ706において、第2のデータ処理システム400は、第1のデータ処理システム300から注釈要求を受信する。様々な実装形態において、注釈要求は、1つまたは複数の識別子を含む。例えば、注釈要求は、第1のタイプを有する第1の識別子を含み得る。いくつかの実装形態において、注釈要求は、対話データを含み得る。注釈データは、対話に関連するコンテンツアイテム、対話の時間、対話のタイプ、および/または他の情報を記述し得る。ステップ708において、第2のデータ処理システム400は、イベントに関連付けられた第2の識別子を決定し得る。例えば、ステップ708は、対話データ内に含まれる第1のタイプの第1の識別子に関連付けられた第2のタイプの第2の識別子を決定することを含み得る。いくつかの実装形態において、ステップ708は、第1の識別子に関連付けられた第2の識別子を決定するために、識別子間の相関関係を有するデータベースに問い合わせることを含む。
ステップ710において、第2のデータ処理システム400は、第1または第2の識別子に関連付けられた以前の対話を識別し得る。様々な実装形態において、ステップ710は、以前の対話を識別するために1つまたは複数のデータベースを検索することを含む。例えば、第2のデータ処理システム400は、第1の識別子(例えば、第1のタイプの識別子など)に関連付けられた対話について第1のデータベースを検索し得、第2の識別子(例えば、第2のタイプの識別子など)に関連付けられた対話について第2のデータベースを検索し得る。様々な実装形態において、第2のデータ処理システム400は、対話データによって指定されたイベントと相関する以前の対話について検索する。
ステップ712において、第2のデータ処理システム400は、対話データに関連付けられたイベントに注釈を付ける。様々な実装形態において、第2のデータ処理システム400は、ステップ710において識別された以前の対話に基づいてイベントに注釈を付ける。例えば、第2のデータ処理システム400は、第1のタイプの識別子に関連付けられた1つまたは複数の以前の対話の識別に応答して、イベントの分析が第1のタイプの識別子に関連付けられた以前の対話を優先すべきであることを示すようにイベントに注釈を付け得る。ステップ714において、第2のデータ処理システム400は、強化情報と決定された注釈とを第1のデータ処理システム300に送信する。様々な実装形態において、強化情報は、1つもしくは複数の追加識別子(例えば、コンテンツアイテムに関連付けられた識別子など)、対話情報、および/またはステップ712の間に分析された1つもしくは複数の対話を含む。
ステップ716において、第1のデータ処理システム300は、第2のデータ処理システム400から強化情報と決定された注釈とを受信し得る。ステップ718において、第1のデータ処理システム300は、注釈付きイベントをデータベース内に記憶する。例えば、第1のデータ処理システム300は、注釈付きイベントを注釈付きコンバージョンデータベース310内に記憶し得る。いくつかの実装形態において、第1のデータ処理システム300は、関連付けられた識別子に基づいて、注釈付きイベントのコピーを異なるデータベース内に記憶する。例えば、第1のイベントは、第1の識別子と第2の識別子とを有する第1の対話データに関連付けられ得る。第1のデータ処理システム300は、第2のデータ処理システム400から第1のイベントに関する注釈を受信し得、第1の対話データの第1のコピーを注釈および第1の識別子とともに第1のデータベース内に記憶し得、第1の対話の第2のコピーを注釈および第2の識別子とともに第2のデータベース内に記憶し得る。
ステップ720において、第3データ処理システム500は、データベースから注釈付きイベントを取得し得る。例えば、第3のデータ処理システム500は、注釈付きコンバージョンデータベース310から注釈付きイベントを取得し得る。いくつかの実装形態において、ステップ720は、第1の識別子を有する注釈付きインベントの第1のコピーを取得することと、第2の識別子を有する注釈付きイベントの第2のコピーを取得することとを含む。いくつかの実装形態において、ステップ720は、注釈付きイベントに関連付けられた以前の対話から対話データを取得することを含む。追加的または代替的に、ステップ720は、注釈付きイベントに関連付けられた対話データを取得することを含み得る。ステップ722において、第3のデータ処理システム500は、注釈付きイベントを分析のために第2のデータ処理システム400に送信し得る。ステップ724において、第2のデータ処理システム400は、第3のデータ処理システム500から注釈付きイベントを受信し、分析を実行し得る。様々な実装形態において、ステップ724は、対話情報を決定することを含む。例えば、第2のデータ処理システム400は、注釈付きイベントに関連付けられた1つまたは複数の以前の対話を識別し得る。様々な実装形態において、第2のデータ処理システム400は、対話情報を重複排除するために、分析中に注釈情報を使用する。
ここで図5を参照すると、実装形態による、イベント注釈を決定する方法800が示されている。様々な実装形態において、第2のデータ処理システム400は、方法800を実行する。いくつかの実装形態において、方法800は、イベントに関連付けられた対話データおよび/または少なくとも1つの識別子を含む注釈要求の受信に応答して実行される。例えば、第2のデータ処理システム400は、第1および第2の識別子を有する対話データを含む注釈要求の受信に応答して方法800を実行し得る。ステップ810において、第2のデータ処理システム400は、第1の識別子に関連付けられた以前の対話が見つかったかどうかを判定し得る。様々な実装形態において、ステップ810は、対話データ内に含まれる第1の識別子に関連付けられた以前の対話について第1のデータベースを検索することを含む。いくつかの実装形態において、第1の識別子は、第1のタイプを有する識別子である。例えば、第2のデータ処理システム400は、注釈要求内に含まれた第1のタイプの識別子と一致する識別子について、第1のタイプの識別子を有する第1のデータベースを検索し得る。第1の識別子に関連付けられた以前の対話が見つかった場合、第2のデータ処理システム400は、イベント注釈を、第1の識別子に関連付けられたイベントアトリビューションに適格であるとして設定し得る(ステップ812)。いくつかの実装形態において、ステップ812は、対話データ内に含まれる1つまたは複数の変数値を設定することを含む。例えば、ステップ812は、bool first_open_attribution_account_preferred_over_device_id=0、bool post_install_event_attribution_account_preferred_over_device_id=0、bool first_open_attribution_device_preferred_over_account_id=1、およびbool post_install_event_attribution_device_preferred_over_account_id=1などの4つのブール値を設定することを含み得る。様々な実装形態において、注釈は、分析中に分析および重複排除システム202によって使
用され得る。例えば、分析および重複排除システム202は、共有された識別子に基づいて、イベントに関連付けられた第1および第2の以前の対話を識別し得、イベントが第1の識別子を有する以前の対話とのアトリビューションについて適格ではないことを指定する注釈をイベントが含むので、第1の識別子を有する第1の以前の対話は、イベントに関連付けられていないが、イベントが第2の識別子を有する以前の対話とのアトリビューションに適格であることを指定する注釈をイベントが含むので、第2の識別子を有する第2の以前の対話は、イベントに関連付けられていると判定し得る。追加的または代替的に、分析および重複排除システム202は、分析効率を改善するために注釈を使用し得る。例えば、分析および重複排除システム202は、イベントが第1の識別子を有する以前の対話とのアトリビューションについて適格でないと判定し得、第1の識別子に関連付けられた以前の対話を有するデータベースを検索することを回避し得る。いくつかの実装形態において、ステップ812は、第2の識別子に関連付けられたイベント対話に対して不適格であるとしてイベント注釈を設定することを含む。追加的または代替的に、ステップ812は、注釈要求内に含まれるいくつかの識別子に関連付けられたイベントに対して適格/不適格を反映するようにイベント注釈を設定すること(例えば、イベントに関連付けられたイベント注釈を、4つの識別子のうちの1つを有する以前の対話とのアトリビューションについて不適格であるとして、および第5の識別子を有する以前の対話とのアトリビューションについて適格であるとして設定することなど)を含み得る。
ステップ814において、第2のデータ処理システム400は、第2の識別子に関連付けられた以前の対話が見つかったかどうかを判定し得る。様々な実装形態において、ステップ814は、注釈要求の対話データ内に含まれる第2の識別子に関連付けられた以前の対話についてデータベースを検索することを含む。いくつかの実装形態において、第2の識別子は、第1の識別子とは異なるタイプの識別子である。第2の識別子に関連付けられた以前の対話が見つかった場合、第2のデータ処理システム400は、第2の識別子に関連付けられたイベントアトリビューションに適格であるとしてイベント注釈を設定し得る(ステップ816)。いくつかの実装形態において、ステップ816は、第1の識別子に関連付けられたイベント対話について不適格であるとしてイベント注釈を設定することを含む。いくつかの実装形態において、第2のデータ処理システム400は、異なる基準に基づいてイベント注釈を設定する。例えば、第2のデータ処理システム400は、第2の識別子に関連付けられた以前のイベントのしきい値数を識別することに基づいてイベント注釈を設定し得る。第2の識別子に関連付けられた以前の対話が見つからなかった場合、第2のデータ処理システム400は、第1の識別子に関連付けられたイベントアトリビューションについて適格であるとしてイベント注釈を設定し得る(ステップ818)。いくつかの実装形態において、ステップ818は、第2の識別子に関連付けられたイベント対話について不適格であるとしてイベント注釈を設定することを含む。いくつかの実装形態において、ステップ812、816、および/または818は、対話のタイプに固有のイベント注釈を設定することを含む。例えば、イベントに関連付けられた対話データは、第1のオープンタイプの対話(例えば、ユーザが初めてアプリケーションを開いたときに関連付けられた対話など)に対応する第1の注釈、および第2のインストール後タイプの対話(例えば、ユーザがアプリケーションをインストールした後に発生する対話など)などの、異なるタイプの対話に対応するいくつかの注釈を含み得る。
ここで図6A~図6Cを参照すると、いくつかの例示的な実装形態による、本明細書で説明されている分析および重複排除システムの実行のいくつかの例が示されている。ここで特に図6Aを参照すると、例示的な実装形態による、イベントのクロスデバイスアトリビューションの例900が示されている。ステップ902において、第1のデバイスは、コンテンツアイテムとの第1の対話を検出し得る。様々な実装形態において、第1の対話は、広告を見ることを含み得る。ステップ902は、第1の対話に関連する対話データを第1のデバイスから分析および重複排除システム202に送信することを含み得る。様々な実装形態において、対話データは、第1の識別子と第2の識別子とを含む。いくつかの実装形態において、第1の識別子は、第1のタイプを有し、第2の識別子は、第2のタイプを有する。例えば、第1の識別子は、サインインされたデバイスに対応し得、第2の識別子は、サインインされていないデバイスに対応し得る。ステップ904において、分析および重複排除システム202は、第1の対話に注釈を付け得る。例えば、分析および重複排除システム202は、第1の対話に関連付けられた識別子に関連付けられた以前の対話が存在しないと判定し得、第1の識別子(例えば、第1のタイプを有する第1の識別子など)に関連付けられた以前の対話を優先するように第1の対話に注釈を付け得る。様々な実装形態において、ステップ904は、第1のデバイスからの対話データの1つまたは複数のコピーを保存することを含み、各コピーは、異なる識別子に関連付けられる。例えば、分析および重複排除システム202は、第1の識別子を有する注釈付き対話データの第1のコピーを記憶し得、第2の識別子を有する注釈付き対話データの第2のコピーを記憶し得る。
ステップ906において、第2のデバイスは、第2の対話を検出し得る。様々な実装形態において、第2の対話は、第2のデバイス上でモバイルアプリケーションを初めてダウンロードするおよび/または開くことを含み得る。ステップ906は、第2の対話に関連する対話データを第2のデバイスから分析および重複排除システム202に送信することを含み得る。様々な実装形態において、ステップ906は、第1の識別子(例えば、第1のタイプを有する第1の識別子など)と第2の識別子(例えば、第2のタイプを有する第2の識別子など)とを送信することを含む。ステップ908において分析および重複排除システム202は、第2の対話に注釈を付け得る。例えば、分析および重複排除システム202は、第1の対話および/または第2の対話に関連付けられた識別子に基づいて第1の対話を識別し得、識別子に関連付けられた以前の対話を優先するように第2の対話に注釈を付け得る。いくつかの実装形態において、注釈は、第2の対話が適格であるアトリビューションのタイプを指定し得る。例えば、分析および重複排除システム202は、第2の対話に関連付けられているものとして識別された第1の対話データおよび/または以前の対話に基づいて、第2の対話がオープンタイプのアトリビューションに適格であるが、インストール後タイプのアトリビューションには適格ではないと判定し得る。ステップ910において、分析および重複排除システム202は、第2の対話に第1の対話を関連付ける第1のオープンタイプのアトリビューションを生成するために、第2の対話に関連付けられた注釈付き対話データを分析し得る。様々な実装形態において、ステップ910は、注釈に基づいて以前の対話を検索することと、第1の対話および/または第2の対話に関連付けられた識別子に基づいて第1の対話を識別することとを含む。例えば、分析および重複排除システム202は、第2の対話に関連付けられた注釈を読み取り得、注釈に関連付けられた識別子に関連付けられた以前の対話を有するデータベースを識別し得、第2の対話と同じ識別子を有するデータベース内の以前の対話を識別し得、第1のオープンタイプのアトリビューションを生成するために、識別された以前の対話を分析し得る。様々な実装形態において、分析および重複排除システム202は、第1の識別子とともに記憶された第1の対話のコピーと第2の識別子とともに記憶された第1の対話のコピーとの間で重複排除するために注釈を使用する。
ここで特に図6Bを参照すると、例示的な実装形態による、イベントの別のクロスデバイスアトリビューションの例920が示されている。ステップ922において、第1のデバイスは、コンテンツアイテムとの第1の対話を検出し得る。様々な実装形態において、第1の対話は、広告を見ることを含み得る。ステップ922は、対話データを第1のデバイスから分析および重複排除システム202に送信することを含み得る。いくつかの実装形態において、対話データは、第1の識別子を含む。例えば、対話データは、サインインされていないデバイスに関連付けられた第1のタイプを有する第1の識別子を含み得る。ステップ924において、分析および重複排除システム202は、第1の対話に注釈を付け得る。例えば、分析および重複排除システム202は、第1の対話に関連付けられた識別子に関連付けられた以前の対話が存在しないと判定し得、第1の識別子(例えば、第1のタイプを有する第1の識別子など)に関連付けられた以前の対話を優先するように第1の対話に注釈を付け得る。様々な実装形態において、ステップ904は、第1のデバイスからの対話データの1つまたは複数のコピーを保存することを含み、各コピーは、異なる識別子に関連付けられる。例えば、分析および重複排除システム202は、第1の識別子を有する注釈付き対話データの第1のコピーを記憶し得る。
ステップ926において、第1のデバイスは、第2の対話を検出し得る。様々な実装形態において、第2の対話は、第1のデバイス上でモバイルアプリケーションを初めてダウンロードするおよび/または開くことを含み得る。ステップ926は、第2の対話に関連する対話データを第1のデバイスから分析および重複排除システム202に送信することを含み得る。様々な実装形態において、ステップ926は、第1の識別子(例えば、第1のタイプを有する第1の識別子など)と第2の識別子(例えば、第2のタイプを有する第2の識別子など)とを送信することを含む。ステップ928において分析および重複排除システム202は、第2の対話に注釈を付け得る。例えば、分析および重複排除システム202は、第1の対話および/または第2の対話に関連付けられた識別子に基づいて第1の対話を識別し得、識別子に関連付けられた以前の対話を優先するように第2の対話に注釈を付け得る。いくつかの実装形態において、注釈は、第2の対話が適格であるアトリビューションのタイプを指定し得る。例えば、分析および重複排除システム202は、第2の対話に関連付けられているものとして識別された第1の対話データおよび/または以前の対話に基づいて、第2の対話がオープンタイプのアトリビューションに適格であるが、インストール後タイプのアトリビューションには適格ではないと判定し得る。ステップ930において、分析および重複排除システム202は、第2の対話に第1の対話を関連付ける第1のオープンタイプのアトリビューションを生成するために、第2の対話に関連付けられた注釈付き対話データを分析し得る。様々な実装形態において、ステップ930は、注釈に基づいて以前の対話を検索することと、第1の対話および/または第2の対話に関連付けられた識別子に基づいて第1の対話を識別することとを含む。
ステップ932において、第2のデバイスは、第3の対話を検出し得る。様々な実装形態において、第3の対話は、モバイルアプリケーション上でアクションを実行すること(例えば、トランザクションを完了すること、プロファイルを編集することなど)を含み得る。ステップ932は、第3の対話に関連する対話データを第2のデバイスから分析および重複排除システム202に送信することを含み得る。様々な実装形態において、ステップ932は、第1の識別子(例えば、第1のタイプを有する第1の識別子など)と第2の識別子(例えば、第2のタイプを有する第2の識別子など)とを送信することを含む。ステップ934において、分析および重複排除システム202は、第3の対話に注釈を付け得る。例えば、分析および重複排除システム202は、第1の対話、第2の対話、および/または第3の対話に関連付けられた識別子に基づいて第1の対話と第2の対話とを識別し得、識別子に関連付けられた以前の対話を優先するように第3の対話に注釈を付け得る。いくつかの実装形態において、注釈は、第3の対話が適格であるアトリビューションのタイプを指定し得る。例えば、分析および重複排除システム202は、第3の対話に関連付けられているものとして識別された第1の対話データ、第2の対話データ、および/または以前の対話に基づいて、第3の対話がインストール後タイプのアトリビューションに適格であるが、第1のオープンタイプのアトリビューションには適格ではないと判定し得る。ステップ936において、分析および重複排除システム202は、第3の対話に第1の対話を関連付けるインストール後タイプのアトリビューションを生成するために、第3の対話に関連付けられた注釈付き対話データを分析し得る。様々な実装形態において、ステップ936は、注釈に基づいて以前の対話を検索することと、第1の対話、第2の対話、および/または第3の対話に関連付けられた識別子に基づいて第1の対話と第2の対話とを識別することとを含む。様々な実装形態において、分析および重複排除システム202は、第1の識別子とともに記憶された第2の対話のコピーと第2の識別子とともに記憶された第2の対話のコピーとの間で重複排除するために注釈を使用する。追加的または代替的に、分析および重複排除システム202は、第3の対話に関連付けられたアトリビューションのタイプを決定するために注釈を使用し得る。例えば、注釈は、分析および重複排除システム202が第1の対話と、第2の対話と、第3の対話とに関連付けられた共有された識別子に基づいて第1および第2の対話を以前に識別したことに基づいて、第3の対話に関連付けられたアカウントが第1のオープンタイプのアトリビューションをすでに有しており、インストール後タイプのアトリビューションにのみ適格であることを示し得る。
ここで特に図6Cを参照すると、例示的な実装形態による、イベントの別のクロスデバイスアトリビューションの例940が示されている。ステップ942において、第1のデバイスは、コンテンツアイテムとの第1の対話を検出し得る。様々な実装形態において、第1の対話は、広告を見ることを含み得る。ステップ942は、対話データを第1のデバイスから分析および重複排除システム202に送信することを含み得る。いくつかの実装形態において、対話データは、第1の識別子と第2の識別子とを含む。例えば、対話データは、サインインされていないデバイスに関連付けられた第1のタイプを有する第1の識別子と、サインインされたデバイスに関連付けられた第2のタイプを有する第2の識別子とを含み得る。ステップ944において、分析および重複排除システム202は、第1の対話に注釈を付け得る。例えば、分析および重複排除システム202は、第1の対話に関連付けられた識別子に関連付けられた以前の対話が存在しないと判定し得、第1の識別子(例えば、第1のタイプを有する第1の識別子、サインインされていないデバイスに関連付けられた第1の識別子など)に関連付けられた以前の対話を優先するように第1の対話に注釈を付け得る。様々な実装形態において、ステップ944は、第1のデバイスからの対話データの1つまたは複数のコピーを保存することを含み、各コピーは、異なる識別子に関連付けられる。例えば、分析および重複排除システム202は、第1の識別子を有する注釈付き対話データの第1のコピーと、第2の識別子を有する注釈付き対話データの第2のコピーとを記憶し得る。
ステップ946において、第1のデバイスは、第2の対話を検出し得る。様々な実装形態において、第2の対話は、第1のデバイス上でモバイルアプリケーションを初めてダウンロードするおよび/または開くことを含み得る。ステップ946は、第2の対話に関連する対話データを第1のデバイスから分析および重複排除システム202に送信することを含み得る。様々な実装形態において、ステップ946は、第1の識別子(例えば、第1のタイプを有する第1の識別子など)と第2の識別子(例えば、第2のタイプを有する第2の識別子など)とを送信することを含む。ステップ948において分析および重複排除システム202は、第2の対話に注釈を付け得る。例えば、分析および重複排除システム202は、第1の対話および/または第2の対話に関連付けられた識別子に基づいて第1の対話を識別し得、識別子に関連付けられた以前の対話を優先するように第2の対話に注釈を付け得る。いくつかの実装形態において、注釈は、第2の対話が適格であるアトリビューションのタイプを指定し得る。例えば、分析および重複排除システム202は、第2の対話に関連付けられているものとして識別された第1の対話データおよび/または以前の対話に基づいて、第2の対話がオープンタイプのアトリビューションに適格であるが、インストール後タイプのアトリビューションには適格ではないと判定し得る。ステップ950において、分析および重複排除システム202は、第2の対話に第1の対話を関連付ける第1のオープンタイプのアトリビューションを生成するために、第2の対話に関連付けられた注釈付き対話データを分析し得る。様々な実装形態において、ステップ950は、注釈に基づいて以前の対話を検索することと、第1の対話および/または第2の対話に関連付けられた識別子に基づいて第1の対話を識別することとを含む。
ステップ952において、第2のデバイスは、第3の対話を検出し得る。様々な実装形態において、第3の対話は、広告を見ることを含み得る。ステップ952は、第3の対話に関連する対話データを第2のデバイスから分析および重複排除システム202に送信することを含み得る。様々な実装形態において、ステップ952は、第1の識別子(例えば、第1のタイプを有する第1の識別子など)と第2の識別子(例えば、第2のタイプを有する第2の識別子など)とを送信することを含む。ステップ954において、分析および重複排除システム202は、第3の対話に注釈を付け得る。例えば、分析および重複排除システム202は、第1の対話、第2の対話、および/または第3の対話に関連付けられた識別子に基づいて第1の対話と第2の対話とを識別し得、識別子に関連付けられた以前の対話を優先するように第3の対話に注釈を付け得る。いくつかの実装形態において、注釈は、第3の対話が適格であるアトリビューションのタイプを指定し得る。例えば、分析および重複排除システム202は、第3の対話に関連付けられているものとして識別された第1の対話データ、第2の対話データ、および/または以前の対話に基づいて、第3の対話がインストール後タイプのアトリビューションに適格であるが、第1のオープンタイプのアトリビューションには適格ではないと判定し得る。様々な実装形態において、ステップ954において、分析および重複排除システム202は、第3の対話が第1および/または第2の対話に関連付けられていないと判定する。例えば、分析および重複排除システム202は、第1、第2、および/または第3の対話の対話データに基づいて、第1および第2の対話が第3の対話に関連付けられていないと判定し得る。ステップ956において、第2のデバイスは、第4の対話を検出し得る。例えば、第4の対話は、コンバージョンを完了することを含み得る。様々な実装形態において、ステップ956は、対話データを送信することを含み得る。例えば、第2のデバイスは、第1の識別子と第2の識別子とを有する対話データを分析および重複排除システム202に送信し得る。
ステップ958において、分析および重複排除システム202は、第4の対話に注釈を付け得る。例えば、分析および重複排除システム202は、第1の対話、第2の対話、第3の対話、および/または第4の対話に関連付けられた識別子に基づいて、第1の対話、第2の対話、および/または第3の対話を識別し得、識別子に関連付けられた以前の対話を優先するように第4の対話に注釈を付け得る。ステップ960において、分析および重複排除システム202は、第4の対話に第3の対話を関連付けるインストール後タイプのアトリビューションを生成するために、第4の対話に関連付けられた注釈付き対話データを分析し得る。様々な実装形態において、ステップ960は、注釈に基づいて以前の対話を検索することと、第3および第4の対話に関連付けられた識別子に基づいて第3の対話を識別することとを含む。様々な実装形態において、分析および重複排除システム202は、第1の識別子とともに記憶された第3の対話のコピーと第2の識別子とともに記憶された第3の対話のコピーとの間で重複排除するために注釈を使用する。追加的または代替的に、分析および重複排除システム202は、第4の対話に関連付けられたアトリビューションのタイプを決定するために注釈を使用し得る。例えば、注釈は、分析および重複排除システム202が第1の対話と、第2の対話と、第3の対話と、第4の対話とに関連付けられた共有された識別子に基づいて第1および第2の対話を以前に識別したことに基づいて、第4の対話に関連付けられたアカウントが第1のオープンタイプのアトリビューションをすでに有しており、インストール後タイプのアトリビューションにのみ適格であることを示し得る。
図7は、例えば、本開示において説明されている例示的なシステム(例えば、システム200など)のいずれかを実装するために使用され得るコンピューティングシステム1000の描写を示す。コンピューティングシステム1000は、情報を通信するためのバス1005または他の通信構成要素と、情報を処理するための、バス1005に結合されたプロセッサ1010とを含む。コンピューティングシステム1000は、情報と、プロセッサ1010によって実行されるべき命令とを記憶するための、バス1005に結合された、ランダムアクセスメモリ(「RAM」)または他の動的記憶デバイスなどのメインメモリ1015も含む。メインメモリ1015は、プロセッサ1010による命令の実行中に、位置情報、一時的な変数、または他の中間情報を記憶するためにも使用され得る。コンピューティングシステム1000は、プロセッサ1010のための静的情報と命令とを記憶するための、バス1005に結合された、読み取り専用メモリ(「ROM」)1020または他の静的記憶デバイスをさらに含み得る。ソリッドステートデバイス、磁気ディスク、または光ディスクなどの記憶デバイス1025は、情報と命令とを永続的に記憶するためにバス1005に結合される。
コンピューティングシステム1000は、バス1005を介して、情報をユーザに表示するための液晶ディスプレイまたはアクティブマトリックスディスプレイなどのディスプレイ1035に結合され得る。英数字キーと他のキーとを含むキーボードなどの入力デバイス1030は、情報とコマンド選択とをプロセッサ1010に通信するためにバス1005に結合され得る。別の実装形態において、入力デバイス1030は、タッチスクリーンディスプレイ1035を有する。入力デバイス1030は、方向情報とコマンド選択とをプロセッサ1010に通信するため、およびディスプレイ1035におけるカーソル移動を制御するための、マウス、トラックボール、またはカーソル方向キーなどのカーソル制御を含むことができる。
いくつかの実装形態において、コンピューティングシステム1000は、ネットワーキングアダプタなどの通信アダプタ1040を含み得る。通信アダプタ1040は、バス1005に結合され得、コンピューティングもしくは通信ネットワーク1045および/または他のコンピューティングシステムとの通信を可能にするように構成され得る。様々な例示的な実装形態において、任意のタイプのネットワーキング構成が、有線(例えば、イーサネットを介する)、ワイヤレス(例えば、WiFi、Bluetoothなどを介する)、事前構成済み、アドホック、LAN、WANなどの通信アダプタ1040を使用して達成され得る。
様々な実装形態によれば、本明細書で説明されている例示的な実装形態を実施するプロセスは、プロセッサ1010がメインメモリ1015内に含まれる命令の配置を実行することに応答して、コンピューティングシステム1000によって達成され得る。そのような命令は、記憶デバイス1025などの別のコンピュータ可読媒体からメインメモリ1015内に読み取られ得る。メインメモリ1015内に含まれる命令の配置の実行は、コンピューティングシステム1000に、本明細書で説明されている例示的なプロセスを実行させる。メインメモリ1015内に含まれる命令を実行するために、マルチプロセッシング配置内の1つまたは複数のプロセッサも用いられ得る。例示的な実装形態において、例示的な実装形態を実装するために、ソフトウェア命令の代わりに、またはソフトウェア命令と組み合わせて、ハードワイヤード回路が使用され得る。したがって、実装形態は、ハードウェア回路とソフトウェアとの任意の特定の組合せに限定されない。
例示的な処理システムが図6において記載されているが、本明細書で説明されている主題および機能動作の実装形態は、他のタイプのデジタル電子回路を使用して、または本明細書で開示される構造とそれらの構造的同等物とを含む、コンピュータソフトウェア、ファームウェア、もしくはハードウェアにおいて、または、それらのうちの1つまたは複数の組合せにおいて実行され得る。
上記の説明に加えて、ユーザは、本明細書で説明されているシステム、プログラム、または機能がユーザ情報(例えば、ユーザのソーシャルネットワーク、ソーシャルアクション、または活動、職業、ユーザの好み、またはユーザの現在の場所に関する情報)の収集を可能にする可能性があるかどうか、およびいつ可能にする可能性があるかと、ユーザにサーバからコンテツまたは通信が送信されるかどうかの両方に関してユーザが選択を行うことを可能にする制御を提供され得る。加えて、特定のデータは、個人を特定できる情報が削除されるように、記憶または使用される前に1つまたは複数の方法で処理され得る。例えば、ユーザの識別情報は、ユーザについて個人を特定できる情報を決定することができないように処理され得、または、ユーザの地理的位置は、ユーザの特定の場所を決定することができないように、位置情報が取得される場所(例えば、都市、郵便番号、または州レベル)で一般化されて得る。したがって、ユーザは、どのような情報がユーザに関して収集されるかと、その情報がどのように使用されるのかと、どのような情報がユーザに提供されるかとを制御し得る。本明細書で説明されているシステムが、ユーザまたはユーザデバイス上にインストールされているアプリケーションに関する個人情報を収集する、または個人情報を使用する状況において、ユーザは、プログラムもしくは機能がユーザ情報(例えば、ユーザのソーシャルネットワーク、ソーシャルアクション、もしくは活動、職業、ユーザの好み、またはユーザの現在の場所に関する情報)を収集するかどうかを制御する機会を提供され得る。追加的または代替的に、特定のデータが、記憶または使用される前に個人情報が削除されるように1つまたは複数の方法において処理され得る。
本開示のシステムおよび方法は、多くの利益を提供し得る。いくつかのシステムは、特徴を共有するイベントを識別できない場合がある。例えば、従来のシステムは、異なるデバイス上で発生する関連するイベント間の関連付けを判定することができない場合がある。例えば、第1のデバイスを使用するユーザは、アカウント設定を更新し得、次いで、第2のデバイス上でアカウントを使用している間、更新された設定に関する障害(例えば、ソフトウェアのバグなど)を体験し得る。従来のシステムは、第1のデバイス上で発生した設定更新を第2のデバイス上で発生した障害と関連付けることができないので、なにが障害につながったのかを判定することができない場合がある。様々な実装形態において、そのような従来のシステムは、イベントを識別するために第1の識別子タイプ(例えば、デバイス識別子)を使用することによって制限される。デバイスにわたって発生するイベントなどの、特徴を共有するイベントを識別することができることは、有益であり得る。例えば、特徴を共有するイベントを識別することは、根本原因分析、および/またはユーザ体験を最適化し、アプリケーションをよりユーザフレンドリーにするために対話シーケンスを決定することを容易にし得る。したがって、特徴(例えば、アカウント、識別子など)を共有するイベントを識別することができるシステムが必要とされる。
いくつかの実装形態において、イベントを識別するための第2の識別子タイプ(例えば、アカウント識別子)の導入は、特徴を共有するイベントを識別することを容易にし得る。しかしながら、第2の識別子タイプを導入することは、イベントデータ間の重複排除の必要性につながる可能性がある。例えば、システムは、特定のイベントに関連付けられた対話データの2つのコピー、第1の識別子(例えば、デバイス識別子)を有する第1のコピーと、第2の識別子(例えば、アカウント識別子)を有する第2のコピーとを記憶し得る。システムが第1および第2の識別子を有する後続の対話データを受信し、第1のおよび第2の識別子に関連付けられた以前の対話を検索すると、システムは、元の対話データの第1および第2のコピーを返す場合があり、それによって、後続の対話に関連付けられた以前の対話の数を過剰報告する。したがって、特徴を共有するイベントを識別し、以前のイベント間で重複排除することができるシステムが必要とされる。本開示のシステムおよび方法は、各以前の対話に関連付けられた対話データの単一のコピーを選択するために対話データに注釈を付けることによって、特徴を共有するイベントを識別することと、以前のイベント間の重複排除とを容易にし得、それによって、コンバージョン率などを過剰報告することを防止する。
本明細書で説明されている主題および動作の実装形態は、デジタル電子回路を使用して、または本明細書で開示される構造とそれらの構造的同等物とを含む、有形の媒体上に具体化されたコンピュータソフトウェア、ファームウェア、もしくはハードウェアにおいて、または、それらのうちの1つまたは複数の組合せにおいて実行され得る。本明細書で説明されている主題の実装形態は、データ処理装置によって実行するための、またはデータ処理装置の動作を制御するための、1つまたは複数のコンピュータ記憶媒体上に符号化された、1つまたは複数のコンピュータプログラム、すなわち、コンピュータプログラム命令の1つまたは複数のモジュールとして実装され得る。代替的にまたは加えて、プログラム命令は、データ処理装置によって実行するために適切な受信機装置に送信するための情報を符号化するために生成された、人工的に生成された伝搬信号、例えば、機械生成の電気、光、または電磁信号上に符号化され得る。コンピュータ可読記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶基板、ランダムもしくはシリアルアクセスメモリアレイもしくはデバイス、またはそれらのうちの1つもしくは複数の組合せであるか、またはそれらの中に含まれ得る。さらに、コンピュータ記憶デバイスは、伝搬信号ではないが、コンピュータ記憶媒体は、人工的に生成された伝搬信号内に符号化されたコンピュータプログラム命令のソースまたは宛先であり得る。コンピュータ記憶媒体は、1つまたは複数の別個の構成要素または媒体(例えば、複数のCD、ディスク、または他の記憶デバイス)でもあり得、またはその中に含まれ得る。コンピュータ記憶媒体は、有形であり得、および/または非一時的であり得る。
本明細書で説明されている動作は、1つもしくは複数のコンピュータ可読記憶デバイス上に記憶されたデータ、または他のソースから受信されたデータに対してデータ処理装置によって実行される動作として実施され得る。
「データ処理装置」または「コンピューティングデバイス」という用語は、例として、プログラム可能なプロセッサ、コンピュータ、システムオンチップ、または上記の複数のもの、または上記の組合せを含む、データを処理するためのすべての種類の装置、デバイス、および機械を包含する。装置は、専用論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含むことができる。装置は、ハードウェアに加えて、問題のコンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想マシン、またはそれらのうちの1つもしくは複数の組合せを構成するコードを含むこともできる。装置および実行環境は、ウェブサービス、分散コンピューティング、およびグリッドコンピューティングインフラストラクチャなどの、様々な異なるコンピューティングモデルインフラストラクチャを実現することができる。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイル型またはインタプリタ型言語、宣言型または手続き型言語を含む、任意の形式のプログラミング言語において記述され得、スタンドアロンプログラムとして、またはモジュール、構成要素、サブルーチン、オブジェクト、もしくはコンピューティング環境において使用するのに適した他のユニットとしてを含む、任意の形式において展開され得る。コンピュータプログラムは、ファイルシステム内のファイルに対応し得るが、そうである必要はない。プログラムは、他のプログラムもしくはデータを保持するファイルの一部(例えば、マークアップ言語内に記憶された1つまたは複数のスクリプト)内、問題のプログラム専用の単一のファイル内、または複数の協調ファイル(例えば、1つまたは複数のモジュール、サブプログラム、またはコードの一部を記憶するファイル)内に記憶され得る。コンピュータプログラムは、1つのコンピュータ上、または1つのサイトに配置されるか、もしくは複数のサイトに分散され、通信ネットワークによって相互接続された複数のコンピュータ上で実行されるように展開され得る。
本明細書で説明されているプロセスおよび論理フローは、入力データに対して動作して出力を生成することによってアクションを実行するために1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能なプロセッサによって実行され得る。プロセスおよび論理フローは、専用論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によっても実行され得、装置は、専用論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)としても実装され得る。本明細書で利用される回路は、ハードウェア回路(例えば、FPGA、ASICなど)、ソフトウェア(1つまたは複数のコンピュータ可読記憶媒体上に記憶され、1つまたは複数のプロセッサによって実行可能な命令)、またはそれらの任意の組合せを使用して実装され得る。
コンピュータプログラムの実行に適したプロセッサは、例として、汎用マイクロプロセッサと専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、読み取り専用メモリもしくはランダムアクセスメモリまたはその両方から命令とデータとを受信する。コンピュータの本質的な要素は、命令に従ってアクションを実行するためのプロセッサ、および命令とデータとを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータは、データを記憶するための1つまたは複数の大容量記憶デバイス、例えば、磁気ディスク、光磁気ディスク、または光ディスクも含むか、またはそれらからデータを受信するため、もしくはそれらにデータを送信するため、もしくはその両方を行うためにそれらに動作可能に結合される。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。さらに、コンピュータは、別のデバイス内、例えば、数例を挙げると、携帯電話、携帯情報端末(「PDA」)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(「GPS」)レシーバ、またはポータブル記憶デバイス(例えば、ユニバーサルシリアルバス(「USB」)フラッシュドライブ)内に組み込まれ得る。コンピュータプログラム命令とデータとを記憶するのに適したデバイスは、例として、半導体メモリデバイス、例えば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、例えば、内蔵ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD ROMディスクおよびDVD-ROMディスクを含む、すべての形式の不揮発性メモリ、媒体、およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路によって補完されるか、またはそれらに組み込まれ得る。
ユーザとの対話を提供するために、本明細書で説明されている主題の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタと、ユーザがコンピュータに入力を提供することができるキーボードおよびポインティングデバイス、例えば、マウスまたはトラックボールとを有するコンピュータを使用して実行され得る。同様にユーザとの対話を提供するために、他の種類のデバイスが使用され得、例えば、ユーザに提供されるフィードバックは、任意の形態の感覚的フィードバック、例えば、視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバックであり得、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態において受信され得る。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、そこから文書を受信することによって、例えば、ユーザのクライアントデバイス上のウェブブラウザから受信された要求に応答してウェブブラウザにウェブページを送信することによって、ユーザと対話することができる。
本明細書で説明されている主題の実施形態は、例えば、データサーバとしてのバックエンド構成要素を含むか、またはミドルウェア構成要素、例えば、アプリケーションサーバを含むか、またはフロントエンド構成要素、例えば、ユーザが本明細書で説明されている主題の実装形態と対話することができるグラフィカルユーザインターフェースもしくはウェブブラウザを有するクライアントコンピュータを含むか、または1つもしくは複数のそのようなバックエンド構成要素、ミドルウェア構成要素、もしくはフロントエンド構成要素の任意の組合せを含むコンピューティングシステムを使用して実行され得る。システムの構成要素は、任意の形態または媒体のデジタルデータ通信、例えば、通信ネットワークによって相互接続され得る。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、インターネットワーク(例えば、インターネット)、ならびにピアツーピアネットワーク(例えば、アドホックピアツーピアネットワーク)を含む。
コンピューティングシステムは、クライアントとサーバとを含むことができる。クライアントおよびサーバは、一般に、互いに離れており、典型的には、通信ネットワークを介して対話する。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行され、互いにクライアント~サーバ関係を有するコンピュータプログラムによって発生する。いくつかの実装形態において、サーバは、データ(例えば、HTMLページ)をクライアントデバイスに(例えば、クライアントデバイスと対話するユーザにデータを表示し、ユーザからユーザ入力を受信する目的のために)送信する。クライアントデバイスにおいて生成されたデータ(例えば、ユーザ対話の結果)は、サーバにおいてクライアントデバイスから受信され得る。
本明細書は、多くの特定の実装形態の詳細を含むが、これらは、任意の発明の範囲または特許請求され得るものに対する制限として解釈されるべきではなく、むしろ、特定の発明の特定の実施形態に固有の特徴の説明として解釈されるべきである。別々の実施形態の文脈において本明細書で説明されている特定の特徴は、単一の実装形態において、または組み合わせても実行され得る。逆に、単一の実施形態の文脈において説明されている様々な特徴は、別々に複数の実施形態において、または任意の適切な部分的組合せにおいても実行され得る。さらに、特徴は、特定の組合せにおいて作用するものとして上記で説明されている場合があり、当初はそのように特許請求されている場合さえあるが、特許請求されている組合せからの1つまたは複数の特徴は、場合によっては、組合せから削除され得、特許請求されている組合せは、部分的組合せまたは部分的組合せの変形形態に向けられている場合がある。加えて、特定の見出しに関して説明されている特徴は、他の見出しの下で説明されている例示的な実装形態に関しておよび/または組み合わせて利用され得、見出しは、提供されている場合、読みやすさだけのために含まれ、そのような見出しに関して提供されている任意の機能を制限するものとして解釈されるべきではない。
同様に、動作は、特定の順序において図面中に描かれているが、これは、所望の結果を達成するために、そのような動作が示されている特定の順序で、もしくは順番に実行されること、またはすべての図示された動作が実行されることを要求するものとして理解されるべきではない。特定の状況では、マルチタスクおよび並列処理が有利な可能性がある。さらに、上記で説明した実施形態における様々なシステム構成要素の分離は、すべての実施形態においてそのような分離を必要とするものとして理解されるべきではなく、説明されているプログラム構成要素およびシステムが、一般に、単一のソフトウェア製品に一体化され得、または有形の媒体において具体化された複数のソフトウェア製品にパッケージ化され得ることが理解されるべきである。
したがって、主題の特定の実施形態について説明してきた。他の実施形態は、以下の特許請求の範囲内にある。場合によっては、特許請求の範囲において列挙されているアクションは、異なる順序で実行され得、所望の結果を依然として達成することができる。加えて、添付図面中に描かれているプロセスは、所望の結果を達成するために、示された特定の順序、または順番を必ずしも必要としない。特定の実装形態において、マルチタスクおよび並列処理が有利である可能性がある。
10A システム
10B システム
12 第1のコンピューティングデバイス
14A 第1のデータベース
14B 第2のデータベース
16 第2のコンピューティングデバイス
18 分析システム
110 クライアントデバイス
112 アプリケーション
120 ソフトウェア開発キット、ソフトウェア開発キット(SDK)、SDK
122 イベント回路
124 バンドリング回路
126 報告回路
160 ネットワーク
200 システム
202 分析および重複排除システム
300 第1のデータ処理システム
310 注釈付きコンバージョンデータベース
320 処理回路
330 プロセッサ
340 メモリ
342 注釈コンパイラ回路
400 第2のデータ処理システム
410 識別子データベース
420 対話データベース
430 処理回路
440 プロセッサ
450 メモリ
452 識別子回路
454 注釈回路
456 分析回路
458 報告回路
500 第3のデータ処理システム
510 処理回路
520 プロセッサ
530 メモリ
532 情報集約および分析要求回路
1000 コンピューティングシステム
1005 バス
1010 プロセッサ
1015 メインメモリ
1020 読み取り専用メモリ(「ROM」)
1025 記憶デバイス
1030 入力デバイス
1035 ディスプレイ、タッチスクリーンディスプレイ
1040 通信アダプタ
1045 コンピューティングもしくは通信ネットワーク

Claims (30)

  1. デバイスから、第1の識別子を含むイベントに関連付けられた対話データを受信するステップと、
    前記第1の識別子に関連付けられた第2の識別子を識別するステップと、
    前記第1の識別子または前記第2の識別子に関連付けられた1つまたは複数の以前の対話を識別するステップと、
    前記識別された1つまたは複数の以前の対話に基づいて前記対話データに注釈を付けるステップであって、前記注釈が、前記第1の識別子に関連付けられた以前の対話または前記第2の識別子に関連付けられた以前の対話に関する優先度を示す、ステップと、
    前記イベントが前記以前の対話のうちの1つまたは複数に関連付けられているという指示を送信するステップであって、前記1つまたは複数の以前の対話が、前記注釈によって示される前記優先度に基づいて決定される、ステップと
    を含む方法。
  2. 前記1つまたは複数の以前の対話のうちの少なくとも2つが単一の以前のイベントに関連付けられ、前記少なくとも2つの以前の対話のうちの第1のものが前記第1の識別子に関連付けられ、前記少なくとも2つの以前の対話のうちの第2のものが前記第2の識別子に関連付けられ、前記少なくとも2つの以前の対話のうちの前記第1および第2のものが第2のデバイスに関連付けられる、請求項1に記載の方法。
  3. 前記第1の識別子に関連付けられた1つまたは複数の他の識別子を識別するステップをさらに含み、
    前記第1の識別子または前記第2の識別子に関連付けられた前記1つまたは複数の以前の対話を識別するステップが、前記第1の識別子、前記第2の識別子、または前記1つもしくは複数の他の識別子のうちの1つに関連付けられた1つまたは複数の以前の対話を識別するステップをさらに含み、
    前記注釈が、前記第1の識別子、前記第2の識別子、または前記1つもしくは複数の他の識別子のうちの1つに関連付けられた以前の対話に関する優先度を示す、請求項1または2に記載の方法。
  4. 前記対話データに注釈を付けるステップが、
    前記1つまたは複数の以前の対話が前記第1の識別子に関連付けられた対話を含むかどうかを判定するステップと、
    前記1つまたは複数の以前の対話が前記第1の識別子に関連付けられた対話を含むとの判定に応答して、前記第1の識別子に関連付けられた以前の対話を優先するように前記対話データに注釈を付けるステップと、
    前記1つまたは複数の以前の対話が前記第1の識別子に関連付けられた対話を含まないとの判定に応答して、前記1つまたは複数の以前の対話が前記第2の識別子に関連付けられた対話を含むかどうかを判定するステップと、
    前記1つまたは複数の以前の対話が前記第2の識別子に関連付けられた対話を含むとの判定に応答して、前記第2の識別子に関連付けられた以前の対話を優先するように前記対話データに注釈を付けるステップと
    を含む、請求項1から3のいずれか一項に記載の方法。
  5. 前記イベントに関連付けられた前記以前の対話を識別するために、以前の対話を分析するステップをさらに含み、前記以前の対話が前記注釈によって示される識別子を含む、請求項1から4のいずれか一項に記載の方法。
  6. 前記以前の対話が第1のデバイスに関連付けられ、前記イベントが第2のデバイスに関連付けられる、請求項5に記載の方法。
  7. 前記対話データと注釈とをコンピュータストレージ内に記憶するステップをさらに含み、前記第1または第2の識別子に関連付けられた以前の対話の将来の分析が、分析を前記注釈によって示される前記識別子に関連付けられた対話に限定することによって、検索空間を低減する、請求項5または6に記載の方法。
  8. 前記第1の識別子が前記デバイスに関連付けられ、前記第2の識別子がアカウントに関連付けられる、請求項1から7のいずれか一項に記載の方法。
  9. 前記第1の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データが、前記第2の識別子を有する以前の対話に関連付けることができず、前記第2の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データが、前記第1の識別子を有する以前の対話に関連付けることができない、請求項1から8のいずれか一項に記載の方法。
  10. 前記イベントに関連する総統計を決定するために、前記注釈を使用して前記以前の対話を分析するステップをさらに含み、前記総統計が、前記イベントと特徴を共有する前記以前の対話のカウントを含む、請求項1から9のいずれか一項に記載の方法。
  11. 特徴を共有するイベントを識別するためのシステムであって、前記システムが、
    1つまたは複数のプロセッサと1つまたは複数のメモリとを含む1つまたは複数の処理回路を含み、前記1つまたは複数のメモリには、前記1つまたは複数のプロセッサによって実行されると、前記1つまたは複数の処理回路に、
    デバイスから、第1の識別子を含むイベントに関連付けられた対話データを受信する動作と、
    前記第1の識別子に関連付けられた第2の識別子を識別する動作と、
    前記第1の識別子または前記第2の識別子に関連付けられた1つまたは複数の以前の対話を識別する動作と、
    前記識別された1つまたは複数の以前の対話に基づいて、前記対話データに注釈を付ける動作であって、前記注釈が、前記第1の識別子に関連付けられた以前の対話または前記第2の識別子に関連付けられた以前の対話に関する優先度を示す、動作と、
    前記イベントが前記以前の対話のうちの1つまたは複数に関連付けられているという指示を送信する動作であって、前記1つまたは複数の以前の対話が、前記注釈によって示される前記優先度に基づいて決定される、動作と
    を実行させる命令が記憶されている、システム。
  12. 前記1つまたは複数の以前の対話のうちの少なくとも2つが単一の以前のイベントに関連付けられ、前記少なくとも2つの以前の対話のうちの第1のものが前記第1の識別子に関連付けられ、前記少なくとも2つの以前の対話のうちの第2のものが前記第2の識別子に関連付けられ、前記少なくとも2つの以前の対話のうちの前記第1および第2のものが第2のデバイスに関連付けられる、請求項11に記載のシステム。
  13. 前記1つまたは複数の処理回路が、前記第1の識別子に関連付けられた1つまたは複数の他の識別子を識別するようにさらに構成され、
    前記第1の識別子または前記第2の識別子に関連付けられた前記1つまたは複数の以前の対話を識別する動作が、前記第1の識別子、前記第2の識別子、または前記1つもしくは複数の他の識別子のうちの1つに関連付けられた1つまたは複数の以前の対話を識別する動作をさらに含み、
    前記注釈が、前記第1の識別子、前記第2の識別子、または前記1つもしくは複数の他の識別子のうちの1つに関連付けられた以前の対話に関する優先度を示す、請求項11または12に記載のシステム。
  14. 前記対話データに注釈を付ける動作が、
    前記1つまたは複数の以前の対話が前記第1の識別子に関連付けられた対話を含むかどうかを判定する動作と、
    前記1つまたは複数の以前の対話が前記第1の識別子に関連付けられた対話を含むとの判定に応答して、前記第1の識別子に関連付けられた以前の対話を優先するように前記対話データに注釈を付ける動作と、
    前記1つまたは複数の以前の対話が前記第1の識別子に関連付けられた対話を含まないとの判定に応答して、前記1つまたは複数の以前の対話が前記第2の識別子に関連付けられた対話を含むかどうかを判定する動作と、
    前記1つまたは複数の以前の対話が前記第2の識別子に関連付けられた対話を含むとの判定に応答して、前記第2の識別子に関連付けられた以前の対話を優先するように前記対話データに注釈を付ける動作と
    を含む、請求項11から13のいずれか一項に記載のシステム。
  15. 前記1つまたは複数の処理回路が、
    前記イベントに関連付けられた前記以前の対話を識別するために、以前の対話を分析するようにさらに構成され、前記以前の対話が前記注釈によって示される識別子を含む、請求項11から14のいずれか一項に記載のシステム。
  16. 前記以前の対話が第1のデバイスに関連付けられ、前記イベントが第2のデバイスに関連付けられる、請求項15に記載のシステム。
  17. 前記1つまたは複数の処理回路が、前記対話データと注釈とをコンピュータストレージ内に記憶するようにさらに構成され、前記第1または第2の識別子に関連付けられた以前の対話の将来の分析が、分析を前記注釈によって示される前記識別子に関連付けられた対話に限定することによって、検索空間を低減する、請求項15または16に記載のシステム。
  18. 前記第1の識別子が前記デバイスに関連付けられ、前記第2の識別子がアカウントに関連付けられる、請求項11から17のいずれか一項に記載のシステム。
  19. 前記第1の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データが、前記第2の識別子を有する以前の対話に関連付けることができず、前記第2の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データが、前記第1の識別子を有する以前の対話に関連付けることができない、請求項11から18のいずれか一項に記載のシステム。
  20. 前記1つまたは複数の処理回路が、前記イベントに関連する総統計を決定するために、前記注釈を使用して前記以前の対話を分析するようにさらに構成され、前記総統計が、前記イベントと特徴を共有する前記以前の対話のカウントを含む、請求項11から19のいずれか一項に記載のシステム。
  21. 1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、
    デバイスから、第1の識別子を含むイベントに関連付けられた対話データを受信する動作と、
    前記第1の識別子に関連付けられた第2の識別子を識別する動作と、
    前記第1の識別子または前記第2の識別子に関連付けられた1つまたは複数の以前の対話を識別する動作と、
    前記識別された1つまたは複数の以前の対話に基づいて、前記対話データに注釈を付ける動作であって、前記注釈が、前記第1の識別子に関連付けられた以前の対話または前記第2の識別子に関連付けられた以前の対話に関する優先度を示す、動作と、
    前記イベントが前記以前の対話のうちの1つまたは複数に関連付けられているという指示を送信する動作であって、前記1つまたは複数の以前の対話が、前記注釈によって示される前記優先度に基づいて決定される、動作と
    を実行させる命令が記憶されている1つまたは複数のコンピュータ可読記憶媒体。
  22. 前記1つまたは複数の以前の対話のうちの少なくとも2つが単一の以前のイベントに関連付けられ、前記少なくとも2つの以前の対話のうちの第1のものが前記第1の識別子に関連付けられ、前記少なくとも2つの以前の対話のうちの第2のものが前記第2の識別子に関連付けられ、前記少なくとも2つの以前の対話のうちの前記第1および第2のものが第2のデバイスに関連付けられる、請求項21に記載の1つまたは複数のコンピュータ可読記憶媒体。
  23. 前記1つまたは複数のプロセッサが、前記第1の識別子に関連付けられた1つまたは複数の他の識別子を識別するようにさらに構成され、
    前記第1の識別子または前記第2の識別子に関連付けられた前記1つまたは複数の以前の対話を識別する動作が、前記第1の識別子、前記第2の識別子、または前記1つもしくは複数の他の識別子のうちの1つに関連付けられた1つまたは複数の以前の対話を識別する動作をさらに含み、
    前記注釈が、前記第1の識別子、前記第2の識別子、または前記1つもしくは複数の他の識別子のうちの1つに関連付けられた以前の対話に関する優先度を示す、請求項21または22に記載の1つまたは複数のコンピュータ可読記憶媒体。
  24. 前記対話データに注釈を付ける動作が、
    前記1つまたは複数の以前の対話が前記第1の識別子に関連付けられた対話を含むかどうかを判定する動作と、
    前記1つまたは複数の以前の対話が前記第1の識別子に関連付けられた対話を含むとの判定に応答して、前記第1の識別子に関連付けられた以前の対話を優先するように前記対話データに注釈を付ける動作と、
    前記1つまたは複数の以前の対話が前記第1の識別子に関連付けられた対話を含まないとの判定に応答して、前記1つまたは複数の以前の対話が前記第2の識別子に関連付けられた対話を含むかどうかを判定する動作と、
    前記1つまたは複数の以前の対話が前記第2の識別子に関連付けられた対話を含むとの判定に応答して、前記第2の識別子に関連付けられた以前の対話を優先するように前記対話データに注釈を付ける動作と
    を含む、請求項21から23のいずれか一項に記載の1つまたは複数のコンピュータ可読記憶媒体。
  25. 前記1つまたは複数のプロセッサが、
    前記イベントに関連付けられた前記以前の対話を識別するために、以前の対話を分析するようにさらに構成され、前記以前の対話が前記注釈によって示される識別子を含む、請求項21から24のいずれか一項に記載の1つまたは複数のコンピュータ可読記憶媒体。
  26. 前記以前の対話が第1のデバイスに関連付けられ、前記イベントが第2のデバイスに関連付けられる、請求項25に記載の1つまたは複数のコンピュータ可読記憶媒体。
  27. 前記1つまたは複数のプロセッサが、前記対話データと注釈とをコンピュータストレージ内に記憶するようにさらに構成され、前記第1または第2の識別子に関連付けられた以前の対話の将来の分析が、分析を前記注釈によって示される前記識別子に関連付けられた対話に限定することによって、検索空間を低減する、請求項25または26に記載の1つまたは複数のコンピュータ可読記憶媒体。
  28. 前記第1の識別子が前記デバイスに関連付けられ、前記第2の識別子がアカウントに関連付けられる、請求項21から27のいずれか一項に記載の1つまたは複数のコンピュータ可読記憶媒体。
  29. 前記第1の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データが、前記第2の識別子を有する以前の対話に関連付けることができず、前記第2の識別子に関連付けられた以前の対話に関する優先度で注釈が付けられた対話データが、前記第1の識別子を有する以前の対話に関連付けることができない、請求項21から28のいずれか一項に記載の1つまたは複数のコンピュータ可読記憶媒体。
  30. 前記1つまたは複数のプロセッサが、前記イベントに関連する総統計を決定するために、前記注釈を使用して前記以前の対話を分析するようにさらに構成され、前記総統計が、前記イベントと特徴を共有する前記以前の対話のカウントを含む、請求項21から29のいずれか一項に記載の1つまたは複数のコンピュータ可読記憶媒体。
JP2021541107A 2020-08-18 2020-08-18 特徴を共有するイベントを識別するためのシステムおよび方法 Active JP7304954B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2020/046741 WO2022039717A1 (en) 2020-08-18 2020-08-18 Systems and methods for identifying events that share a characteristic

Publications (2)

Publication Number Publication Date
JP2022549037A true JP2022549037A (ja) 2022-11-24
JP7304954B2 JP7304954B2 (ja) 2023-07-07

Family

ID=72322537

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541107A Active JP7304954B2 (ja) 2020-08-18 2020-08-18 特徴を共有するイベントを識別するためのシステムおよび方法

Country Status (6)

Country Link
US (1) US20220318250A1 (ja)
JP (1) JP7304954B2 (ja)
KR (1) KR102596933B1 (ja)
CN (1) CN114402300A (ja)
DE (1) DE112020000274T5 (ja)
WO (1) WO2022039717A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7447204B1 (ja) 2022-08-31 2024-03-11 楽天グループ株式会社 情報管理システム、情報管理方法及びプログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11676175B1 (en) * 2021-08-20 2023-06-13 Meta Platforms, Inc. Multiple identifiers for user accounts

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017522664A (ja) * 2014-06-24 2017-08-10 グーグル インコーポレイテッド 装置間相互通知
US20180103112A1 (en) * 2016-10-07 2018-04-12 Bank Of America Corporation System for automatically establishing an operative communication channel to transmit instructions for canceling duplicate interactions with third party systems
JP2020514877A (ja) * 2017-04-28 2020-05-21 グーグル エルエルシー クロスネットワークイベントアトリビューションを提供するためのシステムおよび方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140040786A1 (en) * 2012-08-01 2014-02-06 KeyMetric, Inc. Automatic tracking of user engagement with computing interfaces
US20160255139A1 (en) * 2016-03-12 2016-09-01 Yogesh Chunilal Rathod Structured updated status, requests, user data & programming based presenting & accessing of connections or connectable users or entities and/or link(s)
US9274858B2 (en) * 2013-09-17 2016-03-01 Twilio, Inc. System and method for tagging and tracking events of an application platform
US20150304368A1 (en) * 2014-04-16 2015-10-22 Facebook, Inc. Sharing Locations with Friends on Online Social Networks
JP6072743B2 (ja) * 2014-09-19 2017-02-01 ヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム
US10210182B2 (en) * 2014-12-16 2019-02-19 International Business Machines Corporation Image search with historical user activity metadata
GB201515394D0 (en) * 2015-08-28 2015-10-14 Status Today Ltd Predictive activity detection on a computer network
US9946653B2 (en) * 2016-04-29 2018-04-17 Ncr Corporation Predictive memory caching
US20180165349A1 (en) * 2016-12-14 2018-06-14 Linkedin Corporation Generating and associating tracking events across entity lifecycles
US20180260442A1 (en) * 2017-03-10 2018-09-13 Microsoft Technology Licensing, Llc Self-tutoring graph of event data
US10915498B2 (en) * 2017-03-30 2021-02-09 International Business Machines Corporation Dynamically managing a high speed storage tier of a data storage system
US11366872B1 (en) * 2017-07-19 2022-06-21 Amazon Technologies, Inc. Digital navigation menus with dynamic content placement
US10586237B2 (en) * 2017-09-20 2020-03-10 XSELL Technologies, Inc. Method, apparatus, and computer-readable media for customer interaction semantic annotation and analytics
WO2019122990A1 (en) * 2017-12-23 2019-06-27 Yogesh Chunilal Rathod Providing interface for identifying one or more types of user actions & criteria specific users
US10949471B2 (en) * 2018-01-04 2021-03-16 Facebook, Inc. Generating catalog-item recommendations based on social graph data
US10387487B1 (en) * 2018-01-25 2019-08-20 Ikorongo Technology, LLC Determining images of interest based on a geographical location
US10491962B2 (en) * 2018-03-14 2019-11-26 Rovi Guides, Inc. Systems and methods for presenting event notifications, based on active applications in a social group, on devices notwithstanding a user instruction to disable event notifications
US20180260481A1 (en) * 2018-04-01 2018-09-13 Yogesh Rathod Displaying search result associated identified or extracted unique identity associated structured contents or structured website
US10963273B2 (en) * 2018-04-20 2021-03-30 Facebook, Inc. Generating personalized content summaries for users
US20210342836A1 (en) * 2018-05-06 2021-11-04 Strong Force TX Portfolio 2018, LLC Systems and methods for controlling rights related to digital knowledge
WO2020237124A1 (en) * 2019-05-22 2020-11-26 Computed Futures, Lcc Systems and methods for detecting and mitigating cyber security threats
US20210319668A1 (en) * 2020-01-09 2021-10-14 Adrenalineip Artificial intelligence and machine learning enhanced betting odds method, system, and apparatus
US11314616B2 (en) * 2020-01-29 2022-04-26 Adobe Inc. Machine learning models applied to interaction data for facilitating modifications to online environments

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017522664A (ja) * 2014-06-24 2017-08-10 グーグル インコーポレイテッド 装置間相互通知
US20180103112A1 (en) * 2016-10-07 2018-04-12 Bank Of America Corporation System for automatically establishing an operative communication channel to transmit instructions for canceling duplicate interactions with third party systems
JP2020514877A (ja) * 2017-04-28 2020-05-21 グーグル エルエルシー クロスネットワークイベントアトリビューションを提供するためのシステムおよび方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7447204B1 (ja) 2022-08-31 2024-03-11 楽天グループ株式会社 情報管理システム、情報管理方法及びプログラム

Also Published As

Publication number Publication date
KR102596933B1 (ko) 2023-11-01
US20220318250A1 (en) 2022-10-06
DE112020000274T5 (de) 2022-05-19
WO2022039717A1 (en) 2022-02-24
CN114402300A (zh) 2022-04-26
KR20220023325A (ko) 2022-03-02
JP7304954B2 (ja) 2023-07-07

Similar Documents

Publication Publication Date Title
US8898290B2 (en) Personally identifiable information independent utilization of analytics data
WO2017139042A1 (en) Attributing conversions relating to content items
JP2014522060A (ja) コンバージョンタイプからコンバージョンタイプへのファネリング
JP7304954B2 (ja) 特徴を共有するイベントを識別するためのシステムおよび方法
US20150073893A1 (en) Systems and methods of tracking conversions by location
JP6626540B2 (ja) アプリケーションインストールコンバージョンおよび識別
US20240104088A1 (en) Real time system for ingestion, aggregation, and identity association of data from user actions performed on websites or applications
JP2014512053A (ja) 経路長セレクタ
US10997270B2 (en) Optimized digital components
KR101607919B1 (ko) 메신저에 검색 기능을 제공하고 검색 결과를 정렬하는 방법과 시스템 및 기록 매체
WO2015137989A1 (en) Systems and methods for assigning credit for installs of applications
US20160027025A1 (en) Systems and methods of counting unique interactions between users of a software application
US20150199710A1 (en) Supplemental analysis module for invitational content
US20230023392A1 (en) Methods and apparatus to estimate the second frequency moment for computer-monitored media accesses
US20150347112A1 (en) Providing data analytics for cohorts
US20220318830A1 (en) Delivery of data-driven & cross-platform experiences based on behavioral cohorts & identity resolution
JP7485777B2 (ja) 委任された分析収集のシステムおよび方法
US11900145B1 (en) System in the middle transaction processor
US20230275876A1 (en) On-device experimentation
WO2022235263A1 (en) Attribution model for related and mixed content item responses
EP4348558A1 (en) Model orchestrator
KR20220002224A (ko) 광고 시너지 효과 분석 방법 및 시스템

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210914

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210914

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230303

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230627

R150 Certificate of patent or registration of utility model

Ref document number: 7304954

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150