Spaces:
Sleeping
Sleeping
Upload 5 files
Browse files
Probabilistik Zaman Serisi ile Sıcaklık Tahmini Derin Öğrenme Yaklaşımı - Temperature Forecasting with Probabilistic Time Series A Deep Learning Approach.ipynb
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
Sıcaklık.pkl
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:86ed1475147beff2fc7a91f1f830775728262cffd9a0349e7fcefcdcdd70df1c
|
| 3 |
+
size 576486
|
app.py
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import pandas as pd
|
| 2 |
+
import numpy as np
|
| 3 |
+
import streamlit as st
|
| 4 |
+
import joblib
|
| 5 |
+
|
| 6 |
+
from sklearn.preprocessing import StandardScaler
|
| 7 |
+
from sklearn.model_selection import train_test_split
|
| 8 |
+
from sklearn.metrics import r2_score, mean_squared_error
|
| 9 |
+
|
| 10 |
+
# Veri setini yükle
|
| 11 |
+
df = pd.read_csv('train.csv')
|
| 12 |
+
|
| 13 |
+
# Tarih bilgisini işleyin
|
| 14 |
+
df['date'] = pd.to_datetime(df['date'])
|
| 15 |
+
df['year'] = df['date'].dt.year
|
| 16 |
+
df['month'] = df['date'].dt.month
|
| 17 |
+
df['day'] = df['date'].dt.day
|
| 18 |
+
df['hour'] = df['date'].dt.hour
|
| 19 |
+
df['minute'] = df['date'].dt.minute
|
| 20 |
+
|
| 21 |
+
# Özellik ve hedef değişkenleri ayırın
|
| 22 |
+
x = df.drop(['id', 'date', 'Temperature'], axis=1)
|
| 23 |
+
y = df[['Temperature']] # Hedef değişken "Temperature"
|
| 24 |
+
|
| 25 |
+
# Tüm sütunların sayısal olduğundan emin olun
|
| 26 |
+
x = x.select_dtypes(include=[np.number]) # Yalnızca sayısal sütunları seç
|
| 27 |
+
|
| 28 |
+
# Eğitim ve test setlerine ayır
|
| 29 |
+
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.20, random_state=42)
|
| 30 |
+
|
| 31 |
+
# Sayısal veriler için ön işleyici
|
| 32 |
+
preprocessor = StandardScaler()
|
| 33 |
+
|
| 34 |
+
def time_pred(feature_AA, feature_AB, feature_BA, feature_BB, feature_CA, feature_CB, year, month, day, hour, minute):
|
| 35 |
+
input_data = pd.DataFrame({
|
| 36 |
+
'feature_AA': [feature_AA],
|
| 37 |
+
'feature_AB': [feature_AB],
|
| 38 |
+
'feature_BA': [feature_BA],
|
| 39 |
+
'feature_BB': [feature_BB],
|
| 40 |
+
'feature_CA': [feature_CA],
|
| 41 |
+
'feature_CB': [feature_CB],
|
| 42 |
+
'year': [year],
|
| 43 |
+
'month': [month],
|
| 44 |
+
'day': [day],
|
| 45 |
+
'hour': [hour],
|
| 46 |
+
'minute': [minute]
|
| 47 |
+
})
|
| 48 |
+
|
| 49 |
+
input_data_transformed = preprocessor.fit_transform(input_data)
|
| 50 |
+
|
| 51 |
+
model = joblib.load('Sıcaklık.pkl')
|
| 52 |
+
|
| 53 |
+
prediction = model.predict(input_data_transformed)
|
| 54 |
+
return float(prediction[0])
|
| 55 |
+
|
| 56 |
+
|
| 57 |
+
st.title("Sıcaklık Tahmin Uygulaması")
|
| 58 |
+
st.write("Veri Girin")
|
| 59 |
+
|
| 60 |
+
feature_AA = st.number_input('feature_AA', min_value=-100.0, max_value=100.0, value=0.0, step=0.1)
|
| 61 |
+
feature_AB = st.number_input('feature_AB', min_value=-100.0, max_value=100.0, value=0.0, step=0.1)
|
| 62 |
+
feature_BA = st.number_input('feature_BA', min_value=-100.0, max_value=100.0, value=0.0, step=0.1)
|
| 63 |
+
feature_BB = st.number_input('feature_BB', min_value=-100.0, max_value=100.0, value=0.0, step=0.1)
|
| 64 |
+
feature_CA = st.number_input('feature_CA', min_value=-100.0, max_value=100.0, value=0.0, step=0.1)
|
| 65 |
+
feature_CB = st.number_input('feature_CB', min_value=-100.0, max_value=100.0, value=0.0, step=0.1)
|
| 66 |
+
year = st.number_input('Year', min_value=1900, max_value=2100, value=2024)
|
| 67 |
+
month = st.number_input('Month', min_value=1, max_value=12, value=9)
|
| 68 |
+
day = st.number_input('Day', min_value=1, max_value=31, value=29)
|
| 69 |
+
hour = st.number_input('Hour', min_value=0, max_value=23, value=0)
|
| 70 |
+
minute = st.number_input('Minute', min_value=0, max_value=59, value=0)
|
| 71 |
+
|
| 72 |
+
if st.button('Tahmin Et'):
|
| 73 |
+
time = time_pred(feature_AA, feature_AB, feature_BA, feature_BB, feature_CA, feature_CB, year, month, day, hour, minute)
|
| 74 |
+
st.write(f'Tahmin edilen sıcaklık: {time:.2f} °C')
|
requirements.txt
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
streamlit
|
| 2 |
+
scikit-learn
|
| 3 |
+
pandas
|
| 4 |
+
tensorflow
|
train.csv
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|