歐氏距離分類器

2021-10-02 07:43:08 字數 1215 閱讀 6930

歐氏距離分類器是貝葉斯分類器的退化版本,在樣本滿足一定條件下成立。

**如下:

function cls = mahalanobisclassifier(varargin)

[x,m,sigma] = parseinputs(varargin); %分析輸入的變數

dis = zeros(size(m,1),1); %歐氏距離

cls = zeros(size(x,1),1); %每個樣本所屬的類別

for i = 1:size(x,1) %進行分類

for j = 1:size(m,1)

dis(j) = (x(i,:)-m(j,:))/sigma*(x(i,:)-m(j,:))';

end[~,cls(i)] = min(dis);

endfunction [x,m,sigma] = parseinputs(varargin) %用於分析輸入的變數的函式

narginchk(2,inf)

validateattributes(varargin,,)

x = varargin;

if nargin == 2

validateattributes(varargin,,)

m = varargin;

sigma = eye(size(m,1));

elseif nargin == 3

validateattributes(varargin,,)

validateattributes(varargin,,,1),'ncols',size(varargin,1)})

assert(logical(prod(varargin==varargin')))

m = varargin;

sigma = varargin;

else

n = length(varargin);

m = zeros(n-2,size(x,2));

for k = 2:n-1

validateattributes(varargin,,)

m(k-1,:) = varargin;

endvalidateattributes(varargin,,)

assert(logical(prod(prod(varargin==varargin'))))

sigma = varargin;

endend

簡單歐氏距離分類器

機器學習問題描述 機器學習分類 任務根據麻瓜程式設計及習題整理 禁轉人工智慧 機器學習 實現人工智慧的一種方法 深度學習 機器學習中的一類演算法 特點 大資料,效果好,影象識別,語音識別 概括 通過學習歷史資料的特徵構建模型 未來資料 根據訓練樣本是否包含標籤分類 監督學習 訓練樣本包含對應的 標籤...

歐氏距離的矩陣實現 k近鄰分類器

在這個程式裡有130個訓練樣本也就是矩陣x,每個樣本實際上就是乙個點,它的第一行和第二行分別是它的橫縱座標 有2500個測試樣本也就是矩陣y,每個樣本實際上也是乙個點,第一行和第二行分別是它的橫縱座標。距離函式的主體 如下 xx sum x.2,1 1 130 yy sum y.2,1 d repm...

歐氏距離(Euclidean distance)

歐氏距離定義 歐氏距離 euclidean distance 是乙個通常採用的距離定義,它是在m維空間中兩個點之間的真實距離。在二維和三維空間中的歐式距離的就是兩點之間的距離,二維的公式是 d sqrt x1 x2 y1 y2 三維的公式是 d sqrt x1 x2 y1 y2 z1 z2 推廣到n...