Unnaturally Long Attention Span

Article Archive for 2010
20 April 2010

Prologue

The hallway contracted towards the end like the tip of a duck’s tail.

Something was familiar about the plopping sounds from the boy’s wet boots as he walked across this hard linoleum floor. Yet, this hallway was not familiar.  This building was not familiar.  The grey, nondescript office complex looked like any other building in this part of the City. Its tenants, a mix of professional services, small business contractors, and the occasional sales office, had very little interest in their neighbors’ dealings.  The soundproof walls all but ensured complete isolation from each of the other suites.

The boy at last reached the last door of the hallway before the fire exit, a stark grey metal door with nothing on it but a chrome handle and a numeric keypad.

So, this was where he worked.

The boy punched in the 8-digit code as instructed in the letter from the man he had never known. He rotated the handle downwards, counter-clockwise, until it clicked in place.  The clicking briefly startled the boy, but no one else was around to hear it, and certainly not at this hour.  The door gave way with a gentle shove, revealing a dark reception area containing a metal desk paired with a wooden coat rack.  There was no chair behind the reception desk, indicating that this room had never been used for that purpose.  The boy reached for the light switch, turning on the overhead florescent lighting.  A security camera lurked in the far corner of the ceiling behind one of those black plastic globes that you might find in a department store.

The boy kept his coat on.

The room’s opposite side connected to a passage to an inner room.  Inside, green points of light flickered.  A router.  Network traffic was still flowing from somewhere.

He must not have turned off everything before they got to him.

The boy dried his boots off on the mat and entered the vast inner room. The room smelled like the inside of a dusty library, lit by floor lamps with task lighting on the desk surfaces that gave everything a greenish tinge.  A large carved mahogany desk stood in its center with papers strewn about on top.  The boy could now see the blinking router stacked on top of a rack of black server machines, humming along.  Flanking the massive desk on one side, a drafter’s workbench with overlaid sketches on several sheets of plotter paper.  On the other side, a computer terminal with a tube monitor glowed.  As the boy wandered in, he was careful not to trip over the black cable that connected the terminal on the desk to the router.

The only other sound in the room was a faint dripping from a faucet in the back, where there was a kitchenette with a sink. A pot of stale black coffee sat in a coffee machine.  Along the side of the room were two long aisles of filing cabinets that reached up to the ceiling.

The boy stood on his tiptoes to see the front of the first aisle—and saw that it was simply labeled with the boy’s own name: Mason.

19 March 2010

Ether Net

Take me on a wave to
My virtual life
Away from here
Friends I hold dear

Log me in
Sign me on
Share with me
The places you’ve gone

Stream of news
Fill my empty inbox
Scrolling through
More page views

And your silent smile
Fades to yesterday
Your voice is gone
Your status: away

Log me in
Sign me on
Share with me
The places you’ve gone

19 February 2010

When it’s Appropriate to Use Machine Superintelligence

I refer to Superintelligent systems as those that are considered in popular parlance to be “AI”, but go beyond the computational capabilities of the human brain.  Such as one Deep Blue chess playing system, or a web search engine, or even a pocket calculator.  These systems perform intelligent tasks, but in a very different way than a human does.  These systems can achieve high performance by taking advantage of computational or storage facilities that humans do not have in their biological arsenal.

mechanical turkThe question that inevitably arises for AI practitioners in the process of building intelligent systems is: when should Superintelligent techniques be used?

For machine learning engineers working at a company where percentage points of classification accuracy directly translate to revenues, the right answer may be “whenever possible”.  Yet for an AI purist trying to build human-like agents the answer is “almost never”.  Russell and Norvig identified this fundamental dichotomy in their treatise on AI as the diametric goals of building systems that think like humans versus building systems that think rationally.

I’m currently working on a problem in which the best approaches that are inspired by human intutions, and hence generalize to a wide range of situations, have led performance to a plateau.  A typical machine learning expert is trained in this regard to examine their dataset and misclassification matrix, make diagnostic measurements, such as variance, bias, learning rate, and make the appropriate adjustments to either their choice of algorithm or feature set.

However, before one proceeds with these diagnostics I’d advocate another way of thinking about the problem for the practitioner concerned with both performance and generalization. One that has to do with considering information representation.

We often expect our intelligent systems to behave in response to us in a human way, but too easily forget that the representation of the world that the machine recieves is very different than the one we as humans receive.  In a sense, the machine lives in a different Universe and all of his connections to reality are gated by these artificial inputs.  The reason Stanford’s autonomous SUV Stanley was able to navigate through the Mojave desert and win the $1 million DARPA grand challenge was not due to a breakthrough in better, more human-like decision making, but a barrage of on-board sensors including 5 roof-mounted laser range finders, dual 24GHz RADARs, GPS, IMUs, all fed to a supercomputer in the trunk. It would have been a different matter entirely if Stanley was able to achieve this feat with just two cameras and two audio sensors.

A single event in objective reality is very different when projected into the human or machine experience.  A human rating movies on Netflix gets a very different psychological and phenomenological experience than he gets from classifying rows of numbers by staring at a spreadsheet of vectors, even though both acts produce the same functional result.

In cases where the representation of the Universe that a machine gets is an undersampled version of the minimal feature set that a human needs to perform the same task, the machine needs to use Superintelligence in order to achieve the same functional result. Many different information-theoretic measures can be used to test whether the input signals correspond well when it’s not obviously apparent. Besides, achieving human-like response from a machine is quite trivial with the right inputs; it’s with the wrong inputs that we have to use more sophisticated techniques.

13 February 2010

Vocals Remover for Windows Media Player

Last week, I was looking for some software to remove the voice tracks from mp3s. There are plenty of independent audio editing programs that can filter out vocals from sound files, but I didn’t want to modify my mp3s or keep a whole ‘nother voice-stripped version of my music library. What I really wanted was just a minimal plugin for my Windows Media Player that I could enable to turn off vocals. There didn’t seem to be anything out there freely available.

So, I started hacking my own plugin, and I’m releasing it here for free download in case it could be useful for others. (Hi, Google!)

Vocals Remover is an Audio DSP plugin for Windows Media Player that cancels out the voice track in real-time so that you can sing along. It supports all major file formats (including video) and lets you adjust the amount of voice removal and gain compensation. While the plugin works pretty reliably, it can get confused on songs where the foreground singer and instrumentals are hard to tell apart.  So, don’t expect it to work well on your experimental house mix or just about anything by T-Pain.

Download
Vocals Remover for  Windows Media Player.msi (44 KB)
Requirements: WMP 11 or greater

To install, simply run the downloaded package and uninstall works in the usual way via Windows control panel.

Usage

To enable or disable, just see whether the plugin is selected in WMP.  In WMP12, this is found by right-click -> Tools -> Plugins.  There is also a properties panel in Tools > Options >Plug-ins > Audio DSP -> Properties button, where you can customize the amount of the effect to apply.  A 0.0 means the effect is effectively off and a 1.0 means the maximum amount of voice cancellation is applied.

A short demo:

The above video also features the highly recommended lyrics plugin, which in combination with the Vocals Remover, turns your PC into a hacktastic DIY karaoke box!