Y

Yume

An Algorithm that can complete your dreams

Y

Yume

An Algorithm that can complete your dreams

The problem Yume solves

Research has proven that you can tell a lot about a person by analyzing their dreams. But more often than not, people tend to forget what they just saw in their dream, and hence can't keep track of it.

This is where AI comes into play

Why

Since dreams carry a lot of important information about the personality, mental state and overall well being of a person, keeping ecord of the dreams we see becomes difficult. This way, even if someone is trying to keep track of their dreams, they might not be able to carry it forward for long. Also, some people are reported to have lifetime affect of some nightmares that have scarred them for life, and this tool can help make them into a very happy and motivating ending.

What

An AI based Text-Generation Algorithm trained on more than 29,000 real life dreams of real people . These dreams dataset have been scraped off DreamBank using a python tool. The Algorithm can listen to a short context of the dream you saw, analyze thr dream, and based on the training, perform some text generation that can complete the dream, and even convert into a realistic haply ending.

How

We're using the technique of Transfer Learning . We used a Recurrent Neural Network based LSTM Model for performing the task of Text Generation based on the dataset of dreams. For neural network and Algorithmic purposes, we've used Python's Tensorflow library and a helper gpt-2-simple wrapper. The Web Based interface is backed by Python Flask Server and hosts HTML web pages.

Challenges we ran into

Model Selection

The First and Foremost challenge was to select a pre trained model, that would be a perfect fit for our task, i.e Text Generation. We did our research and found out that current the Best Open source Text Generation Model is GPT-2.

Dataset Selection and Extraction

Text Generation Algorithm can work on any type of dataset, but we wanted to work on real dreams, so that the model can have a little edge over the authenticity of the dreams it would produce. Then we learned about DreamBank which is a publicly handled dataset of more than 29000 dreams. We used a Python library to scrape all of the data into a text file, which xan then be feeded to the model for training.

Web Page Optimization

Since it is a very complicated and underdeveloped algorithm, it taked huge amounts of time to load into the model, and to perform the Generation Task. A lot of reloading time is being wasted in loading the model and making it usecase ready . After that the UI and UX of the website also played a critical role.

Discussion