Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
By:
Neha Kulkarni (5201)
Pune Institute of Computer Technology,
Pune
K Nearest Neighbour Classifier
Contents
 Eager learners vs Lazy learners
 What is KNN?
 Discussion about categorical attributes
 Discussion about missing values
 How to choose k?
 KNN algorithm – choosing distance measure and k
 Solving an Example
 Weka Demonstration
 Advantages and Disadvantages of KNN
 Applications of KNN
 Comparison of various classifiers
 Conclusion
 References
Eager Learners vs Lazy Learners
 Eager learners, when given a set of training tuples,
will construct a generalization model before receiving
new (e.g., test) tuples to classify.
 Lazy learners simply stores data (or does only a little
minor processing) and waits until it is given a test
tuple.
 Lazy learners store the training tuples or “instances,”
they are also referred to as instance based learners,
even though all learning is essentially based on
instances.
 Lazy learner: less time in training but more in
predicting.
-k- Nearest Neighbor Classifier
-Case Based Classifier
k- Nearest Neighbor Classifier
 History
• It was first described in the early 1950s.
• The method is labor intensive when given large
training sets.
• Gained popularity, when increased computing
power became available.
• Used widely in area of pattern recognition and
statistical estimation.
What is k- NN??
 Nearest-neighbor classifiers are based on
learning by analogy, that is, by comparing a given
test tuple with training tuples that are similar to it.
 The training tuples are described by n attributes.
 When k = 1, the unknown tuple is assigned the
class of the training tuple that is closest to it in
pattern space.
When k=3 or k=5??
Remarks!!
 Similarity Function Based.
 Choose an odd value of k for 2 class problem.
 k must not be multiple of number of classes.
Closeness
 The Euclidean distance between two points or
tuples, say,
X1 = (x11,x12,...,x1n) and X2 =(x21,x22,...,x2n), is
 Min-max normalization can be used to transform
a value v of a numeric attribute A to v0 in the
range [0,1] by computing
What if attributes are categorical??
 How can distance be computed for attribute
such as colour?
-Simple Method: Compare corresponding value of
attributes
-Other Method: Differential grading
What about missing values ??
 If the value of a given attribute A is missing in
tuple X1 and/or in tuple X2, we assume the
maximum possible difference.
 For categorical attributes, we take the difference
value to be 1 if either one or both of the
corresponding values of A are missing.
 If A is numeric and missing from both tuples X1
and X2, then the difference is also taken to be 1.
How to determine a good value for
k?
 Starting with k = 1, we use a test set to estimate
the error rate of the classifier.
 The k value that gives the minimum error rate
may be selected.
KNN Algorithm and Example
Distance Measures
Which distance measure to use?
We use Euclidean Distance as it treats each feature as
equally important.
𝐸𝑢𝑐𝑙𝑖𝑑𝑒𝑎𝑛 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒 ∶ 𝑑 𝑥, 𝑦 = 𝑥𝑖 − 𝑦𝑖 2
𝑆𝑞𝑢𝑎𝑟𝑒𝑑 𝐸𝑢𝑐𝑙𝑖𝑑𝑒𝑎𝑛 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒 ∶ 𝑑 𝑥, 𝑦 = 𝑥𝑖 − 𝑦𝑖 2
𝑀𝑎𝑛ℎ𝑎𝑡𝑡𝑎𝑛 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒 ∶ 𝑑 𝑥, 𝑦 = |(𝑥𝑖 − 𝑦𝑖)|
How to choose K?
 If infinite number of samples available, the larger
is k, the better is classification.
 k = 1 is often used for efficiency, but sensitive to
“noise”
 Larger k gives smoother boundaries, better for generalization,
but only if locality is preserved. Locality is not preserved if end
up looking at samples too far away, not from the same class.
 Interesting relation to find k for large sample data : k =
sqrt(n)/2 where n is # of examples
 Can choose k through cross-validation
KNN Classifier Algorithm
Example
 We have data from the questionnaires survey and
objective testing with two attributes (acid durability and
strength) to classify whether a special paper tissue is good
or not. Here are four training samples :
X1 = Acid Durability
(seconds)
X2 = Strength
(kg/square meter)
Y = Classification
7 7 Bad
7 4 Bad
3 4 Good
1 4 Good
Now the factory produces a new paper tissue that passes the
laboratory test with X1 = 3 and X2 = 7. Guess the classification of
this new tissue.
 Step 1 : Initialize and Define k.
Lets say, k = 3
(Always choose k as an odd number if the number of
attributes is even to avoid a tie in the class prediction)
 Step 2 : Compute the distance between input sample and
training sample
- Co-ordinate of the input sample is (3,7).
- Instead of calculating the Euclidean distance, we
calculate the Squared Euclidean distance.
X1 = Acid Durability
(seconds)
X2 = Strength
(kg/square meter)
Squared Euclidean distance
7 7 (7-3)2 + (7-7)2 = 16
7 4 (7-3)2 + (4-7)2 = 25
3 4 (3-3)2 + (4-7)2 = 09
1 4 (1-3)2 + (4-7)2 = 13
 Step 3 : Sort the distance and determine the nearest
neighbours based of the Kth minimum distance :
X1 = Acid
Durability
(seconds)
X2 = Strength
(kg/square
meter)
Squared
Euclidean
distance
Rank
minimum
distance
Is it included
in 3-Nearest
Neighbour?
7 7 16 3 Yes
7 4 25 4 No
3 4 09 1 Yes
1 4 13 2 Yes
 Step 4 : Take 3-Nearest Neighbours:
 Gather the category Y of the nearest neighbours.
