Neural Networks That Make AI More Human
AI’s potential to fully embrace human characteristics
Welcome to the unsupervised, cognitively convoluted world of artificial intelligence, where millions of ideas — both mechanized and those in progress — come together to try and map human cognition in computers.
Here is the main problem with AI. There’s two main, opposing representations of it — rule-based AI and the connectionist model of AI. The former relies on algorithms, having the inability to interpret beyond the surface meaning of things. We saw this type of AI’s failure in Turing tests and SHRDLU, and in philosophical doo-dah with the Chinese Room argument, the Frame Problem, the Simulation Problem of AI, so many problems…
So computer scientists, philosophers, and people from other fields turned to neural networks. Neural networks, or connectionist models, are better than rule-based AI in ways that they simulate (basically copy) lots of densely interconnected brain cells inside a computer so they can learn, recognize patterns, and make decisions in a human-like way. And it learns by itself, so we don’t have to keep updating it like we do with rule-based AI (rules change all the time!)
A neural network basically consists of nodes, connections, and hidden layers. The weights are modified by connections according to the input patterns that it is presented with. NNs learn by example, just like us. For instance, a child learns to recognize dogs from examples of dogs. However, even though our learning styles are similar, NNs have a more…mechanical way of doing it.
So how do NNs learn? Hear me out before you get to the good part, as it’s important to understand artificial learning. Neural networks are regulated by a feedback process (you might’ve heard that in biology or economics) called back propagation. You have to compare the actual output produced by a network to the output it was supposed to produce (kinda like in lab experiments where you do your calculations depending on the actual vs. expected value), using the difference between them to modify the weights of the connections between the units in the network. You essentially work from the output units -> hidden layers -> input units. tl;dr: you go backward.
NNs are used for a lot of cool things, like voice recognition or on apps that recognize your handwriting when you draw on a touch screen. But lately they’ve been so advanced that they can do some seriously human stuff. Take a look.
Captioning Images and Videos
I edit and re-edit my Instagram captions before uploading even though I know my captions can never be get as poetic as Drake lyrics. But neural networks can now caption photos…in an adorably interesting, sometimes ridiculous way. Samim Winiger, a self-proclaimed alien and an AI programmer, developed a recurrent neural network (to be defined afterwards) using Google and Stanford’s open source model (from TensorFlow aka the holy library of machine learning).
He tested the neural network and made two videos, but I’ll feature some of the machine’s captions right here:
How it worked:
Winiger divided the project into three stages: the input stage, where a dataset of images and 5 sentence descriptions were collected with Amazon Mechanical Turk. Next was the training stage, where the images are fed as input to RNN and the RNN is asked to predict the words of the sentence, conditioned on the current word and previous context as mediated by the hidden layers of the neural network. In this stage, the parameters of the networks are trained with back propagation (scroll up to see what that is!). Lastly, we had the prediction stage, where a set of images is passed to the RNN and the RNN generates the sentence one word at a time.
View Samim’s full Github repository of the project here.
Creating Pokémon Designs and Names
Game Freak, the company who creates the Pokémon games, has provided us with household designs and names that have graced pop culture for 21 years (Pikachu, Mewtwo, Charizard). I think that the Pokémon research scientist Janelle C. Shane’s neural network generated were of some weirdly creative (and some not E-rated) calibre and passed off as legitimate Pokémon (except the gun dinosaur and the ranch sauce — but hey, we have a cybernetic dragon and a cotton candy Pokémon so it’s not too far-off). This neural network designed a lemon-holding plump owl called Quincelax, a dinosaur with a gun (cough, E rating?) called Mawvh, and an indescribable creature called Tyrnakine. Shane’s neural network surely exceeded some standards and as a long-time fan I’m not unimpressed (except for that Staraptor with the bag on its head what the — ).
How it worked:
Research scientist Janelle Shane used char-rnn, an open source torch add-on for character-based neural networks. A recurrent neural network performs the same task for every element of a sequence, with the output being depended on the previous computations, rather than having the input and output be independent of one another. Shane extracted a list of Pokémon names and abilities from a Pokémon web encyclopedia and let the network run through the names, eventually creating its own.
Copying Artists’ Paintings
In fourth grade, I tried to draw a frog. I had a pet frog I took to class one day, where I tried to sketch it. I managed to draw 1/3 of its head.
Leon A. Gatys, Alexander S. Ecker, and Matthias Bethge conducted a study where biologically inspired vision models called deep neural networks recreated famous paintings, following a neural algorithm. Looks like the network could generate more than a head of an object — which is ironic, because the early iterations of AI (pre-neural network) were criticized for being overly rule-based and rigid. Now, it seems like AI is heading towards actually implementing abstract stuff.
Both of these images are sourced from Daily Mail. The original artwork is the smaller box while the artificial one is the bigger.
How it worked:
The researchers introduced an artificial system to create artistic images of high perceptual quality. The neural network needed strong image processing skills — in the form of a convolutional neural network (CNN), which is a sub-type of an artificial neural network that is well adapted to take images as input. The output of a convolutional network can be either a classification result (e.g. “This image contains x but not y”), or one or more images (e.g. the output image could be a x or y version of the original image).
The CNN was basically able to recognize the objects in the painting (see this article for an in-depth tutorial) and synthetically generate textures. The synthesis procedure takes as input an image containing “noise” and proceeds by iteratively updating this noise image (again through back propagation) until it resembles the source image.
Flirting with Pick-Up Lines
Janelle Shane’s work makes a return with another neural network of hers — this time, one that can spout adorkable pickup lines. Being a horrible flirt myself, I can’t judge this recurrent neural network for having a lot of, uh, poetic attempts.
The NN uttered sweet nothings such as “you look like a thing and I love you” and these gems of passages:
Hey baby, you’re to be a key? Because I can bear your toot?
I don’t know you.
I have to give you a book, because you’re the only thing in your eyes.
I don’t really know what to say or how to react.
Are you a camera? Because I want to see the most beautiful than you.
I had a come to got your heart.
You’re so beautiful that you say a bat on me and baby.
Smooth. Maybe Shane could feed it some Drake lyrics and everything could get better.
Janelle Shane’s Tumblr has similar ridiculous/adorkable content…all the neural networks she implemented are so relatable and human. Check it out if you wanna see a neural network do things like create bizarre recipe names, write fortune cookie entries, and generate all the episode titles for the next season of Doctor Who (one such title is called “The Fires of Poop”).
How the pickup NN worked:
The same open source and method used for the Pokémon project was used for this project, except with a dataset of popular pickup lines (“You must be a … because you’re …,” “hey baby, wanna…”).
There’s still a lot of wacky neural network uses especially in facial recognition (putting a smile in one’s face, making someone appear old) and image processing. Neural networks (artificial, recurrent, convoluting) seem to be artificial intelligence’s strongest contender for fully incorporating human intelligence with that of machines.
With a lot more buzz towards machine learning in the tech industry, neural networks are becoming inevitable buzzwords because of their potential to fully embrace human characteristics that will make AI more than emotionless, “murderous” robots. And perhaps we’ll finally be able to welcome machines as equals (but for now, we have a long way to go).