1 / 22

SmartAds Bringing Contextual Ads to Mobile Apps

SmartAds Bringing Contextual Ads to Mobile Apps. By Dongcheal Han and Umer Hassan. Statistics (2011 census data). US consumers spend 30% more time on mobile apps compared to traditional web However, advertisement companies spend 16 times less on mobile ads than on webpage ads

faxon
Download Presentation

SmartAds Bringing Contextual Ads to Mobile Apps

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SmartAdsBringing Contextual Ads to Mobile Apps By Dongcheal Han and Umer Hassan

  2. Statistics (2011 census data) • US consumers spend 30% more time on mobile apps compared to traditional web • However, advertisement companies spend 16 times less on mobile ads than on webpage ads • Less than 1% of overall advertisement budget is spent on mobile ads

  3. The Problem Today’s mobile ads are not contextual; it does not take into account the content of the page it is displayed on

  4. The Solution Display advertisements that fit the context of the screen

  5. Differences • Web pages can be crawled to be indexed and choose an ad suitable to their context • Content shown in apps are generated dynamically or embedded in the apps and cannot be crawled • Therefore, contextual advertisements in mobile apps must be found at runtime

  6. Challenges of Mobile Ads • Limited resources : Dynamically scraping content, extracting keywords, sending data through network may incur excessive overhead • User privacy may be compromised while sending content of the page to network

  7. Methodology • PhoneMonkey : Emulate various user interactions on the mobile device (Swipe, touch, etc) • Instrumented App : App that is equipped with custom logging code to log all the contents of each page it navigates

  8. Methodology • Top 1200 apps are ran 30 times each with PhoneMonkey with random UI navigational control • Content are logged for each page rendered

  9. KEX • KEX (Keyword Extractor) assigns a weighted value of a word used in the content. (0 ~ 1) • Based on various attributes such as where the word appears in the content, whether it is bolded, how many advertisers are interested (bidding value), etc • Weight higher than 0.1 considered as Keywords.

  10. Results Page data of half of the apps contain more than 20 Keywords that could be used for contextual ads

  11. Limitations of PhoneMonkey • Navigation is randomized; vastly different keywords detected in the same app (half of the apps show 55% change in keywords) • Cannot emulate human input, access through custom UI control, large number of pages not navigated due to time constraints for each app session

  12. Online Extraction • Page data will be determined by User-controlled navigation; navigation will not be random • Able to access pages PhoneMonkey cannot

  13. Architecture • Client-side ad library and ad server • Ad network : Third party entity that accepts bids and ads from advertisers

  14. Utility • Get keywords that are prominent on the app page, while relevant to available mobile ads. Estimated probability : Weight : Local feature :

  15. KEX local features AnywhereCount: total times of appearance NearBeginningCount: times of appearance at the beginning of the page SentenceBeginningCount: times of word starting a sentence PhraseLengthInWord: number of words in the phrase containing the word PhraseLengthInChar: number of characters in the phrase containing the word MessageLength: length of the line containing the word Capitalization: times of capitalizing the word Font size: Font size of the word • With above features, KEX determines the weight of the word, which in turn determines if the word is a keyword or not

  16. Efficiency • Aim to have minimal impact on memory consumption, network, CPU, and energy footprint • Global knowledge (knowing the advertisers’ bid on keywords) is maintained on the server • Client does not send all the found keywords, instead sends only relevant ones that have bids (Bloom Filter)

  17. Bloom Filter • Space-efficient probabilistic data structure that tests if an element is a member of a set • Sending 100% of keywords trace takes too much communication overhead. Covering 90% is efficient

  18. Privacy • The ad server knows only the pre-determined ad keywords set by advertisers from the client • Server maintains dictionary of all ad keywords’ hashvalues and ignores all non-ad keyword’s hashvalues

  19. Results • Total 2500 unique pages from top 353 apps from Windows Phone marketplace • Compared the baseline ads, from ads modified by using SmartAds and let 400 users choose the level of relevancy

  20. Results • More than doubles the relevancy of advertisements to the app page shown

  21. End-to-End Performance • Average end-to-end time is 650ms which Is comparable to that of other ad controls • Ad network query runtime is not dependent on SmartAds

  22. Conclusion • SmartAds more than doubles the number of relevant ads shown while having minimal impact on device overhead (CPU, Memory, Network, Battery) and secures user privacy

More Related