X1 = Acid
Durability
(seconds)
X2 =
Strength
(kg/square
meter)
Squared
Euclidean
distance
Rank
minimum
distance
Is it
included in
3-Nearest
Neighbour?
Y =
Category of
the nearest
neighbour
7 7 16 3 Yes Bad
7 4 25 4 No -
3 4 09 1 Yes Good
1 4 13 2 Yes Good
 Step 5 : Apply simple majority
 Use simple majority of the category of the nearest
neighbours as the prediction value of the query instance.
 We have 2 “good” and 1 “bad”. Thus we conclude that
the new paper tissue that passes the laboratory test with
X1 = 3 and X2 = 7 is included in the “good” category.
Iris Dataset Example using Weka
 Iris dataset contains 150 sample instances belonging
to 3 classes. 50 samples belong to each of these 3
classes.
 Statistical observations :
 Let's denote the true value of interest as 𝜃 (𝑒𝑥𝑝𝑒𝑐𝑡𝑒𝑑)
and the value estimated using some algorithm as
𝜃. (𝑜𝑏𝑠𝑒𝑟𝑣𝑒𝑑)
 Kappa Statistics : The kappa statistic measures the
agreement of prediction with the true class -- 1.0
signifies complete agreement. It measures the
significance of the classification with respect to the
observed value and expected value.
 Mean absolute error :
 Root Mean Square Error :
 Relative Absolute Error :
 Root Relative Squared Error :
Complexity
 Basic kNN algorithm stores all examples
 Suppose we have n examples each of dimension
d
 O(d) to compute distance to one examples
 O(nd) to computed distances to all examples
 Plus O(nk) time to find k closest examples
 Total time: O(nk+nd)
 Very expensive for a large number of samples
 But we need a large number of samples for kNN
to to work well!!
 Advantages of KNN classifier :
 Can be applied to the data from any distribution for
example, data does not have to be separable with a
linear boundary
 Very simple and intuitive
 Good classification if the number of samples is large
enough
 Disadvantages of KNN classifier :
 Choosing k may be tricky
 Test stage is computationally expensive
 No training stage, all the work is done during the test
stage
 This is actually the opposite of what we want. Usually we
can afford training step to take a long time, but we want
Applications of KNN Classifier
 Used in classification
 Used to get missing values
 Used in pattern recognition
 Used in gene expression
 Used in protein-protein prediction
 Used to get 3D structure of protein
 Used to measure document similarity
Comparison of various classifiers
Algorithm Features Limitations
C4.5
Algorithm
- Models built can be easily
interpreted
- Easy to implement
- Can use both discrete and
continuous values
- Deals with noise
- Small variation in data can lead
to different decision trees
- Does not work very well on
small training dataset
- Over-fitting
ID3
Algorithm
- It produces more accuracy
than C4.5
- Detection rate is increased
and space consumption is
reduced
- Requires large searching time
- Sometimes it may generate
very long rules which are
difficult to prune
- Requires large amount of
memory to store tree
K-Nearest
Neighbour
Algorithm
- Classes need not be linearly
separable
- Zero cost of the learning
process
- Sometimes it is robust with
regard to noisy training data
- Well suited for multimodal
- Time to find the nearest
neighbours in a large training
dataset can be excessive
- It is sensitive to noisy or
irrelevant attributes
- Performance of the algorithm
depends on the number of
Naïve Bayes
Algorithm
- Simple to implement
- Great computational efficiency
and classification rate
- It predicts accurate results for
most of the classification and
prediction problems
- The precision of the
algorithm decreases if the
amount of data is less
- For obtaining good results,
it requires a very large
number of records
Support vector
machine
Algorithm
- High accuracy
- Work well even if the data is
not linearly separable in the
base feature space
- Speed and size
requirement both in training
and testing is more
- High complexity and
extensive memory
requirements for
classification in many
cases
Artificial Neural
Networks
Algorithm
- It is easy to use with few
parameters to adjust
- A neural network learns and
reprogramming is not needed.
- Easy to implement
- Applicable to a wide range of
problems in real life.
- Requires high processing
time if neural network is
large
- Difficult to know how many
neurons and layers are
necessary
- Learning can be slow
Conclusion
 KNN is what we call lazy learning (vs. eager
learning)
 Conceptually simple, easy to understand and
explain
 Very flexible decision boundaries
 Not much learning at all!
 It can be hard to find a good distance measure
 Irrelevant features and noise can be very
detrimental
 Typically can not handle more than a few dozen
attributes
 Computational cost: requires a lot computation
References
 “Data Mining : Concepts and Techniques”, J. Han, J.
Pei, 2001
 “A Comparative Analysis of Classification Techniques
on Categorical Data in Data Mining”, Sakshi, S.
Khare, International Journal on Recent and Innovation
Trends in Computing and Communication, Volume: 3
Issue: 8, ISSN: 2321-8169
 “Comparison of various classification algorithms on
iris datasets using WEKA”, Kanu Patel et al, IJAERD,
Volume 1 Issue 1, February 2014, ISSN: 2348 - 4470
K-Nearest Neighbor Classifier

More Related Content

What's hot

Support Vector Machine ppt presentation
Support Vector Machine ppt presentationSupport Vector Machine ppt presentation
Support Vector Machine ppt presentation
AyanaRukasar
 
Support Vector Machines for Classification
Support Vector Machines for ClassificationSupport Vector Machines for Classification
Support Vector Machines for Classification
Prakash Pimpale
 
KNN
KNN KNN
Support Vector Machine - How Support Vector Machine works | SVM in Machine Le...
Support Vector Machine - How Support Vector Machine works | SVM in Machine Le...Support Vector Machine - How Support Vector Machine works | SVM in Machine Le...
Support Vector Machine - How Support Vector Machine works | SVM in Machine Le...
Simplilearn
 
