I went to the monthly Bay Area Python Interest Group meeting again on Thursday night. The scheduled Python Newbies talk by Alex Martelli got pushed back and instead we had 3 presenters discussing the Natural Language ToolKit. This turned out to be very interesting - NLTK is an attempt to build a standard library of data, datastructures, and algorithms for natural language processing code. It's all written in Python and includes things like tokenizers, parsers, stemmers, and easy ways to train algorithms on well known data sets. Some of the presenters demoed code and some explained the general field of Natural Language Processing. It all sounded suspiciously close to AI to me - tasks like translation between languages was what I was thinking about going into it but it sounds like the targets are more like summarization and statement equivalence checking - things that come very close to requiring understanding.
As an example one presenter showed a sample sentence of florid sportscaster prose about an Italian skier who "captured two gold medals at the Calgary winter games". An end goal of NLP is to then be able to summarize that sentence down to "Alberto Tomba won a race". This goes past grammatical parsing (object of the sentence, verb action, etc) and delves into context and factual equivalence (understanding that "captured two gold medals" means that he won, for instance). These are lofty goals!
I also had fun taking a guest to the session. Last weekend was my wife's extended family reunion and the California branch of the family was playing host. The metawife and I fixed baked beans and BBQ chicken for ~80 people last saturday (with a grill assist from my dad!) as part of a progressive dinner. Everything went well (and the strategy of BBQing chicken till 80% done (like 150%) and then putting in foil lined ice chest to steam finish results in delicious moist chicken).
Anyways - back to the guest - one of the extended relatives stayed in town a week on vacation and turned out to be a programmer with a CS degree from Wright State in Ohio. I didn't actually get a chance to meet him during the reunion but offered to bring him to Google and enjoyed talking shop along the way. Now, I regret to say, he's bummed because he's going to have to go home and add Python to the list of languages he needs to learn. Nothing like making a little language advocacy part of your family reunion!