|
import streamlit as st |
|
import pickle |
|
import numpy as np |
|
|
|
|
|
with open("vectorizer_text.pkl", "rb") as f: |
|
vectorizer_text = pickle.load(f) |
|
|
|
with open("vectorizer_title.pkl", "rb") as f: |
|
vectorizer_title = pickle.load(f) |
|
|
|
with open("logistic_regression_model.pkl", "rb") as f: |
|
logistic_regression_model = pickle.load(f) |
|
|
|
|
|
|
|
st.header("Fake News Prediction") |
|
st.subheader("Created by Snehangshu Bhuin") |
|
|
|
|
|
title = st.text_input("News Title") |
|
text = st.text_area("Description") |
|
|
|
|
|
if st.button("Predict"): |
|
|
|
title_transformed = vectorizer_title.transform([title]) |
|
text_transformed = vectorizer_text.transform([text]) |
|
|
|
|
|
input_features = np.hstack((title_transformed.toarray(), text_transformed.toarray())) |
|
|
|
|
|
prediction = logistic_regression_model.predict(input_features) |
|
print(prediction) |
|
|
|
if prediction == 1: |
|
st.success("The news is likely Real") |
|
else: |
|
st.error("The news is likely Fake") |