Wednesday, July 29, 2009

Python RESTful Objects

Posted by Danny Tarlow
I like this Python class design idea:

Wednesday, July 22, 2009

Personal rapid transit

Posted by Danny Tarlow
I had the privilege of getting to tour the soon-to-be-opened ULTra personal rapid transit station at Heathrow airport in London yesterday. It's essentially a mass transit system that uses personal, autonomous cars as the unit of transport, rather than bus or subway. I think it is a really cool project, and there are several interesting angles.

First, it greatly simplifies transport, because you just enter the destination you want to end up at, and it will take you there -- no more listening to garbled announcements on the bus and subway to figure out if you're at the right stop, and no trying to navigate maps and transfers. If you want to go from parking lot A to terminal 5, it will just take you there.

Second, there's a real focus on efficiency -- not transporting "empty space." If you look at the normal bus routes during off-hours of the day, they'll be driving a huge bus while only transporting one person. That's a lot of extra weight and thus extra energy to be using every 15 minutes of every day of the year. The PRT car has a four-person capacity, and they'll only be driving when there are passengers inside.

Finally, the technology is just really cool. There is an elevated track that the cars have to stay on, but they're able to make turns, plan routes, and more-or-less drive themselves. It's not a full blown autonomous vehicle, but it's yet another case where they've simplified how much technology is needed for the problem (by building special tracks) while still maintaining the "cool" factor.

You can see a video of it in action here. And this isn't science fiction -- it's actually built, and about to be opened:

Then there are several more videos at the website:

Monday, July 20, 2009

Upcoming talks

Posted by Danny Tarlow
For those of you who think that my month in Europe is one big vacation... well, you're mostly right. However, I would like to remind you for the record, that I am doing a bit of work as well. Right now, I'm putting together slides for two upcoming talks:
  • I'll be speaking on July 23 at Microsoft Research in Cambridge on some recent work I've been doing on how to make max-product belief propagation tractable even in the case of non-local interactions. The title is tentatively, "Tractability in High Order Binary Factor Graphs".
  • I'll be co-presenting with Andrew Peterman on July 28 at the IBPSA conference on Building Simulation in Glasgow, talking about our paper, "Automatically Calibrating a Probabilistic Graphical Model of Building Energy Consumption."
I'll put some slides up publicly (and maybe write a bit about each project) sometime fairly soon, when the time is right.

Summer school wrap up

Posted by Danny Tarlow
I've been quiet recently on the blog front for two pretty significant reasons: (a) I've been busy attending summer school, talking with interesting people, hanging out on the beach, and traveling through Italy; and (b) I've had very little prolonged, reliable, free internet access. Most times I've signed online have been to hastily answer a few emails and maybe to book a train, flight, or hotel for the next city.

I'm now settled down a bit in Paris, so I thought I'd give a quick recap of summer school.

The over-arching theme of the school was how to use machine learning to attack hard problems in computer vision. There is plenty of overlap in the tools and problems that researchers in both fields think about, but there is a bit of prejudice on both sides. The oversimplified version is that machine learning people think computer vision people use ad-hoc algorithms that are over-engineered to only work well on the specific data sets they're using; and computer vision people think that machine learning people are too high on their pedestals, coming up with methods that may be "pretty," but that would never work on large enough problems to be of any interest.

In reality, neither of these views are completely true, and we saw some great talks at the school showing how you can come up with well-justified approaches using machine learning towards solving computer vision problems that are efficient and powerful.

All of the talks were very good, but two of the highlights for me were Pushmeet Kohli's talk on using graph cuts for energy minimization, and Rob Fergus's talk about internet-scale image retrieval.

