Context R-CNN: Long Term Temporal Context for Per-Camera ...
The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r...
-
Upload
brittney-booker -
Category
Documents
-
view
217 -
download
0
Transcript of The Context Fabric Scalability and Privacy for Context-Aware Computing Jason I. Hong G r o u p f o r...
The Context FabricScalability and Privacy for Context-Aware Computing
Jason I. Hong
G r o u p f o rUser Interface Research
University of CaliforniaBerkeley
Confab - A casual talk
June 14 2002 2
Motivation
• Modern computers are divorced from our reality– Unaware of who, where, and what around them– Mismatch between our expectations and
functionality– Also limits what we can do with computers
• Computers have extremely limited input– Aware of explicit input only– A lot of effort to do simple things (or to remember)
• Context-Aware Computing– One line of ubiquitous computing research– Making computers more aware of the physical and
social situations they are embedded in
June 14 2002 3
Examples of Using Context
Context TypesExisting Examples Human Concern
Room ActivityAuto Lights On / Off Convenience
Personal Identity & Time
File Systems Finding Info
TimeCalendar Reminders Memory
Activity Finding Info
Safety
Time
Location
Activity
Health Alert
Tag PhotosHistory
Identity
ProximityEfficiency
Service FleetDispatching
Context Types Potential Examples Human Concern
June 14 2002 4
Technology Trends
• Sensors– GPS, Active Badges, Active Bats– Smart Dust– Cameras and microphones
• Recognition algorithms– MSR Radar location from 802.11– Smart Floor footstep force
• Wireless technologies– Bluetooth, 802.11, cell phone
June 14 2002 5
A New Class of Context-Aware Apps
Active Badge(Olivetti)
ParcTabs(Xerox PARC)
Cyberguide(Abowd et al)
June 14 2002 6
A Computational View of Context
• Context as a strategy for building apps• Increasing the number of input channels
into the computer– Pushing towards implicit acquisition of data
• Creating better models– Pushing towards the physical and social
• Using the input and models in useful ways– Proactively taking predictable and meaningful
actions– Tagging other information– Passing on the information to people
June 14 2002 7
Two Problems with Context-Awareness
• Scalability– Lots of people, places, things, and sensors– Over long periods of time– Over large geographic distances– Sharing resources (sensors and data)
• Privacy– Tremendous source of valid criticism– Need architecture and mechanisms to
safeguard personal data and make it easy for people to manage
– Need a way of thinking about privacy for ubicomp (previous talk)
June 14 2002 8
Research Goals and Solution Overview
• Provide network-oriented set of abstractions, mechanisms, and programming model
• Scalability– Data-oriented P2P repositories called information
spaces– Decentralized, high availability, with local control
• Privacy– Provide suite of mechanisms for app developers– Based on Fair Information Practices and
Information Asymmetry
June 14 2002 9
Talk Overview
MotivationResearch OverviewConfab Architecture – ScalabilityConfab Architecture – PrivacyPlan for Evaluation and Graduation
June 14 2002 10
Architectural Abstractions
• Information Spaces– TupleSpace repositories of context data and
operators– Associated with entities (people, places, things)– Somewhat similar to web servers and home pages
• Context Data– Representation for context data
• Operators– Reusable and composable code operating on data
• Context Queries / Notifications– Simple API for accessing context
June 14 2002 11
Architectural SketchInformation Spaces
Carol's InfoSpace(Desktop)
Information Spaces
Carol's InfoSpace
(PDA)
Soda 525 InfoSpace(Server)
June 14 2002 12
Architectural SketchContext Data
Loc Act ActLoc
Context Data Information Spaces
June 14 2002 13
Architectural SketchOperators
Context Data Information Spaces
TransFilterDebug
Operators
June 14 2002 14
Architectural SketchContext Queries
Loc
Context Data Information Spaces
TransFilter
Operators
Query
LocTrans
June 14 2002 15
Architectural SketchContext Notifications
Context Data Information Spaces
Operators
Notification(Standing Query)
June 14 2002 16
Architectural SketchPeering of Information Spaces
Carol's Context when Mobile
Carol's Context in Soda 525
Context = Set of Available Info Spaces
June 14 2002 17
Emergency Response Scenario
• Fire or earthquake situation• Keep track of the people in a building
– Allow building managers to check if a building is clear in the event of an evacuation
– Allow firefighters to check where people were
• Provide reasonable privacy protection– People don't like to be tracked– Emergency situations relatively rare
June 14 2002 18
Emergency Response Scenario
Building InfoSpace
Carol'sInfoSpace
Smart Dust
User="Carol"Location="525 Soda Hall"Time="Apr 12 1:05PM"
Access Control
User="Carol"Location="5th floor"Age="37 seconds"
Send location info
Logging
User="Carol"Location="in"Age="37 seconds"Blurring
June 14 2002 19
Emergency Response Scenario
Building InfoSpace
Carol'sInfoSpace
Smart Dust
User="Carol"Location="5th floor"Age="37 seconds"
User="Carol"Location="525 Soda Hall"Time="Apr 12 1:05PM"
Notification Logging
User="Carol"Location="525 Soda"Age="7 seconds"
June 14 2002 20
Layers of InfoSpaces and Context Data
Physical
Logical
View
My Location on PDA
My Location on PC
My Location
My Locationto Strangers
My Locationto Friends
My Locationto Family
June 14 2002 21
Scalability
• Architecture analogous to web– Information spaces are like web servers– Information spaces contain context data
• Differences from web architecture– Each device contains an information space (so
devices can access context even w/o net access)
– Information spaces contain operators for manipulating and protecting context data
June 14 2002 22
Talk Overview
MotivationResearch OverviewConfab Architecture – ScalabilityConfab Architecture – PrivacyPlan for Evaluation and Graduation
June 14 2002 23
Privacy – Fair Information Practices
• Notice• Choice• Onward Transfer• Access• Security• Data Integrity• Enforcement
June 14 2002 24
Privacy – Information Asymmetry
“In all of human history, no government has ever known more about its people than our government knows about us. And in all of human history, no people have ever been anywhere near as free.” (Brin)
June 14 2002 25
A Privacy Design Space
• Legal• Social• Economic• Technology
Det
ect
ion
Avo
ida
nce
Pre
ven
tion
Collection Second UseAccess
Th
emes
fo
r M
inim
izin
g A
sym
met
ry
Data Lifecycle
AnonymizationPseudonymization
P3P
RBAC
LocationSupport
Privacy Mirrors
Wearables
User Interfaces for Feedback, Notification, and Consent
Goal: Provide reusable mechanisms that can populate this design space
June 14 2002 26
Privacy Mechanisms
• Operators
• Focus on providing mechanisms for prevention and avoidance, on collection and access
• Still working on this…
Garbage collection Remove or aggregate old data
Blurring Increase ambiguity
Access Control Check authorization
Logging Detection
Filters Remove certain data
June 14 2002 27
Supporting Some Desired Properties
• Intentional ambiguity– "Where is Victoria?"– "Restaurant Chez Panisse" -> "Berkeley" -> "CA"– Give different answers depending on requestor
• Plausible deniability– "Is Adam busy?"– "Yes" or "Unknown" according to prefs
June 14 2002 28
Talk Overview
MotivationResearch OverviewConfab Architecture – ScalabilityConfab Architecture – PrivacyPlan for Evaluation and Graduation
June 14 2002 29
Evaluation
• Still in early-to-mid phases– Currently developing initial implementation– JDK, JXTA (Java P2P), XML– Possibly also WSDL, SOAP
• Target applications– SpeakEasy (PARC)– Suite of Emergency Response apps (next week)– Possible Educational Technology apps
• "Metrics"– Types of and effectiveness of apps that can be
built– Ease of adoption– Robustness
June 14 2002 30
The Ultimate Metric
June 14 2002 31
Q & A
Privacy is good here, but be careful not to fall into the systems tarpit.
Focus, Jason, focus!
June 14 2002 32
Q & A
Agree with Bill do I, avoid the dark side of systems you must!
June 14 2002 33
Q & A
Good work, Jason, I think you deserve a raise!
This party's started!
Jason I. Honghttp://guir.berkeley.edu/cfabric
G r o u p f o rUser Interface Research
University of CaliforniaBerkeley
Thanks to:DARPA ExpeditionsPARCIntel FellowshipNSF ITRYoda
Contextthe circumstances in which an event occurs; a setting; to join; to weave
June 14 2002 35
Q & AMaybe privacy won't be a large issue in the future. Very difficult to say because of the tradeoffs in value, safety, convenience.
One way of evaluating is to describe the design space, and show how your work makes it easy to build in that space.
June 14 2002 36
Q & ABut do we really need ubicomp at all? And if so, how do we build and evaluate it so that it's socially relevant and meaningful?
Maybe context itself isn't really the issue, because activity orders and delineates what is and isn't relevant at any point.
June 14 2002 37
Functional Requirements
• Context Acquisition– Getting the data from a variety of sources
• Context Modeling– Representing the data
• Context Storage and Dissemination– Storing the data– Making the data available when it is needed
• Context Usage– Using the data in a program
June 14 2002 38
Context Data
• Problem: how to represent context data?• Entities
– Like nouns, people, places, and things
• Attributes– Like adjectives or properties, key-value pairs
• Relationships– How one entity relates to another entity
• Aggregates– Actions, Groups of people
June 14 2002 39
Context Data
Person="[email protected]"
Name="Location"Value="Room 525"Schema="Building:Room"Metadata=
Time="1023498143"Time-to-Live="60sec"Source="SmartDust"
Name="Device"Value=http://zzz.comSchema="Device"
En
tity
Attrib
ute
Rela
tion
ship
June 14 2002 40
Key Architectural Abstractions
• Information Spaces– Repositories of context data and operators
• Context Data– Representation for context data
• Operators– Composable code operating on context data
• Context Queries / Notifications– Simple query language (like SQL for DB)– Push / Pull semantics
June 14 2002 41
Information Spaces
• Problem: where to store context data?• Information Spaces analogous to web
servers– Have a unique name– Have an owner– Contain multiple (and not necessarily
related) pieces of data– Can get / put pieces of data (given security
and privacy prefs)
June 14 2002 42
Operators
• Problem: how to manipulate context data in a reusable manner?
• Chainable OperatorsData-type Conversion Ex. Celsius -> Farenheit
Fusion Refine same data type
Composition Merge different data types
Garbage collection Remove or aggregate old data
Blurring Increase ambiguity
Access Control Check authorization
Logging Detection
Filters Remove certain data
June 14 2002 43
Context Queries
• Problem: how to use context data?
June 14 2002 44
Related Work
• Context Toolkit• EventHeap• ParcTab infrastructure
June 14 2002 45
Existing Examples of Using Context
Context TypesExisting Examples Human Concern
Room ActivitySmoke Alarm Safety
Room ActivityAuto Lights On / Off Convenience
Object IdentityBarcode Scanners Efficiency
Personal Identity & Time
File Systems Finding Info
TimeCalendar Reminders Memory
June 14 2002 46
Potential Examples of Using Context
Existing Examples Context Types Potential Examples Human Concern
Activity Convenience
Activity Finding Info
Identity Memory
Identity & Time Safety
Time Efficiency
Identity
Time
Location
Proximity
Activity
History
…
Health Alert
Auto Cell Phone Off In Meetings
Service FleetDispatching
Tag Photos
Proximal Reminders
June 14 2002 47
Defining ContextAbowd & Dey / Moran & Dourish
• "Any information that can be used to characterize the situation of an entity, where an entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and the application themselves. Context is typically the location, identity, and state of people, groups, and computational and physical objects." (Abowd and Dey)
• "Context refers to the physical and social situation in which computational devices are embedded" (Moran and Dourish)
June 14 2002 48
Defining ContextDistributed Cognition
• Distributed cognition– Need to go beyond physical attributes (ex.
temp)– Look at “state of digital resources, people’s
concepts, task state, social relations, local work culture” (Kirsh)
– Model key attributes and deep structure of whole system (individuals, offices, social structs, work practices)
• Problems– What are the key attributes?– How to represent?
June 14 2002 49
Defining ContextSituated Action
• Situated action– Actions are fluid, moment-by-moment,
improvised, often unplanned, and highly context-dependent
– “[T]he context in which actions take place is what allows people to find it meaningful” (Dourish)
• Problems– Very high-level form of context– Can low-level computer-based context be
useful?– Also, how does this really help us build systems?
June 14 2002 50
Defining ContextPhenomenology
• Phenomenology– Reality consists of objects and events as they are
perceived in human consciousness and not of anything independent of human consciousness.
– Meaning (and hence context) arises from the ways in which we engage with and act within the world
• Problems– Need this level of sophistication to make progress?– How does this help us build systems? – Very wide chasm between philosophy and practice
June 14 2002 51
Defining ContextMy Perspective
• Point #1 – Not clear if we need a solid definition– Operating systems and Artificial Intelligence
• Point #2 – Let's treat it like "information"– Shannon treated it from a mechanical perspective
(i.e. transmission) made great inroads – We are still debating the meaning of "information"– But now we can do it electronically
• Let's treat context from computer perspective– Let designers define context app-by-app– Provide generic reusable mechanisms (like DB)
June 14 2002 52
Privacy
• Privacy is a relatively new concept in society, and is “ultimately a psychological construct, with malleable ties to specific objective conditions” (Grudin)– Convenience, Safety, Efficiency– Ex. Credit cards and cell phones
• Open access to online calendars for efficiency and awareness (Palen)
June 14 2002 53
Designing Context-Aware Systems
• Minimize automatic actions– Cost to benefit via decision theory– Benefit is getting it "right", cost is "wrong"– Factor in likelihood of getting it "right"
• Provide feedback– What is being captured?– Why did the system do that?
• Feed-forward– If you do that, then the system will do this
• Confirmation– The system just did the following action
June 14 2002 54
Vision
Context-Aware Computing Today
June 14 2002 55
Vision
Context-Aware Computing in the Future
January