This project builds a smartphone price range classifier that predicts whether a phone falls into the Budget, Lower Mid-Range, Upper Mid-Range or Premium category based on its hardware specifications. The model is trained using a Random Forest Classifier with scikit-learn on a dataset of 20 smartphone features, including RAM, battery, camera resolution, screen size and connectivity options. The trained model is deployed as an AWS SageMaker endpoint, exposing real-time inference via a Python Flask web application that handles user input and returns predictions. Users interact through a clean & responsive HTML/CSS/JS interface that accepts all 20 specifications and displays the predicted price range instantly. This end-to-end project demonstrates practical skills across data preprocessing, ML model training, cloud-based model deployment and full-stack web integration.
- Predicts smartphone price range in 4 categories:
- Budget mobile phone
- Lower mid-range phone
- Upper mid-range phone
- Premium phone
- Interactive web interface with real-time predictions
- Responsive design that works on desktop and mobile devices
- Handles 20 different smartphone specifications for prediction.
- Frontend: HTML, CSS & JS.
- Backend: Flask (Python)
- ML Model Deployment: AWS SageMaker
- AWS Services: AWS Sagemaker, AWS S3, AWS IAM and AWS CLI.
- Python 3.x
- AWS Account with appropriate credentials
- Boto3 library
- Flask
- Clone the repository
https://github.com/AdarshZolekar/Smartphone-Price-Predictor.git- Install required packages
pip install flask boto3- Configure AWS credentials
aws configure
AWS_ACCESS_KEY_ID='your-access-key'
AWS_SECRET_ACCESS_KEY='your-secret-key'
AWS_REGION='ap-south-1'- Start the Flask application:
python App.py-
Open a web browser and navigate to
http://localhost:5000 -
Enter the smartphone specifications in the form:
- Basic specifications (RAM, storage, processor, etc.)
- Camera details
- Screen specifications
- Additional features (Bluetooth, WiFi, etc.).
-
Click "Predict Price Range" to get the prediction.
Smartphone Price Predictor Web Interface
This project is open-source under the MIT License.
Contributions are welcome!
-
Open an issue for bugs or feature requests.
-
Submit a pull request for improvements.