Random Notes
  • Introduction
  • Reading list
  • Theory
    • Index
      • Impossibility of Distributed Consensus with One Faulty Process
      • Time, Clocks, and the Ordering of Events in a Distributed System
      • Using Reasoning About Knowledge to analyze Distributed Systems
      • CAP Twelve Years Later: How the “Rules” Have Changed
      • A Note on Distributed Computing
  • Operating System
    • Index
  • Storage
    • Index
      • Tachyon: Reliable, Memory Speed Storage for Cluster Computing Frameworks
      • Exploiting Commutativity For Practical Fast Replication
      • Don’t Settle for Eventual: Scalable Causal Consistency for Wide-Area Storage with COPS
      • Building Consistent Transactions with Inconsistent Replication
      • Managing Update Conflicts in Bayou, a Weakly Connected Replicated Storage System
      • Spanner: Google's Globally-Distributed Database
      • Bigtable: A Distributed Storage System for Structured Data
      • The Google File System
      • Dynamo: Amazon’s Highly Available Key-value Store
      • Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications
      • Replicated Data Consistency Explained Through Baseball
      • Session Guarantees for Weakly Consistent Replicated Data
      • Flat Datacenter Storage
      • Small Cache, Big Effect: Provable Load Balancing forRandomly Partitioned Cluster Services
      • DistCache: provable load balancing for large-scale storage systems with distributed caching
      • Short Summaries
  • Coordination
    • Index
      • Logical Physical Clocks and Consistent Snapshots in Globally Distributed Databases
      • Paxos made simple
      • ZooKeeper: Wait-free coordination for Internet-scale systems
      • Just Say NO to Paxos Overhead: Replacing Consensus with Network Ordering
      • Keeping CALM: When Distributed Consistency is Easy
      • In Search of an Understandable Consensus Algorithm
      • A comprehensive study of Convergent and Commutative Replicated Data Types
  • Fault Tolerance
    • Index
      • The Mystery Machine: End-to-end Performance Analysis of Large-scale Internet Services
      • Gray Failure: The Achilles’ Heel of Cloud-Scale Systems
      • Capturing and Enhancing In Situ System Observability for Failure Detection
      • Check before You Change: Preventing Correlated Failures in Service Updates
      • Efficient Scalable Thread-Safety-Violation Detection
      • REPT: Reverse Debugging of Failures in Deployed Software
      • Redundancy Does Not Imply Fault Tolerance
      • Fixed It For You:Protocol Repair Using Lineage Graphs
      • The Good, the Bad, and the Differences: Better Network Diagnostics with Differential Provenance
      • Lineage-driven Fault Injection
      • Short Summaries
  • Cloud Computing
    • Index
      • Improving MapReduce Performance in Heterogeneous Environments
      • CLARINET: WAN-Aware Optimization for Analytics Queries
      • MapReduce: Simplified Data Processing on Large Clusters
      • Dryad: Distributed Data-Parallel Programs from Sequential Building Blocks
      • Resource Management
      • Apache Hadoop YARN: Yet Another Resource Negotiator
      • Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center
      • Dominant Resource Fairness: Fair Allocation of Multiple Resource Types
      • Large-scale cluster management at Google with Borg
      • MapReduce Online
      • Delay Scheduling: A Simple Technique for Achieving Locality and Fairness in Cluster Scheduling
      • Reining in the Outliers in Map-Reduce Clusters using Mantri
      • Effective Straggler Mitigation: Attack of the Clones
      • Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing
      • Discretized Streams: Fault-Tolerant Streaming Computation at Scale
      • Sparrow: Distributed, Low Latency Scheduling
      • Making Sense of Performance in Data Analytics Framework
      • Monotasks: Architecting for Performance Clarity in Data Analytics Frameworks
      • Drizzle: Fast and Adaptable Stream Processing at Scale
      • Naiad: A Timely Dataflow System
      • The Dataflow Model:A Practical Approach to Balancing Correctness, Latency, and Cost in Massive-Scale
      • Interruptible Tasks:Treating Memory Pressure AsInterrupts for Highly Scalable Data-Parallel Program
      • PACMan: Coordinated Memory Caching for Parallel Jobs
      • Multi-Resource Packing for Cluster Schedulers
      • Other interesting papers
  • Systems for ML
    • Index
      • A Berkeley View of Systems Challenges for AI
      • Tiresias: A GPU Cluster Managerfor Distributed Deep Learning
      • Gandiva: Introspective Cluster Scheduling for Deep Learning
      • Workshop papers
      • Hidden Technical Debt in Machine Learning Systems
      • Inference Systems
      • Parameter Servers and AllReduce
      • Federated Learning at Scale - Part I
      • Federated Learning at Scale - Part II
      • Learning From Non-IID data
      • Ray: A Distributed Framework for Emerging AI Applications
      • PipeDream: Generalized Pipeline Parallelism for DNN Training
      • DeepXplore: Automated Whitebox Testingof Deep Learning Systems
      • Distributed Machine Learning Misc.
  • ML for Systems
    • Index
      • Short Summaries
  • Machine Learning
    • Index
      • Deep Learning with Differential Privacy
      • Accelerating Deep Learning via Importance Sampling
      • A Few Useful Things to Know About Machine Learning
  • Video Analytics
    • Index
      • Scaling Video Analytics on Constrained Edge Nodes
      • Focus: Querying Large Video Datasets with Low Latency and Low Cost
      • NoScope: Optimizing Neural Network Queriesover Video at Scale
      • Live Video Analytics at Scale with Approximation and Delay-Tolerance
      • Chameleon: Scalable Adaptation of Video Analytics
      • End-to-end Learning of Action Detection from Frame Glimpses in Videos
      • Short Summaries
  • Networking
    • Index
      • Salsify: Low-Latency Network Video through Tighter Integration between a Video Codec and a Transport
      • Learning in situ: a randomized experiment in video streaming
      • Short Summaries
  • Serverless
    • Index
      • Serverless Computing: One Step Forward, Two Steps Back
      • Encoding, Fast and Slow: Low-Latency Video Processing Using Thousands of Tiny Threads
      • SAND: Towards High-Performance Serverless Computing
      • Pocket: Elastic Ephemeral Storage for Serverless Analytics
      • Fault-tolerant and Transactional Stateful Serverless Workflows
  • Resource Disaggregation
    • Index
  • Edge Computing
    • Index
  • Security/Privacy
    • Index
      • Differential Privacy
      • Honeycrisp: Large-Scale Differentially Private Aggregation Without a Trusted Core
      • Short Summaries
  • Misc.
    • Index
      • Rate Limiting
      • Load Balancing
      • Consistency Models in Distributed System
      • Managing Complexity
      • System Design
      • Deep Dive into the Spark Scheduler
      • The Actor Model
      • Python Global Interpreter Lock
      • About Research and PhD
