- Sleep Quality Prediction: Predicts the quality of sleep based on parameters like sleep duration, REM sleep, and heart rate.
- Sentiment Analysis: Analyzes the sentiment of the dream description entered by the user to determine the overall mood or emotion in the text.
- Nearby Clinics Locator: Helps users locate nearby clinics or counseling centers based on their current location, providing easy access to professional assistance when needed.
This application consists of two main components:
- Backend (Flask API): A RESTful API that accepts user input and uses a machine learning model to make predictions.
- Frontend (ReactJS): A user-friendly interface where users can input their data and receive a prediction about their sleep quality.
- User Input Form: Users can enter their sleep data: Sleep Duration, REM Sleep, and Heart Rate.
- Prediction: The app predicts the quality of sleep as either "Good" or "Poor" based on the input data.
- Locate Nearest Clinics : Locate nearest sleep clinics in an interactive map.
- Minimalistic Design: The application is designed with simplicity in mind, featuring a clean and intuitive interface.
- Backend:
- Python (Flask)
- Azure ML Workspace (for model training)
- Azure AI Cognitive Services (for Sentiment Analysis)
- Frontend:
- React.js
- Tailwind CSS
- Deployment:
- Docker
- Docker Compose
- Azure App Services
- Azure Container Registry
The sleep quality prediction model was trained using Azure ML Workspace. The dataset was uploaded and stored in Azure Blob Storage, ensuring scalability and easy access and the model was trained in Azure ML Workspace.
For sentiment analysis, the project leverages Azure AI's Text Analytics API. The API is used to analyze the sentiment of the dream descriptions provided by the users. Based on the emotional tone, the API classifies the text into different sentiment categories such as positive, neutral, or negative.
The project integrates a Nearby Sleep Clinics Locator feature that uses geolocation services to assist users in finding the nearest clinics or counseling centers. This functionality aims to ensure users can easily access professional help based on their current location.
This project has been deployed using Docker, Docker Compose, Azure App Services, and Azure Container Registry for efficient, scalable, and containerized deployment. Below are the details of the deployment process
-
Azure ML Workspace
Used to train and deploy the sleep quality prediction model, leveraging scalable cloud-based machine learning tools to streamline the model development and deployment process. -
Azure AI (Text Analytics API)
Utilized for performing sentiment analysis on user-provided dream descriptions, enabling accurate emotional tone classification (positive, neutral, or negative). -
Azure Blob Storage
Facilitated secure storage and retrieval of datasets used for training the machine learning models. -
Azure App Services
Hosted the web application, ensuring high availability, scalability, and integration with other Azure services like Azure Container Registry. -
Azure Container Registry
Served as a central repository for managing and securely storing Docker images used for deploying the project in a containerized environment. -
Docker and Docker Compose
Enabled consistent containerization and multi-container orchestration for deploying the application.

