Skip to navigationSkip to content
dogs on a school bus
AP Photo/Amy E. Conn
The one in the middle is definitely a Shadoopy type.
HEEL, ROTSON

We got a machine-learning algorithm to come up with 400 surprisingly plausible names for dogs

John Keefe
By John Keefe

Investigations editor

From our Obsession

Machines with Brains

AI is upending companies, industries, and humanity.

Shadoopy. Dango. Ray-Bella. Figgie.

If I told you those were names of actual dogs, would you believe me?

They’re not. They were generated by a machine-learning algorithm mimicking dog names after it “studied” a list of 81,542 dogs registered in New York City.

The experiment, which took just a few hours Saturday, was something I’ve wanted to try since I saw the playful, awesome work of Janelle Shane and her experiments using neural networks to generate paint colorsguinea pig names and Harry Potter fan fiction.

I happened to have some free time, and decided to give it a shot. Along the way I:

  • built, in mere minutes, a computer in the cloud powerful enough for machine learning
  • made and played with a recurrent neural network
  • learned a little more about machine learning
  • had a lot of fun

The program generated lots of names, including many that existed in the original data. Once I filtered those out, I had almost 400 computer-created, mostly plausible dog names. Here are some of my favorites:

Rotson
Dudly
Lenzy
Murta
Cookees
Geortie
Dewi
Chocobe
Sckrig
Booncy
Cramp
Dango
Ray-Bella
Santha
Coocoda
Satty
Bronz
Shadoopy
Mishtak
Figgie
Grimby
Phince
Bum-Charmo
Soma
Blant
Snowflatey

The computer has no idea that these are names. Or words, even. It’s using a “recurrent neural network” to predict which character might follow a group of previous characters.

So after “fluff,” a good guess might be y. I stop the guessing game before the program gets too good, so it might guess the letter a instead. Good dog, Fluffa!

What’s also striking is that these character predictions include spaces, dashes, and carriage returns, so it actually learns to format the output as a list.

If you’d like to geek out about how I did this, or learn how to create your own list, you can read about the technical details in my original post here.

Subscribe to the Daily Brief, our morning email with news and insights you need to understand our changing world.