Welcome to the Laptop Price Predictor! π
This project combines machine learning models with intuitive user interfaces to predict laptop prices based on specifications and features.
- π Description
- β¨ Features
- π Dataset Details
- π€ Regressor Models
- π Selected Models
- π΅ Price Currency Conversion
- π₯οΈ Running the Application
- π Metrics
- π‘ Future Enhancements
- π Contribution
The Laptop Price Predictor uses various regression models to predict laptop prices based on their specifications. Designed to support data enthusiasts and tech shoppers, this tool is powered by Python and machine learning libraries.
- π» Predict laptop prices based on features like company, CPU, RAM, GPU, and more.
- π Experiment with multiple regression models for optimal results.
- π Supports currency conversion from INR to USD.
- π Evaluate models using key metrics: RΒ² Score and Mean Absolute Error (MAE).
The dataset includes 1302 laptops with 12 attributes, sourced from Amazon (2017-2018).
Attribute | Description |
---|---|
Company Name | Laptop brand (e.g., Dell, HP, Apple) |
Type Name | Form factor (e.g., Ultrabook, Gaming) |
Laptop Size | Screen size (in inches) |
Screen Resolution | Display resolution (e.g., 1920x1080) |
CPU | Processor type |
RAM | Memory capacity (GB) |
Memory | Storage capacity (HDD/SSD) |
GPU | Graphics card details |
Operating System | OS type (e.g., Windows, macOS) |
Price (INR) | Price in Indian Rupees |
Model | Description |
---|---|
Multiple Linear Regression | Basic regression model |
Ridge Regression | Regularized linear regression |
Lasso Regression | Sparse regression |
k-Nearest Neighbors (k-NN) | Distance-based prediction |
Decision Tree | Tree-based regression model |
Support Vector Machine | Kernel-based regression |
Random Forest | Ensemble tree model |
Extra Trees | Advanced ensemble model |
Adaptive Boost (AdaBoost) | Boosting-based ensemble |
Gradient Boost | Gradient-based optimization |
XGBoost | Highly efficient boosting |
Voting Regressor | Combines multiple models |
Stacking Regressor | Model stacking for better accuracy |
- RΒ² Score: 88.78%
- Mean Absolute Error: 15.94%
- RΒ² Score: 89.27%
- Mean Absolute Error: 15.37%
This project supports price conversion from INR to USD.
Default exchange rate: 1 INR = 0.012 USD
st.title(f"\nPrice: {round(predicted_price * 0.012, 2)} USD")
The exchange rate can be easily updated as needed.
-
Install required dependencies:
pip install -r requirements.txt
-
Launch the Streamlit application:
streamlit run app.py
The performance of each regression model is evaluated using:
- RΒ² Score: Measures the variance explained by the model.
- Mean Absolute Error (MAE): Captures the average prediction error.
- Integration with live datasets for real-time predictions.
- Incorporating deep learning models for improved accuracy.
- Adding support for additional currency conversions and visualization dashboards.
π‘ Ideas? Contributions are always welcome! Submit issues, pull requests, or share your feedback to help improve this project.
β If you found this project useful, don't forget to star the repository! π
Made with β€οΈ by Sarthak Sachdev for machine learning enthusiasts