11.07.2015 Views

Machine Learning Project Proposal

Machine Learning Project Proposal

Machine Learning Project Proposal

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Machine</strong> <strong>Learning</strong> <strong>Project</strong> <strong>Proposal</strong> Christopher Eggert and Yueng de la Hoz Mobile phones, which have many integrated sensors and are carried all the time by nearly everyone, are rich platforms for data collection and analysis. Currently, most mobile machine learning platforms collect data and send it to a remote server for processing. This is done to save precious battery life on the phone. This architecture creates significant overhead for application developers, who must also design and maintain a backend for any practical machine learning application. <strong>Machine</strong> learning algorithms remain “dumb” when it comes to power efficiency. In nearly all machine learning algorithms, no attention is paid to the power costs of the algorithm’s decisions. Our goal is to address this deficit. A simple example is an activity recognition system, which is a common application of mobile machine learning. Suppose this system can classify three behaviors: running, sitting, and walking. Such a system can use data from sensors like the accelerometer, GPS, compass, gyroscope, microphones, and off-­‐board sensors that can monitor things such as physiological signals (e.g. heart rate). Power-­‐naïve approaches continuously collect data from all of these sources, and feed the data to the algorithm. This is grossly inefficient from a power-­‐saving perspective. We can clearly discern if we are sitting by only looking at accelerometer data. There is no need to even activate the other sensors if the accelerometer indicates that we are not moving. This would greatly reduce the energy expenditure and increase the battery life of the phone. We propose to introduce power-­‐awareness to existing machine learning algorithms. We want to begin with simpler algorithms as a proof-­‐of-­‐concept. Currently we are considering a decision tree algorithm, in which we will modify the split criteria to account for the power efficiency of the attribute’s associated sensor. Ideally, this would result in more power-­‐efficient decisions being made at the top of the tree. As we classify activities, we descend the tree and activate sensors only as they are needed to make decisions. This will introduce some complications, which will be addressed in the work. The ultimate deliverable is to see if this approach significantly reduces energy expenditure, and if it is feasible. We will test the modified algorithm against the unmodified algorithm on a dataset and measure how much energy is saved. The first step of this project will be to design the new split criteria functions. These will essentially weight the traditional split criteria with knowledge of the power efficiency associated with the attribute. Then, we will record a labeled dataset with a mobile phone, and test the modified algorithm on the dataset. We will similarly test the unmodified algorithm on the dataset, and compare results. References: Pattern Recognition and <strong>Machine</strong> <strong>Learning</strong> by Bishop, Data Mining by Witten


Lu, Hong, et al. "The Jigsaw continuous sensing engine for mobile phone applications." Proceedings of the 8th ACM Conference on Embedded Networked Sensor Systems. ACM, 2010. Miluzzo, Emiliano, et al. "Sensing meets mobile social networks: the design, implementation and evaluation of the CenceMe application." Proceedings of the 6th ACM conference on Embedded network sensor systems. ACM, 2008. Wang, Yi, et al. "A framework of energy efficient mobile sensing for automatic user state recognition." Proceedings of the 7th international conference on Mobile systems, applications, and services. ACM, 2009.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!