import streamlit as st import pandas as pd import joblib # Model'i yükle @st.cache_resource def load_model(): return joblib.load('click_predict_logistic_regression.joblib') model = load_model() st.title('Ad Click Prediction') st.write('Adjust the sliders below to predict if a user will click on an ad:') # Kullanıcı girişleri daily_time = st.slider('Daily Time Spent on Site (minutes)', min_value=32.6, max_value=91.43, value=65.0, step=0.1) age = st.slider('Age', min_value=19, max_value=61, value=36, step=1) area_income = st.slider('Area Income ($)', min_value=13996, max_value=79485, value=55000, step=100) daily_internet = st.slider('Daily Internet Usage (minutes)', min_value=104.78, max_value=269.96, value=180.0, step=0.1) gender = st.radio('Gender', ['Male', 'Not Male']) if st.button('Predict'): # Girişleri bir DataFrame'e dönüştür input_data = pd.DataFrame({ 'Daily Time Spent on Site': [daily_time], 'Age': [age], 'Area Income': [area_income], 'Daily Internet Usage': [daily_internet], 'Male_not_male': [1 if gender == 'Not Male' else 0] }) # Tahmin yap prediction = model.predict(input_data) probability = model.predict_proba(input_data)[0][1] if prediction[0] == 1: st.success(f'This user is likely to click on the ad. Probability: {probability:.2f}') else: st.error(f'This user is unlikely to click on the ad. Probability: {probability:.2f}') # Girdi değerlerini göster st.write('Input values:') st.write(input_data)