Machine Learning with Decision trees
Machine Learning with Decision treesMachine Learning with Decision trees
Machine Learning with Decision trees
Knoldus Inc.
 
Classification Based Machine Learning Algorithms
Classification Based Machine Learning AlgorithmsClassification Based Machine Learning Algorithms
Classification Based Machine Learning Algorithms
Md. Main Uddin Rony
 
Machine Learning With Logistic Regression
Machine Learning  With Logistic RegressionMachine Learning  With Logistic Regression
Machine Learning With Logistic Regression
Knoldus Inc.
 
Knn 160904075605-converted
Knn 160904075605-convertedKnn 160904075605-converted
Knn 160904075605-converted
rameswara reddy venkat
 
K Means Clustering Algorithm | K Means Clustering Example | Machine Learning ...
K Means Clustering Algorithm | K Means Clustering Example | Machine Learning ...K Means Clustering Algorithm | K Means Clustering Example | Machine Learning ...
K Means Clustering Algorithm | K Means Clustering Example | Machine Learning ...
Simplilearn
 
Hierarchical Clustering
Hierarchical ClusteringHierarchical Clustering
Hierarchical Clustering
Carlos Castillo (ChaTo)
 
Gradient descent method
Gradient descent methodGradient descent method
Gradient descent method
Sanghyuk Chun
 
Classification techniques in data mining
Classification techniques in data miningClassification techniques in data mining
Classification techniques in data mining
Kamal Acharya
 
K means Clustering Algorithm
K means Clustering AlgorithmK means Clustering Algorithm
K means Clustering Algorithm
Kasun Ranga Wijeweera
 
Perceptron (neural network)
Perceptron (neural network)Perceptron (neural network)
Perceptron (neural network)
EdutechLearners
 
Support Vector Machines ( SVM )
Support Vector Machines ( SVM ) Support Vector Machines ( SVM )
Support Vector Machines ( SVM )
Mohammad Junaid Khan
 
Linear regression
Linear regressionLinear regression
Linear regression
MartinHogg9
 
Decision trees in Machine Learning
Decision trees in Machine Learning Decision trees in Machine Learning
Decision trees in Machine Learning
Mohammad Junaid Khan
 
Knn Algorithm presentation
Knn Algorithm presentationKnn Algorithm presentation
Knn Algorithm presentation
RishavSharma112
 
Principal component analysis and lda
Principal component analysis and ldaPrincipal component analysis and lda
Principal component analysis and lda
Suresh Pokharel
 
Presentation on K-Means Clustering
Presentation on K-Means ClusteringPresentation on K-Means Clustering
Presentation on K-Means Clustering
Pabna University of Science & Technology
 

What's hot (20)

Support Vector Machine ppt presentation
Support Vector Machine ppt presentationSupport Vector Machine ppt presentation
Support Vector Machine ppt presentation
 
Support Vector Machines for Classification
Support Vector Machines for ClassificationSupport Vector Machines for Classification
Support Vector Machines for Classification
 
KNN
KNN KNN
KNN
 
Support Vector Machine - How Support Vector Machine works | SVM in Machine Le...
Support Vector Machine - How Support Vector Machine works | SVM in Machine Le...Support Vector Machine - How Support Vector Machine works | SVM in Machine Le...
Support Vector Machine - How Support Vector Machine works | SVM in Machine Le...
 
Machine Learning with Decision trees
Machine Learning with Decision treesMachine Learning with Decision trees
Machine Learning with Decision trees
 
Classification Based Machine Learning Algorithms
Classification Based Machine Learning AlgorithmsClassification Based Machine Learning Algorithms
Classification Based Machine Learning Algorithms
 
Machine Learning With Logistic Regression
Machine Learning  With Logistic RegressionMachine Learning  With Logistic Regression
Machine Learning With Logistic Regression
 
Knn 160904075605-converted
Knn 160904075605-convertedKnn 160904075605-converted
Knn 160904075605-converted
 
K Means Clustering Algorithm | K Means Clustering Example | Machine Learning ...
K Means Clustering Algorithm | K Means Clustering Example | Machine Learning ...K Means Clustering Algorithm | K Means Clustering Example | Machine Learning ...
K Means Clustering Algorithm | K Means Clustering Example | Machine Learning ...
 
Hierarchical Clustering
Hierarchical ClusteringHierarchical Clustering
Hierarchical Clustering
 
Gradient descent method
Gradient descent methodGradient descent method
Gradient descent method
 
Classification techniques in data mining
Classification techniques in data miningClassification techniques in data mining
Classification techniques in data mining
 
K means Clustering Algorithm
K means Clustering AlgorithmK means Clustering Algorithm
K means Clustering Algorithm
 
Perceptron (neural network)
Perceptron (neural network)Perceptron (neural network)
Perceptron (neural network)
 
Support Vector Machines ( SVM )
Support Vector Machines ( SVM ) Support Vector Machines ( SVM )
Support Vector Machines ( SVM )
 
Linear regression
Linear regressionLinear regression
Linear regression
 
Decision trees in Machine Learning
Decision trees in Machine Learning Decision trees in Machine Learning
Decision trees in Machine Learning
 
Knn Algorithm presentation
Knn Algorithm presentationKnn Algorithm presentation
Knn Algorithm presentation
 
Principal component analysis and lda
Principal component analysis and ldaPrincipal component analysis and lda
Principal component analysis and lda
 
Presentation on K-Means Clustering
Presentation on K-Means ClusteringPresentation on K-Means Clustering
Presentation on K-Means Clustering
 

Similar to K-Nearest Neighbor Classifier

