主要内容

创造力

最近傍モデルオブジェクトの作成

说明

NS= createns(Xは,データ格纳されているいる行行行列数値Xを使用し,ElectiveRearcherまたはKdtreesearcherモデルオブジェクトいずれか作成します。

NS= createns(X,,,,名称,价值1つつのとのペア引数をして追加オプションオプションを指定しします,NSMethodを指定と作成オブジェクトのタイプ决定できます。

すべて折りたたむ

フィッシャーののデータを読み込みます。

加载渔业x = meas;[n,k] = size(x)
n = 150
k = 4

X150个の値とととつのつのが。。。

データセット学习として使用て,的最近探索モデルを准备します。

mdl1 = Enterviresearcher(x)
MDL1 = EnterviveRearcher具有属性:距离:'Euclidean'Distparameter:[] X:[150x4 double]

MDL1ElectiveRearcherオブジェクトでがウィンドウウィンドウ表示され。。このはは,,距离距离计量计量计量などなど,,済み済みアルゴリズムアルゴリズムにに关する关する情报がが格纳格纳さささされれれれ。。プロパティプロパティプロパティプロパティプロパティ

または,创造力を使用,探索法として“详尽”を指定によって,网罗的最近モデルを准备でき。。

mdl2 = createns(x,'nsmethod',,,,“详尽”
MDL2 = EnterviveRearcher具有属性:距离:'Euclidean'Distparameter:[] X:[150x4 double]

MDL2ElectiveRearcherモデルオブジェクトでもあり,MDL1と等価です。

一连のデータに対する最近ををXから探索するは,ElectiveRearcherモデルオブジェクトとデータをKnnsearchまたはrangesearchに渡します。

ユークリッド距离をするするする次元次元のkd木をさます。。

フィッシャーののデータを読み込みます。

加载渔业x = meas;[n,k] = size(x)
n = 150
k = 4

X150个の値とととつのつのが。。。

データセットをデータとして使用してて,,,,次元次元次元kd木をさます。。

mdl1 = kdtreesearcher(x)
MDL1 =属性的Kdtreesearcher:bucketsize:50距离:'euclidean'dist参数:[] x:[150x4 double]

MDL1Kdtreesearcherモデルオブジェクトプロパティコマンドウィンドウに表示れ。このオブジェクトにには,,距离距离计量计量计量などなど,,,,,kd木に格纳さてますプロパティのは,ドット表记表记を使用ししますますます

または,创造力を使用してkd木をせることができ。。

mdl2 = createns(x)
mdl2 =属性的kdtreesearcher:bucketsize:50距离:'euclidean'distparameter:[] x:[150x4 double]

MDL2Kdtreesearcherモデルオブジェクトでもあり,MDL1と等価です。X4つのつのが,既定距离计量ユークリッドユークリッドである,,创造力は既定ではKdtreesearcherモデルを作成ます。

一连のデータに対する最近ををXから探索するは,KdtreesearcherモデルオブジェクトとデータをKnnsearchまたはrangesearchに渡します。

指数ががのミンコフスキーを使用てててkd木をさます。。

フィッシャーのデータを読み込み。花弁寸法をする変数を作成します。

加载渔业x = meas(:,3:4);

kd木成长せます指数指数ががのミンコフスキーを指定し。。

mdl = createns(x,'距离',,,,'Minkowski',,,,'P',5)
MDL =属性的kdtreesearcher:bucketsize:50距离:'Minkowski'Distparameter:5 x:[150x2 double]

X2つのつのが,距离计量がミンコフスキー,,,创造力は既定ではKdtreesearcherモデルオブジェクト作成します。

关数创造力を使用て网罗探索モデルオブジェクト作成します。k最近傍探索ため,とクエリデータを关数Knnsearchに渡します。

フィッシャーののデータを読み込みます。

加载渔业

5つの,,,,つのアヤメデータ无作为予测子データから抽出しし。。

rng('默认');%可再现性n =尺寸(MES,1);样本量的%qidx = randsample(n,5);查询数据索引的%x = meas(〜ismemb(1:n,qidx),:);y = meas(qidx,:);

学习データし网罗最近探索を准备ます。最近傍のの探索にマハラノビスマハラノビス距离を指定指定

mdl = createns(x,'距离',,,,'Mahalanobis'
MDL =属性的EnterviveRearcher:距离:'Mahalanobis'Distparameter:[4x4 double] X:[145x4 double]

距离计量マハラノビスであるため,创造力は既定ではElectiveRearcherモデルオブジェクト作成します。

マハラノビス距离に,学习データの(列)ののの分散分散分散分散分散が使用さmdl.distparameterを使用し。

mdl.distparameter
ans =4×40.6547 -0.0368 1.2320 0.5026 -0.0368 0.1914 -0.3227 -0.1193 1.2320 -0.3227 3.0671 1.2842 0.5026 -0.1193 1.2842 0.5842 0.5800

求める学习(mdl.x)のインデックス,データ(y)ののにおけるつつ最近です。。。

idxnn = knnsearch(mdl,y,'K',2)
idxnn =5×25 6 98 95 104 128 135 65 102 115

idxnnのはデータの観测値にします列顺序は,,距离距离ののの升顺升顺で并べ替え并べ替え最近傍のの顺序顺序にに対応対応しy(3,:)2番目番目最近はははx(128,:)になります。

入力引数

すべて折りたたむ

学习データ数値行列指定します。Xには観测(インスタンスまたは)にするするする个の行と,,それぞれそれぞれ(特徴)ににに

データ::单身的|双倍的

名前と値引数

オプションの引数ペアをname1 = value1,...,namen = valuenとして指定ます。ここで姓名は引数名,价值は対応です名前と値のの引数の后ろにする必要必要がありますますが,ペアペアののの顺序

r2021aよりで,名前値それぞれコンマ使って,,姓名を引用で囲みます。

例:NS = Createns(X,'距离','Mahalanobis')は,傍探索ときにマハラノビス计量を使用するElectiveRearcherモデルオブジェクト作成します。

网罗的およびkd木最近探索の场合场合

すべて折りたたむ

作成するタイプをするためにさ最近最近傍探索法。'nsmethod''kdtree'または“详尽”から构成コンマ区のペアとしてし。。。

  • 'kdtree'-创造力はkd木アルゴリズムを使用ててKdtreesearcherモデルオブジェクト作成します。

  • “详尽”-创造力は网罗探索アルゴリズムをててElectiveRearcherモデルオブジェクト作成します。

次ののつがれる场合场合既定はは'kdtree'です。

  • Xの(k)が10以下(つまりk≤10)。

  • Xがスパースでない

  • 距离“欧几里得”'城市街区''chebychev'または'Minkowski'である。

それ以外场合,既はは“详尽”です。

例:“ nsmethod',“详尽”

以后の点最近傍探索するためにKnnsearchまたはrangesearchを呼び出すに使用する。。'距离'字符串スカラーまたはスカラースカラーによる名または关数ハンドル构成构成されるコンマ区切りののペアペアとしてしし

両方のの最近探索モデルについて,创造力は次距离计量サポートします。

说明
'chebychev' チェビシェフ(最大标差)。
'城市街区' 市街地距离。
“欧几里得” ユークリッド距离。
'Minkowski' 2です指数は指数ですです。のを指定するには,'P'名前とのの引数使用します。

创造力が网罗的アルゴリズム使用する('nsmethod'“详尽”)场合,创造力は次距离计量サポートします。

说明
'相关性' 1から観测间の线形相关を减算减算减算减算减算减算减算减算减算减算系列系列处理
“余弦” (行ベクトルれる)観测観测间夹角の余弦ををからからから
“锤” ハミング(异なる座标比率)
'jaccard' 1から系数(异なる非座标比率)を
'Mahalanobis' マハラノビス距离
'seuclidean' 标准化されユークリッド距离
'spearman' 1から値の标本顺位相关数减算减算减算减算减算减算减算减算减算()

创造力が网罗的アルゴリズム使用する('nsmethod'“详尽”)场合,@を使用て距离计量のハンドル(たとえば@distfun)を指定もます。距离关数,次のようになっていなけれなけれんんんん

  • 函数d2 = distFun(zi,zj)という形式なっている。

  • 次の引数受け入れる。

    • Xまたはクエリ点y1行行れているいるいる行行行行列ベクトルZi。KはXの列数です。

    • Xまたはyの复数がれているいるいる行行行ZJ。Mははのです。。

  • m行1列列D2を返す。D2(jは,観测値ZiZJ(j,:)の间のです。

详细は,距离计量を参照しください。

例:“距离”,“ Minkowski”

ミンコフスキー距离计量指数。'P'と正値コンマで区切ってます。この引数,,'距离''Minkowski'である场合のみです。

例:'P',3

データ::单身的|双倍的

网罗的傍探索モデル场合场合

すべて折りたたむ

マハラノビス距离の共分散分散。。'cov'とk k行列正定値から构成さ区切りのとしてとしてし。。Xの列数。この引数,,'距离''Mahalanobis'である场合のみです。

例:“ Cov”,眼睛(3)

データ::单身的|双倍的

标准化さた距离计量スケールパラメーター値。'规模'とささ非负数値ベクトルからさコンマ区のペアとしてとして指定し。Xの列数学习データクエリデータののはは,対応する规模の要素使用てされますこの引数は,'距离''seuclidean'である场合のみです。

例:“比例”,分位数(x,0.75) - 分位数(x,0.25)

データ::单身的|双倍的

kd木を最近傍モデルの场合

すべて折りたたむ

kd木各ノードにおける最大データ。。“桶”と正整数コンマでて指定します。

この引数は,Kdtreesearcherモデルオブジェクト作成するのみ有效です。

例:“桶”,10

データ::单身的|双倍的

出力引数

すべて折りたたむ

最近傍探索。ElectiveRearcherモデルオブジェクトまたはKdtreesearcherモデルオブジェクト返されます。

最近傍モデルオブジェクト作成すると,Knnsearchによる最近傍またはrangesearchによる半径実行て,クエリデータ学习の近傍点をできます。

バージョン履歴

R2010Aで导入