{"id":834184,"date":"2022-04-19T09:00:00","date_gmt":"2022-04-19T16:00:00","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?p=834184"},"modified":"2022-04-18T16:31:30","modified_gmt":"2022-04-18T23:31:30","slug":"dont-let-data-drift-derail-edge-compute-machine-learning-models","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/dont-let-data-drift-derail-edge-compute-machine-learning-models\/","title":{"rendered":"Don&#8217;t let data drift derail edge compute machine learning models"},"content":{"rendered":"\n<figure class=\"wp-block-image alignwide size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1442\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-scaled.jpg\" alt=\"Diagram showing Ekya\u2019s architecture. Video data flows from a series of cameras into specialized, lightweight inference models and shared resource pools before reaching the edge. \" class=\"wp-image-834187\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-scaled.jpg 2560w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-300x169.jpg 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-1024x577.jpg 1024w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-768x433.jpg 768w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-1536x865.jpg 1536w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-2048x1154.jpg 2048w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-1066x600.jpg 1066w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-655x368.jpg 655w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-343x193.jpg 343w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-240x135.jpg 240w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-scaled-640x360.jpg 640w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-scaled-960x540.jpg 960w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-1280x720.jpg 1280w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><\/figure>\n\n\n\n<p>Edge computing has come of age, with deployments enabling many applications that process data from IoT sensors and cameras. In 2017, we identified the symbiotic relationship between edge computing and video analytics in an <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"https:\/\/ieeexplore.ieee.org\/document\/8057318\">article<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, noting that live video analytics is the \u201ckiller app\u201d for edge computing. Edge devices come in various shapes and sizes but are inherently resource-constrained relative to the cloud.&nbsp;<\/p>\n\n\n\n<p>These resource constraints necessitate lightweight machine learning (ML) models at the edge. Using techniques for model specialization and compression, the community has obtained edge models whose compute and memory footprints are substantially lower (by <a href=\"https:\/\/www.microsoft.com\/en-us\/research\/publication\/focus-querying-large-video-datasets-with-low-latency-and-low-cost\/\">96x for object detector models<\/a>). Such models are super amenable to deploy at the edge.&nbsp;<\/p>\n\n\n\n<p>Smooth going so far, but the villain in the story is <em>data drift<\/em>! This is the phenomenon where the live data in the field diverges significantly from the initial training data. We achieved the phenomenally low compute footprints for edge models only because we specialized the models to be specific to the camera streams. But in the bargain, they lost their ability to generalize much beyond what they have seen during training. This lack of generality comes back to bite us when data drifts and accuracy of the models drop \u2013 by as much as 22% \u2013 when they are deployed in the field.&nbsp;<\/p>\n\n\n\n<p>Ekya is a solution, developed with collaborators at University of California, Berkeley and University of Chicago, that addresses the problem of data drift <em><em>on the edge compute box<\/em>.<\/em> Instead of sending video data to the cloud for periodic retraining of models, which is costly in its bandwidth usage and can raise privacy questions, Ekya enables both retraining and inference to co-exist on the edge box. For more details, take a look at our paper: <a href=\"https:\/\/www.microsoft.com\/en-us\/research\/publication\/ekya-continuous-learning-of-video-analytics-models-on-edge-compute-servers\/\">Ekya: Continuous Learning of Video Analytics Models on Edge Compute Servers<\/a>, which has been published at <a href=\"https:\/\/www.microsoft.com\/en-us\/research\/event\/nsdi-2022\/\">NSDI 2022<\/a>. We are excited to release the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"http:\/\/aka.ms\/ekya\" target=\"_blank\" rel=\"noopener noreferrer\">code for Ekya<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> as well.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-16018d1d wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a data-bi-type=\"button\" class=\"wp-block-button__link\" href=\"https:\/\/www.microsoft.com\/en-us\/research\/publication\/ekya-continuous-learning-of-video-analytics-models-on-edge-compute-servers\/\">Read the paper<\/a><\/div>\n\n\n\n<div class=\"wp-block-button is-style-fill-github\"><a data-bi-type=\"button\" class=\"wp-block-button__link\" href=\"https:\/\/github.com\/edge-video-services\/ekya\">Download the code<\/a><\/div>\n<\/div>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Not only can you use the code to reproduce all experiments in our paper, we also hope that the code can help you easily build a continuous learning system for your edge deployment. Oh, and one more thing\u2014we are also pointing to the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"https:\/\/github.com\/City-of-Bellevue\/TrafficVideoDataset\" target=\"_blank\" rel=\"noopener noreferrer\">raw video datasets<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> released by the City of Bellevue. This includes 101 hours of video from five traffic intersections, all of which have also been labeled with our <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"https:\/\/pjreddie.com\/darknet\/yolo\/\" target=\"_blank\" rel=\"noopener noreferrer\">golden YOLOv3 model<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>. We hope that the videos from the City of Bellevue as well as the other datasets included in the repository will aid in the building of new edge models as well as improving our pre-trained specialized models to significantly advance the state of the art.<\/p>\n\n\n\n<p>Please reach out to <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/aka.ms\/ganesh\">Ganesh Ananthanarayanan<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> with any questions.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<h4 id=\"explore-more\">Explore More<\/h4>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"annotations \" data-bi-aN=\"citation\">\n\t<article class=\"annotations__list card depth-16 bg-body p-4 \">\n\t\t<div class=\"annotations__list-item\">\n\t\t\t\t\t\t<span class=\"annotations__type d-block text-uppercase font-weight-semibold text-neutral-300 small\">Abstract<\/span>\n\t\t\t<a href=\"https:\/\/bellevuewa.gov\/sites\/default\/files\/media\/pdf_document\/2022\/leading-pedestrian-intervals-research-paper-010322.pdf\" data-bi-cN=\"Bellevue, Microsoft, UW team up to prevent traffic deaths\" data-external-link=\"false\" data-bi-aN=\"citation\" data-bi-type=\"annotated-link\" class=\"annotations__link font-weight-semibold text-decoration-none\"><span>Bellevue, Microsoft, UW team up to prevent traffic deaths<\/span>&nbsp;<span class=\"glyph-in-link glyph-append glyph-append-chevron-right\" aria-hidden=\"true\"><\/span><\/a>\t\t\t\t\t\t\t<p class=\"annotations__caption text-neutral-400 mt-2\">Leading Pedestrian Intervals \u2013 Yay or Nay? A Before-After Evaluation using Traffic Conflict-Based Peak Over Threshold Approach<\/p>\n\t\t\t\t\t<\/div>\n\t<\/article>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"annotations \" data-bi-aN=\"citation\">\n\t<article class=\"annotations__list card depth-16 bg-body p-4 \">\n\t\t<div class=\"annotations__list-item\">\n\t\t\t\t\t\t<span class=\"annotations__type d-block text-uppercase font-weight-semibold text-neutral-300 small\">Video<\/span>\n\t\t\t<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/video\/video-analytics-for-smart-cities\/\" data-bi-cN=\"Video Analytics for Smart Cities\" data-external-link=\"false\" data-bi-aN=\"citation\" data-bi-type=\"annotated-link\" class=\"annotations__link font-weight-semibold text-decoration-none\"><span>Video Analytics for Smart Cities<\/span>&nbsp;<span class=\"glyph-in-link glyph-append glyph-append-chevron-right\" aria-hidden=\"true\"><\/span><\/a>\t\t\t\t\t\t\t<p class=\"annotations__caption text-neutral-400 mt-2\">Microsoft Research has an on-going pilot in Bellevue, Washington for active traffic monitoring of traffic intersections live 24X7. This project is focused on is video streams from cameras at traffic intersections. Traffic-related accidents are among the top 10 reasons [\u2026]<\/p>\n\t\t\t\t\t<\/div>\n\t<\/article>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Edge computing has come of age, with deployments enabling many applications that process data from IoT sensors and cameras. In 2017, we identified the symbiotic relationship between edge computing and video analytics in an article (opens in new tab), noting that live video analytics is the \u201ckiller app\u201d for edge computing. Edge devices come in [&hellip;]<\/p>\n","protected":false},"author":37583,"featured_media":834187,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","msr-author-ordering":[{"type":"user_nicename","value":"Ganesh Ananthanarayanan","user_id":"31834"},{"type":"user_nicename","value":"Yuanchao Shu","user_id":"35079"},{"type":"user_nicename","value":"Nikolaos Karianakis","user_id":"37947"},{"type":"user_nicename","value":"Kevin Hsieh","user_id":"39459"},{"type":"user_nicename","value":"Victor Bahl","user_id":"31167"}],"msr_hide_image_in_river":0,"footnotes":""},"categories":[1],"tags":[],"research-area":[13547],"msr-region":[],"msr-event-type":[],"msr-locale":[268875],"msr-post-option":[243984],"msr-impact-theme":[],"msr-promo-type":[244008],"msr-podcast-series":[],"class_list":["post-834184","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-research-blog","msr-research-area-systems-and-networking","msr-locale-en_us","msr-post-option-blog-homepage-featured","msr-promo-type-blog-post"],"msr_event_details":{"start":"","end":"","location":""},"podcast_url":"","podcast_episode":"","msr_research_lab":[199565],"msr_impact_theme":[],"related-publications":[],"related-downloads":[],"related-videos":[],"related-academic-programs":[],"related-groups":[],"related-projects":[382664,212082],"related-events":[827029],"related-researchers":[{"type":"user_nicename","value":"Ganesh Ananthanarayanan","user_id":31834,"display_name":"Ganesh Ananthanarayanan","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/ga\/\" aria-label=\"Visit the profile page for Ganesh Ananthanarayanan\">Ganesh Ananthanarayanan<\/a>","is_active":false,"last_first":"Ananthanarayanan, Ganesh","people_section":0,"alias":"ga"},{"type":"user_nicename","value":"Nikolaos Karianakis","user_id":37947,"display_name":"Nikolaos Karianakis","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/nikarian\/\" aria-label=\"Visit the profile page for Nikolaos Karianakis\">Nikolaos Karianakis<\/a>","is_active":false,"last_first":"Karianakis, Nikolaos","people_section":0,"alias":"nikarian"},{"type":"user_nicename","value":"Kevin Hsieh","user_id":39459,"display_name":"Kevin Hsieh","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/kevhsieh\/\" aria-label=\"Visit the profile page for Kevin Hsieh\">Kevin Hsieh<\/a>","is_active":false,"last_first":"Hsieh, Kevin","people_section":0,"alias":"kevhsieh"},{"type":"user_nicename","value":"Victor Bahl","user_id":31167,"display_name":"Victor Bahl","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/bahl\/\" aria-label=\"Visit the profile page for Victor Bahl\">Victor Bahl<\/a>","is_active":false,"last_first":"Bahl, Victor","people_section":0,"alias":"bahl"}],"msr_type":"Post","featured_image_thumbnail":"<img width=\"960\" height=\"540\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-scaled-960x540.jpg\" class=\"img-object-cover\" alt=\"Diagram showing Ekya\u2019s architecture. Video data flows from a series of cameras into specialized, lightweight inference models and shared resource pools before reaching the edge.\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-scaled-960x540.jpg 960w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-300x169.jpg 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-1024x577.jpg 1024w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-768x433.jpg 768w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-1536x865.jpg 1536w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-2048x1154.jpg 2048w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-1066x600.jpg 1066w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-655x368.jpg 655w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-343x193.jpg 343w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-240x135.jpg 240w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-scaled-640x360.jpg 640w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-1280x720.jpg 1280w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2022\/04\/1400x788_Live_analytics_hero_Image-1920x1080.jpg 1920w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/>","byline":"","formattedDate":"April 19, 2022","formattedExcerpt":"Edge computing has come of age, with deployments enabling many applications that process data from IoT sensors and cameras. In 2017, we identified the symbiotic relationship between edge computing and video analytics in an article (opens in new tab), noting that live video analytics is&hellip;","locale":{"slug":"en_us","name":"English","native":"","english":"English"},"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/834184","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/users\/37583"}],"replies":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/comments?post=834184"}],"version-history":[{"count":14,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/834184\/revisions"}],"predecessor-version":[{"id":835777,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/834184\/revisions\/835777"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media\/834187"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=834184"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/categories?post=834184"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/tags?post=834184"},{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=834184"},{"taxonomy":"msr-region","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-region?post=834184"},{"taxonomy":"msr-event-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-event-type?post=834184"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=834184"},{"taxonomy":"msr-post-option","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-post-option?post=834184"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=834184"},{"taxonomy":"msr-promo-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-promo-type?post=834184"},{"taxonomy":"msr-podcast-series","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-podcast-series?post=834184"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}