Machine Learning
Machine LearningMachine Learning
Machine Learning
butest
 
Enhancing Classification Accuracy of K-Nearest Neighbors Algorithm using Gain...
Enhancing Classification Accuracy of K-Nearest Neighbors Algorithm using Gain...Enhancing Classification Accuracy of K-Nearest Neighbors Algorithm using Gain...
Enhancing Classification Accuracy of K-Nearest Neighbors Algorithm using Gain...
IRJET Journal
 
SVM - Functional Verification
SVM - Functional VerificationSVM - Functional Verification
SVM - Functional Verification
Sai Kiran Kadam
 
KNN Classifier
KNN ClassifierKNN Classifier
KNN Classifier
Mobashshirur Rahman 👲
 
K nearest neighbor
K nearest neighborK nearest neighbor
K nearest neighbor
Ujjawal
 
Instance based learning
Instance based learningInstance based learning
Instance based learning
Slideshare
 
CSA 3702 machine learning module 3
CSA 3702 machine learning module 3CSA 3702 machine learning module 3
CSA 3702 machine learning module 3
Nandhini S
 
Neural nw k means
Neural nw k meansNeural nw k means
Neural nw k means
Eng. Dr. Dennis N. Mwighusa
 
Supervised and unsupervised learning
Supervised and unsupervised learningSupervised and unsupervised learning
Supervised and unsupervised learning
AmAn Singh
 
KNN.pptx
KNN.pptxKNN.pptx
KNN.pptx
Rahul Halder
 
KNN.pptx
KNN.pptxKNN.pptx
KNN.pptx
dfgd7
 
Lecture 11 - KNN and Clustering, a lecture in subject module Statistical & Ma...
Lecture 11 - KNN and Clustering, a lecture in subject module Statistical & Ma...Lecture 11 - KNN and Clustering, a lecture in subject module Statistical & Ma...
Lecture 11 - KNN and Clustering, a lecture in subject module Statistical & Ma...
Maninda Edirisooriya
 
Selection K in K-means Clustering
Selection K in K-means ClusteringSelection K in K-means Clustering
Selection K in K-means Clustering
Junghoon Kim
 
Text categorization
Text categorizationText categorization
Text categorization
Phuong Nguyen
 
Training machine learning knn 2017
Training machine learning knn 2017Training machine learning knn 2017
Training machine learning knn 2017
Iwan Sofana
 
CLUSTER ANALYSIS ALGORITHMS.pptx
CLUSTER ANALYSIS ALGORITHMS.pptxCLUSTER ANALYSIS ALGORITHMS.pptx
CLUSTER ANALYSIS ALGORITHMS.pptx
ShwetapadmaBabu1
 
KNN
KNNKNN
Lecture 11
Lecture 11Lecture 11
Lecture 11
Jeet Das
 
Hidden Layer Leraning Vector Quantizatio
Hidden Layer Leraning Vector Quantizatio Hidden Layer Leraning Vector Quantizatio
Hidden Layer Leraning Vector Quantizatio
Armando Vieira
 
09_dm1_knn_2022_23.pdf
09_dm1_knn_2022_23.pdf09_dm1_knn_2022_23.pdf
09_dm1_knn_2022_23.pdf
ArafathJazeeb1
 

Similar to K-Nearest Neighbor Classifier (20)

Machine Learning
Machine LearningMachine Learning
Machine Learning
 
Enhancing Classification Accuracy of K-Nearest Neighbors Algorithm using Gain...
Enhancing Classification Accuracy of K-Nearest Neighbors Algorithm using Gain...Enhancing Classification Accuracy of K-Nearest Neighbors Algorithm using Gain...
Enhancing Classification Accuracy of K-Nearest Neighbors Algorithm using Gain...
 
SVM - Functional Verification
SVM - Functional VerificationSVM - Functional Verification
SVM - Functional Verification
 
KNN Classifier
KNN ClassifierKNN Classifier
KNN Classifier
 
K nearest neighbor
K nearest neighborK nearest neighbor
K nearest neighbor
 
Instance based learning
Instance based learningInstance based learning
Instance based learning
 
CSA 3702 machine learning module 3
CSA 3702 machine learning module 3CSA 3702 machine learning module 3
CSA 3702 machine learning module 3
 
Neural nw k means
Neural nw k meansNeural nw k means
Neural nw k means
 
Supervised and unsupervised learning
Supervised and unsupervised learningSupervised and unsupervised learning
Supervised and unsupervised learning
 
KNN.pptx
KNN.pptxKNN.pptx
KNN.pptx
 
KNN.pptx
KNN.pptxKNN.pptx
KNN.pptx
 
Lecture 11 - KNN and Clustering, a lecture in subject module Statistical & Ma...
Lecture 11 - KNN and Clustering, a lecture in subject module Statistical & Ma...Lecture 11 - KNN and Clustering, a lecture in subject module Statistical & Ma...
Lecture 11 - KNN and Clustering, a lecture in subject module Statistical & Ma...
 
Selection K in K-means Clustering
Selection K in K-means ClusteringSelection K in K-means Clustering
Selection K in K-means Clustering
 
Text categorization
Text categorizationText categorization
Text categorization
 
Training machine learning knn 2017
Training machine learning knn 2017Training machine learning knn 2017
Training machine learning knn 2017
 
CLUSTER ANALYSIS ALGORITHMS.pptx
CLUSTER ANALYSIS ALGORITHMS.pptxCLUSTER ANALYSIS ALGORITHMS.pptx
CLUSTER ANALYSIS ALGORITHMS.pptx
 
KNN
KNNKNN
KNN
 
Lecture 11
Lecture 11Lecture 11
Lecture 11
 
