Inspiration

I've always enjoyed writing about almost anything that hit my mind, but sometimes I never get enough time to be able to deliver any writings anywhere, so I decided to find ways in which I can be able to generate stories without too much hustle, and by great luck, I ran into a jupyter notebook in which they were training an ML model how to predict characters based on which characters it had received as input. The problem with this approach was that, there was no way to make this model accessible to anyone if it's on a jupyter notebook, which not everyone really knows how to use, so I decided to build a simple web application that can help me share this amazing model with everyone. What I understand about technology is that, it has a greater impact if it is shared, and as such my intentions for this project was not get into the complex details of how an RNN model works, but how we as ML developers can leverage other available technologies, no matter how simple, to share our works.

What it does

The web application has a form with two fields, a keyword field which takes in the prime for the model, the prime is basically a starting point for the model, and a character number field, which as the name describes, takes in the number of characters the model is supposed to output.

How I built it

The Character-wise RNN model was built using the text based on Anna Karenina, which was then tokenized in order to build the model. The model uses an LSTM layer as part of it's architecture.

Challenges I ran into

Sometimes the model doesn't generate text that makes any sense, which can be improved by using a richer text book and training for more epochs, and another challenge was that the download as PDF button just didn't seem to work.

Accomplishments that I'm proud of

What I'm mostly proud off was that I was able to create a simple way to share PyTorch model using a web application.

What I learned

How to work with RNNs
How to deploy PyTorch models using a web application
How to host a web application.

What's next for Story Maker

With further improvements, the Story Maker will be able to generate better stories and even scripts.

Share this project:

Updates

Submission history