This project focuses on detecting fake news using various machine learning algorithms. The dataset includes news articles labeled as fake or not fake. The project explores different preprocessing techniques and machine learning models to achieve accurate detection.
To run this project, you need to have Python and several libraries installed. You can install the required libraries using:
pip install -r requirements.txt
The data preprocessing steps include:
- Loading Data: The dataset is loaded using
pandas.read_csv
. - Handling Null Values: Null values in the title and text columns are filled with placeholders.
- Merging Columns: The title and text columns are merged into a single column.
- Visualizations: Word clouds and histograms for fake and not fake news.
- Tokenization: Text data is tokenized and converted to sequences.
- Normalization: The tokenized data is scaled to be between 0 and 1.
Back propagation is a supervised learning algorithm used for training neural networks. It involves forward propagation of inputs, calculation of error, and backward propagation to adjust the weights.
Bayesian neural networks incorporate Bayesian inference for better uncertainty estimation in predictions. This involves using probability distributions rather than point estimates for network weights.
Keras is a high-level neural networks API that simplifies building and training deep learning models. The notebook likely includes models built using the Keras library.
The Levenberg-Marquardt algorithm is an optimization technique used to solve non-linear least squares problems, often applied in training neural networks.
Resilient propagation (Rprop) is a learning algorithm for neural networks that adapts the weight updates based on the error, improving convergence speed.
To use this project, follow these steps:
- Clone the repository.
- Install the necessary libraries.
- Run the Jupyter notebooks in the following order:
Data Preprocessing.ipynb
Back Propgation.ipynb
BayesionNeuralNetwork.ipynb
Keras.ipynb
Levenberg.ipynb
ResilientPropagation.ipynb
The results of the models, including accuracy, precision, recall, and F1 scores, will be displayed in the respective notebooks.
Contributions are welcome. Please fork the repository and create a pull request with your changes.
This project is licensed under the MIT License.