How to make Cosine Distance classification
38 次查看(过去 30 天)
显示 更早的评论
Hello.
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!')
end
if length(x)~=length(y)
error('x and y have to be same length!')
end
xy = dot(x,y);
nx = norm(x);
ny = norm(y);
nxny = nx*ny;
Cs = xy/nxny;
1 个评论
Abbas Cheddad
2024-5-22
编辑:Abbas Cheddad
2024-5-22
Cs = xy/nxny;
Should be written as:
Cs = 1 - xy/nx/ny;
This will give you the cosine distance.
采纳的回答
Raunak Gupta
2020-3-16
Hi,
I think the answer to the above question is provided in a similar question here. You may find it useful.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Classification Ensembles 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!