Hidden Layer Leraning Vector Quantizatio
Hidden Layer Leraning Vector Quantizatio Hidden Layer Leraning Vector Quantizatio
Hidden Layer Leraning Vector Quantizatio
 
09_dm1_knn_2022_23.pdf
09_dm1_knn_2022_23.pdf09_dm1_knn_2022_23.pdf
09_dm1_knn_2022_23.pdf
 

Recently uploaded

Tailoring a Seamless Data Warehouse Architecture
Tailoring a Seamless Data Warehouse ArchitectureTailoring a Seamless Data Warehouse Architecture
Tailoring a Seamless Data Warehouse Architecture
GetOnData
 
BRIGADA eskwela 2024 slip BRIGADA eskwela 2024 slip
BRIGADA eskwela  2024 slip  BRIGADA eskwela  2024 slipBRIGADA eskwela  2024 slip  BRIGADA eskwela  2024 slip
BRIGADA eskwela 2024 slip BRIGADA eskwela 2024 slip
Lucien Maxwell
 
[VCOSA] Monthly Report - Cotton & Yarn Statistics July 2024
[VCOSA] Monthly Report - Cotton & Yarn Statistics July 2024[VCOSA] Monthly Report - Cotton & Yarn Statistics July 2024
[VCOSA] Monthly Report - Cotton & Yarn Statistics July 2024
Vietnam Cotton & Spinning Association
 
Module-4_Docker_Training Course outline_
Module-4_Docker_Training Course outline_Module-4_Docker_Training Course outline_
Module-4_Docker_Training Course outline_
AmanTiwari297384
 
PRODUCT | RESEARCH-PRESENTATION-1.1.pptx
PRODUCT | RESEARCH-PRESENTATION-1.1.pptxPRODUCT | RESEARCH-PRESENTATION-1.1.pptx
PRODUCT | RESEARCH-PRESENTATION-1.1.pptx
amazenolmedojeruel
 
Data Analytics for Decision Making By District 11 Solutions
Data Analytics for Decision Making By District 11 SolutionsData Analytics for Decision Making By District 11 Solutions
Data Analytics for Decision Making By District 11 Solutions
District 11 Solutions
 
KeynoteUploadJRP ABCDEFGHIJKLMNOPQRSTUVWXYZ
KeynoteUploadJRP ABCDEFGHIJKLMNOPQRSTUVWXYZKeynoteUploadJRP ABCDEFGHIJKLMNOPQRSTUVWXYZ
KeynoteUploadJRP ABCDEFGHIJKLMNOPQRSTUVWXYZ
jp3113ig
 
Acid Base Practice Test 4- KEY.pdfkkjkjk
Acid Base Practice Test 4- KEY.pdfkkjkjkAcid Base Practice Test 4- KEY.pdfkkjkjk
Acid Base Practice Test 4- KEY.pdfkkjkjk
talha2khan2k
 
chapter one 1 cloudcomputing .pptx someone
chapter one 1 cloudcomputing .pptx someonechapter one 1 cloudcomputing .pptx someone
chapter one 1 cloudcomputing .pptx someone
abeeeeeeeer588
 
NYCMeetup07-25-2024-Unstructured Data Processing From Cloud to Edge
NYCMeetup07-25-2024-Unstructured Data Processing From Cloud to EdgeNYCMeetup07-25-2024-Unstructured Data Processing From Cloud to Edge
NYCMeetup07-25-2024-Unstructured Data Processing From Cloud to Edge
Timothy Spann
 
Audits Of Complaints Against the PPD Report_2022.pdf
Audits Of Complaints Against the PPD Report_2022.pdfAudits Of Complaints Against the PPD Report_2022.pdf
Audits Of Complaints Against the PPD Report_2022.pdf
evwcarr
 
Systane Global education training centre
Systane Global education training centreSystane Global education training centre
Systane Global education training centre
AkhinaRomdoni
 
Selcuk Topal Arbitrum Scientific Report.pdf
Selcuk Topal Arbitrum Scientific Report.pdfSelcuk Topal Arbitrum Scientific Report.pdf
Selcuk Topal Arbitrum Scientific Report.pdf
SelcukTOPAL2
 
Cal Girls The Lalit Jaipur 8445551418 Khusi Top Class Girls Call Jaipur Avail...
Cal Girls The Lalit Jaipur 8445551418 Khusi Top Class Girls Call Jaipur Avail...Cal Girls The Lalit Jaipur 8445551418 Khusi Top Class Girls Call Jaipur Avail...
Cal Girls The Lalit Jaipur 8445551418 Khusi Top Class Girls Call Jaipur Avail...
deepikakumaridk25
 
BGTUG Meeting Q3 2024 - Get Ready for Summer
BGTUG Meeting Q3 2024 - Get Ready for SummerBGTUG Meeting Q3 2024 - Get Ready for Summer
BGTUG Meeting Q3 2024 - Get Ready for Summer
Stanislava Tropcheva
 
Unit 1 Introduction to DATA SCIENCE .pptx
Unit 1 Introduction to DATA SCIENCE .pptxUnit 1 Introduction to DATA SCIENCE .pptx
Unit 1 Introduction to DATA SCIENCE .pptx
Priyanka Jadhav
 
Cal Girls Mansarovar Jaipur | 08445551418 | Rajni High Profile Girls Call in ...
Cal Girls Mansarovar Jaipur | 08445551418 | Rajni High Profile Girls Call in ...Cal Girls Mansarovar Jaipur | 08445551418 | Rajni High Profile Girls Call in ...
Cal Girls Mansarovar Jaipur | 08445551418 | Rajni High Profile Girls Call in ...
femim26318
 
