Clear Filters
Clear Filters

How to make Cosine Distance classification

12 views (last 30 days)
I have 90 dataset (10 label x 9 data).
I want to classfy the dataset using Cosine Distance.
How can use the below code to classify ?
function Cs = getCosineSimilarity(x,y)
% call:
% Cs = getCosineSimilarity(x,y)
% Compute Cosine Similarity between vectors x and y.
% x and y have to be of same length. The interpretation of
% cosine similarity is analogous to that of a Pearson Correlation
% R.G. Bettinardi
% -----------------------------------------------------------------
if isvector(x)==0 || isvector(y)==0
error('x and y have to be vectors!')
if length(x)~=length(y)
error('x and y have to be same length!')
xy = dot(x,y);
nx = norm(x);
ny = norm(y);
nxny = nx*ny;
Cs = xy/nxny;
  1 Comment
Abbas Cheddad
Abbas Cheddad on 22 May 2024 at 9:23
Edited: Abbas Cheddad on 22 May 2024 at 9:25
Cs = xy/nxny;
Should be written as:
Cs = 1 - xy/nx/ny;
This will give you the cosine distance.

Sign in to comment.

Accepted Answer

Raunak Gupta
Raunak Gupta on 16 Mar 2020
I think the answer to the above question is provided in a similar question here. You may find it useful.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!