set_params_class_knnT_set_params_class_knnSetParamsClassKnnSetParamsClassKnnset_params_class_knn (算子)
名称
set_params_class_knnT_set_params_class_knnSetParamsClassKnnSetParamsClassKnnset_params_class_knn — 设置 k-NN 分类的参数。
签名
描述
set_params_class_knnset_params_class_knnSetParamsClassKnnSetParamsClassKnnSetParamsClassKnnset_params_class_knn sets parameters for the classification
of the k-nearest neighbors (k-NN) classifier KNNHandleKNNHandleKNNHandleKNNHandleKNNHandleknnhandle.
It controls the behavior of classify_class_knnclassify_class_knnClassifyClassKnnClassifyClassKnnClassifyClassKnnclassify_class_knn。
The value of 'k'"k""k""k""k""k" can be set via GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name and
GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value. Increasing 'k'"k""k""k""k""k" also increases the accuracy
of the resulting neighbors and increases the run time.
The results can either be the determined class of the feature vector or
the indices of the nearest neighbors. The result behavior
can be selected with set_params_class_knnset_params_class_knnSetParamsClassKnnSetParamsClassKnnSetParamsClassKnnset_params_class_knn via the generic parameters
'method'"method""method""method""method""method" and 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes":
- 'classes_distance'"classes_distance""classes_distance""classes_distance""classes_distance""classes_distance":
returns the nearest samples
for each of maximally 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes" different classes,
if they have a representative in the nearest 'k'"k""k""k""k""k" neighbors.
The results are classes sorted by their minimal
distance. There is no efficient way to determine in a
k-NN-tree the nearest neighbor for exactly 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes"
classes.
- 'classes_frequency'"classes_frequency""classes_frequency""classes_frequency""classes_frequency""classes_frequency":
counts the occurrences of certain
classes among the nearest 'k'"k""k""k""k""k" neighbors and returns the occurrent
classes sorted by their relative frequency that is
returned, too. Again, maximally 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes"
values are returned.
- 'classes_weighted_frequencies'"classes_weighted_frequencies""classes_weighted_frequencies""classes_weighted_frequencies""classes_weighted_frequencies""classes_weighted_frequencies":
counts the occurrences of certain classes among the
nearest 'k'"k""k""k""k""k" neighbors and returns the occurrent classes sorted
by their relative frequency weighted with the
average distance that is returned, too.
Again, maximally 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes" values are returned.
- 'neighbors_distance'"neighbors_distance""neighbors_distance""neighbors_distance""neighbors_distance""neighbors_distance":
returns the indices of the nearest
'k'"k""k""k""k""k" neighbors and the distances.
The default behavior is 'classes_distance'"classes_distance""classes_distance""classes_distance""classes_distance""classes_distance".
The option 'num_checks'"num_checks""num_checks""num_checks""num_checks""num_checks" allows to set the number of maximal runs
through the trees. The parameter has to be positive and the default value is
32. The higher this value is, the more accurate the results will be.
As a trade-off, the running time will also be higher. Setting this parameter
to 0 triggers an exact search.
The option 'epsilon'"epsilon""epsilon""epsilon""epsilon""epsilon" allows to set a stop criteria if the value
is increased from the default value 0.0.
The higher the value is set, the less accurate results of the
estimated neighbors can be expected, while it might speed up the search.
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 未采用并行化处理。
此算子修改后续输入参数的状态:
在执行此算子时,若该参数值需在多个线程间使用,则必须对其访问进行同步。
参数
KNNHandleKNNHandleKNNHandleKNNHandleKNNHandleknnhandle (输入控制,状态被修改) class_knn → HClassKnn, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
k-NN 分类器的句柄。
GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (输入控制) string-array → HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)
Names of the generic parameters that can be adjusted
for the k-NN classifier.
默认值:
['method','k','max_num_classes']
["method","k","max_num_classes"]
["method","k","max_num_classes"]
["method","k","max_num_classes"]
["method","k","max_num_classes"]
["method","k","max_num_classes"]
值列表:
'epsilon'"epsilon""epsilon""epsilon""epsilon""epsilon", 'k'"k""k""k""k""k", 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes", 'method'"method""method""method""method""method", 'num_checks'"num_checks""num_checks""num_checks""num_checks""num_checks"
GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (输入控制) number-array → HTupleSequence[Union[int, float, str]]HTupleHtuple (integer / real / string) (int / long / double / string) (Hlong / double / HString) (Hlong / double / char*)
Values of the generic parameters that can be adjusted
for the k-NN classifier.
默认值:
['classes_distance',5,1]
["classes_distance",5,1]
["classes_distance",5,1]
["classes_distance",5,1]
["classes_distance",5,1]
["classes_distance",5,1]
建议值:
'classes_distance'"classes_distance""classes_distance""classes_distance""classes_distance""classes_distance", 'classes_frequency'"classes_frequency""classes_frequency""classes_frequency""classes_frequency""classes_frequency", 'classes_weighted_frequencies'"classes_weighted_frequencies""classes_weighted_frequencies""classes_weighted_frequencies""classes_weighted_frequencies""classes_weighted_frequencies", 'neighbors_distance'"neighbors_distance""neighbors_distance""neighbors_distance""neighbors_distance""neighbors_distance", 32, 0.0, 0.02, 0, 1, 2, 3, 4, 5, 6
结果
如果参数有效,算子 set_params_class_knnset_params_class_knnSetParamsClassKnnSetParamsClassKnnSetParamsClassKnnset_params_class_knn 返回值 2 ( H_MSG_TRUE )。如有必要,则抛出异常。
可能的前趋
train_class_knntrain_class_knnTrainClassKnnTrainClassKnnTrainClassKnntrain_class_knn,
read_class_knnread_class_knnReadClassKnnReadClassKnnReadClassKnnread_class_knn
可能的后继
classify_class_knnclassify_class_knnClassifyClassKnnClassifyClassKnnClassifyClassKnnclassify_class_knn
另见
create_class_knncreate_class_knnCreateClassKnnCreateClassKnnCreateClassKnncreate_class_knn,
read_class_knnread_class_knnReadClassKnnReadClassKnnReadClassKnnread_class_knn,
get_params_class_knnget_params_class_knnGetParamsClassKnnGetParamsClassKnnGetParamsClassKnnget_params_class_knn
参考文献
Marius Muja, David G. Lowe: “Fast Approximate Nearest Neighbors with
Automatic Algorithm Configuration”;
International Conference on Computer Vision Theory
and Applications (VISAPP 09); 2009.
模块
基础