一比一原版(unb毕业证书)新布伦瑞克大学毕业证如何办理
一比一原版(unb毕业证书)新布伦瑞克大学毕业证如何办理一比一原版(unb毕业证书)新布伦瑞克大学毕业证如何办理
一比一原版(unb毕业证书)新布伦瑞克大学毕业证如何办理
ks1ni2di
 
Indian KS Unit 2 Mathematicians (1).pptx
Indian KS Unit 2 Mathematicians (1).pptxIndian KS Unit 2 Mathematicians (1).pptx
Indian KS Unit 2 Mathematicians (1).pptx
Nikita Gaikwad
 
Cal Girls Hotel Safari Jaipur | | Girls Call Free Drop Service
Cal Girls Hotel Safari Jaipur | | Girls Call Free Drop ServiceCal Girls Hotel Safari Jaipur | | Girls Call Free Drop Service
Cal Girls Hotel Safari Jaipur | | Girls Call Free Drop Service
Deepikakumari457585
 

Recently uploaded (20)

Tailoring a Seamless Data Warehouse Architecture
Tailoring a Seamless Data Warehouse ArchitectureTailoring a Seamless Data Warehouse Architecture
Tailoring a Seamless Data Warehouse Architecture
 
BRIGADA eskwela 2024 slip BRIGADA eskwela 2024 slip
BRIGADA eskwela  2024 slip  BRIGADA eskwela  2024 slipBRIGADA eskwela  2024 slip  BRIGADA eskwela  2024 slip
BRIGADA eskwela 2024 slip BRIGADA eskwela 2024 slip
 
[VCOSA] Monthly Report - Cotton & Yarn Statistics July 2024
[VCOSA] Monthly Report - Cotton & Yarn Statistics July 2024[VCOSA] Monthly Report - Cotton & Yarn Statistics July 2024
[VCOSA] Monthly Report - Cotton & Yarn Statistics July 2024
 
Module-4_Docker_Training Course outline_
Module-4_Docker_Training Course outline_Module-4_Docker_Training Course outline_
Module-4_Docker_Training Course outline_
 
PRODUCT | RESEARCH-PRESENTATION-1.1.pptx
PRODUCT | RESEARCH-PRESENTATION-1.1.pptxPRODUCT | RESEARCH-PRESENTATION-1.1.pptx
PRODUCT | RESEARCH-PRESENTATION-1.1.pptx
 
Data Analytics for Decision Making By District 11 Solutions
Data Analytics for Decision Making By District 11 SolutionsData Analytics for Decision Making By District 11 Solutions
Data Analytics for Decision Making By District 11 Solutions
 
KeynoteUploadJRP ABCDEFGHIJKLMNOPQRSTUVWXYZ
KeynoteUploadJRP ABCDEFGHIJKLMNOPQRSTUVWXYZKeynoteUploadJRP ABCDEFGHIJKLMNOPQRSTUVWXYZ
KeynoteUploadJRP ABCDEFGHIJKLMNOPQRSTUVWXYZ
 
Acid Base Practice Test 4- KEY.pdfkkjkjk
Acid Base Practice Test 4- KEY.pdfkkjkjkAcid Base Practice Test 4- KEY.pdfkkjkjk
Acid Base Practice Test 4- KEY.pdfkkjkjk
 
chapter one 1 cloudcomputing .pptx someone
chapter one 1 cloudcomputing .pptx someonechapter one 1 cloudcomputing .pptx someone
chapter one 1 cloudcomputing .pptx someone
 
NYCMeetup07-25-2024-Unstructured Data Processing From Cloud to Edge
NYCMeetup07-25-2024-Unstructured Data Processing From Cloud to EdgeNYCMeetup07-25-2024-Unstructured Data Processing From Cloud to Edge
NYCMeetup07-25-2024-Unstructured Data Processing From Cloud to Edge
 
Audits Of Complaints Against the PPD Report_2022.pdf
Audits Of Complaints Against the PPD Report_2022.pdfAudits Of Complaints Against the PPD Report_2022.pdf
Audits Of Complaints Against the PPD Report_2022.pdf
 
Systane Global education training centre
Systane Global education training centreSystane Global education training centre
Systane Global education training centre
 
Selcuk Topal Arbitrum Scientific Report.pdf
Selcuk Topal Arbitrum Scientific Report.pdfSelcuk Topal Arbitrum Scientific Report.pdf
Selcuk Topal Arbitrum Scientific Report.pdf
 
Cal Girls The Lalit Jaipur 8445551418 Khusi Top Class Girls Call Jaipur Avail...
Cal Girls The Lalit Jaipur 8445551418 Khusi Top Class Girls Call Jaipur Avail...Cal Girls The Lalit Jaipur 8445551418 Khusi Top Class Girls Call Jaipur Avail...
Cal Girls The Lalit Jaipur 8445551418 Khusi Top Class Girls Call Jaipur Avail...
 
BGTUG Meeting Q3 2024 - Get Ready for Summer
BGTUG Meeting Q3 2024 - Get Ready for SummerBGTUG Meeting Q3 2024 - Get Ready for Summer
BGTUG Meeting Q3 2024 - Get Ready for Summer
 
Unit 1 Introduction to DATA SCIENCE .pptx
Unit 1 Introduction to DATA SCIENCE .pptxUnit 1 Introduction to DATA SCIENCE .pptx
Unit 1 Introduction to DATA SCIENCE .pptx
 
Cal Girls Mansarovar Jaipur | 08445551418 | Rajni High Profile Girls Call in ...
Cal Girls Mansarovar Jaipur | 08445551418 | Rajni High Profile Girls Call in ...Cal Girls Mansarovar Jaipur | 08445551418 | Rajni High Profile Girls Call in ...
Cal Girls Mansarovar Jaipur | 08445551418 | Rajni High Profile Girls Call in ...
 
