歐氏距離分類器是貝葉斯分類器的退化版本,在樣本滿足一定條件下成立。
**如下:
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...