Archive for May 2016

Will AI Render Code Obsolete?

In our current age, knowing how to code is like being part of a new, elite, tech-based class with the power to “change the world” or at least make a whole lot of money trying. This change in culture has encouraged many schools to begin teaching coding in earlier and earlier grades, and for coding seminars and college classes to be appreciated as spring boards into excellent career options and reliable success.

“If you control the code, you control the world,” wrote futurist Marc Goodman. Or as Paul Ford put it, “If coders don’t run the world, they run the things that run the world.”

machine l2However, despite societal trends that seem to say otherwise, now might not be the time to learn how to code. Big tech moguls in Silicon Valley have been aggressively pursuing a new approach to computing that may render coding unnecessary for anyone but the most prominent and influential coders. This approach is called machine learning, and it allow creators to sidestep the brunt work of traditional programming, a process that requires that an engineer write explicit, step-by-step instructions for the computer to follow.

Machine learning would allow programmers to skip encoding the computers with instructions and instead allow them to train the computers to perform specific tasks. What’s the difference? Say you want a computer to recognize a cat. Instead of programming it to look for whiskers, ears, fur, eyes, a tail, etc., you simply show the computer thousands and thousands of pictures of a cat, so that the computer eventually creates its own standard understanding of a cat that enables it to recognize them in the future. If the computer has some hiccups at first (for example, it continuously recognizes foxes as cats) you just keep showing it pictures and honing its understanding of what exactly defines a cat, without ever actually programming in that definition.

Machine learning has been around for decades, but it has recently become immensely more effective and powerful, chiefly due to the ability to create deep neural networks and computers that can work with Big Data or enormous, layered data sets. And if you’re wondering what deep neural networks are, they can be loosely defined as massively distributed computational systems that mimic the multilayered connections of neurons in the brain.

machine learningMachine learning is currently used by tech giants to provide many services that are commonplace in the average internet-user’s life. It’s used to determine which stories show up in your new feed, Google Photos uses it to identify people, and self-driving cars will use machine learning to avoid accidents.

The area of major confusion and concern, however, is that when a computer is using machine learning, its engineer never understands exactly how the computer is accomplishing its tasks. The neural network’s operations are opaque and inscrutable, involving patterns that are laid out over immense trains of otherwise unrelated data. Now instead of the relationship between man and computer being like creator and created, the relationship would change to that between man and domesticated dog; you’re not quite sure how your control works.