Deep Forger: Art Forgery Meets Deep Neural Nets

The past year has seen deep learning make exceptional advances in imaging, perhaps most notably with Google's Deep Dream. See how a clever Twitter bot employs deep neural nets to paint images in the style of famous painters.

By Matthew Mayo.

Deep Forger Profile There is a new player in the high-stakes world of international art forgery, and its name is Deep Forger. A Twitter bot designed by Alex J. Champandard, an AI game programmer and co-founder of, Deep Forger paints your own submitted photos and images using techniques from famous artists. It does not seem to be spooked by authorities, however; Deep Forger brazenly flaunts its forged product for all to admire. Luckily, this forger is based on open source tools and has a publicly-accessible API.

Deep Forger is simple to use. In its most straightforward operation, you send a tweet to the @DeepForger Twitter handle with an attached photo, and the bot will paint your photo in a surprise semi-random artistic style. You can jump closer to the front of the waiting line by following Deep Forger or "quote retweeting" your original submission (quite the promotional savvy, for an art forger).

Some investigation was able to uncover that Deep Forger is implemented locally using this neural artistic style implementation of A Neural Algorithm of Artistic Style by Leon A. Gatys, Alexander S. Ecker, and Matthias Bethge. (Update: while the bot previously used this code base, it now relies on its own implementation built on Theano and Lasagne, and has experienced improved results.) Deep Forger is quick to point out that its "artistic process" is based on iteration and incremental improvement, and so multiple attempts may be required to achieve the "optimal" result, which is logical given its deep learning foundation.

Deep Forger Example
@fairhaven999 gets Picasso'd, one of Deep Forger's favorites.

Aside from the straightforward use case, there are also a number of manual configuration options for the bot. Given its ongoing learning process and imperfect understanding of portraits and imaging, you can give Deep Forger a gentle nudge in the right direction by specifying one of a number of descriptive hashtags. These include #portrait (human face makes up most of the image), #people (humans standing in the image), #landscape (image includes hills, mountains, grass, etc.), and #buildings (image includes close buildings), among others.

There are 2 distinct manners in which to resubmit an image for forgery. One notifies Deep Forger to re-run its style selection algorithm and create a brand new forgery based, most likely, on another mimic portrait style, while the other will attempt a new forgery based on the originally-selected mimic portrait style.

You can use commands, beginning with a forward slash, to provide additional requests to the bot, currently consisting of /sketch and /abstract, both of which are self-explanatory. Filters can be applied using + or - followed by keywords, which request specific painters or painting mediums. For instance, +watercolor would include watercolor painting styles, while -Gogh would exclude painters whose names include 'Gogh' (care to guess which one, in particular?). Finally, parameters (seemingly only ratio) can be set for resubmits by using the ratio=X:X format, such as ratio=3:1.

Deep Forger Example
@colinjasper in the style of Van Gogh, another of its favorites.

And so I decided to give it a shot.