K-nearest neighbor for text classification, Computer Engineering

Assignment Help:

Assignment 2: K-nearest neighbor for text classification.

The goal of text classification is to identify the topic for a piece of text (news article, web-blog, etc.). Text classification has obvious utility in the age of information overload, and it has become a popular turf for applying machine learning algorithms. In this project, you will have the opportunity to implement k-nearest neighbor and apply it to text classification on the well known Reuter news collection.

1.       Download the dataset from my website, which is created from the original collection and contains a training file, a test file, the topics, and the format for train/test.

2.       Implement the k-nearest neighbor algorithm for text classification. Your goal is to predict the topic for each news article in the test set. Try the following distance or similarity measures with their corresponding representations.

a.        Hamming distance: each document is represented as a boolean vector, where each bit represents whether the corresponding word appears in the document.

b.       Euclidean distance: each document is represented as a numeric vector, where each number represents how many times the corresponding word appears in the document (it could be zero).

c.         Cosine similarity with TF-IDF weights (a popular metric in information retrieval): each document is represented by a numeric vector as in (b). However, now each number is the TF-IDF weight for the corresponding word (as defined below). The similarity between two documents is the dot product of their corresponding vectors, divided by the product of their norms.

3.        Let w be a word, d be a document, and N(d,w) be the number of occurrences of w in d (i.e., the number in the vector in (b)). TF stands for term frequency, and TF(d,w)=N(d,w)/W(d), where W(d) is the total number of words in d. IDF stands for inverted document frequency, and IDF(d,w)=log(D/C(w)), where D is the total number of documents, and C(w) is the total number of documents that contains the word w; the base for the logarithm is irrelevant, you can use e or 2. The TF-IDF weight for w in d is TF(d,w)*IDF(d,w); this is the number you should put in the vector in (c). TF-IDF is a clever heuristic to take into account of the "information content" that each word conveys, so that frequent words like "the" is discounted and document-specific ones are amplified. You can find more details about it online or in standard IR text.

4.       You should try k = 1, k = 3 and k = 5 with each of the representations above. Notice that with a distance measure, the k-nearest neighborhoods are the ones with the smallest distance from the test point, whereas with a similarity measure, they are the ones with the highest similarity scores.

 

 


Related Discussions:- K-nearest neighbor for text classification

Avoiding overfitting - decision tree learning , Avoiding Overfitting : ...

Avoiding Overfitting : However remember there that in the previous lecture, there is over fitting that common problem in machine learning. Furthermore details to decision tree

What is delayed branching, What is delayed branching? A method called d...

What is delayed branching? A method called delayed branching can minimize the penalty incurred as a result of conditional branch instructions. The idea is easy. The instruction

Difference between shadow and override in programming, Overriding tell us o...

Overriding tell us only the methods, but shadowing tells us the entire element.

Opcode field of an instruction, For this machine there can be two more poss...

For this machine there can be two more possible addressing modes in addition to direct andimmediate.   Opcode field of an instruction is a group of bits which define various pro

Breif on loosely coupled systems, Loosely Coupled Systems These s...

Loosely Coupled Systems These systems don't share global memory since shared memory concept increases the problem of memory conflicts, which consecutively slows down the

Write a short note on structure chart, Write a short note on structure char...

Write a short note on structure chart.    Structure Chart is an significant program design method and it shows all components of code in a hierarchical format

Draw the logic diagram of 4-bit twisted ring counters, Draw the logic diagr...

Draw the logic diagram of 4-bit Twisted Ring counters and explain its operation with the help of timing diagram. Ans: Twisted ring counter (4 BIT): We ready know that shi

Instruction queue in bus interface unit, Q. Instruction Queue in Bus Interf...

Q. Instruction Queue in Bus Interface Unit? Instruction queue is employed to store the instruction ‘bytes' fetched. Please conceren two points here: that it's (1) A Byte (2) Qu

Write a verilog code for synchronous and asynchronous reset, Write a Verilo...

Write a Verilog code for synchronous and asynchronous reset? Synchronous  reset, synchronous means clock dependent so reset must not be present in sensitivity disk eg: alway

Convert a JK flipflop to T type flipflop, With the help of a suitable diagr...

With the help of a suitable diagram, explain how do you convert a JK flipflop to T type flipflop. Ans. As here flip flop is JK flip flop and it is required to convert JK in T.

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd