Artificial Intelligence Translates Chicken “Speech”; Foghorn Leghorn Announces Presidential Bid

Researchers at the University or Georgia and the Georgia Institute of Technology have successfully used machine learning algorithms to measure stress levels in small groups of broiler chickens, based on their vocalizations. You can ready the summary from Scientific American here:

Fowl Language: AI Decodes the Nuances of Chicken Speech

While this sounds like something out of science fiction, it isn’t that surprising: animal vocalizations must be able to communicate information, or else animals wouldn’t use them. Most of the time, the differences in pitch, timbre, and expression are too nuanced for humans to decode (although the article notes that many farmers, after years of experience with their flock, can detect its general mood). A machine learning algorithm, however, can identify the latent structures common to chicken “speech”, and classify vocalizations into groups with similar structures.

Of course, the structures have to actually be there to be found, but as the algorithms continue to improve–and they are improving very rapidly–this type of application will become more and more common. Who knows: in a few years, Alexa may tell you whether your five-year old really needs a third glass of water.

Machine Learning: Is “Off-the-Shelf” Software Enough?

As more and more businesses use machine learning to inform their decisions, I’m often asked whether”off-the-shelf” software can really take the place of custom solutions.

To answer this, it’s important to distinguish between software that analyzes the data (e.g. estimates a decision tree, or other machine learning model) and software that attempts to interpret the data. In most cases, you don’t need a custom solution to implement the most common algorithms: software such as Talend’s enterprise product can do that with minimal hassle. For those committed to open-source solutions, the R statistical program does more than you’ll ever need it to, albeit with a rather high learning curve (you can see what R makes possible, and the technical skill needed to use it, on this page).

However, while there’s no need to program your own Bayesian classifier from scratch, you’re still likely going to need an experienced data scientist to interpret the data. The reason is that computer programs are ultimately just lists of instructions: they can’t actually “think”. Because of this, they don’t cope well with the unusual, or the unexpected.

For example, I built a model to estimate house prices from property data such as square footage, age, and condition. Overall, it was a good fit, explaining about 85% of the variation in the data: however, there were certain properties that were assigned negative prices, so something was clearly wrong.

After drilling down into the data, I found that these properties were listed as having zero square footage. This was because they were condominiums, and in this data set, the square footage for all units was assigned to the overall building, not the individual units. There wasn’t any way to fix this, so I ended up excluding those cases and building a separate model for condominiums. If I hadn’t understood how the model worked, I wouldn’t have known where to look to find the source of the problem, and I wouldn’t have known to use a different type of model for the other cases.

To summarize, you’ll get the most return on your investment by paying for an experienced analyst to work with one of the off-the-shelf software packages. This gives you the best of both worlds: a proven modelling engine to crunch the numbers, and a skilled professional to interpret them.