October 6, 2004

Modeling ADLs with Timed HMMs: Conclusion

So here is what I think is reasonable to conclude from this data. Nothing earth shattering, but now there is data to support it:

  1. Activity durations are not well characterized by exponential distributions. One might model them differently and possibly give an inference engine more accuracy as gaussian, gamma or poisson distributions
  2. The HMM model is sufficient to recognize activities well if the objects involved do not overlap. When the objects involved overlap, the HMMs start to fail. Particularly when you want the system to segment the activities, which is a reasonable expectation.

So I think that the next step is to actually a step backwards in terms of modeling. I want to see how well a purely event driven version of this model does in comparison. That means that there are no "null" observations.

Posted by djp3 at 5:16 PM | Comments (0) | TrackBack (0)

Modeling ADLs with Timed HMMs: Follow-up

Here are three graphs comparing the probability of seeing an object given an activity. This first one compares engaging in a leisure activity with making a snack. In this case there is little in common between the two profiles. As a result, the activities were never confused by the HMM model.


In contrast here are two examples in which the activities were confused. Notice the overlap in the observation profiles

teethPA.jpg another example of confused activities: toiletWash.jpg
Posted by djp3 at 11:55 AM | Comments (0) | TrackBack (0)

October 4, 2004

Modeling ADLs with Timed HMMs

Here are some results for using HMM's to recognize ADLs. First about the data set:

This was the dataset that Matthai first recorded at his house. It consists of 17 non-researchers performing 12 activities one from each of 12 classes. The 12 classes were chosen randomly from a total set of 14 classes, so in each user trace there are 2 classes not represented. The classes of activities performed correspond to ADLs on the form that Intel scrounged up that care-givers fill out during home-care visits.

Each user wore an RFID antenna glove and performed their activities in a house that was tagged with 108 RFID tags. The sequence of activities has no information as they were randomly ordered. Each activity was performed atomically with no interruptions. Here are some statistics related to the data:

Activity Class# of traces in datasetAverage Duration in seconds
Personal Appearance1691
Oral Hygiene13108
Hand Washing1175
Appliance Usage1392
Prepare a snack12174
Prepare a drink19135
Control the temperature1567
Telephone Usage17149
Infant Care17160
Take Medication1474

Here is a graph of the activity durations:


Here is the aggregate of all of those durations approximated by a gamma function


To model this domain with HMMs I segmented each of the traces into their 12 composite activities. I calculated P(RFID objects given activity) for each activity including the possibility of a "nothing" observation. Then I constructed an HMM in which there was one node for each activity. Each node has a self-transition whose probability was calculated based on mean activity duration. Each node also had 13 uniformly distributed out-transitions to the other activity nodes. The HMM started with a uniform prior over all of the activities. I then performed 17 fold cross-validation on the user traces and determined the viterbi path through the state space that corresponded to left out user trace. Here are the results:

Total Number of Activities performed:204
Number of missed Activities (False Negatives)17
*Average duration of missed activity82 second
*Average number of objects touched in a missed activity2.3
Number of added Activities (False Positives)6
Number of confused Activities17
*Toileting interpreted as washing hands7 times
*Washing hands interpreted as toileting1 time
*Using a dishwasher interpreted as making a snack1 time
*Making a drink interpreted as making a snack1 time
*Personal appearance interpreted as washing hands1 time
*Personal appearance interpreted as brushing teeth2 times
*Cleaning interpreted as making a drink1 time
*Using an appliance interpreted as making a drink1 time
*Making a drink interpreted as using an appliance1 time
*Leisure interpreted as controlling temperature1 time
Overall Recall (Correctly guessed activities)/(All true activities) = 160/20478%
Overall Precision (Correctly guessed activiites)/(All guessed activities) = 187/19397%
Posted by djp3 at 5:00 PM | Comments (0) | TrackBack (0)