Names are boring. I mean how many “Johns” do we really need in the world? I’d put a hard cap at 11.
Sorry ma’am John is taken. How about j0hnnyb0i-872?
Come on no one wants j0hnnyb0i-872. If only there were a way to find unique names without carving out an afternoon and locking yourself in your basement with your pink spiral notebook (the one with the flowers).
Well today is your lucky day, cause you have found Nomine, the neural net based random name generator! My partners and I developed this beautiful program as a final project for Linearity 2 to illustrate the useful properties of Neural Net backpropagation through gradient descent.
Before I show you how we did it, let’s check out the results. A useful note about neural network for the unenlightened: their properties depend on what data they are trained on. So, we were able to vary the output of our program by feeding it databases of different types of names, such as male, female or dog names. Anyway, here are some databases we used and their results. My favorite is Quigsby.
Best of 1990s Top 500 Male Names: | Best of 1990s Top 500 Female Names: | Best 1880s Male Names: | Best Dog Names: |
---|---|---|---|
|
|
|
|
This is a small fraction of the total names generated. To see more checkout the end of our paper linked at the bottom
Extension: So far this has only been tested on some names. This should copy the letter structure of any dictionary of words that it is given, so it should work on verbs and adjectives as well.
Finally, how it’s done. For a quick overview of backprop and how it works along with gradient descent check out this funny and informative video my partners made.
For more in-depth information on the topic check out our paper. If you want to run it yourself, check out our source code.
As always if you have any questions or want to suggest a database to train on, feel free to shoot me an email at the contact info listed below.