Powered by GitBook
On this page
  • System

Was this helpful?

  1. Video Analytics

Index

PreviousA Few Useful Things to Know About Machine LearningNextScaling Video Analytics on Constrained Edge Nodes

Last updated 4 years ago

Was this helpful?

System

  • - Chen et al., SenSys '15

    • Cache the results to hide the network delivery and server processing latency

    • Only send the frames that are largely different from the previous frames

  • - LiKamWa et al., MobiSys '15

    • Track identical library calls and reuse computed results across multiple applications

  • - Zhang et al., MobiCom '15

    • Group cameras monitoring the same area into clusters

    • Uploads frames with high “utility”(e.g., object count)

    • Uploads frames that are different from previous frames(e.g., different object counts)

  • - Han et al., MobiSys '16

    • Adaptively pick the best specialized model

  • - Lu et al., SOCC '16

  • - Mathut et al., MobiSys '17

    • A system that can run multiple cloud-scale DL models locally on wearable devices

    • Interleave the loading of memory-intensive FC layers and the execution of compute-intensive convolution layers

  • - Shen et al., CVPR '17

    • Leverage the short-term class skew using model cascade

    • Train specialized video online

  • - Kang et al., VLDB '17

    • Model cascade: difference detector(MSE) → cheap/specialized model → full model

  • - Zhang et al., NSDI '17

    • Objective: support efficient real-time analytics for multiple queries which have different quality and lag goals

    • Offline Phase: use profiler to get a set of pareto-optimal configurations(a combination of knobs) from resource-quality space (with a variant of greedy hill-climbing)

    • Online Phase: periodically change running queries’ configurations/placement/resource allocation to maximize total utility(quality + lag goals)

  • - Drolia et al., ICDCS '17

    • Use edge server as a cache with compute resources(similar to CDN)

  • - Yi et al., SEC '17

  • - Kang et al., ASPLOS '17 []

    • Observed that 1) data transfer latency is often higher than mobile computation latency, especially on wireless networks. 2) inside a model, data size is decreasing at the front-end whereas per-layer latency is higher at the back-end.

    • NOTE: 2) isn't necessarily true for recent networks with global average pooling

  • - Poms et al., SIGGRAPH '18

    • Store videos as tables which are optimized for frame sampling on compressed videos

    • Express frame operations as dataflow graphs

  • - Jiang et al., ATC '18

    • Transfer learning → execute common layers only once

    • Processing more frames with shared DNN vs. greater per-frame accuracy with specialized DNN

  • - Jiang et al., SIGCOMM '18

    • Resource-accuracy tradeoff is affected by some persistent characteristics, so we can reuse configurations over time → temporal correlation

    • Video cameras with the same characteristics share the same best configurations → cross-camera correlations

    • Configuration knobs independently impact accuracy → reduce search space

    • Divide cameras into groups → periodically re-profile “leader” videos

  • - Zhang et al., SIGCOMM '18

    • Objective: low latency and high accuracy stream processing in WAN

    • Ask programmers to write degradation functions and profile those configurations

    • Adaptively change the configuration at runtime → react to congestions

  • - Hsieh et al., OSDI '18

    • Enable low-latency and low-cost querying over large historical video datasets.

    • At ingest time: classify objects using a cheap CNN, cluster similar objects(KNN search), and index each cluster using top-K most confident classification results.

    • At query-time: looks up the ingest index for cluster centroids that match the class and classifies them using expensive CNN.

  • - Liu et al., MobiSys '18

    • Adaptively select DNN compression techniques based on user demand(Acc/Storage/Comp cost/Latency/Energy)

  • - Ao et al., SoCC '18

    • Extend the idea of - enable users to build more complex pipelines

    • novel straggler mitigation strategy

  • - Guo et al., ASPLOS '18

  • - Jain et al., arXiv' 18

  • - Krishnan et al., CIDR '19

    • Objective: Indexing and query optimization for VDMS(For complex queries like join)

    • A novel model for encoding, indexing and storing lineage

  • - Xu et al., EuroSys '19

  • - Jiang et al., HotEdgeVideo '19

    • Proposes a new “camera cluster” abstraction

      • Saving computing resource

      • Resource Pooling

      • Improving analytics quality

      • Hiding low-level intricacies

  • - Emmons et al., HotEdgeVideo '19

    • Split-brain inference

  • - Canel et al., SysML '19

    • Assumption: relevant events are rare.

    • Filter frames by using a micro, binary classifier that extract feature maps from base DNN

  • - Chin et al., SysML '19

    • Down-sampling images are sometimes beneficial in terms of accuracy(e.g., removing background noise)

    • Adaptively scaling video to improve both speed and accuracy of object detectors

  • - Wang et al., HotCloud 19

    • Use super-resolution to enhance video quality before running analytics(related: )

  • - Liu et al., MobiCom '19

    • Dynamic RoI Encoding: decrease the encoding quality of uninterested areas(use the last processed frame as heuristic)

    • (Dependency-aware) Parallel streaming and inference: divide frames into slices and parallelize the processing between slices

  • - Jain et al., HotMobile '19

    • Leverage cross-camera correlations to reduce resource usage and achieve higher inference accuracy

  • - Haynes et al., SIGMOD '19

    • An auto-generated benchmark that evaluates the performance of VDBMS

    • Let users place an arbitrary number of cameras, each with configurable position, resolution, and field of view

    • Composite queries and automatically generated ground truth labels

  • - Fu et al., arXiv '19

  • - Kang et al., VLDB '20

    • Objective: Support (approximate) aggregate and limit queries over large video dataset

    • At ingest time, run object detection on small samples of frames and store them

    • For each query, use them to train a query-specific proxy model

  • - Bastani et al., SIGMOD '20

  • - Du et al., SIGCOMM '20

    • Iterative video processing driven by server-side DNN

  • - Li et al., SIGCOMM '20

    • Dynamically adapts filtering decisions based on feature type, threshold, etc.

  • - Poddar - et al., Security '20

  • - Zhang et al., VLDB '20

    • A system that let users generalize to unbounded vocabularies without manual retraining

  • - Khani et al., arXiv '20

