Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Privacy Safe Audience Models based on Interest Group #172

Closed
rishavanand-lab opened this issue Apr 21, 2021 · 3 comments
Closed

Privacy Safe Audience Models based on Interest Group #172

rishavanand-lab opened this issue Apr 21, 2021 · 3 comments

Comments

@rishavanand-lab
Copy link

Aim

It will be useful to have “aggregated” and privacy safe data about interest groups to be accessed by DSP’s. These signals can be consumed by buyers offline for audience modelling and Similar Audiences with buyer specific utility.

How?

Suppose, per_buyer_signals contains certain information about the webpage making a contextual adrequest. For example it could be some embeddings derived from the publisher website and supplied via per_buyer_signals for each ad-query. If Buyers can use AggregatedReporting API within generate_bid() function then they can create a model of an IG by implementing generate_bid(interest_group, auction_signals, per_buyer_signals, trusted_bidding_signals, browser_signals) in the following fashion.

generate_bid(interest_group, auction_signals, per_buyer_signals, trusted_bidding_signals, browser_signals) {
  ...
  ...
  // Call Aggregate Reporting API with IG as key and DSP provided page embeddings as value
  const entryHandle = window.writeOnlyReport.get(interest_group.name);
  entryHandle.set('embedding_index_0', per_buyer_signals["mydsp.com"].embedding_float_from_per_buyer_signals_0);
  entryHandle.set('embedding_index_1', per_buyer_signals["mydsp.com"].embedding_float_from_per_buyer_signals_1);
  …
  entryHandle.set('embedding_index_n', per_buyer_signals["mydsp.com"].embedding_float_from_per_buyer_signals_n);

  // Entries can be configured to report after a given time. 
  entryHandle.reportAfter(kMsecPerHour);

  return {'ad': ad_object, 'bid': bid_value, 'render': render_url};
}

Thus, the final reports would contain an aggregated embedding for interest groups based on ad-impression events.

Questions

Can you clarify if usage of AggregateReporting() in this fashion will be allowed by the API?

@jeffkaufman
Copy link
Contributor

I think this request may already be being tracked in #164?

@rishavanand-lab
Copy link
Author

Thanks Jeff, yes #164 tracks our request - albeit for a different use case.

@JensenPaul
Copy link
Collaborator

Private Aggregation API is accessible from Protected Audience bidding, scoring and reporting scripts. I'm closing this issue as I think the concern was addressed. Feel free to reopen or file another if you have further concerns.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants