Our project started with one question. How can we help? Today, AI and NLP are commonly used to streamline lives and simplify tasks through smart assistants and chatbots. With such powerful tools, it was obvious to us that there was so much potential and practicality for a project.
After days of brainstorming, we pinpointed a consistent pain-point in our friends and family’s lives, as well as our own: time always feels like a rare resource. We decided to work on Smarter Days with the main goal of improving the lifestyle of people who use the app.
What It Does
Users would log their day-to-day activities and receive visual breakdowns of their activities over the course of days, weeks, or months.
This will enable people to gain valuable insight into how much time they spend per activity which can have a great positive impact on time and life management.
How We Built It
Our project started by enabling our Wit.ai model to recognize and sort different types of user activities. We created intents and entities for working, exercising, studying, and resting activities and training the different ways for phrasing them.
We then built a full-stack web application to house the model and provide a user interface for users to interact with the model.
MongoDB, Express.js, React.js, Node.js
Google Firebase for SPA hosting
Heroku for Node.js (backend) hosting
Challenges and Solutions
Challenge: Due to external circumstances, our project was entirely virtual making coordination tough
- Solution: We adopted Scrum strategies and engaged in daily stand-ups as well as goal/task planning.
Challenge: Considering the nature of Machine Learning, it’s difficult to train for multiple categories to have intended outputs at the same time. Especially true when considering our project bandwidth (1 month)
- Solution: We took a methodological approach to training and created various Word and Excel documents to randomize words and follow the modeling process. This saved us an incredible amount of time and allowed us to comprehensively train for even the edge cases.
Training a comprehensive Wit.ai model to recognize a wide range of entries
Creating a full-stack application from the ground up
Consistent virtual coordination and communication over the course of the project
What We Learned
Natural Language Processing techniques and concepts
Making use of Wit.ai models and training tools
What's Next For Days
- Continuous learning via phrase validation from the user (correct/incorrect validation options)