I’ve been playing around with D3.js the past few weeks. Just completed a first-cut visualization of Singapore’s ethnic demographic has changed from 2000 to 2010. See more at http://vizex-sgethnic.rhcloud.com. Feedback is welcome (particularly what works and what doesn’t).
It’s been a great December, ending the year quite nicely! I attended NIPS, and bumped into my PhD supervisor Yiannis. We had a enjoyable time at the conference and exploring Montreal (a beautiful city). I also presented a poster at the NIPS Workshop on Networks about how to link node features to eigenvector centrality via a probabilistic model; for example, mapping a person’s attributes to how influential he or she is in a social network:
Abstract: Among the variety of complex network metrics proposed, node importance or centrality has potentially found the most widespread application—from the identification of gene-disease associations to finding relevant pages in web search. In this workshop paper, we present a method that learns mappings from node attributes to latent centralities. We first construct an eigenvector-based Bayesian centrality model, which casts the problem of computing network centrality as one of probabilistic (latent variable) inference. Then, we develop the sparse variational Bayesian centrality Gaussian process (VBC-GP) which simultaneously infers the centralities and learns the mapping. The VBC-GP possesses inherent benefits: it (i) allows a potentially large number of nodes to be represented by the sparse mapping and (ii) permits prediction of centralities on previously unseen nodes. Experiments show that the VBC-GP learns high-quality mappings and compares favorably to a two-step method, i.e., a full-GP trained on the node attributes and network centralities. Finally, we present a case-study using the VBC-GP to distribute a limited number of vaccines to decrease the severity of a viral outbreak.
If you’re ever getting “no such instruction” errors using Theano, e.g.,
no such instruction: `vmovd %rax, %xmm0′
try inserting the following lines into ~/.theanorc (create if missing)
More info on stackoverflow.
It’s been a while since I last updated this blog. My excuse is that I’ve been busy but who isn’t? ;) Just submitted a couple of conference papers with another journal paper in the review stage—I’ll post them up here soon. I’m excited about one of the conference papers which ties complex networks metrics with machine learning (specifically, centrality with a sparse GP), which can have applications in a broad range of areas.
Working at SMART has been quite enjoyable this past year; from hanging out in the (autonomous vehicle) garage to data analytics @ the fishbowl (pictures to come). A few of my fellow postdocs have moved on to greener pastures since I joined, which has gotten me thinking about what lies ahead. As usual, there is some internal tension brewing between choosing academia or industry. I’m would prefer the former but am open to the latter—given the limited number of tenure-track faculty positions available, I believe this to be the best perspective. Anyone with experience have any thoughts?
I’ll update more often from now on given I’ve mostly settled down into a routine. Oh, and I’m engaged so, a wedding next year. Crazy, exciting time in my life!
Well, my first working day at SMART is almost over. 4 minutes and 35 seconds to the stipulated end-of-work-day. But who’s counting? So far, it’s been interesting — met the friendly folks here and saw the cool toys (autonomous vehicles). I’m one of the “early birds” and managed to land a desk with a great view of the NUS campus. That said, I might move down to “The Garage” where all the robots/machines are. Hopefully, I’ll sort out all my administration stuff soon and get on to
playing working with the vehicles and some new learning methods I have in mind.
Abstract: Crafting a proper assistance policy is a difficult endeavour but essential for the development of robotic assistants. Indeed, assistance is a complex issue that depends not only on the task-at-hand, but also on the state of the user, environment and competing objectives. As a way forward, this paper proposes learning the task of assistance through observation; an approach we term Learning Assistance by Demonstration (LAD). Our methodology is a subclass of Learning-by-Demonstration (LbD), yet directly addresses difficult issues associated with proper assistance such as when and how to appropriately assist. To learn assistive policies, we develop a probabilistic model that explicitly captures these elements and provide efficient, online, training methods. Experimental results on smart mobility assistance — using both simulation and a real-world smart wheelchair platform — demonstrate the effectiveness of our approach; the LAD model quickly learns when to assist (achieving an AUC score of 0.95 after only one demonstration) and improves with additional examples. Results show that this translates into better task-performance; our LAD-enabled smart wheelchair improved participant driving performance (measured in lap seconds) by 20.6s (a speedup of 137%), after a single teacher demonstration.
This Wired article on the Internet Archive reminded me of a talk I once attended (at UCD) by the founder, Brewster Kahle. In addition to being technologically impressive, the Archive’s WayBackMachine is tremendously fun. Try visiting Google back in 1999.