Hello,
can someone help me? my problem is when I build my own prototype using Tkinter, the result is the same. But when I run my coding using Jupyter or spyder the result always changed with my model. How did I want to fix this? Thank you. Below is my code using Tkinter.
can someone help me? my problem is when I build my own prototype using Tkinter, the result is the same. But when I run my coding using Jupyter or spyder the result always changed with my model. How did I want to fix this? Thank you. Below is my code using Tkinter.
import pickle from tkinter import Tk,Label,Entry, Button,StringVar,RAISED,RIGHT,LEFT,messagebox from sklearn.base import TransformerMixin from nltk.corpus import stopwords import spacy import string from spacy.lang.en import English from sklearn.feature_extraction.stop_words import ENGLISH_STOP_WORDS spacy.load('en') parser = English() STOPLIST = set(stopwords.words('english') + list(ENGLISH_STOP_WORDS)) SYMBOLS = ["-", "...", "”", "”"] SYMBOLS_PUNC = " ".join(string.punctuation).split(" ") + ["-", "...", "”", "”"] class CleanTextTransformer(TransformerMixin): def transform(self, X, **transform_params): return [cleanText(text) for text in X] def fit(self, X, y=None, **fit_params): return self def get_params(self, deep=True): return {} def cleanText(text): text = text.strip().replace("\n", " ").replace("\r", " ") text = text.lower() return text def tokenizeText(sample): tokens = parser(sample) lemmas = [] for tok in tokens: lemmas.append(tok.lemma_.lower().strip() if tok.lemma_ != "-PRON-" else tok.lower_) tokens = lemmas tokens = [tok for tok in tokens if tok not in STOPLIST] tokens = [tok for tok in tokens if tok not in SYMBOLS_PUNC] return tokens def detecting_fake_news(var): #retrieving the best model for prediction call load_model = pickle.load(open('svmCombine_model.sav', 'rb')) prediction = load_model.predict([var]) prob = load_model.predict_proba([var]) return (messagebox.showinfo("The given statement is ",prediction[0]), messagebox.showinfo("The truth probability score is ",prob[0][1])) def e1_delete(): title.delete(first=0,last=100) content.delete(first=0,last=100) title.insert(0, " ") content.insert(0, " ") return def master_destroy(): master.destroy() master=Tk() master.title("===== DECEPTION DETECTION IN ONLINE NEWS VERACITY =====") master.geometry("800x500+200+250") label0=Label(master, bg='gold', text=" Deception Online News ", relief=RAISED) label0.pack(padx=20, pady=30) number1Label = Label (text="Enter Title: ") number1Label.pack() title=Entry(master, width=100) title.pack() number2Label = Label (text="Enter Content: ") number2Label.pack() content=Entry(master, width=100) content.pack(ipady=100) var=StringVar() var= title.get() + content.get() bouton_recup=Button(master, text="Generate", relief=RAISED, command= lambda:detecting_fake_news(var)) bouton_recup.pack(side=RIGHT, padx=5, pady=5) b_erase=Button(master, text="Erase", relief=RAISED, command=e1_delete) b_erase.pack(side=LEFT, padx=5, pady=5) b_quit_destroy=Button(master, text="Quit",relief=RAISED, command=master_destroy) b_quit_destroy.pack(side=LEFT, padx=5, pady=5) master.mainloop()