For the second week, my most important accomplishment was recognizing that I was doing things incorrectly. For the past two weeks I”ve been working on a data-presentation application use to compare attributs and to generate learning questions to solve algorithmically. I spent the time creating both the interface to select and present the data, as well as the client-side and server-side scripts to pull the appropriate data and add it to the document. A few days ago I was asked about the application by a classmate and the best response I could come up with was that it was basically a low-functionality, web-based stats or analytics package. Immediately after uttering the words I realized that I was recreating the wheel, and doing so badly. I really like the idea behind the application – I think it would having the ability to analyze your stats and compare them with others very valuable – but I don’t think it’s necessary to have to accomplish the goals I have for this semester. I started building the project because I wanted to be able to view and compare stats, something I’m more than capable of doing with existing software like R or Weka.
The effort was not all for not, though, as I was required to create a number of back-end scripts that will be useful for preprocessing the data for use in Weka or R (and my ML algos). I also spent time creating additional functions to retrieve data from the Zeo and Fitbit apis that I hadn’t put into my own database previously, so I have more data to use for analyses. Working on the application also got me thinking about how to categorize the data. Two weeks ago, we discussed labeling sleep data for algorithm-training, and Heather mentioned the importance of having sufficient data of each type in order to train the algo properly. I’ve been thinking about the criteria I can use to judge, for example, sleep quality, or any other dimension of my life I want categorized. Finally, we’ve been working on data-logging in Sensor Workshop, and I’m setting up a system for gathering light, temperature, and humidity data for my room to use in sleep analysis.
All of this thought and work has helped me return my focus to clearly formulation the learning problem I want solved. Presently, I’m thinking of starting with the problem I mentioned two-weeks ago:
Task: predict sleep quality given ambient light, physical activity, humidity, and temperature.
Performance Measure: difference between predicted and actual sleep quality
Experience: Zeo ZQ score given fitbit, ambient light, temperature, humidity, and light data.
Target Function Representation: q(s) = w0 + w1x1 + w2x2 + w3x3 + w4x4
Function Approximation Algorithm: stochastic gradient descent