Phishing emails are the first step for many of today's attacks. They come
with a simple hyperlink, request for action or a full replica of an existing
service or website. The goal is generally to trick the user to voluntarily give
away his sensitive information such as login credentials. Many approaches and
applications have been proposed and developed to catch and filter phishing
emails. However, the problem still lacks a complete and comprehensive solution.
In this paper, we apply knowledge discovery principles from data cleansing,
integration, selection, aggregation, data mining to knowledge extraction. We
study the feature effectiveness based on Information Gain and contribute two
new features to the literature. We compare six machine-learning approaches to
detect phishing based on a small number of carefully chosen features. We
calculate false positives, false negatives, mean absolute error, recall,
precision and F-measure and achieve very low false positive and negative rates.
Na{\"\i}ve Bayes has the least true positives rate and overall Neural Networks
holds the most promise for accurate phishing detection with accuracy of 99.4\%.