一比一原版(unb毕业证书)新布伦瑞克大学毕业证如何办理
一比一原版(unb毕业证书)新布伦瑞克大学毕业证如何办理一比一原版(unb毕业证书)新布伦瑞克大学毕业证如何办理
一比一原版(unb毕业证书)新布伦瑞克大学毕业证如何办理
 
Indian KS Unit 2 Mathematicians (1).pptx
Indian KS Unit 2 Mathematicians (1).pptxIndian KS Unit 2 Mathematicians (1).pptx
Indian KS Unit 2 Mathematicians (1).pptx
 
Cal Girls Hotel Safari Jaipur | | Girls Call Free Drop Service
Cal Girls Hotel Safari Jaipur | | Girls Call Free Drop ServiceCal Girls Hotel Safari Jaipur | | Girls Call Free Drop Service
Cal Girls Hotel Safari Jaipur | | Girls Call Free Drop Service
 

K-Nearest Neighbor Classifier

  • 1. By: Neha Kulkarni (5201) Pune Institute of Computer Technology, Pune K Nearest Neighbour Classifier
  • 2. Contents  Eager learners vs Lazy learners  What is KNN?  Discussion about categorical attributes  Discussion about missing values  How to choose k?  KNN algorithm – choosing distance measure and k  Solving an Example  Weka Demonstration  Advantages and Disadvantages of KNN  Applications of KNN  Comparison of various classifiers  Conclusion  References
  • 3. Eager Learners vs Lazy Learners  Eager learners, when given a set of training tuples, will construct a generalization model before receiving new (e.g., test) tuples to classify.  Lazy learners simply stores data (or does only a little minor processing) and waits until it is given a test tuple.  Lazy learners store the training tuples or “instances,” they are also referred to as instance based learners, even though all learning is essentially based on instances.  Lazy learner: less time in training but more in predicting. -k- Nearest Neighbor Classifier -Case Based Classifier
  • 4. k- Nearest Neighbor Classifier  History • It was first described in the early 1950s. • The method is labor intensive when given large training sets. • Gained popularity, when increased computing power became available. • Used widely in area of pattern recognition and statistical estimation.
  • 5. What is k- NN??  Nearest-neighbor classifiers are based on learning by analogy, that is, by comparing a given test tuple with training tuples that are similar to it.  The training tuples are described by n attributes.  When k = 1, the unknown tuple is assigned the class of the training tuple that is closest to it in pattern space.
  • 6. When k=3 or k=5??
  • 7. Remarks!!  Similarity Function Based.  Choose an odd value of k for 2 class problem.  k must not be multiple of number of classes.
  • 8. Closeness  The Euclidean distance between two points or tuples, say, X1 = (x11,x12,...,x1n) and X2 =(x21,x22,...,x2n), is  Min-max normalization can be used to transform a value v of a numeric attribute A to v0 in the range [0,1] by computing
  • 9. What if attributes are categorical??  How can distance be computed for attribute such as colour? -Simple Method: Compare corresponding value of attributes -Other Method: Differential grading
  • 10. What about missing values ??  If the value of a given attribute A is missing in tuple X1 and/or in tuple X2, we assume the maximum possible difference.  For categorical attributes, we take the difference value to be 1 if either one or both of the corresponding values of A are missing.  If A is numeric and missing from both tuples X1 and X2, then the difference is also taken to be 1.
  • 11. How to determine a good value for k?  Starting with k = 1, we use a test set to estimate the error rate of the classifier.  The k value that gives the minimum error rate may be selected.
  • 12. KNN Algorithm and Example
  • 13. Distance Measures Which distance measure to use? We use Euclidean Distance as it treats each feature as equally important. 𝐸𝑢𝑐𝑙𝑖𝑑𝑒𝑎𝑛 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒 ∶ 𝑑 𝑥, 𝑦 = 𝑥𝑖 − 𝑦𝑖 2 𝑆𝑞𝑢𝑎𝑟𝑒𝑑 𝐸𝑢𝑐𝑙𝑖𝑑𝑒𝑎𝑛 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒 ∶ 𝑑 𝑥, 𝑦 = 𝑥𝑖 − 𝑦𝑖 2 𝑀𝑎𝑛ℎ𝑎𝑡𝑡𝑎𝑛 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒 ∶ 𝑑 𝑥, 𝑦 = |(𝑥𝑖 − 𝑦𝑖)|
  • 14. How to choose K?  If infinite number of samples available, the larger is k, the better is classification.  k = 1 is often used for efficiency, but sensitive to “noise”
  • 15.  Larger k gives smoother boundaries, better for generalization, but only if locality is preserved. Locality is not preserved if end up looking at samples too far away, not from the same class.  Interesting relation to find k for large sample data : k = sqrt(n)/2 where n is # of examples  Can choose k through cross-validation
  • 17. Example  We have data from the questionnaires survey and objective testing with two attributes (acid durability and strength) to classify whether a special paper tissue is good or not. Here are four training samples : X1 = Acid Durability (seconds) X2 = Strength (kg/square meter) Y = Classification 7 7 Bad 7 4 Bad 3 4 Good 1 4 Good Now the factory produces a new paper tissue that passes the laboratory test with X1 = 3 and X2 = 7. Guess the classification of this new tissue.
  • 18.  Step 1 : Initialize and Define k. Lets say, k = 3 (Always choose k as an odd number if the number of attributes is even to avoid a tie in the class prediction)  Step 2 : Compute the distance between input sample and training sample - Co-ordinate of the input sample is (3,7). - Instead of calculating the Euclidean distance, we calculate the Squared Euclidean distance. X1 = Acid Durability (seconds) X2 = Strength (kg/square meter) Squared Euclidean distance 7 7 (7-3)2 + (7-7)2 = 16 7 4 (7-3)2 + (4-7)2 = 25 3 4 (3-3)2 + (4-7)2 = 09 1 4 (1-3)2 + (4-7)2 = 13
  • 19.  Step 3 : Sort the distance and determine the nearest neighbours based of the Kth minimum distance : X1 = Acid Durability (seconds) X2 = Strength (kg/square meter) Squared Euclidean distance Rank minimum distance Is it included in 3-Nearest Neighbour? 7 7 16 3 Yes 7 4 25 4 No 3 4 09 1 Yes 1 4 13 2 Yes
  • 20.  Step 4 : Take 3-Nearest Neighbours:  Gather the category Y of the nearest neighbours. X1 = Acid Durability (seconds) X2 = Strength (kg/square meter) Squared Euclidean distance Rank minimum distance Is it included in 3-Nearest Neighbour? Y = Category of the nearest neighbour 7 7 16 3 Yes Bad 7 4 25 4 No - 3 4 09 1 Yes Good 1 4 13 2 Yes Good
  • 21.  Step 5 : Apply simple majority  Use simple majority of the category of the nearest neighbours as the prediction value of the query instance.  We have 2 “good” and 1 “bad”. Thus we conclude that the new paper tissue that passes the laboratory test with X1 = 3 and X2 = 7 is included in the “good” category.
  • 22. Iris Dataset Example using Weka  Iris dataset contains 150 sample instances belonging to 3 classes. 50 samples belong to each of these 3 classes.  Statistical observations :  Let's denote the true value of interest as 𝜃 (𝑒𝑥𝑝𝑒𝑐𝑡𝑒𝑑) and the value estimated using some algorithm as 𝜃. (𝑜𝑏𝑠𝑒𝑟𝑣𝑒𝑑)  Kappa Statistics : The kappa statistic measures the agreement of prediction with the true class -- 1.0 signifies complete agreement. It measures the significance of the classification with respect to the observed value and expected value.  Mean absolute error :
  • 23.  Root Mean Square Error :  Relative Absolute Error :  Root Relative Squared Error :
  • 24. Complexity  Basic kNN algorithm stores all examples  Suppose we have n examples each of dimension d  O(d) to compute distance to one examples  O(nd) to computed distances to all examples  Plus O(nk) time to find k closest examples  Total time: O(nk+nd)  Very expensive for a large number of samples  But we need a large number of samples for kNN to to work well!!
  • 25.  Advantages of KNN classifier :  Can be applied to the data from any distribution for example, data does not have to be separable with a linear boundary  Very simple and intuitive  Good classification if the number of samples is large enough  Disadvantages of KNN classifier :  Choosing k may be tricky  Test stage is computationally expensive  No training stage, all the work is done during the test stage  This is actually the opposite of what we want. Usually we can afford training step to take a long time, but we want
  • 26. Applications of KNN Classifier  Used in classification  Used to get missing values  Used in pattern recognition  Used in gene expression  Used in protein-protein prediction  Used to get 3D structure of protein  Used to measure document similarity
  • 27. Comparison of various classifiers Algorithm Features Limitations C4.5 Algorithm - Models built can be easily interpreted - Easy to implement - Can use both discrete and continuous values - Deals with noise - Small variation in data can lead to different decision trees - Does not work very well on small training dataset - Over-fitting ID3 Algorithm - It produces more accuracy than C4.5 - Detection rate is increased and space consumption is reduced - Requires large searching time - Sometimes it may generate very long rules which are difficult to prune - Requires large amount of memory to store tree K-Nearest Neighbour Algorithm - Classes need not be linearly separable - Zero cost of the learning process - Sometimes it is robust with regard to noisy training data - Well suited for multimodal - Time to find the nearest neighbours in a large training dataset can be excessive - It is sensitive to noisy or irrelevant attributes - Performance of the algorithm depends on the number of
  • 28. Naïve Bayes Algorithm - Simple to implement - Great computational efficiency and classification rate - It predicts accurate results for most of the classification and prediction problems - The precision of the algorithm decreases if the amount of data is less - For obtaining good results, it requires a very large number of records Support vector machine Algorithm - High accuracy - Work well even if the data is not linearly separable in the base feature space - Speed and size requirement both in training and testing is more - High complexity and extensive memory requirements for classification in many cases Artificial Neural Networks Algorithm - It is easy to use with few parameters to adjust - A neural network learns and reprogramming is not needed. - Easy to implement - Applicable to a wide range of problems in real life. - Requires high processing time if neural network is large - Difficult to know how many neurons and layers are necessary - Learning can be slow
  • 29. Conclusion  KNN is what we call lazy learning (vs. eager learning)  Conceptually simple, easy to understand and explain  Very flexible decision boundaries  Not much learning at all!  It can be hard to find a good distance measure  Irrelevant features and noise can be very detrimental  Typically can not handle more than a few dozen attributes  Computational cost: requires a lot computation
  • 30. References  “Data Mining : Concepts and Techniques”, J. Han, J. Pei, 2001  “A Comparative Analysis of Classification Techniques on Categorical Data in Data Mining”, Sakshi, S. Khare, International Journal on Recent and Innovation Trends in Computing and Communication, Volume: 3 Issue: 8, ISSN: 2321-8169  “Comparison of various classification algorithms on iris datasets using WEKA”, Kanu Patel et al, IJAERD, Volume 1 Issue 1, February 2014, ISSN: 2348 - 4470