Glimpse: Continuous, Real-Time Object Recognition on Mobile Devices
Starfish: Efficient Concurrency Support for Computer Vision Applications
The Design and Implementation of a Wireless Video Surveillance System
MCDNN: An Approximation-Based Execution Framework for Deep Stream Processing Under Resource Constraints
Optasia: A Relational Platform for Efficient Large-Scale Video Analytics
DeepEye: Resource Efficient Local Execution of Multiple Deep Vision Models using Wearable Commodity Hardware
Fast Video Classification via Adaptive Cascading of Deep Models
NoScope: Optimizing Neural Network Queries over Video at Scale
Live Video Analytics at Scale with Approximation and Delay-Tolerance
Cachier: Edge-Caching for Recognition Applications
LAVEA: Latency-aware Video Analytics on Edge Computing Platform
Neurosurgeon: collaborative intelligence between the cloud and the mobile edge
Morning Paper Summary
Scanner: Efficient Video Analysis at Scale
Mainstream: Dynamic Stem-Sharing for Multi-Tenant Video Processing
Chameleon: Scalable Adaptation of Video Analytics
AWStream: Adaptive Wide-Area Streaming Analytics
Focus: Querying Large Video Datasets with Low Latency and Low Cost
On-Demand Deep Model Compression for Mobile Devices: A Usage-Driven Model Selection Framework
Sprocket: A Serverless Video Processing Framework
ExCamera
Potluck: Cross-Application Approximate Deduplication for Computation-Intensive Mobile Applications
ReXCam: Resource-Efficient, Cross-Camera Video Analytics at Scale
DeepLens: Towards a Visual Data Management System
VStore: A Data Store for Analytics on Large Videos
Networked Cameras Are the New Big Data Clusters
Cracking open the DNN black-box: Video Analytics with DNNs across the Camera-Cloud Boundary
Scaling Video Analytics on Constrained Edge Nodes
AdaScale: Towards Real-time Video Object Detection Using Adaptive Scaling
Bridging the Edge-Cloud Barrier for Real-time Advanced Vision Analytics
NAS
Edge Assisted Real-time Object Detection for Mobile Augmented Reality
Scaling Video Analytics Systems to Large Camera Deployments
Visual Road: A Video Data Management Benchmark
Rekall: Specifying Video Events using Compositions of Spatiotemporal Labels
BlazeIt: Optimizing Declarative Aggregation and Limit Queries for Neural Network-Based Video Analytics
MIRIS: Fast Object Track Queries in Video
Server-Driven Video Streaming for Deep Learning Inference
Reducto: On-Camera Filtering for Resource-Efficient Real-Time Video Analytics
Visor: Privacy-Preserving Video Analytics as a Cloud Service
Panorama: A Data System for Unbounded Vocabulary Querying over Video
Real-Time Video Inference on Edge Devices via Adaptive Model Streaming