Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Intelligent sensor and learning challenges for context aware appliances >> Stéphane Canu scanu@insa-rouen.fr asi.insa-rouen.fr/~scanu INSA Rouen, France - EU Laboratoire PSI 1984: La souris et leMacintoch 200X : la nouvelle rupture "break through" Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr La technologie d'aujourd'hui • Loi de Moore • Communication "sans fil" • L'ère des données Quelles applications ? Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Wearable Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr IHM Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Olympus Optical Co., Ltd. is pleased to announce its new wearable user interface technologies. Employing gestures and other hand movements for input, the system is an ideal match for new wearable PCs. Wearable http://www.redwoodhouse.com/wearable/index.html http://wearables.cs.bris.ac.uk/public/wearables/esleeve.htm http://www.ices.cmu.edu/design/streetware/ Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Reasearch on wearable Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Wearable scanu@insa-rouen.fr context aware appliances The mediacup (calm version of the active badge) Phone by night http://mediacup.teco.edu/overview/engl/m_what.html Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr General Motors and CMU Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr The car - drives together - informs you - in a parking… GM/CMU Companion driver interface system Oops! Where is my car? • Old fashion software design: process 1.Match the sentence 2.Send the query to the satellite 3.Satellite send query to the car on its own frequency 4.Car answers… - Tell the computer what to do (where is the switch) • Distributed software design: interaction - Software agents talk together • Future way: Programming by Example - Show the computer what to do • Today's solution: Louis my 3 years old son Disappearing computer >> Your Wish is My Command: Programming by Example Henry Lieberman, editor, Published by Morgan Kaufmann, 2001. Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Calm technology • Ubiquitous computing - One people - many computer • Technology at our service - Reactive to what user do - Proactive - Prepare what to do next - Situated – sharing context (Hans Gellersen, Sensing in Ubiquitous Computing) • Adapted to our needs - New functionalities and new behaviors - New way of communicating - Learn to adapt Machines have to know their context >> M. Weiser "The Computer for the 21st Century." Scientific American, September 1991 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Séminaire PSI FRE CNRS 2546 16 Janvier 2003 What is the context? scanu@insa-rouen.fr • user Context input - activity (available/meeting) - location, - identity, profile Explicit Input sensors • environment monitoring - time, day/night, temperature, weather, - resources (networks, services…) Context-aware application Explicit Output actuators Context output Adapted From Henry Lieberman and Ted Selker, Out of Context: Computer Systems That Adapt To, and Learn From, Context, IBM Systems Journal 39, 2000. • appliance - proprioception - usage - functionalities - maintenance - resources (energy…) + history… Abstract representation of the situation Knowledge? How to find it from data? Sensing context from the environment presentation roadmap 1. Data 2. Representation 3. Information retrieval 4. Context evolution 5. User interaction >> Kristof Van Laerhoven, Kofi Aidoo: Teaching Context to Applications In Personal and Ubiquitous Computing, Volume 5 Issue 1 (2001) pp 46-49 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Context from data scanu@insa-rouen.fr >> • Unbelievable capacity - Moore’s law • New sensors - Artificial nose - Bio sensor • “Personal” data - humor: affective computing Data Era! http://www-stat.stanford.edu/~donoho/lectures.html Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Biological sensors scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution How are you? http://www.teco.edu/tea/sensors.html Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Expression recognition scanu@insa-rouen.fr >> Machine Perception Lab Face Detection and Expression Recognition http://markov.ucsd.edu/~movellan/mplab/index.html Data Representation Information retrieval Context evolution Too much information kills information "We are drowning in information and starving for knowledge." - Rutherford D. Roger • Critic of the "Data Era" • Data smog • Non measurable things • Ethical consequences - the Orwellian future Filter data! Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Intelligent sensors • Requirements: - Data Accuracy and confidence Self diagnostic Self calibration scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution • How to do it? - Uncertainty management - Learning ability • Network + database - Adaptation ability - Fault detection mechanism Associated software sensors >>S. Canu et al., "Black-box Software Sensor Design for Environmental Monitoring" , in International Conference on Artificial Neural Networks , Skovde, Sweden. Sep 2-4, 1998 (and related work on data validation within the EM2S project) Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Data validation • Mono sensor validation - Static validation • Mean, variance scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution - Dynamic validation • Cusum (control charts) • Trend analysis • Multisensor validation - Residual analysis - Fusion: Joint probability estimation - Prior knowledge: Balanced relations • Hierarchical validation - Multisensor perception Interactive matrix of smart sensors >> http://www.accenture.com/xd/xd.asp?it=enWeb&xd=services\technology\research\tech_sensor_matrix.xml >> K. Van Laerhoven, A. Schmidt and H.-W. Gellersen. "Multi-Sensor Context-Aware Clothing". In Proceedings of the 6th International Symposium on Wearable Computers, 2002 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Software sensor scanu@insa-rouen.fr >> • Value + confidence interval + validity domain • How to build it ? - From a model: tracking = Kalman filter - When no model is available: learn it! Raw data v(t) Raw data x(t) Raw data y(t) Raw data z(t) environment learning = Black box modeling Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Towards proprioceptors • Learn Pr x1,..., xi ,...xd , v scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution • How to learn? - Gaussian mixture + EM - Include prior: Bayesian networks - Deal with uncertainty: Evidence framework • Use to: - Detect non nominal situations - Replace missing data d = Curse of dimensionality (Belman) >> E. Petriu et al., "Sensor based information appliances", Séminaire PSI FRE CNRS 2546 16 Janvier 2003 What is data? scanu@insa-rouen.fr >> • Individuals or measurements • Associated variables • Data set (matrix) - line = measurements - column = variable • Data: point clouds - Data exploration: recognize patterns too many data: SUMARIZE Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Summarize data scanu@insa-rouen.fr >> • Non linear components analysis - Feature space: kernel (PCA or ICA) Local linear Quantisation (SOM) Relevant distance • Select features - Local adapted representation - Feature selection • Select relevant situations - Sparse learning - Kernel learning Kernel representation >> J. Mäntyjärvi, J. Himberg, P. Korpipää, H. .Mannila, "Extracting the Context of a Mobile Device User", 8th Symposium on Human-Machine Systems-HMS,Kassel, Germany, 2001. Data Representation Information retrieval Context evolution Kernel representation Distance maps Data' j i Data Influence map I (i, j ) exp dist (i , j ) Example in 2 dimension of the influence map of the "black circle". Red color denotes a high influence while the low influence zones are in blue. Analyze data proximity through the kernel map >> B. Scholkopf and A. Smola, "Leaning with Kernels", MIT Press, 2001 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Example of kernel map Class 1 Class 2 Class 2 Data clouds in two dimensions Associated kernel map Even in d dimensions you can visualize >> S. Canu and al., "Functionnal learning through kernels", invited lecture at the NATO institute in Leuven, 2002 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Looking for hiden shapes scanu@insa-rouen.fr >> • Data point = information + noise Data Representation Information retrieval Context evolution • Principal curve - Non linear PCA • Independent curve - Non linear ICA Kernel representation + linear analysis >> Balázs Kégl http://www.iro.umontreal.ca/~kegl/research/pcurves/ Navigate in high dimensional space >> J. B. Tenenbaum, V. de Silva and J. C. Langford http://isomap.stanford.edu/handfig.html Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Information retrieval • What for - User profiling User identification Battery discharge rate Sequence induction… • Classification problem - Decision theory - Example based programming - Learning machine Select relevant cases scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution A brief historical perspective of machine learning • Before machines >> Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Data Representation Information retrieval Context evolution - Statistics: PCA, DA, regression, CART, kNN • 70's - Learning is logic - Grammatical inference in expert systems • 80's - Learning is human - Neural networks: backprop • 90's - Learning is a problem: COLT - Kernel machines: SVM - Mixture of experts: adaboost What is the learning problem? >> T. Hastie, R. Tibshirani and J. Friedman, "The elements of statistical learning", Springer, 2001 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 What is learning? • Data - Training set - Test point scanu@insa-rouen.fr x1, y1 ,..., xi , yi ,..., xn , yn xn1 looking for f such that yˆ n1 f ( xn1 ) • Learning is balancing Fit data Summarize data 1. Hypothesis set 2. Fitting criterion 3. Compression criterion 4. Balancing mechanism (Neural networks, Kernels) (least square, absolute value) (penalization, Margin) (cross validation, Learning is summarizing generalization) Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Linear discrimination separable case scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution How to correctly classify all points? Occam Razor's wx+ b=0 (w,b) ??? + + + + + + + + + + + + Use hyperplane + Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Linear discrimination separable case scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution How to correctly classify all points? wx+ b=0 + + + + + + + + + + + + Be sparse + Séminaire PSI FRE CNRS 2546 16 Janvier 2003 The classifier Margin scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution How to correctly Margin classify all points? wx+ b=0 Margin + + + + + + + + + + + + Be sparse + Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Maximize the margin Be sparse scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution How to correctly Margin classify all points? wx+ b=1 wx+ b=0 Margin + wx+ b=-1 + + + + + + + + + + + + Support Vector Machines: SVM >> V. N. Vapnik, "The nature of statistical learning theory", Springer-Verlag, 1995 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 What is learning? • Data - Training set - Test point scanu@insa-rouen.fr x1, y1 ,..., xi , yi ,..., xn , yn xn1 looking for f such that yˆ n1 f ( xn1 ) • Learning is balancing Fit data Summarize data SVM 1. Hypothesis set 2. Fitting criterion 3. Compression criterion 4. Balancing mechanism (Neural networks, Kernels) (least square, absolute value) (penalization, Margin) (cross validation, generalization) Learning is summarizing >> S. Canu, A. Rakotomamonjy, Ozone peak and pollution forecasting using Support Vectors, IFAC workshop, Yokohama, 2001. Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Summarize Input adaptive scaling scanu@insa-rouen.fr >> • Enumerate all combination Data Representation Information retrieval Context evolution …and score • Preprocessing - Information theory - Statistical test • Wrapper - Use a relevance index - Learn and select together Example of relevance index for a toy problem with 2 relevant features and 50 irrelevants Global formulation >> Y. Gandvalet and S. Canu, "Adaptive Scaling for Feature Selection in SVMs", accepted for publication at NIPS 2002 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Summarize patterns scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution Dimension reduction by >> multi-resolution analysis (just like in your eyes…) Learn at the relevant scale >> multi scale representation Efficient implementation - ridgelets, curvelets - wavelets’ kernel "Kernelize" wavelets >> A. Rakotomamonjy and S. Canu, "Frame, Reproducing Kernel, Regularization and Learning", accepted in JMLR 2002 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Learning machines challenges 1. Hypothesis set - Multi scale data representation: wavelets - Use context: mixture of experts >> scanu@insa-rouen.fr Data Representation Information retrieval Context evolution 2. Fitting criterion - Sparse distance criterion - Select relevant input (adaptive scaling) - Relevant distance: adapt the kernel 3. Compression criterion - Information issues - Global optimization 4. Balancing mechanism - Efficient direct algorithm (one shot learning) Towards Context based learning Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Context assessment scanu@insa-rouen.fr • Deal with uncertainty - plausibility / credibility - unknown states / ability to evolve - data fusion: evidence theory >> • Take into account prior knowledge: transitions - temporal representation - uncertain transitions - learn probabilities or possibilities • Learn the model - don't start from scratch - create and delete contexts • Adapt context determination to user - from a global imprecise context to specific context How to implement context? Data Representation Information retrieval Context evolution Context implementation • Context = state - List of variables - Petri's nets • State = stochastic - Markov model - Bayesian networks • Identify = decision theory (data fusion) - Information retrieval • Learn context - Knowledge discovery - Create / delete - Context hierarchy (time granularity) Context is a language How to retrieve the context? Henry Lieberman: http://web.media.mit.edu/~lieber/ Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr New idea to deal with context • Current context: working memory - Prior knowledge: transition law >> - Data fusion • Learn context - Transition law - Context retrieval from data • Context is a language • Speech recognition Markovian model Evidence Language + previous state Locator's adaptation Adapt speech recognition ideas to context http://htk.eng.cam.ac.uk/ scanu@insa-rouen.fr Data Representation Information retrieval Context evolution • Available information: evidence - Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Context: Research chalenges • Inputs - Deal with uncertainty (and missing data) - Representation - Data fusion (multimedia fusion) • Context - Define a language - Represent previous state - Learn transition • Feed Back to inputs • Adapt transition to the user - Loop the user: reinforcement - Control mechanism (stability/plasticity dilemma) Challenging research issues http://cslu.cse.ogi.edu/tutordemos/nnet_training/tutorial.html >> Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Data Representation Information retrieval Context evolution Break through Theoretical models are essentials (Mark Weiser, Computer Science Challenges for the Next Ten Years) • What is information? - Computer science - Coding - Signal • Mathematics - Statistics & computer science Pattern recognition Functional analysis ?????? …remember Albert and relativity >> L. Devroye, L. Györfi and G. Lugosi, "A Probabilistic Theory of Pattern Recognition", Springer-Verlag 1996. Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Séminaire PSI FRE CNRS 2546 16 Janvier 2003 My long bet scanu@insa-rouen.fr Before 2050 We will faced a scientific revolution regarding information definition Comparable with the one induced in physics by the relativity theory $ 500 To greenpeace Long bet fundation at San Francisco http://www.longbets.org/ Research challenges • create context - how to define prior contexts: user’s needs - how to represent contexts: stochastic automaton Bayesian - learn from data: modify, create and destroy context networks • decide context - validate data - select relevant inputs - select relevant patterns - select relevant situations - make decision using data fusion software sensors representation + distance wavelets SVM and kernel Dempster-Shafer + EM • loop with the user - reinforcement learning - user’s needs Integrate: create relevant learning architecture Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Questions? • Asia • America - Scurry™, Wearable & Virtual Keyboard - Samsung, - K. Doya for reinforcement - • Context Aware Computing group - Media lab MIT CMU, Stanford Georgia tech: Future Computing Environments Smart Matter Integrated Systems (Xerox PARC) Montreal – learning lab Australia - ANU for learning - University of South Australia - wearable computer lab • Europe - Telecooperation Office (TecO) at the University of Karlsruhe The disappearing computer, a EU-funded proactive initiative The Smart-Its project Equator project focuses on the integration of physical and digital interaction Perceptual Computing in general and Computer Vision in ETH Zurich IDIAP for machine learning and speech recognition PSI, France for learning Some context aware references Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Séminaire PSI FRE CNRS 2546 16 Janvier 2003 From macroscopic… scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 …to Microscopic data scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution MCell Simulation of miniature endplate current generation at the neuromuscular junction. Image rendered with Pixar Photorealistic RenderMan. http://www.mcell.cnl.salk.edu/ Emotion detection >> E-Motions Towards affective computing >> R. Picard, Affective Computing, MIT Press, 1997 http://graphics.usc.edu/~dfidaleo/Emotion/ http://www.mis.atr.co.jp/~mlyons/facial_expression.html Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Learning accuracy How to compute error bars? • Find (a,b) such that • Model the model scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution Pr vˆ a v vˆ b 1 Accuracy confidence - The sandwich estimator, (Tibshirani, 1996) • Likelihood Based on the Hessian matrix - Confidence machine (Gammerman RHC, 1999) • Confidence: 73.11% - Credibility: 51.37% • Sample the models - Bootstrap (Heskes 1997) • Learn the error - Train using absolute error >> R. Tibshirani, "A comparison of some error estimates for neural network models," Neural Computation, 8, 152-163, 1996. >> Tom Heskes, "Practical confidence and prediction intervals", Advances in Neural Information Processing 9, eds. Mozer, M., Jordan, M. and Petsche. T., pp. 176-182, 1997. http://nostradamus.cs.rhul.ac.uk/~leo/pCoMa/ Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Looking for hiden shapes scanu@insa-rouen.fr >> Locally linear representations >> Sam T. Roweis & Lawrence K. Saul http://www.cs.toronto.edu/~roweis/lle/ Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Movie synthesis from text scanu@insa-rouen.fr >> …from text to movie Turing proof >> Tony Ezzat and Tomaso Poggio http://cuneus.ai.mit.edu:8000/research/mary101/mary101.html Data Representation Information retrieval Context evolution From one expression to another >> Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Non euclidian metrics scanu@insa-rouen.fr >> http://cs.unm.edu/~joel/NonEuclid/ Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Hyperbolic Self-Organizing Map scanu@insa-rouen.fr >> What is the "distance" between two objects Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Example on movies - HSOM scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution - 650 documents - from 16000 reviews - Internet Movie Database http://www.techfak.uni-bielefeld.de/ags/ni/projects/hsom/hsom.html Disney's animation Movies are closed Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Example on movies scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Curvlets scanu@insa-rouen.fr >> Deal with high dimensional space http://www-stat.stanford.edu/~jstarck/ Data Representation Information retrieval Context evolution Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Curvlets scanu@insa-rouen.fr >> Data Representation Information retrieval Context evolution The original image 64,536 coefficients. Deal with high dimensional space http://www-stat.stanford.edu/~jstarck/ Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Select relevant situations scanu@insa-rouen.fr • Relevant representation 3 2 1 - "Invent" features - Select features >> Data Representation Information retrieval Context evolution 1 -1 0 -1 - map - Use kernel 1 0 0 • Relevant "distance" 1 -2 -3 -2 0 • Summarize the examples - Define a relevant global criterion to be minimized - Support vector machines (SVM) Be sparse 2 Séminaire PSI FRE CNRS 2546 16 Janvier 2003 Learning architecture • • • • • • Agent - Data base - Communication Metadata Context language Adaptability: control mechanism Pre programming: anticipation Open – modular – distributed scanu@insa-rouen.fr Data Representation Information retrieval Context evolution - The Ektara Architecture (MIT for wearable) - Nexus - A Platform for Context-Aware Systems - The Context-Toolkit (Geargia Tech) How to debug such software? http://web.media.mit.edu/~rich/ Future appliances? • Deal with the context - Recognize - Adapt - Create • Inference, Learning, discovery, - Represent - Decide - Deal with time • From user interface to user interaction - Reinforcement learning - Human factors • How to know what we need? Human factors: cool technology is at our service Séminaire PSI FRE CNRS 2546 16 Janvier 2003 scanu@insa-rouen.fr