CRM114 Team KNN and Hyperspace Spam Sorting 1 Sorting Spam with K-Nearest Neighbor and Hyperspace Classifiers William Yerazunis 1 Fidelis Assis 2 Christian Siefkes 3 Shalendra Chhabra 1,4 1: Mitsubishi Electric Research Labs- Cambridge MA 2: Empresa Brasileira de Telecomunicações Embratel, Rio de Janeiro, RJ Brazil 3: Database and Information Systems Group, Freie Universität Berlin, Berlin-Brandenburg Graduate School in Distributed Information Systems 4: Computer Science and Engineering, University of California, Riverside CA
31
Embed
CRM114 TeamKNN and Hyperspace Spam Sorting1 Sorting Spam with K-Nearest Neighbor and Hyperspace Classifiers William Yerazunis 1 Fidelis Assis 2 Christian.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
CRM114 Team KNN and Hyperspace Spam Sorting 1
Sorting Spam with K-Nearest Neighbor and Hyperspace
ClassifiersWilliam Yerazunis1
Fidelis Assis2
Christian Siefkes3
Shalendra Chhabra1,4
1: Mitsubishi Electric Research Labs- Cambridge MA
2: Empresa Brasileira de Telecomunicações Embratel, Rio de Janeiro, RJ Brazil
3: Database and Information Systems Group, Freie Universität Berlin,
Berlin-Brandenburg Graduate School in Distributed Information Systems
4: Computer Science and Engineering, University of California, Riverside CA
CRM114 Team KNN and Hyperspace Spam Sorting 2
Bayesian is Great.Why Worry?
● Typical Spam Filters are linear classifiers– Consider the “checkerboard” problem
● Markovian requires the nonlinear features to be textually “near” each other– can’t be sure that will work forever because
spammers are clever.● Winnow is just a different weighting +
different chain rule rule
CRM114 Team KNN and Hyperspace Spam Sorting 3
Bayesian is Great.Why Worry?
● Bayesian is only a linear classifier– Consider the “checkerboard” problem
● Markovian requires the nonlinear features to be textually “near” each other– can’t be sure of that; spammers are clever
● Winnow is just a different weighting● KNNs are a very different kind of classifier
CRM114 Team KNN and Hyperspace Spam Sorting 4
Typical Linear Separation
CRM114 Team KNN and Hyperspace Spam Sorting 5
Typical Linear Separation
CRM114 Team KNN and Hyperspace Spam Sorting 6
Typical Linear Separation
CRM114 Team KNN and Hyperspace Spam Sorting 7
Nonlinear Decision Surfaces
Nonlinear decision surfaces requiretremendous amounts of data.
CRM114 Team KNN and Hyperspace Spam Sorting 8
Nonlinear Decision and KNN / Hyperspace
Nonlinear decision surfaces requiretremendous amounts of data.
CRM114 Team KNN and Hyperspace Spam Sorting 9
● Earliest found reference:
E. Fix and J. Hodges, Discriminatory Analysis: Nonparametric Discrimination: Consistency Properties
KNNs have been around
CRM114 Team KNN and Hyperspace Spam Sorting 10
● Earliest found reference:
E. Fix and J. Hodges, Discriminatory Analysis: Nonparametric Discrimination: Consistency Properties
● In 1951 !
KNNs have been around
CRM114 Team KNN and Hyperspace Spam Sorting 11
● Earliest found reference:
E. Fix and J. Hodges, Discriminatory Analysis: Nonparametric Discrimination: Consistency Properties
● In 1951 !● Interesting Theorem: Cover and Hart
(1967)
KNNs are within a factor of 2 in accuracy to the optimal Bayesian filter
KNNs have been around
CRM114 Team KNN and Hyperspace Spam Sorting 12
● Start with bunch of known things and one unknown thing.
● Find the K known things most similar to the unknown thing.
● Count how many of the K known things are in each class.
● The unknown thing is of the same class as the majority of the K known things.
KNNs in one slide!
CRM114 Team KNN and Hyperspace Spam Sorting 13
● How big is the neighborhood K ?● How do you weight your neighbors?
– Equal-vote?– Some falloff in weight?– Nearby interaction – the Parzen window?
● How do you train?– Everything? That gets big...– And SLOW.
Issues with Standard KNNs
CRM114 Team KNN and Hyperspace Spam Sorting 14
● How big is the neighborhood?
We will test with 3, 7, 21 and |corpus|
● How do we weight the neighbors?
We will try equal-weighting, similarity, Euclidean distance, and combinations
thereof.
Issues with Standard KNNs
CRM114 Team KNN and Hyperspace Spam Sorting 15
● How do we train?– To compare with a good Markov classifier we
need to use TOE – Train Only Errors – This is good in that it really speeds up
classification and keeps the database small.– This is bad in that it violates the Cover and
Hart assumptions, so the quality limit theorem no longer applies
– BUT – we will train multiple passes to see if an asymptote appears.
Issues with Standard KNNs
CRM114 Team KNN and Hyperspace Spam Sorting 16
● We found the “bad” KNNs mimic Cover and Hart behavior- they insert basically everything into a bloated database, sometimes more than once!
● The more accurate KNNs inserted fewer examples into their database.
Issues with Standard KNNs
CRM114 Team KNN and Hyperspace Spam Sorting 17
● Use the TREC 2005 SA dataset.● 10-fold validation – train on 90%, test on
10%, repeat for each successive 10% (but remember to clear memory!)
● Run 5 passes (find the asymptote)● Compare it versus the OSB Markovian
tested at TREC 2005.
How do we compare KNNs?
CRM114 Team KNN and Hyperspace Spam Sorting 18
● Use the OSB feature set. This combines nearby words to make short phrases; the phrases are what are matched.
● Example “this is an example” yields:“this is”
“this <skip> an”
“this <skip> <skip> example”
These features are the measurements we classify against
What do we use as features?
CRM114 Team KNN and Hyperspace Spam Sorting 19
Test 1: Equal Weight VotingKNN with K = 3, 7, and 21
Pass 1 Pass 2 Pass 3 Pass 4 Pass 5
70
75
80
85
90
95
100
105
Pass 1 Pass 2 Pass 3 Pass 4 Pass 5
70
75
80
85
90
95
100
Pass 1 Pass 2 Pass 3 Pass 4 Pass 5
70
75
80
85
90
95
100
Good
Spam
Wt. Total
Asymptotic accuracy: 93%, 93%, and 94%(good acc: 98%, spam acc 80% for K = 2 and
7,96% and 90% for K=21)
Time: ~50-75 milliseconds/message
CRM114 Team KNN and Hyperspace Spam Sorting 20
Test 2: Weight by Hamming-1/2
KNN with K = 7 and 21
Asymptotic accuracy: 94% and 92%(good acc: 98%, spam acc 85% for K=7,
98% and 79% for K=21)Time: ~ 60 milliseconds/message