# DepremData 🌍 Deprem verilerini analiz etmek ve deprem tahmin modeli oluşturmak için geliştirilmiş makine öğrenmesi projesi. ## 📋 Proje Hakkında Bu proje, deprem verilerini kullanarak makine öğrenmesi modelleri oluşturmayı amaçlamaktadır. Proje kapsamında: - Deprem verilerinin ön işlenmesi - Özellik mühendisliği - Tahmin modeli eğitimi - Model değerlendirme ve test ## 🗂️ Dosya Yapısı ``` depremdata/ ├── README.md # Proje dokümantasyonu ├── features.json # Model özellikleri listesi ├── earthquake_model.joblib # Eğitilmiş deprem tahmin modeli ├── scaler.joblib # Veri ölçeklendirme modeli └── .git/ # Git versiyon kontrolü ``` ## 🔬 Özellikler Modelde kullanılan özellikler: - **Coğrafi Bilgiler**: enlem, boylam, derinlik - **Deprem Özellikleri**: magnitüd - **Zamansal Bilgiler**: yıl, ay, gün, saat, dakika, saniye - **Türetilmiş Özellikler**: yılın günü, hafta günü, son depremden geçen süre - **Etkileşim Özellikleri**: magnitüd değişimi, enlem-boylam etkileşimi ## 🚀 Kullanım ### Model Yükleme ```python import joblib # Modeli yükle model = joblib.load('earthquake_model.joblib') scaler = joblib.load('scaler.joblib') # Özellikleri yükle import json with open('features.json', 'r') as f: features = json.load(f) ``` ### Tahmin Yapma ```python # Örnek veri ile tahmin import numpy as np # Yeni veri hazırlama (features.json'daki sıraya göre) new_data = np.array([[latitude, longitude, depth, magnitude, year, month, day, hour, minute, second, day_of_year, weekday, time_since_last_earthquake, magnitude_change, lat_lon_interaction]]) # Veriyi ölçeklendir scaled_data = scaler.transform(new_data) # Tahmin yap prediction = model.predict(scaled_data) ``` ## 📊 Model Performansı Model eğitildiğinde aşağıdaki metrikler kullanılarak değerlendirilmiştir: - Mean Squared Error (MSE) - Root Mean Squared Error (RMSE) - Mean Absolute Error (MAE) - R² Score ## 🛠️ Gereksinimler - Python 3.7+ - scikit-learn - pandas - numpy - joblib ## 📄 Lisans Bu proje MIT lisansı altında dağıtılmaktadır. ## 🤝 Katkıda Bulunma Katkıda bulunmak isterseniz: 1. Bu depoyu fork edin 2. Yeni bir özellik dalı oluşturun (`git checkout -b feature/yeni-ozellik`) 3. Değişikliklerinizi commit edin (`git commit -am 'Yeni özellik eklendi'`) 4. Dalı push edin (`git push origin feature/yeni-ozellik`) 5. Bir Pull Request oluşturun ## 📞 İletişim Proje hakkında sorularınız için lütfen GitHub Issues bölümünü kullanın. --- **⚠️ Önemli Not**: Bu proje eğitim ve araştırma amaçlıdır. Gerçek deprem tahminleri için resmi kurumların uyarılarını takip ediniz.