diff --git a/README.md b/README.md index d347041..de98cdf 100644 --- a/README.md +++ b/README.md @@ -1,2 +1 @@ -# 8thJune_B1_AI -training data of python AI and ML training at TechieNest Pvt. Ltd. +# Fake-News-Detection-System \ No newline at end of file diff --git a/dataset b/dataset new file mode 100644 index 0000000..def0a5e --- /dev/null +++ b/dataset @@ -0,0 +1,5 @@ +For data set visit + + + +https://www.kaggle.com/sanamps/detect-fake-news diff --git a/fakenews.py b/fakenews.py new file mode 100644 index 0000000..ef567a2 --- /dev/null +++ b/fakenews.py @@ -0,0 +1,39 @@ +import numpy as np +import pandas as pd +import itertools +from sklearn.model_selection import train_test_split +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.linear_model import PassiveAggressiveClassifier +from sklearn.metrics import accuracy_score, confusion_matrix + +#Read the data +df=pd.read_csv'news.csv' +#Get shape and head +df.shape +df.head() + +#DataFlair - Get the labels +labels=df.label +labels.head() + +#DataFlair - Split the dataset +x_train,x_test,y_train,y_test=train_test_split(df['text'], labels, test_size=0.2, random_state=7) + + +#DataFlair - Initialize a TfidfVectorizer +tfidf_vectorizer=TfidfVectorizer(stop_words='english', max_df=0.7) +#DataFlair - Fit and transform train set, transform test set +tfidf_train=tfidf_vectorizer.fit_transform(x_train) +tfidf_test=tfidf_vectorizer.transform(x_test) + + +#DataFlair - Initialize a PassiveAggressiveClassifier +pac=PassiveAggressiveClassifier(max_iter=50) +pac.fit(tfidf_train,y_train) +#DataFlair - Predict on the test set and calculate accuracy +y_pred=pac.predict(tfidf_test) +score=accuracy_score(y_test,y_pred) +print(f'Accuracy: {round(score*100,2)}%') + +#DataFlair - Build confusion matrix +confusion_matrix(y_test,y_pred, labels=['FAKE','REAL']) \ No newline at end of file