Hybrid deep learning for modeling driving behavior from sensor data
Learning Driver DNA
Usage based insurance solutions where smartphone sensor data is used to analyze the driver’s behavior are becoming prevalent these days. However, a major shortcoming of most solutions on the market today, is the fact that trips where the user was a passenger, e.g. taxi trips, get included in the user’s risk profile.
At Sentiance, we developed a deep learning based solution that gradually learns to model the user’s driving behavior, and that can be used to detect and remove those trips where the user was actually a passenger.
The input to our deep neural network is raw accelerometer and gyroscope data. A convolutional neural network is used to learn low-level features that describe the user specific driving characteristics, whereas an LSTM layer is stacked on top of the convolutional block to model long-term temporal dependencies within the sensor data.
The goal of this project was to let the neural network learn a feature space in which trips with a similar driving behavior appear close to each other, while the cosine distance between trips with distinct kinds of driving behavior should be large. Since it is difficult and expensive to gather large amounts of labelled data in this case, we applied a clever transfer learning trick; The network was initially trained with thousands of userIDs as output labels, and was forced to learn to classify which trip originated from which user. Once convergence was reached, we chopped of the top soft-max layer of the network, and used the dense layer directly as our feature space.
Basically, this allowed the network to learn a metric space that we can then use for clustering or outlier detection, even on trips for new users that never appeared in our training data.
Check out our latest blog post at Sentiance that describes the model and approach in details: Applying deep learning to distinguish drivers from passengers using sensor data