Our latest wild ale, West Coast Blonde is brewed with Belgian and Munich malts, Nugget, Cluster, and Goldings hops. This unfiltered wheat beer is made with real grapefruit juice, allowing the hops to continue to shine in the sunlight..
A fake beer description written by a machine
Try it out on RunwayML
Continuing to play around with machine learning via RunwayML, I decided to try experimenting with some of the text generation. As with any sort of machine learning project, you first need a dataset to work with. In my case, I wanted to do something with craft beer, so I decided it would be interesting to see if I could generate fake craft beer descriptions.
This information isn’t necessarily available in bulk, so I took to the next best thing: scraping it from the web. It was also a perfect opportunity to finally learn some python (I know, I know.)
BeerAdvocate is probably, hands down, the largest source of beer information on the public web. And, luckily for my, their URL structure made it pretty easy to crawl. Brewery/location profiles follow the pattern of beer/profile/{id}
, where the id is more or less a sequentially incremented value. Appending ?view=beers&show=all
to the URL forces the page to display all beers from that location without pagination. At that point, it’s quite simple to grab all of those links and run a scraper against each page, which luckily all use the same simple template. Of course, some breweries or beers have been removed, don’t exist, or are duplicates, so the scraper needs to be able to handle those cases and ignore the ones it has already parsed.
After a lengthy time of running the scraper, I ended up with a 64 MB CSV file. Once loaded into a local mySQL database, I had 455,179 unique beers in total. Out of those 450k, over 50k of them were ranked based on votes (something I planned to play with later) and 57,000 had descriptions of some sort. I tried to filter out as many duds as I could, e.g. ones that just contained links to the brewery’s website. After that, I exported all of the descriptions as a text file and uploaded it to RunwayML.
Results
Some selected results below. Text-based generative models need a little bit of input to generate their result, so the bolded portions below represent what my prompts were.
A light and refreshing stout that is brewed with only the finest pale and chocolate malts, raw oats and cold-pressed organic coffee. Our robust porter is brewed with a generous amount of dark, roasted malts and organic cacao nibs for a deep, roasty flavor.
A crisp, refreshing, and incredibly drinkable IPA with a crisp, crisp, and refreshing bitterness. A touch of white pepper balances the malt bill.
This is our take on a traditional milk stout. Brewed with roasted malts, this beer features strong notes of coffee, chocolate and dark chocolate. It’s like a light version of the oatmeal stout that you might have had in the past.
Our latest wild ale, West Coast Blonde is brewed with Belgian and Munich malts, Nugget, Cluster, and Goldings hops. This unfiltered wheat beer is made with real grapefruit juice, allowing the hops to continue to shine in the sunlight.
Scotch Ales are very unique beer styles and require a certain level of complexity. Brewers are constantly refining their brews to be more flavorful, to incorporate more hops and to be more unique. They also may be making small changes to their recipes.
A unique blend of Mexican and English hops from Caniglia, TX makes this lager great for a hot summer day. It’s refreshing with notes of orange, papaya and peach, balanced with a balanced bitterness and malty character.
This is a hefe we made with chocolate and toasted coconut. This beer features the malty character of a hefe fermented with barley wine. It is dark golden in color, with a hint of caramel.
Some of the best Belgian and American hops in the world. This big imperial stout is a true treat!
Are you looking for a light beer? No need to be embarrassed. This one will knock you out. This is a really good stout.
Tart Kvass IPA. Fermented with a Belgian yeast strain, rich aroma of tangerine, candied fruit and stone fruits with a beautiful black color and flavor profile
Cheese, biscuit, and fresh baked bread flavors on a pillowy mouthfeel with a little salt to round it out.
Do you like bananas? Or do you prefer your cranberries? The answer to both questions is beer. We designed this beer to help you get the experience of bananas without having to drink them. It is brewed with berry juice, organic cranberries and a healthy dose of lactose. Think what a refreshingly dry beer it can be on a cold winter night.
Made in honor of Jeff Kintner, the owner of Great Escape, who was known for his signature cocktails. This Belgian tripel is brewed with Belgian pilsner malt and Belgian candi sugar, with a dash of Crystal rye. Fermented with a Belgian yeast strain and lagered for an extra 6 weeks before bottle conditioning for another year.
Whats up your butt? The second double IPA of the new line up is a bold and insane version of their popular, double IPA, That’s What She Said. This beer is loaded with orange, papaya and citra hops and then has a lengthy dry-hopping process to produce this delicious and citrusy IPA.