Implementing RNN for Spam Prediction
To start we will apply the standard RNN unit to predict a singular numerical output.
Getting ready
In this recipe, we will implement a standard RNN in TensorFlow to predict whether or not a text message is spam or ham. We will use the SMS spam-collection dataset from the ML repository at UCI.The architecture we will use for prediction will be an input RNN sequence from the embedded text, and we will take the last RNN output as a prediction of spam or ham (1 or 0).
How to do it…
We start by loading the libraries necessary for this script:
import os import re import io import requests import numpy as np import matplotlib.pyplot as plt import tensorflow as tf from zipfile import ZipFile
Next we start a graph session and set the RNN model parameters. We will run the data through
20
epochs, in batch sizes of250
.The maximum length of each text we will consider is25
words; we will cut longer texts to25
or zero pad shorter texts.The RNN will be of size10
units...