Pushmeet's abstract:
Over the last few years energy minimization has emerged as an indispensable tool in computer vision. The reason for this rising popularity has been the successes of efficient Graph cut based minimization algorithms in solving many low level vision problems such as image segmentation, object recognition, and stereo reconstruction. This tutorial will explain how these algorithms work, and what classes of minimization problems they can solve.
The nice part of the talk is that he went far beyond the standard case, where you have only two classes (e.g., foreground and background) with submodular potentials (crudely: nearby pixels should prefer to take the same label). In the past 5 or so years, some serious advances have been made in making these methods applicable to a wide variety of interesting, realistic problems. He talked about the non-discrete case, the non-submodular case, the multi-label case, and the higher-order potentials case.

Rob Fergus's abstract:
Existing object recognition methods are not practical to use on huge image collections found on the Internet and elsewhere. Recently, a number of computer vision approaches have been proposed that scale to millions of images. At their core, many of them rely on machine learning techniques to learn compact representations that can be used in efficient indexing schemes. My talk will review this work, highlighting the common learning techniques used and discuss open problems in this area.
The nice part about this talk was that he chose approaches that were extremely practical. Rather than having a method (say, machine learning) that you want to apply to a problem whether it fits or not, this was a more gentle approach, using efficient algorithms and data structures, then only applying a small amount of machine learning in the cases where it produced the largest gains -- in this case, learning hash functions.

Also, if you're clicking around the ICVSS page, don't miss this one =P:

Wednesday, July 1, 2009

$1000 for rediscovering forgotten discoveries

Posted by Danny Tarlow
I will be heading off to Sicily on Friday for the ICVSS Summer School on Machine Learning for Computer Vision. I'm pretty excited to see Sicily, meet some fellow students, and see what should be some great lectures -- the list of speakers looks very promising.

There is an interesting exercise at the school that I haven't seen before. To make it even more interesting, they're attaching a $1000 prize to the winner. Here's the email I got describing the exercise:
READING GROUP: A critical review of old ideas, with treasure hunt

PRIZE: $1000

Computer Vision is a fairly "horizontal" field, where often ideas are proposed, forgotten, and then re-invented. This is typical of nascent fields and "high entropy" research environments. At various points, it is useful to revisit old literature, and try to read them in a modern key. What ideas survived? Have they taken "new forms"? What leads have turned into dead-ends? In this reading group we will attempt such a re- reading for two authors that influenced the field in its beginning, but whose influence has waned over the years.

Students will be asked to read two books: One is David Marr's 1980 book Vision. The other is James Jerome Gibson's 1986 book "The ecological approach to visual perception". More than 20 years have passed, which is enough time to reflect.

Students will be asked to compile a list of "ideas" or "leads" proposed or discussed by these authors. For each idea, they will be asked to evaluate it in relation to the current literature: Is this idea still valid? Is it reflected in the current literature? Has this idea been proven fruitless? Has it been forgotten but may still be worthy of pursuit? They will be asked to give a few examples from the modern literature (say ICCV/CVPR/ECCV proceedings from the past 4-5 years) where this idea is adopted or disputed.

The competition will then proceed as follows: Students will be called to present and describe these ideas, and discuss whether it is a "thumbs up" or a "thumbs down" idea. If the student manages to convince the audience, the idea is put into a bucket. If others have found the same idea, the number of people that found it is a "score" for that idea.

There will be two prizes for the competition. One goes to the individual or group that found the most number of ideas. The prize will be a bottle of Champaign to share among the winners. The second prize ($1000) will be for the treasure hunt, and will be given to the individual that will have found one idea that he/she can convince the audience is worth pursuing, and that nobody else in the audience has found.

Students will be asked to submit their list of ideas found on the first day of the school. This competition will require that students consult the library of their institution ahead of time, and plan enough time to read these books, possibly more than once, in relation to current literature.

I bought a copy of the Gibson book and will take a look at it on the airplane to Europe, and maybe also in my hotel the night of my layover. Regardless, I think it sounds like a fun exercise -- I don't have any examples off the top of my head, but it seems that there are many cases in history where good ideas have been discovered, forgotten, then rediscovered. If nothing else, hopefully I'll get a glimpse of how the world appeared in 1986.

PS. If anybody has some prize-winning ideas, I'm more than happy to fairly divvy up the prize =P