Final documentation, including paper design, coming soon!

Final documentation, including paper design, coming soon!

Overview

Struggling to write a birthday card greeting? Get your mom, a fortune cookie or Karl Marx to write one for you! With the power of natural language processing and machine learning, you too can have a meaningful and iconic card!

I created three corpuses of text: generic birthday card greetings, fortune cookie messages, and the Communist Manifesto, to train three Markov chains to generate pithy random birthday card greetings for the user. The user would open a pop-up card and find directions on how to trigger the generator. These greetings were passed on to Google Text-To-Speech to read them back in these three distinct voices. Based on their inputs, read by a model that I trained in TensorFlowLite and read by an Arduino BLE Sense, the user would hear back these greetings.

<aside> đź’ˇ Link to Gist with the Python code

</aside>

<aside> đź’ˇ Link to p5.js sketch

</aside>

<aside> đź’ˇ Link to JavaScript for Arduino, with model

</aside>

My original design for the project:

janicki_birthdayCard.pdf

Markovify text generation

I started by writing the Python code that would make the birthday card, because I knew this would define much of my other steps.

I first created my dataset. I search “birthday card greeting” on Google and selected all of the links provided on the first page. I copied and pasted the suggested greetings from these pages into a Text File (sources 1, 2, 3, 4).

General birthday greeting

I used Markovify to generate some birthday greetings based on this collection of greetings. Starting from the first output I was satisfied from the results. Here are my favorites from the first ten generator outputs:

The first thing is your memory goes, and I love you with all my butt!

Thank you for making my life so funfetti.

I hope your day is all grown up, it becomes a butterfly.

I can’t wait to celebrate this day filled with lots of cake.

Our age is merely the number of years the world would have your back.