This project focuses on weather forecasting using machine learning techniques. It includes data preprocessing, model training, and evaluation to predict weather parameters such as temperature and humidity.
- Weather dataset processing and visualization.
- Implementation of multiple machine learning models.
- Performance evaluation of models using standard metrics.
- Notebooks available in both English and Persian.
- Python 3.8+
- Jupyter Notebook
- Required dependencies from
requirements.txt
- Clone the repository:
git clone https://github.com/sorna-fast/Weather-forecasting-with-machine-learning.git
- Navigate to the project directory:
cd Weather-forecasting-with-machine-learning
- Create and activate a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: `venv\Scripts\activate`
- Install dependencies:
pip install -r requirements.txt
- Open Jupyter Notebook:
jupyter notebook
- Run one of the available notebooks:
Weather_forecasting_with_machine_learning_in_English.ipynb
Weather_forecasting_with_machine_learning_in_Persian.ipynb
Weather-forecasting-with-machine-learning/
│── dataset.csv # Weather dataset
│── Weather_forecasting_with_machine_learning_in_English.ipynb # English notebook
│── Weather_forecasting_with_machine_learning_in_Persian.ipynb # Persian notebook
│── requirements.txt # Project dependencies
│── README.md # Project documentation
- Linear Regression
- Random Forest Regressor
- Gradient Boosting
The models are evaluated using Mean Absolute Error (MAE) and Root Mean Square Error (RMSE). The best-performing model results are documented within the notebooks.
Gradient Boosting
Used for optimization via (Random Search) via scikit-learn
library.
Best parameters: {'subsample': 0.7, 'n_estimators': 100, 'min_samples_split': 5, 'min_samples_leaf': 6, 'max_features': None, 'max_depth': 4, 'loss': 'huber', 'learning_rate': 0.05}
Test R²: 0.8604
train r2: 0.8658
This project is licensed under the MIT License.
For inquiries, reach out to: Email:(masudpythongit@gmail.com) 🔗 GitHub: sorna-fast
این پروژه بر روی پیشبینی آبوهوا با استفاده از تکنیکهای یادگیری ماشین تمرکز دارد. این پروژه شامل مراحل پیشپردازش داده، آموزش مدل و ارزیابی برای پیشبینی پارامترهای آبوهوایی مانند دما و رطوبت میشود.
- پردازش و تجسم دادههای آبوهوایی
- پیادهسازی چندین مدل یادگیری ماشین
- ارزیابی عملکرد مدلها با معیارهای استاندارد
- ارائه نوتبوکهای آموزشی به دو زبان انگلیسی و فارسی
- پایتون ۳.۸ یا بالاتر
- Jupyter Notebook
- نصب کتابخانههای مورد نیاز از فایل
requirements.txt
۱. کلون کردن ریپوزیتوری:
git clone https://github.com/sorna-fast/Weather-forecasting-with-machine-learning.git
۲. ورود به پوشه پروژه:
cd Weather-forecasting-with-machine-learning
۳. ایجاد و فعالسازی محیط مجازی:
python -m venv venv
source venv/bin/activate # در ویندوز: `venv\Scripts\activate`
۴. نصب کتابخانههای مورد نیاز:
pip install -r requirements.txt
۱. اجرای Jupyter Notebook:
jupyter notebook
۲. اجرای یکی از نوتبوکهای موجود:
Weather_forecasting_with_machine_learning_in_English.ipynb
Weather_forecasting_with_machine_learning_in_Persian.ipynb
Weather-forecasting-with-machine-learning/
│── dataset.csv # دیتاست آبوهوایی
│── Weather_forecasting_with_machine_learning_in_English.ipynb # نوتبوک انگلیسی
│── Weather_forecasting_with_machine_learning_in_Persian.ipynb # نوتبوک فارسی
│── requirements.txt # کتابخانههای مورد نیاز
│── README.md # مستندات پروژه
- رگرسیون خطی (Linear Regression)
- رگرسیون جنگل تصادفی (Random Forest Regressor)
- گرادیان بوستینگ (Gradient Boosting)
مدلها با استفاده از میانگین خطای مطلق (MAE) و ریشه میانگین مربعات خطا (RMSE) ارزیابی شدهاند. نتایج بهترین مدل در داخل نوتبوکها مستندسازی شده است.
Gradient Boosting
برای بهینه سازی از طریق (Random Search) از طریق کتابخانه scikit-learn
استفاده شدهاند.
بهترین پارامترها: {'subsample': 0.7, 'n_estimators': 100, 'min_samples_split': 5, 'min_samples_leaf': 6, 'max_features': None, 'max_depth': 4, 'loss': 'huber', 'learning_rate': 0.05}
Test R²: 0.8604
train r2: 0.8658
این پروژه تحت مجوز MIT منتشر شده است.
Email:(masudpythongit@gmail.com)(masudpythongit@gmail.com)
🔗 حساب گیتهاب: sorna-fast