Spaces:
Sleeping
Sleeping
import streamlit as st | |
import numpy as np | |
import pickle | |
import streamlit.components.v1 as components | |
from sklearn.feature_extraction.text import CountVectorizer | |
from sklearn.model_selection import train_test_split | |
import pandas as pd | |
import nltk | |
import re | |
from sklearn.naive_bayes import BernoulliNB | |
from collections import Counter | |
from nltk.corpus import stopwords | |
df = pd.read_csv('spam_new.csv',encoding= 'latin-1') | |
# X will be the features | |
X = np.array(df["message"]) | |
# y will be the target variable | |
y = np.array(df["class"]) | |
cv = CountVectorizer() | |
X = cv.fit_transform(X) | |
X_train, X_test, y_train, y_test = train_test_split(X, y, | |
test_size=0.33, | |
random_state=42) | |
model = BernoulliNB() | |
model.fit(X_train, y_train) | |
# Function for model prediction | |
def model_prediction(features): | |
features = cv.transform([features]).toarray() | |
Message = str(list(model.predict(features))) | |
return Message | |
def app_design(): | |
image = '58.png' # Load image | |
st.image(image, use_column_width=True) | |
st.subheader("Enter the following values:") | |
text= st.text_input("Enter your text") | |
# Create a feature list from the user inputs | |
features = text # add features according to notebook | |
# Make a prediction when the user clicks the "Predict" button | |
if st.button('Predict Spam'): | |
predicted_value = model_prediction(features) | |
if predicted_value == "['ham']": | |
st.success("Your comment is not spam") | |
elif predicted_value == "['spam']": | |
st.success("Your Comment is spam") | |
def about_hidevs(): | |
components.html(""" | |
<div> | |
<h4>🚀 Unlock Your Dream Job with HiDevs Community!</h4> | |
<p class="subtitle">🔍 Seeking the perfect job? HiDevs Community is your gateway to career success in the tech industry. Explore free expert courses, job-seeking support, and career transformation tips.</p> | |
<p class="subtitle">💼 We offer an upskill program in <b>Gen AI, Data Science, Machine Learning</b>, and assist startups in adopting <b>Gen AI</b> at minimal development costs.</p> | |
<p class="subtitle">🆓 Best of all, everything we offer is <b>completely free</b>! We are dedicated to helping society.</p> | |
<p class="subtitle">Book free of cost 1:1 mentorship on any topic of your choice — <a class="link" href="https://topmate.io/deepakchawla1307">topmate</a></p> | |
<p class="subtitle">✨ We dedicate over 30 minutes to each applicant’s resume, LinkedIn profile, mock interview, and upskill program. If you’d like our guidance, check out our services <a class="link" href="https://hidevscommunity.wixsite.com/hidevs">here</a></p> | |
<p class="subtitle">💡 Join us now, and turbocharge your career!</p> | |
<p class="subtitle"><a class="link" href="https://hidevscommunity.wixsite.com/hidevs" target="__blank">Website</a> | |
<a class="link" href="https://www.youtube.com/@HidevsCommunity1307/" target="__blank">YouTube</a> | |
<a class="link" href="https://www.instagram.com/hidevs_community/" target="__blank">Instagram</a> | |
<a class="link" href="https://medium.com/@hidevscommunity" target="__blank">Medium</a> | |
<a class="link" href="https://www.linkedin.com/company/hidevs-community/" target="__blank">LinkedIn</a> | |
<a class="link" href="https://github.com/hidevscommunity" target="__blank">GitHub</a></p> | |
</div> | |
""", | |
height=600) | |
def main(): | |
# Set the app title and add your website name and logo | |
st.set_page_config( | |
page_title="Spam Detection", | |
page_icon=":chart_with_upwards_trend:", | |
) | |
st.title("Welcome to our Spam Detection App!") | |
app_design() | |
st.header("About HiDevs Community") | |
about_hidevs() | |
if __name__ == '__main__': | |
main() |