| import streamlit as st | |
| from tensorflow.keras.models import load_model | |
| from sklearn.feature_extraction.text import CountVectorizer | |
| from textblob import TextBlob | |
| from nltk.stem import PorterStemmer | |
| import numpy as np | |
| pr=PorterStemmer() | |
| def lemmafn(text): | |
| words=TextBlob(text).words | |
| return [pr.stem(word) for word in words] | |
| vect=CountVectorizer(stop_words="english",ngram_range=(1,3),max_features=10000) | |
| model=load_model("model.h5") | |
| st.title("Predict Comments Toxicity") | |
| comment=st.text_area("Comment") | |
| if comment is not None: | |
| coment=comment.lower() | |
| comment=comment.replace("[^\w\s]","",) | |
| comment=comment.replace("\d+","") | |
| comment=comment.replace("\n","") | |
| comment=[comment] | |
| if st.button("Predict"): | |
| data=vect.fit_transform(comment) | |
| prediction=model.predict(data) | |
| predicted_class=np.argmax(prediction) | |
| st.write("1st->Toxicity,2nd->Severe Toxicity,3rd->Obscene,4th->Is it a Threat?,5th->Insult,6th->Identity Hate",predicted_class) |